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

--- Comment #1 from Hongtao Liu <liuhongt at gcc dot gnu.org> ---

> The ifcvt'ed code before vect is:
> 
>   _4 = *_3;
>   x.0_12 = (unsigned int) _4;
>   _38 = -x.0_12;
>   _15 = (int) _38;
>   _16 = _15 >> 31;
>   _29 = x.0_12 > 255;
>   _17 = _29 ? _16 : _4;
>   _18 = (unsigned char) _17;
> 

For the testcase in PR, I think x.0_12 > 255 must be false since it's
zero_extend from unsigned char. So the comparison can be optimized off?

Reply via email to