compiler.cfg.liveness.ssa: fix bad bug discovered by littledan
parent
2d719534cf
commit
76368cae9b
|
@ -8,7 +8,7 @@ IN: compiler.cfg.liveness.ssa
|
||||||
! TODO: merge with compiler.cfg.liveness
|
! TODO: merge with compiler.cfg.liveness
|
||||||
|
|
||||||
! Assoc mapping basic blocks to sequences of sets of vregs; each sequence
|
! Assoc mapping basic blocks to sequences of sets of vregs; each sequence
|
||||||
! is in conrrespondence with a predecessor
|
! is in correspondence with a predecessor
|
||||||
SYMBOL: phi-live-ins
|
SYMBOL: phi-live-ins
|
||||||
|
|
||||||
: phi-live-in ( predecessor basic-block -- set ) phi-live-ins get at at ;
|
: phi-live-in ( predecessor basic-block -- set ) phi-live-ins get at at ;
|
||||||
|
@ -31,7 +31,7 @@ SYMBOL: work-list
|
||||||
: update-live-in ( basic-block -- changed? )
|
: update-live-in ( basic-block -- changed? )
|
||||||
[ [ compute-live-in ] keep live-ins get maybe-set-at ]
|
[ [ compute-live-in ] keep live-ins get maybe-set-at ]
|
||||||
[ [ compute-phi-live-in ] keep phi-live-ins get maybe-set-at ]
|
[ [ compute-phi-live-in ] keep phi-live-ins get maybe-set-at ]
|
||||||
bi and ;
|
bi or ;
|
||||||
|
|
||||||
: compute-live-out ( basic-block -- live-out )
|
: compute-live-out ( basic-block -- live-out )
|
||||||
[ successors>> [ live-in ] map ]
|
[ successors>> [ live-in ] map ]
|
||||||
|
|
Loading…
Reference in New Issue