compiler.cfg.linear-scan: fix resolve pass

db4
Slava Pestov 2009-07-28 08:47:35 -05:00
parent 3edf4a2b75
commit e6f5eab598
2 changed files with 3 additions and 3 deletions

View File

@ -23,7 +23,7 @@ SYMBOL: spill-temps
:: resolve-value-data-flow ( bb to vreg -- ) :: resolve-value-data-flow ( bb to vreg -- )
vreg bb vreg-at-end vreg bb vreg-at-end
vreg to vreg-at-start 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 ) : compute-mappings ( bb to -- mappings )
[ [
@ -58,7 +58,7 @@ SYMBOL: temp
} cond ; } cond ;
: mapping-instructions ( alist -- insns ) : mapping-instructions ( alist -- insns )
>hashtable [ swap ] H{ } assoc-map-as
[ temp [ swap >insn ] parallel-mapping ] { } make ; [ temp [ swap >insn ] parallel-mapping ] { } make ;
: perform-mappings ( bb to mappings -- ) : perform-mappings ( bb to mappings -- )

View File

@ -23,7 +23,7 @@ SYMBOLS: temp locs preds to-do ready ;
temp set temp set
<dlist> to-do set <dlist> to-do set
<dlist> ready set <dlist> ready set
[ [ eq? not ] assoc-filter preds set ] [ preds set ]
[ [ nip dup ] H{ } assoc-map-as locs set ] [ [ nip dup ] H{ } assoc-map-as locs set ]
[ keys [ init-to-do ] [ init-ready ] bi ] tri ; [ keys [ init-to-do ] [ init-ready ] bi ] tri ;