http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57685
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> --- Hmm, it's register_edge_assert_for_1 not limiting its recursion and not avoiding duplicate visits. Which in this case leads to exponential compile-time behavior. We can mitigate the latter by only considering single-use defs.