factor/basis/compiler/cfg/predecessors/predecessors.factor

14 lines
434 B
Factor
Raw Normal View History

! Copyright (C) 2008, 2009 Slava Pestov.
2008-11-03 00:09:31 -05:00
! See http://factorcode.org/license.txt for BSD license.
USING: kernel accessors sequences compiler.cfg.rpo ;
IN: compiler.cfg.predecessors
: predecessors-step ( bb -- )
2008-11-03 00:09:31 -05:00
dup successors>> [ predecessors>> push ] with each ;
: compute-predecessors ( cfg -- cfg' )
[ [ V{ } clone >>predecessors drop ] each-basic-block ]
[ [ predecessors-step ] each-basic-block ]
[ ]
tri ;