Closed doug-q closed 2 weeks ago
We have a need to perform some operations as early as possible and some operations as late as possible.
Create a "sink" pass that is parameterised by a rank: Fn(Node) -> i64.
rank: Fn(Node) -> i64
For all pairs of operations (o1,o2) such that:
(o1,o2)
rank(o1) > rank(o2)
After the pass is run o1 dominates o2.
o1
o2
This should be achieved by adding order edges.
This is fixing a specific topological sort, so it could be called ~"force order".
sink sounds like a flow-related thing instead.
We have a need to perform some operations as early as possible and some operations as late as possible.
Create a "sink" pass that is parameterised by a
rank: Fn(Node) -> i64
.For all pairs of operations
(o1,o2)
such that:rank(o1) > rank(o2)
After the pass is run
o1
dominateso2
.This should be achieved by adding order edges.