]> gitweb.factorcode.org Git - factor.git/commitdiff
compiler.cfg.gvn.slots: make simplify-slot-addressing non-destructive
authorAlex Vondrak <ajvondrak@csupomona.edu>
Sat, 18 Jun 2011 23:27:29 +0000 (16:27 -0700)
committerJohn Benediktsson <mrjbq7@gmail.com>
Wed, 12 Sep 2012 22:14:08 +0000 (15:14 -0700)
extra/compiler/cfg/gvn/gvn.factor
extra/compiler/cfg/gvn/slots/slots.factor

index 56ea3023d2e86d05ba144506907bf6d711ea652b..ef1f2f0cd808096003158484b115432332190573 100644 (file)
@@ -51,7 +51,7 @@ M: array process-instruction
 
 ! FIXME there's going to be trouble with certain rewrites that
 ! modify the cfg / instructions destructively; namely those in
-! alien.factor and slots.factor
+! alien.factor
 
 : value-numbering-iteration ( cfg -- )
     clear-exprs
index d994e194fb2784412a1e5e21abcd758226758fd3..15a1040edd4c98551f8f2675dcb4fc46cfaa54dc 100644 (file)
@@ -13,7 +13,7 @@ IN: compiler.cfg.gvn.slots
 
 : simplify-slot-addressing ( insn -- insn/f )
     dup simplify-slot-addressing? [
-        dup slot>> vreg>insn
+        clone dup slot>> vreg>insn
         [ src1>> >>slot ]
         [ src2>> over scale>> '[ _ _ shift - ] change-tag ]
         bi