All of the functions in this module assume that the graph is not modified between calling one of these functions and using the returned functions. Such mutation results in undefined behavior.
Computes a dominator tree (function from x to a list of nodes immediately
dominated by x) for the given CFG and dominator function.
Note: The dominator tree is also called
IDom by Muchnick.
Note: If you are computing a post-dominator tree, then the
optional argument pred should be G.succ.
Computes all dominance functions.
This function computes some things eagerly and some lazily, so don't worry about it doing extra work to compute functions you don't need, but also don't call it if you aren't going to use anything it returns.