Add a "sink" pass
Closed this issue · 1 comments
doug-q commented
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:
- they have the same dataflow parent
- neither dominates the other
rank(o1) > rank(o2)
After the pass is run o1
dominates o2
.
This should be achieved by adding order edges.
aborgna-q commented
This is fixing a specific topological sort, so it could be called ~"force order".
sink sounds like a flow-related thing instead.