http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58195
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |missed-optimization
Status|UNCONFIRMED |NEW
Last reconfirmed| |2014-03-11
Component|rtl-optimization |tree-optimization
Ever confirmed|0 |1
Known to fail| |4.9.0
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
phiopt should notice
<bb 2>:
if (input_2(D) != 0)
goto <bb 3>;
else
goto <bb 4>;
<bb 3>:
iftmp.0_3 = -input_2(D);
<bb 4>:
# iftmp.0_1 = PHI <iftmp.0_3(3), 0(2)>
and value-replace iftmp.0_1 by -input_2(D).