https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106804
--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> --- I think there is another bug report about: if (_1 > _2) goto <bb 3>; [50.00%] else goto <bb 4>; [50.00%] <bb 3> [local count: 536870913]: _3 = _1 + 1; *a_7(D) = _3; goto <bb 5>; [100.00%] <bb 4> [local count: 536870913]: _4 = _2 + 1; *b_8(D) = _4; <bb 5> [local count: 1073741824]: Where the store should be moved outside of the if but I can't find it right now.