compiler: only run float test in low-level-ir if float intrinsics enabled; fixes SIGILL on non-sse2 x86 machines

db4
Slava Pestov 2009-08-26 06:58:47 -05:00
parent 132dff23ec
commit 0ff80a063d
1 changed files with 14 additions and 11 deletions

View File

@ -3,7 +3,7 @@ compiler.cfg.debugger compiler.cfg.instructions compiler.cfg.mr
compiler.cfg.registers compiler.codegen compiler.units compiler.cfg.registers compiler.codegen compiler.units
cpu.architecture hashtables kernel namespaces sequences cpu.architecture hashtables kernel namespaces sequences
tools.test vectors words layouts literals math arrays tools.test vectors words layouts literals math arrays
alien.syntax ; alien.syntax math.private ;
IN: compiler.tests.low-level-ir IN: compiler.tests.low-level-ir
: compile-cfg ( cfg -- word ) : compile-cfg ( cfg -- word )
@ -46,16 +46,19 @@ IN: compiler.tests.low-level-ir
} compile-test-bb } compile-test-bb
] unit-test ] unit-test
! ##copy on floats ! ##copy on floats. We can only run this test if float intrinsics
[ 1.5 ] [ ! are enabled.
V{ \ float+ "intrinsic" word-prop [
T{ ##load-reference f 4 1.5 } [ 1.5 ] [
T{ ##unbox-float f 1 4 } V{
T{ ##copy f 2 1 double-float-rep } T{ ##load-reference f 4 1.5 }
T{ ##box-float f 3 2 } T{ ##unbox-float f 1 4 }
T{ ##copy f 0 3 int-rep } T{ ##copy f 2 1 double-float-rep }
} compile-test-bb T{ ##box-float f 3 2 }
] unit-test T{ ##copy f 0 3 int-rep }
} compile-test-bb
] unit-test
] when
! make sure slot access works when the destination is ! make sure slot access works when the destination is
! one of the sources ! one of the sources