]> gitweb.factorcode.org Git - factor.git/commitdiff
Fix alias anlaysis bug: result of ##box-alien and ##box-float did not get an AC,...
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 3 Nov 2008 07:52:55 +0000 (01:52 -0600)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 3 Nov 2008 07:52:55 +0000 (01:52 -0600)
basis/compiler/cfg/alias-analysis/alias-analysis-tests.factor
basis/compiler/cfg/alias-analysis/alias-analysis.factor

index 2f0649ed402351cb8a7ee700232b8680a0b50233..c7094c8c360e2d2b8100165a0858ca5ed88f1f34 100644 (file)
@@ -3,6 +3,14 @@ compiler.cfg.alias-analysis cpu.architecture tools.test
 kernel ;
 IN: compiler.cfg.alias-analysis.tests
 
+[ ] [
+    {
+        T{ ##peek f V int-regs 2 D 1 f }
+        T{ ##box-alien f V int-regs 1 V int-regs 2 }
+        T{ ##slot-imm f V int-regs 3 V int-regs 1 0 3 }
+    } alias-analysis drop
+] unit-test
+
 [ ] [
     {
         T{ ##load-indirect f V int-regs 1 "hello" }
index e68d304047113f468f1364caa30763c16410d4b6..98569d868c1c2ea6424edbab05cd854ea28dfeb5 100644 (file)
@@ -229,6 +229,16 @@ M: ##allot analyze-aliases*
     #! object.
     dup dst>> set-new-ac ;
 
+M: ##box-float analyze-aliases*
+    #! A freshly allocated object is distinct from any other
+    #! object.
+    dup dst>> set-new-ac ;
+
+M: ##box-alien analyze-aliases*
+    #! A freshly allocated object is distinct from any other
+    #! object.
+    dup dst>> set-new-ac ;
+
 M: ##read analyze-aliases*
     dup dst>> set-heap-ac
     dup [ dst>> ] [ insn-slot# ] [ insn-object ] tri