]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
arm: [MVE intrinsics] update v[id]dup tests
authorChristophe Lyon <christophe.lyon@linaro.org>
Fri, 30 Aug 2024 09:29:46 +0000 (09:29 +0000)
committerChristophe Lyon <christophe.lyon@linaro.org>
Fri, 18 Oct 2024 07:41:12 +0000 (07:41 +0000)
Testing v[id]dup overloads with '1' as argument for uint32_t* does not
make sense: instead of choosing the '_wb' overload, we choose the
'_n', but we already do that in the '_n' tests.

This patch removes all such bogus foo2 functions.

2024-08-28  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/testsuite/
* gcc.target/arm/mve/intrinsics/vddupq_m_wb_u16.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_m_wb_u32.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_m_wb_u8.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_wb_u16.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_wb_u32.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_wb_u8.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_x_wb_u16.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_x_wb_u32.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vddupq_x_wb_u8.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_m_wb_u16.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_m_wb_u32.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_m_wb_u8.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_wb_u16.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_wb_u32.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_wb_u8.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_x_wb_u16.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_x_wb_u32.c: Remove foo2.
* gcc.target/arm/mve/intrinsics/vidupq_x_wb_u8.c: Remove foo2.

18 files changed:
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_m_wb_u16.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_m_wb_u32.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_m_wb_u8.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_wb_u16.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_wb_u32.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_wb_u8.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_x_wb_u16.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_x_wb_u32.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vddupq_x_wb_u8.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_m_wb_u16.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_m_wb_u32.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_m_wb_u8.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_wb_u16.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_wb_u32.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_wb_u8.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_x_wb_u16.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_x_wb_u32.c
gcc/testsuite/gcc.target/arm/mve/intrinsics/vidupq_x_wb_u8.c

