]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
amdgcn: Disallow TImode vector permute
authorAndrew Stubbs <ams@codesourcery.com>
Fri, 10 Nov 2023 16:07:25 +0000 (16:07 +0000)
committerAndrew Stubbs <ams@codesourcery.com>
Mon, 27 Nov 2023 13:36:09 +0000 (13:36 +0000)
We don't support it and it doesn't happen without vector extensions, so
just remove the unhandled case.

Fixes gcc.dg/pr78575.c failure.

gcc/ChangeLog:

* config/gcn/gcn.cc (gcn_vectorize_vec_perm_const): Disallow TImode.

gcc/config/gcn/gcn.cc

index 52c8a0e409cdb2b05b4433dbbfcd5a156681f17e..22d2b6ebf6d51b88d82806d7664f49e4d125a651 100644 (file)
@@ -5050,7 +5050,9 @@ gcn_vectorize_vec_perm_const (machine_mode vmode, machine_mode op_mode,
                              rtx dst, rtx src0, rtx src1,
                              const vec_perm_indices & sel)
 {
-  if (vmode != op_mode)
+  if (vmode != op_mode
+      || !VECTOR_MODE_P (vmode)
+      || GET_MODE_INNER (vmode) == TImode)
     return false;
 
   unsigned int nelt = GET_MODE_NUNITS (vmode);