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

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Marc Glisse from comment #5)
> typedef signed char v16qs __attribute__((vector_size(16)));
> auto bar(v16qs x) { return x < 48; }
> 
> clang does expand it as 48 gt x. Gcc however does its usual change to x <=
> 47, which it then tries to expand as ~(x > 47). I guess the expansion for x
> <= y could be tweaked in the case where one argument is constant to undo
> what was done earlier in the pipeline and expand as 48 > x.

I was going to suggest that ...
Or maybe that could be done in isel.

Reply via email to