On Wed, Dec 17, 2025 at 02:59:43PM +0100, Richard Biener wrote:
> At some point the permute vector element type had to match the value
> elemnt in size which easily leads to overflow for char element types
> as shown in the testcase.  This was relaxed for constant permute
> masks, so use ssizetype.

I wasn't aware of such a change.  Bet it will not work properly when
targets get fixed size 256+ byte vectors but as such targets don't
exist this is just whether GIMPLE passes can handle that and vector lowering
handles it too, right?

> Bootstrap and regtest running on x86_64-unknown-linux-gnu.
> 
> OK if that succeeds?
> 
> Thanks,
> Richard.
> 
>       PR c/123156
> gcc/c-family/
>       * c-common.cc (c_build_shufflevector): Use ssizetype for the
>       permute vector element type.
> 
> gcc/testsuite/
>       * gcc.dg/torture/builtin-shufflevector-pr123156.c: New testcase.

LGTM.

        Jakub

Reply via email to