cpu.x86: don't generate SSE2 instructions if only SSE1 is available

db4
Slava Pestov 2009-09-24 04:07:15 -05:00
parent abe3b869cf
commit 1b84f179cd
1 changed files with 6 additions and 3 deletions

View File

@ -265,8 +265,9 @@ M: x86 %broadcast-vector ( dst src rep -- )
M: x86 %broadcast-vector-reps
{
{ sse? { float-4-rep } }
{ sse2? { double-2-rep } }
! Can't do this with sse1 since it will want to unbox
! a double-precision float and convert to single precision
{ sse2? { float-4-rep double-2-rep } }
} available-reps ;
M:: x86 %gather-vector-4 ( dst src1 src2 src3 src4 rep -- )
@ -284,7 +285,9 @@ M:: x86 %gather-vector-4 ( dst src1 src2 src3 src4 rep -- )
M: x86 %gather-vector-4-reps
{
{ sse? { float-4-rep } }
! Can't do this with sse1 since it will want to unbox
! double-precision floats and convert to single precision
{ sse2? { float-4-rep } }
} available-reps ;
M:: x86 %gather-vector-2 ( dst src1 src2 rep -- )