http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56181
--- Comment #12 from Richard Biener <rguenth at gcc dot gnu.org> 2013-02-06 16:00:02 UTC --- (In reply to comment #11) > Created attachment 29371 [details] > final patch > > This is what I am considering seriously. It adds the dumping (but we don't > have info on the BB index of removed loops - bah), and also moves loop removal > to fix_loop_structure again. > > It doesn't fix IRAs (pre-existing) ugliness. > > The previous patch passed bootstrap, I'm giving this one full testing > (it co-incidentially fixes the bug as well). Fixes it as part of fix_loop_structure as called from VRPs TODO_cleanup_cfg. This is where a former irreducible region (loop with multiple entries) is turned into a regular loop. It's a loop having both loop 2 and loop 3 as siblings and having loop 1 as parent.