Testing v[id]wdup overloads with '1' as argument for uint32_t* does not make sense: this patch adds a new 'unit32_t *a' parameter to foo2 in such tests.
The difference with v[id]dup tests (where we removed 'foo2') is that in 'foo1' we test the overload with a variable 'wrap' parameter (b) and we need foo2 to test the overload with an immediate (1). 2024-08-28 Christophe Lyon <christophe.l...@linaro.org> gcc/testsuite/ * gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u16.c: Use pointer parameter in foo2. * gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u32.c: Likewise. * gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u8.c: Likewise. * gcc.target/arm/mve/intrinsics/vdwdupq_wb_u16.c: Likewise. * gcc.target/arm/mve/intrinsics/vdwdupq_wb_u32.c: Likewise. * gcc.target/arm/mve/intrinsics/vdwdupq_wb_u8.c: Likewise. * gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u16.c: Likewise. * gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u32.c: Likewise. * gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u8.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u16.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u32.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u8.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_wb_u16.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_wb_u32.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_wb_u8.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u16.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u32.c: Likewise. * gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u8.c: Likewise. --- .../gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u16.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u32.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u8.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/vdwdupq_wb_u16.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/vdwdupq_wb_u32.c | 6 +++--- gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u8.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u16.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u32.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u8.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u16.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u32.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u8.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_wb_u16.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_wb_u32.c | 6 +++--- gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u8.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u16.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u32.c | 6 +++--- .../gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u8.c | 6 +++--- 18 files changed, 54 insertions(+), 54 deletions(-) diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u16.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u16.c index b24e7a2f5af..e6004056c2c 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u16.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u16.c @@ -53,13 +53,13 @@ foo1 (uint16x8_t inactive, uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint16x8_t -foo2 (uint16x8_t inactive, mve_pred16_t p) +foo2 (uint16x8_t inactive, uint32_t *a, mve_pred16_t p) { - return vdwdupq_m (inactive, 1, 1, 1, p); + return vdwdupq_m (inactive, a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u32.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u32.c index 75c41450a38..b36dbcd8585 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u32.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u32.c @@ -53,13 +53,13 @@ foo1 (uint32x4_t inactive, uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint32x4_t -foo2 (uint32x4_t inactive, mve_pred16_t p) +foo2 (uint32x4_t inactive, uint32_t *a, mve_pred16_t p) { - return vdwdupq_m (inactive, 1, 1, 1, p); + return vdwdupq_m (inactive, a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u8.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u8.c index 90d64671dcf..b1577065a48 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u8.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_m_wb_u8.c @@ -53,13 +53,13 @@ foo1 (uint8x16_t inactive, uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint8x16_t -foo2 (uint8x16_t inactive, mve_pred16_t p) +foo2 (uint8x16_t inactive, uint32_t *a, mve_pred16_t p) { - return vdwdupq_m (inactive, 1, 1, 1, p); + return vdwdupq_m (inactive, a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u16.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u16.c index 87af2b6817a..f1fae4b47e7 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u16.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u16.c @@ -41,13 +41,13 @@ foo1 (uint32_t *a, uint32_t b) ** ... */ uint16x8_t -foo2 () +foo2 (uint32_t *a) { - return vdwdupq_u16 (1, 1, 1); + return vdwdupq_u16 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u32.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u32.c index ec136dc3222..4282826a4f4 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u32.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u32.c @@ -41,13 +41,13 @@ foo1 (uint32_t *a, uint32_t b) ** ... */ uint32x4_t -foo2 () +foo2 (uint32_t *a) { - return vdwdupq_u32 (1, 1, 1); + return vdwdupq_u32 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u8.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u8.c index 3653d00bc5d..afc8eb281ae 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u8.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_wb_u8.c @@ -41,13 +41,13 @@ foo1 (uint32_t *a, uint32_t b) ** ... */ uint8x16_t -foo2 () +foo2 (uint32_t *a) { - return vdwdupq_u8 (1, 1, 1); + return vdwdupq_u8 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u16.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u16.c index e9d994ccfc5..fd250c2652c 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u16.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u16.c @@ -53,13 +53,13 @@ foo1 (uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint16x8_t -foo2 (mve_pred16_t p) +foo2 (uint32_t *a, mve_pred16_t p) { - return vdwdupq_x_u16 (1, 1, 1, p); + return vdwdupq_x_u16 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u32.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u32.c index 07438b02351..dbb1961dea5 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u32.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u32.c @@ -53,13 +53,13 @@ foo1 (uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint32x4_t -foo2 (mve_pred16_t p) +foo2 (uint32_t *a, mve_pred16_t p) { - return vdwdupq_x_u32 (1, 1, 1, p); + return vdwdupq_x_u32 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u8.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u8.c index 96280225351..5f004717487 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u8.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vdwdupq_x_wb_u8.c @@ -53,13 +53,13 @@ foo1 (uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint8x16_t -foo2 (mve_pred16_t p) +foo2 (uint32_t *a, mve_pred16_t p) { - return vdwdupq_x_u8 (1, 1, 1, p); + return vdwdupq_x_u8 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u16.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u16.c index 84733f94e7c..4d7b0a194ac 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u16.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u16.c @@ -53,13 +53,13 @@ foo1 (uint16x8_t inactive, uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint16x8_t -foo2 (uint16x8_t inactive, mve_pred16_t p) +foo2 (uint16x8_t inactive, uint32_t *a, mve_pred16_t p) { - return viwdupq_m (inactive, 1, 1, 1, p); + return viwdupq_m (inactive, a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u32.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u32.c index a175744b654..e78f818ffb8 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u32.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u32.c @@ -53,13 +53,13 @@ foo1 (uint32x4_t inactive, uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint32x4_t -foo2 (uint32x4_t inactive, mve_pred16_t p) +foo2 (uint32x4_t inactive, uint32_t *a, mve_pred16_t p) { - return viwdupq_m (inactive, 1, 1, 1, p); + return viwdupq_m (inactive, a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u8.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u8.c index 7240b6e72bc..2c2f44c87ea 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u8.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_m_wb_u8.c @@ -53,13 +53,13 @@ foo1 (uint8x16_t inactive, uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint8x16_t -foo2 (uint8x16_t inactive, mve_pred16_t p) +foo2 (uint8x16_t inactive, uint32_t *a, mve_pred16_t p) { - return viwdupq_m (inactive, 1, 1, 1, p); + return viwdupq_m (inactive, a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u16.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u16.c index eaa496bb2da..ccdc3d4ad33 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u16.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u16.c @@ -41,13 +41,13 @@ foo1 (uint32_t *a, uint32_t b) ** ... */ uint16x8_t -foo2 () +foo2 (uint32_t *a) { - return viwdupq_u16 (1, 1, 1); + return viwdupq_u16 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u32.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u32.c index c1912d77486..1faffff4d21 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u32.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u32.c @@ -41,13 +41,13 @@ foo1 (uint32_t *a, uint32_t b) ** ... */ uint32x4_t -foo2 () +foo2 (uint32_t *a) { - return viwdupq_u32 (1, 1, 1); + return viwdupq_u32 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u8.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u8.c index f0d66a9ba29..91b0ef41bdc 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u8.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_wb_u8.c @@ -41,13 +41,13 @@ foo1 (uint32_t *a, uint32_t b) ** ... */ uint8x16_t -foo2 () +foo2 (uint32_t *a) { - return viwdupq_u8 (1, 1, 1); + return viwdupq_u8 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u16.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u16.c index 265aef42c92..8b474e192c3 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u16.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u16.c @@ -53,13 +53,13 @@ foo1 (uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint16x8_t -foo2 (mve_pred16_t p) +foo2 (uint32_t *a, mve_pred16_t p) { - return viwdupq_x_u16 (1, 1, 1, p); + return viwdupq_x_u16 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u32.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u32.c index 585e41075db..30bf37c7d4f 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u32.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u32.c @@ -53,13 +53,13 @@ foo1 (uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint32x4_t -foo2 (mve_pred16_t p) +foo2 (uint32_t *a, mve_pred16_t p) { - return viwdupq_x_u32 (1, 1, 1, p); + return viwdupq_x_u32 (a, 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" } } */ diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u8.c b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u8.c index ca39081dfc5..ae9dd2baa41 100644 --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u8.c +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/viwdupq_x_wb_u8.c @@ -53,13 +53,13 @@ foo1 (uint32_t *a, uint32_t b, mve_pred16_t p) ** ... */ uint8x16_t -foo2 (mve_pred16_t p) +foo2 (uint32_t *a, mve_pred16_t p) { - return viwdupq_x_u8 (1, 1, 1, p); + return viwdupq_x_u8 (a, 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" } } */ -- 2.34.1