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

--- Comment #6 from Artemiy Volkov <artemiyv at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #5)
> (In reply to Artemiy Volkov from comment #4)
> > This should have been prevented by the `type_has_mode_precision_p (type)`
> > check, but the execution doesn't get to it, as the earlier `!INTEGRAL_TYPE_P
> > (TREE_TYPE (@0))` yields true, since @0 is of type V4QI.
> 
>        && (!INTEGRAL_TYPE_P (type)
>            || !INTEGRAL_TYPE_P (TREE_TYPE (@0))
>            || (type_has_mode_precision_p (type)
>                && type_has_mode_precision_p (TREE_TYPE (@0)))))
> 
> should probably be
> 
>        && (!INTEGRAL_TYPE_P (type)
>            || type_has_mode_precision_p (type))
>        && (!INTEGRAL_TYPE_P (TREE_TYPE (@0))
>            || type_has_mode_precision_p (TREE_TYPE (@0))))

Indeed, thank you.  I'm planning to submit this as soon as it passes CI.

Reply via email to