Module Scheduler.ReversePostorder
simple scheduler that visits CFG nodes in reverse postorder. fast/precise for straightline code and conditionals; not as good for loops (may visit nodes after a loop multiple times).
Parameters
Signature
module CFG = CFGval schedule_succs : t -> CFG.Node.t -> tschedule the successors of
node
val pop : t -> (CFG.Node.t * CFG.Node.id list * t) optionremove and return the node with the highest priority, the ids of its visited predecessors, and the new schedule