https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103221

Andrew Macleod <amacleod at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #5 from Andrew Macleod <amacleod at redhat dot com> ---
We perform this optimization in appropriate places.

EVRP uses ranges to remove the | -128 leaving the statement as a copy.

Although we could then propagate the copy into the PHI node, I think we should
leave that to the copy propagation and PHIOPT passes, as we could also make
poor decisions since we are doing it with no context. 

EVRP is enabling the other passes to do their job, and GCC turns this into
"return a" as expected.

Reply via email to