diff --git a/compiler/i386/cpuinfo.pas b/compiler/i386/cpuinfo.pas index bfdb82727a..189f3a5c0b 100644 --- a/compiler/i386/cpuinfo.pas +++ b/compiler/i386/cpuinfo.pas @@ -45,7 +45,8 @@ Type ClassPentium, ClassPentium2, ClassPentium3, - ClassPentium4 + ClassPentium4, + ClassPentiumM ); tfputype = @@ -53,7 +54,8 @@ Type fpu_soft, fpu_x87, fpu_sse, - fpu_sse2 + fpu_sse2, + fpu_sse3 ); @@ -76,18 +78,20 @@ Const 'PENTIUM', 'PENTIUM2', 'PENTIUM3', - 'PENTIUM4' + 'PENTIUM4', + 'PENTIUMM' ); fputypestr : array[tfputype] of string[6] = ('', 'SOFT', 'X87', 'SSE', - 'SSE2' + 'SSE2', + 'SSE3' ); - sse_singlescalar : set of tfputype = [fpu_sse,fpu_sse2]; - sse_doublescalar : set of tfputype = [fpu_sse2]; + sse_singlescalar : set of tfputype = [fpu_sse,fpu_sse2,fpu_sse3]; + sse_doublescalar : set of tfputype = [fpu_sse2,fpu_sse3]; Implementation diff --git a/compiler/i386/cpuswtch.pas b/compiler/i386/cpuswtch.pas index b78e073bc0..26596e8802 100644 --- a/compiler/i386/cpuswtch.pas +++ b/compiler/i386/cpuswtch.pas @@ -82,6 +82,7 @@ begin '2': initoptprocessor := ClassPentium; '3': initoptprocessor := ClassPentium2; '4': initoptprocessor := ClassPentium4; + '5': initoptprocessor := ClassPentiumM; Else IllegalPara(Opt) End; Inc(j);