http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57223

--- Comment #5 from Marc Glisse <glisse at gcc dot gnu.org> ---
(In reply to Usishchev Yury from comment #3)
> I'm testing it on current trunk, and second loop is not vectorized both with
> floating point and integer types.
> For floating point types it is not vectorized due to control flow in loop:
> 
>  <bb 15>:
> // ...
> if (t_56 > _61)
>   goto <bb 16>;
> else
>   goto <bb 17>;
>  <bb 16>:
>  <bb 17>:
> # iftmp.2_7 = PHI <_61(16), t_56(15)>
> 
> This can be optimized to MIN_EXPR in phiopt pass, but is not because of NaNs:

Even without MIN_EXPR, ifcvt should turn this into a COND_EXPR that can be
vectorized, no?

Reply via email to