]> gitweb.factorcode.org Git - factor.git/commitdiff
compiler.cfg.linear-scan: fix resolve pass
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 28 Jul 2009 13:47:35 +0000 (08:47 -0500)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 28 Jul 2009 13:47:35 +0000 (08:47 -0500)
basis/compiler/cfg/linear-scan/resolve/resolve.factor
basis/compiler/cfg/parallel-copy/parallel-copy.factor

index baa5099d8fa285c6792bd6ac11850362d1100c8f..932e3dc6d6e32c9c11eee775ba9a57fe6c313755 100644 (file)
@@ -23,7 +23,7 @@ SYMBOL: spill-temps
 :: resolve-value-data-flow ( bb to vreg -- )
     vreg bb vreg-at-end
     vreg to vreg-at-start
-    2dup eq? [ 2drop ] [ vreg reg-class>> add-mapping ] if ;
+    2dup = [ 2drop ] [ vreg reg-class>> add-mapping ] if ;
 
 : compute-mappings ( bb to -- mappings )
     [
@@ -58,7 +58,7 @@ SYMBOL: temp
     } cond ;
 
 : mapping-instructions ( alist -- insns )
-    >hashtable
+    [ swap ] H{ } assoc-map-as
     [ temp [ swap >insn ] parallel-mapping ] { } make ;
 
 : perform-mappings ( bb to mappings -- )
index f5abc4be60eb38a5955402567b5985d059d9220d..5a1bfcd111dd15e3e06697f4c7b65e1fde2cc478 100644 (file)
@@ -23,7 +23,7 @@ SYMBOLS: temp locs preds to-do ready ;
     temp set
     <dlist> to-do set
     <dlist> ready set
-    [ [ eq? not ] assoc-filter preds set ]
+    [ preds set ]
     [ [ nip dup ] H{ } assoc-map-as locs set ]
     [ keys [ init-to-do ] [ init-ready ] bi ] tri ;