https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100315
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords|missed-optimization |wrong-code --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- I almost want to say this is actually wrong code. cddce1 is changing: <bb 3> : # e_2 = PHI <0(2), e_7(6)> a.0_1 = a; if (a.0_1 != 0) goto <bb 4>; [33.00%] else goto <bb 6>; [67.00%] <bb 4> : foo (); <bb 5> : goto <bb 5>; [100.00%] <bb 6> : e_7 = e_2 + 1; goto <bb 3>; [INV] Into: <bb 3> : foo (); <bb 5> : goto <bb 5>; [100.00%] Which I think is invalid.