Unlike other implementations commonly found, this does not require either a post-dominator
tree or post-dominance frontiers.
It computes the relationship in linear time and space, and in fact, requires less time
that computing post-dominators!
If we wanted to, we could make this incrementally updated in O(sqrt(N) log n) time.
(This is currently used by newgvn to solve a problem GVN has of trying to figure out where it can propagate edge equivalences to)
This header block needs lots of fixes...