index 2a907417b40116196746d01dc2770b60ed9b3ac1..d4391358fc25686071b902fa79465c09ac9d0702 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint16x8_t inactive, uint32_t *a, mve_pred16_t p)
   return vddupq_m (inactive, a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vddupt.u16      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint16x8_t
-foo2 (uint16x8_t inactive, mve_pred16_t p)
-{
-  return vddupq_m (inactive, 1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index ffaf37349235d726426762da748dde896aa9c63f..58609dae29fbf0f971312db48f710e74b4b86118 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32x4_t inactive, uint32_t *a, mve_pred16_t p)
   return vddupq_m (inactive, a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vddupt.u32      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint32x4_t
-foo2 (uint32x4_t inactive, mve_pred16_t p)
-{
-  return vddupq_m (inactive, 1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index ae7a4e25fe29ef1f042f1433499f41c807bd0508..a4d820b362884fbd351f21c7f2f4bb1154855520 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint8x16_t inactive, uint32_t *a, mve_pred16_t p)
   return vddupq_m (inactive, a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vddupt.u8       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint8x16_t
-foo2 (uint8x16_t inactive, mve_pred16_t p)
-{
-  return vddupq_m (inactive, 1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 6c54e32515582bf9bacf493df2afbb758550e71c..79e47bd867dbde359d4fdd7dd36e44cda51f9d9d 100644 (file)
@@ -34,20 +34,8 @@ foo1 (uint32_t *a)
   return vddupq_u16 (a, 1);
 }
 
-/*
-**foo2:
-**     ...
-**     vddup.u16       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint16x8_t
-foo2 ()
-{
-  return vddupq_u16 (1, 1);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index a8de90f7b125f0c69285f9d60daea31303c30f3b..d5cb77d3201d2d05fb3872d97c36b4ed5742f5e5 100644 (file)
@@ -34,20 +34,8 @@ foo1 (uint32_t *a)
   return vddupq_u32 (a, 1);
 }
 
-/*
-**foo2:
-**     ...
-**     vddup.u32       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint32x4_t
-foo2 ()
-{
-  return vddupq_u32 (1, 1);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 5a90e069b1d273ff87ec82476c59d65a7a2b990b..62b0f82430731a05b0b37405a04c0e3505d657d9 100644 (file)
@@ -34,20 +34,8 @@ foo1 (uint32_t *a)
   return vddupq_u8 (a, 1);
 }
 
-/*
-**foo2:
-**     ...
-**     vddup.u8        q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint8x16_t
-foo2 ()
-{
-  return vddupq_u8 (1, 1);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index dab65e08320125d4d0e3e1643c6bddaa590d3654..b765bc0d60e22930aaaa5dcf4cbdc7021e0fe931 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32_t *a, mve_pred16_t p)
   return vddupq_x_u16 (a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vddupt.u16      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint16x8_t
-foo2 (mve_pred16_t p)
-{
-  return vddupq_x_u16 (1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index c7abcaef9424dbd1065ad8d1c370706610aa021d..ddbd04f22e9ed20f95aeed7669f2eb78f7ee51eb 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32_t *a, mve_pred16_t p)
   return vddupq_x_u32 (a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vddupt.u32      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint32x4_t
-foo2 (mve_pred16_t p)
-{
-  return vddupq_x_u32 (1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index d2c299d4e3f8de5e45dccd4d088bdb636c78673e..bbbdaa6c7b601b700ae1e3f86c6cae4ead161807 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32_t *a, mve_pred16_t p)
   return vddupq_x_u8 (a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vddupt.u8       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint8x16_t
-foo2 (mve_pred16_t p)
-{
-  return vddupq_x_u8 (1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 19d046018095d54bffb57acf738825828f1b3ef9..9b4afdf177f0003c29f611a1c1ab9283cfc29964 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint16x8_t inactive, uint32_t *a, mve_pred16_t p)
   return vidupq_m (inactive, a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vidupt.u16      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint16x8_t
-foo2 (uint16x8_t inactive, mve_pred16_t p)
-{
-  return vidupq_m (inactive, 1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 36a8ac30564f604b3b3301774d021288a16eb8a2..5793d02d261ffc9b699e84e07e94ea49a520082a 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32x4_t inactive, uint32_t *a, mve_pred16_t p)
   return vidupq_m (inactive, a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vidupt.u32      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint32x4_t
-foo2 (uint32x4_t inactive, mve_pred16_t p)
-{
-  return vidupq_m (inactive, 1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 75695304c659c6760f0e8d26b09ae334a83dae55..e1d45b3b1149472dca6124ad6390631735d6ee54 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint8x16_t inactive, uint32_t *a, mve_pred16_t p)
   return vidupq_m (inactive, a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vidupt.u8       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint8x16_t
-foo2 (uint8x16_t inactive, mve_pred16_t p)
-{
-  return vidupq_m (inactive, 1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 83d9cc2a5632f60c09170b90954193bf2111ffbf..80cc9a08c6f44d4c45cbb51e3b303a42a6499a6a 100644 (file)
@@ -34,20 +34,8 @@ foo1 (uint32_t *a)
   return vidupq_u16 (a, 1);
 }
 
-/*
-**foo2:
-**     ...
-**     vidup.u16       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint16x8_t
-foo2 ()
-{
-  return vidupq_u16 (1, 1);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index d73face505db269e36645604579955df6ed40a59..2dc77c1436318b14bf57854f47476ce6265435b8 100644 (file)
@@ -34,20 +34,8 @@ foo1 (uint32_t *a)
   return vidupq_u32 (a, 1);
 }
 
-/*
-**foo2:
-**     ...
-**     vidup.u32       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint32x4_t
-foo2 ()
-{
-  return vidupq_u32 (1, 1);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 75187b0eb250221340901e66b155baee864818e9..87068e4e1d3e58a8b41d15e5ddb763b787f5622c 100644 (file)
@@ -34,20 +34,8 @@ foo1 (uint32_t *a)
   return vidupq_u8 (a, 1);
 }
 
-/*
-**foo2:
-**     ...
-**     vidup.u8        q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint8x16_t
-foo2 ()
-{
-  return vidupq_u8 (1, 1);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index 31ddde4bd3a50b437e6fa707612f795f0ac2f42b..7524780d19eca43e360366a95bdaafa48135ac1b 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32_t *a, mve_pred16_t p)
   return vidupq_x_u16 (a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vidupt.u16      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint16x8_t
-foo2 (mve_pred16_t p)
-{
-  return vidupq_x_u16 (1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index c8193465a728fbb61fe54598bd863b61aaed2e62..0d05657b8865defafb547ea73ee5d21c70015a2f 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32_t *a, mve_pred16_t p)
   return vidupq_x_u32 (a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vidupt.u32      q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint32x4_t
-foo2 (mve_pred16_t p)
-{
-  return vidupq_x_u32 (1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */
index f7a628990c92e4173ec05fb94ea33e05a30a38e4..e2b077ff974fcb7bfd405cb0544aeebc85395b66 100644 (file)
@@ -42,24 +42,8 @@ foo1 (uint32_t *a, mve_pred16_t p)
   return vidupq_x_u8 (a, 1, p);
 }
 
-/*
-**foo2:
-**     ...
-**     vmsr    p0, (?:ip|fp|r[0-9]+)(?:        @.*|)
-**     ...
-**     vpst(?: @.*|)
-**     ...
-**     vidupt.u8       q[0-9]+, (?:ip|fp|r[0-9]+), #[0-9]+(?:  @.*|)
-**     ...
-*/
-uint8x16_t
-foo2 (mve_pred16_t p)
-{
-  return vidupq_x_u8 (1, 1, p);
-}
-
 #ifdef __cplusplus
 }
 #endif
 
-/* { dg-final { scan-assembler-not "__ARM_undef" } } */
\ No newline at end of file
+/* { dg-final { scan-assembler-not "__ARM_undef" } } */