https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103079
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
The problem is latent though. The issue is reassociatation introduces an
unconditional use of an uninitilized vairable:
Before
if (b.1_3 != 0)
goto <bb 4>; [34.00%]
else
goto <bb 3>; [66.00%]
<bb 3> [local count: 116348739]:
if (_5(D) != 0)
goto <bb 4>; [50.00%]
else
goto <bb 8>; [50.00%]
After:
_6 = _5(D) | b.1_3;
_7 = _6 != 0;
if (_7 != 0)
goto <bb 3>; [34.00%]
else
goto <bb 7>; [66.00%]