GENERIC# compute-in-set 2 ( bb out-sets dfa -- set )
-! M: kill-block compute-in-set 3drop f ;
+M: kill-block compute-in-set 3drop f ;
M:: basic-block compute-in-set ( bb out-sets dfa -- set )
bb dfa predecessors [ out-sets at ] map dfa join-sets ;
GENERIC# compute-out-set 2 ( bb out-sets dfa -- set )
-! M: kill-block compute-out-set 3drop f ;
+M: kill-block compute-out-set 3drop f ;
M:: basic-block compute-out-set ( bb in-sets dfa -- set )
bb in-sets at bb dfa transfer-set ;
compiler.cfg.dcn.local
compiler.cfg.dcn.local.private
compiler.cfg.dcn.global
-compiler.cfg.dcn.global.private
compiler.cfg.dcn.rewrite ;
: test-local-dcn ( insns -- insns' )
compiler.cfg.dcn.local ;
IN: compiler.cfg.dcn.global
-<PRIVATE
-
! Peek analysis. Peek-in is the set of all locations anticipated at
! the start of a basic block.
BACKWARD-ANALYSIS: peek
M: kill-analysis transfer-set drop replace assoc-union ;
-PRIVATE>
-
! Main word
: compute-global-sets ( cfg -- )
{