(fgl) reimplement Data.Graph.Inductive.Query.Dominators
|Reported by:||int-e||Owned by:|
|Type of failure:||None/Unknown||Test Case:|
|Related Tickets:||Differential Rev(s):|
As pointed out at http://www.haskell.org/pipermail/haskell-cafe/2008-April/041739.html ff.,
Data.Graph.Inductive.Query.Dominators.dom is buggy. Furthermore, it's slow, so instead of submitting the quick fix from that thread, I've rewritten the module from scratch using a more efficient algorithm.
The algorithm works by calculating the immediate dominators of the graph nodes first, so the patch also adds a function that returns those. It should be handy for flow graph analysis.