From: Pan Li <pan2...@intel.com> Tweak the asm check with define T uint8_t for adding more vx test easily, as well as less possibility to make mistake.
The below test suites are passed for this patch. * The rv64gcv fully regression test. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Extract define T as type for testing. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. Signed-off-by: Pan Li <pan2...@intel.com> --- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c | 9 +++++---- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c | 8 +++++--- .../gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c | 8 +++++--- 48 files changed, 240 insertions(+), 145 deletions(-) diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c index 015b0866668..47fa654e62d 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int16_t, +, add) -DEF_VX_BINARY_CASE_0(int16_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int16_t, -, rsub); +#define T int16_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c index f0a88e8da87..9e16eaf5930 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int32_t, +, add) -DEF_VX_BINARY_CASE_0(int32_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int32_t, -, rsub); +#define T int32_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c index fbf9f6a930f..52271bee771 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int64_t, +, add) -DEF_VX_BINARY_CASE_0(int64_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int64_t, -, rsub); +#define T int64_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c index 55309308573..ac822fb66c8 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int8_t, +, add) -DEF_VX_BINARY_CASE_0(int8_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int8_t, -, rsub); +#define T int8_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c index 15edd71a438..f4e46b7e973 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint16_t, +, add) -DEF_VX_BINARY_CASE_0(uint16_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint16_t, -, rsub); +#define T uint16_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c index 992083e7235..9b83b661619 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint32_t, +, add) -DEF_VX_BINARY_CASE_0(uint32_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint32_t, -, rsub); +#define T uint32_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c index bb445f6e0ff..be807889d72 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint64_t, +, add) -DEF_VX_BINARY_CASE_0(uint64_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint64_t, -, rsub); +#define T uint64_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c index 73e144b06ee..5928c3f3f28 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint8_t, +, add) -DEF_VX_BINARY_CASE_0(uint8_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint8_t, -, rsub); +#define T uint8_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-times {vadd.vx} 1 } } */ /* { dg-final { scan-assembler-times {vsub.vx} 1 } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c index c55eaaac278..631f035d2e5 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int16_t, +, add) -DEF_VX_BINARY_CASE_0(int16_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int16_t, -, rsub); +#define T int16_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c index 0a0258ccfee..bbef0a23ccc 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int32_t, +, add) -DEF_VX_BINARY_CASE_0(int32_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int32_t, -, rsub); +#define T int32_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c index 4956315ee14..f4999fe899e 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int64_t, +, add) -DEF_VX_BINARY_CASE_0(int64_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int64_t, -, rsub); +#define T int64_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c index c1fa3b605d7..3ddfda0cfdb 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int8_t, +, add) -DEF_VX_BINARY_CASE_0(int8_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int8_t, -, rsub); +#define T int8_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c index 5dca3850240..a4e2eb84358 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint16_t, +, add) -DEF_VX_BINARY_CASE_0(uint16_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint16_t, -, rsub); +#define T uint16_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c index 4460fc06d00..87ea54d0d02 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint32_t, +, add) -DEF_VX_BINARY_CASE_0(uint32_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint32_t, -, rsub); +#define T uint32_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c index e8282c3d219..990145ccc3c 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint64_t, +, add) -DEF_VX_BINARY_CASE_0(uint64_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int64_t, -, rsub); +#define T uint64_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c index 7b744f1b460..d1495a4c486 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint8_t, +, add) -DEF_VX_BINARY_CASE_0(uint8_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint8_t, -, rsub); +#define T uint8_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c index b5f36ff3a44..9c3102a24c0 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int16_t, +, add) -DEF_VX_BINARY_CASE_0(int16_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int16_t, -, rsub); +#define T int16_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c index 93ba98d57e9..7da01011ce7 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int32_t, +, add) -DEF_VX_BINARY_CASE_0(int32_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int32_t, -, rsub); +#define T int32_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c index e73fbce0106..7e77db986bf 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int64_t, +, add) -DEF_VX_BINARY_CASE_0(int64_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int64_t, -, rsub); +#define T int64_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c index 2a3a6f1884b..957654fa1fe 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(int8_t, +, add) -DEF_VX_BINARY_CASE_0(int8_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(int8_t, -, rsub); +#define T int8_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c index 63358cd3354..a62334adb4d 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint16_t, +, add) -DEF_VX_BINARY_CASE_0(uint16_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint16_t, -, rsub); +#define T uint16_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c index 6ed098773c7..d7b31e2b589 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint32_t, +, add) -DEF_VX_BINARY_CASE_0(uint32_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint32_t, -, rsub); +#define T uint32_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c index f2bfe28f1a7..22f55508279 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint64_t, +, add) -DEF_VX_BINARY_CASE_0(uint64_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint64_t, -, rsub); +#define T uint64_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c index a89d4a00268..3473c5ffc6c 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_0(uint8_t, +, add) -DEF_VX_BINARY_CASE_0(uint8_t, -, sub) -DEF_VX_BINARY_REVERSE_CASE_0(uint8_t, -, rsub); +#define T uint8_t + +DEF_VX_BINARY_CASE_0_WRAP(T, +, add) +DEF_VX_BINARY_CASE_0_WRAP(T, -, sub) +DEF_VX_BINARY_REVERSE_CASE_0_WRAP(T, -, rsub); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c index 4d108569313..6f59b07d236 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int16_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(int16_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(int16_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T int16_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c index 410d9ffcfea..69b2227d889 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int32_t, +, add, VX_BINARY_BODY_X4) -DEF_VX_BINARY_CASE_1(int32_t, -, sub, VX_BINARY_BODY_X4) -DEF_VX_BINARY_REVERSE_CASE_1(int32_t, -, rsub, VX_BINARY_REVERSE_BODY_X4); +#define T int32_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X4) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X4) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X4); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c index 51b207055bd..8ea88d4d75b 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int64_t, +, add, VX_BINARY_BODY) -DEF_VX_BINARY_CASE_1(int64_t, -, sub, VX_BINARY_BODY) -DEF_VX_BINARY_REVERSE_CASE_1(int64_t, -, rsub, VX_BINARY_REVERSE_BODY); +#define T int64_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c index ff7773daee3..ec937d6458e 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int8_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(int8_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(int8_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T int8_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c index 00110752964..9d04f40ac90 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint16_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(uint16_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(uint16_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T uint16_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c index ecd405a3574..af01bf5f82a 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint32_t, +, add, VX_BINARY_BODY_X4) -DEF_VX_BINARY_CASE_1(uint32_t, -, sub, VX_BINARY_BODY_X4) -DEF_VX_BINARY_REVERSE_CASE_1(uint32_t, -, rsub, VX_BINARY_REVERSE_BODY_X4); +#define T uint32_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X4) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X4) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X4); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c index b712addf689..b83b31ddab9 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint64_t, +, add, VX_BINARY_BODY) -DEF_VX_BINARY_CASE_1(uint64_t, -, sub, VX_BINARY_BODY) -DEF_VX_BINARY_REVERSE_CASE_1(uint64_t, -, rsub, VX_BINARY_REVERSE_BODY); +#define T uint64_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c index 9c9f37d50c5..dc7be4ca8e0 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint8_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(uint8_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(uint8_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T uint8_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c index 3f33c45fafb..ebdae502298 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int16_t, +, add, VX_BINARY_BODY_X8) -DEF_VX_BINARY_CASE_1(int16_t, -, sub, VX_BINARY_BODY_X8) -DEF_VX_BINARY_REVERSE_CASE_1(int16_t, -, rsub, VX_BINARY_REVERSE_BODY_X8); +#define T int16_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X8) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X8) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X8); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c index 059cf0b1d2e..fadc0ce9dee 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int32_t, +, add, VX_BINARY_BODY_X4) -DEF_VX_BINARY_CASE_1(int32_t, -, sub, VX_BINARY_BODY_X4) -DEF_VX_BINARY_REVERSE_CASE_1(int32_t, -, rsub, VX_BINARY_REVERSE_BODY_X4); +#define T int32_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X4) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X4) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X4); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c index 9ac1dd06714..c3529e98ab6 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int64_t, +, add, VX_BINARY_BODY) -DEF_VX_BINARY_CASE_1(int64_t, -, sub, VX_BINARY_BODY) -DEF_VX_BINARY_REVERSE_CASE_1(int64_t, -, rsub, VX_BINARY_REVERSE_BODY); +#define T int64_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c index 63d0a820aa9..d196eb889b1 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int8_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(int8_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(int8_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T int8_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c index fe0ab0ea081..623a718f140 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint16_t, +, add, VX_BINARY_BODY_X8) -DEF_VX_BINARY_CASE_1(uint16_t, -, sub, VX_BINARY_BODY_X8) -DEF_VX_BINARY_REVERSE_CASE_1(uint16_t, -, rsub, VX_BINARY_REVERSE_BODY_X8); +#define T uint16_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X8) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X8) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X8); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c index 305f3564bb5..95cc0ff6e97 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint32_t, +, add, VX_BINARY_BODY_X4) -DEF_VX_BINARY_CASE_1(uint32_t, -, sub, VX_BINARY_BODY_X4) -DEF_VX_BINARY_REVERSE_CASE_1(uint32_t, -, rsub, VX_BINARY_REVERSE_BODY_X4); +#define T uint32_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X4) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X4) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X4); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c index bb95764f914..16b7c9bb88d 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint64_t, +, add, VX_BINARY_BODY) -DEF_VX_BINARY_CASE_1(uint64_t, -, sub, VX_BINARY_BODY) -DEF_VX_BINARY_REVERSE_CASE_1(uint64_t, -, rsub, VX_BINARY_REVERSE_BODY); +#define T uint64_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c index 347752af961..438eaec3494 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint8_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(uint8_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(uint8_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T uint8_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c index ce1b40fd174..65104e13820 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int16_t, +, add, VX_BINARY_BODY_X8) -DEF_VX_BINARY_CASE_1(int16_t, -, sub, VX_BINARY_BODY_X8) -DEF_VX_BINARY_REVERSE_CASE_1(int16_t, -, rsub, VX_BINARY_REVERSE_BODY_X8); +#define T int16_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X8) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X8) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X8); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c index 7326ded06f0..631b62f113b 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int32_t, +, add, VX_BINARY_BODY_X4) -DEF_VX_BINARY_CASE_1(int32_t, -, sub, VX_BINARY_BODY_X4) -DEF_VX_BINARY_REVERSE_CASE_1(int32_t, -, rsub, VX_BINARY_REVERSE_BODY_X4); +#define T int32_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X4) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X4) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X4); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c index 7b8b63dd3ce..64ea7416930 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int64_t, +, add, VX_BINARY_BODY) -DEF_VX_BINARY_CASE_1(int64_t, -, sub, VX_BINARY_BODY) -DEF_VX_BINARY_REVERSE_CASE_1(int64_t, -, rsub, VX_BINARY_REVERSE_BODY); +#define T int64_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c index f440b7075dc..2b26ce4f6a0 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(int8_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(int8_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(int8_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T int8_t + +DEF_VX_BINARY_CASE_1(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c index c36c5cb6416..19511867616 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c @@ -1,12 +1,13 @@ - /* { dg-do compile } */ /* { dg-options "-march=rv64gcv_zvl128b -mabi=lp64d --param=gpr2vr-cost=2" } */ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint16_t, +, add, VX_BINARY_BODY_X8) -DEF_VX_BINARY_CASE_1(uint16_t, -, sub, VX_BINARY_BODY_X8) -DEF_VX_BINARY_REVERSE_CASE_1(uint16_t, -, rsub, VX_BINARY_REVERSE_BODY_X8); +#define T uint16_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X8) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X8) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X8); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c index cfbcd9e5772..28508d6d7c7 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint32_t, +, add, VX_BINARY_BODY_X4) -DEF_VX_BINARY_CASE_1(uint32_t, -, sub, VX_BINARY_BODY_X4) -DEF_VX_BINARY_REVERSE_CASE_1(uint32_t, -, rsub, VX_BINARY_REVERSE_BODY_X4); +#define T uint32_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X4) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X4) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X4); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c index 5d837f1a6d4..fa50d0f3b13 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint64_t, +, add, VX_BINARY_BODY) -DEF_VX_BINARY_CASE_1(uint64_t, -, sub, VX_BINARY_BODY) -DEF_VX_BINARY_REVERSE_CASE_1(uint64_t, -, rsub, VX_BINARY_REVERSE_BODY); +#define T uint64_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY); /* { dg-final { scan-assembler-not {vadd.vx} } } */ /* { dg-final { scan-assembler-not {vsub.vx} } } */ diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c index 0da03d6225b..da51d0a1116 100644 --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c @@ -3,9 +3,11 @@ #include "vx_binary.h" -DEF_VX_BINARY_CASE_1(uint8_t, +, add, VX_BINARY_BODY_X16) -DEF_VX_BINARY_CASE_1(uint8_t, -, sub, VX_BINARY_BODY_X16) -DEF_VX_BINARY_REVERSE_CASE_1(uint8_t, -, rsub, VX_BINARY_REVERSE_BODY_X16); +#define T uint8_t + +DEF_VX_BINARY_CASE_1_WRAP(T, +, add, VX_BINARY_BODY_X16) +DEF_VX_BINARY_CASE_1_WRAP(T, -, sub, VX_BINARY_BODY_X16) +DEF_VX_BINARY_REVERSE_CASE_1_WRAP(T, -, rsub, VX_BINARY_REVERSE_BODY_X16); /* { dg-final { scan-assembler {vadd.vx} } } */ /* { dg-final { scan-assembler {vsub.vx} } } */ -- 2.43.0