diff --git a/basis/compiler/cfg/ssa/destruction/coalescing/coalescing-tests.factor b/basis/compiler/cfg/ssa/destruction/coalescing/coalescing-tests.factor index 3af6d7d85a..2e213d02c8 100644 --- a/basis/compiler/cfg/ssa/destruction/coalescing/coalescing-tests.factor +++ b/basis/compiler/cfg/ssa/destruction/coalescing/coalescing-tests.factor @@ -1,11 +1,25 @@ USING: assocs compiler.cfg.def-use compiler.cfg.instructions -compiler.cfg.ssa.destruction.coalescing +compiler.cfg.registers compiler.cfg.ssa.destruction.coalescing compiler.cfg.ssa.destruction.leaders compiler.cfg.ssa.interference compiler.cfg.utilities cpu.architecture grouping kernel make namespaces random sequences tools.test ; QUALIFIED: sets IN: compiler.cfg.ssa.destruction.coalescing.tests +! eliminatable-copy? +{ { f t t f } } [ + H{ + { 45 double-2-rep } + { 46 double-rep } + { 47 double-rep } + { 100 double-rep } + { 20 tagged-rep } + { 30 int-rep } + } representations set + { { 45 46 } { 47 100 } { 20 30 } { 30 100 } } + [ first2 eliminatable-copy? ] map +] unit-test + ! initial-class-elements { H{ diff --git a/basis/math/vectors/simd/simd-tests.factor b/basis/math/vectors/simd/simd-tests.factor index fc50859c8f..0883822b80 100644 --- a/basis/math/vectors/simd/simd-tests.factor +++ b/basis/math/vectors/simd/simd-tests.factor @@ -761,3 +761,13 @@ STRUCT: simd-struct [ 123 assert= ] bi* ] unit-test + +! #1308 +: test-1308 ( a b -- c ) + { double-4 double-4 } declare + v+ dup first 10 > [ first ] [ third ] if 1array ; + +! Before the fix, this evaluated to an uninitialized value. +{ 33.0 } [ + double-4{ 2 20 30 40 } double-4{ 2 4 3 2 } test-1308 first +] unit-test