compiler.cfg.def-use uses sets
parent
766896f01c
commit
e3481a7ed7
|
@ -6,6 +6,7 @@ namespaces quotations sequences sets slots words
|
||||||
compiler.cfg.instructions compiler.cfg.instructions.syntax
|
compiler.cfg.instructions compiler.cfg.instructions.syntax
|
||||||
compiler.cfg.rpo ;
|
compiler.cfg.rpo ;
|
||||||
FROM: namespaces => set ;
|
FROM: namespaces => set ;
|
||||||
|
FROM: sets => members ;
|
||||||
IN: compiler.cfg.def-use
|
IN: compiler.cfg.def-use
|
||||||
|
|
||||||
GENERIC: defs-vreg ( insn -- vreg/f )
|
GENERIC: defs-vreg ( insn -- vreg/f )
|
||||||
|
@ -95,9 +96,9 @@ SYMBOLS: defs insns uses ;
|
||||||
cfg [| block |
|
cfg [| block |
|
||||||
block instructions>> [
|
block instructions>> [
|
||||||
dup ##phi?
|
dup ##phi?
|
||||||
[ inputs>> [ use conjoin-at ] assoc-each ]
|
[ inputs>> [ use adjoin-at ] assoc-each ]
|
||||||
[ uses-vregs [ block swap use conjoin-at ] each ]
|
[ uses-vregs [ block swap use adjoin-at ] each ]
|
||||||
if
|
if
|
||||||
] each
|
] each
|
||||||
] each-basic-block
|
] each-basic-block
|
||||||
use [ keys ] assoc-map uses set ;
|
use [ members ] assoc-map uses set ;
|
||||||
|
|
Loading…
Reference in New Issue