http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52996
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> 2012-12-21 12:47:54 UTC --- Ick, I had Index: gcc/cprop.c =================================================================== --- gcc/cprop.c (revision 194658) +++ gcc/cprop.c (working copy) @@ -1554,8 +1554,7 @@ bypass_block (basic_block bb, rtx setcc, /* The irreducible loops created by redirecting of edges entering the loop from outside would decrease effectiveness of some of the following optimizations, so prevent this. */ - if (may_be_loop_header - && !(e->flags & EDGE_DFS_BACK)) + if (may_be_loop_header) { ei_next (&ei); continue; in my tree ...