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

--- Comment #9 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
(In reply to Andrew Macleod from comment #8)
> (In reply to Richard Biener from comment #3)

> Curious question, if that was an 'if' instead of a return using _3, the
> threader would probably thread the PHI away?  ie:
>   <bb 4> [local count: 118111600]:
>   # i_6 = PHI <i_2(D)(2), 6(3)>
>   _3 = i_6 != 0;
>   if (_3 != 0)
>     goto <bb7>
>   else
>     goto <bb8>
> 
> I don't suppose there is any possible future enhancement that would let us
> thread into returns like this?  Or maybe its not common enough?

Sure, the threader can't thread the current situation because it only does
conditionals not PHIs.  If that were an if, it should be able to thread it.

Reply via email to