https://gcc.gnu.org/g:83477c3f6650429a7cdcb1b6da950c421aa2f77d
commit r16-707-g83477c3f6650429a7cdcb1b6da950c421aa2f77d Author: Pan Li <pan2...@intel.com> Date: Fri May 16 15:34:51 2025 +0800 RISC-V: Avoid scalar unsigned SAT_ADD test data duplication Some of the previous scalar unsigned SAT_ADD test data are duplicated in different test files. This patch would like to move them into a shared header file, to avoid the test data duplication. The below test suites are passed for this patch series. * The rv64gcv fully regression test. gcc/testsuite/ChangeLog: * gcc.target/riscv/sat/sat_arith.h: Add more helper macros. * gcc.target/riscv/sat/sat_arith_data.h: Add the test data for scalar unsigned SAT_ADD. * gcc.target/riscv/sat/sat_u_add-run-1-u16.c: Leverage the test data from the shared header file. * gcc.target/riscv/sat/sat_u_add-run-1-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-1-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-1-u8.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-2-u16.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-2-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-2-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-2-u8.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-3-u16.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-3-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-3-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-3-u8.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-4-u16.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-4-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-4-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-4-u8.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-5-u16.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-5-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-5-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-5-u8.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-6-u16.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-6-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-6-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-6-u8.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c: Ditto * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c: Ditto Signed-off-by: Pan Li <pan2...@intel.com> Diff: --- gcc/testsuite/gcc.target/riscv/sat/sat_arith.h | 12 +++++ .../gcc.target/riscv/sat/sat_arith_data.h | 61 ++++++++++++++++++++++ .../gcc.target/riscv/sat/sat_u_add-run-1-u16.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-1-u32.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-1-u64.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-1-u8.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-2-u16.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-2-u32.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-2-u64.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-2-u8.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-3-u16.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-3-u32.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-3-u64.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-3-u8.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-4-u16.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-4-u32.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-4-u64.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-4-u8.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-5-u16.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-5-u32.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-5-u64.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-5-u8.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-6-u16.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-6-u32.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-6-u64.c | 24 +++------ .../gcc.target/riscv/sat/sat_u_add-run-6-u8.c | 24 +++------ .../riscv/sat/sat_u_add-run-7-u16-from-u32.c | 26 +++------ .../riscv/sat/sat_u_add-run-7-u16-from-u64.c | 26 +++------ .../riscv/sat/sat_u_add-run-7-u32-from-u64.c | 26 +++------ .../riscv/sat/sat_u_add-run-7-u8-from-u16.c | 26 +++------ .../riscv/sat/sat_u_add-run-7-u8-from-u32.c | 26 +++------ .../riscv/sat/sat_u_add-run-7-u8-from-u64.c | 26 +++------ 32 files changed, 289 insertions(+), 516 deletions(-) diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_arith.h b/gcc/testsuite/gcc.target/riscv/sat/sat_arith.h index 2225d30d77e2..6e97cae96e6e 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_arith.h +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_arith.h @@ -13,6 +13,7 @@ sat_u_add_##T##_fmt_1 (T x, T y) \ { \ return (x + y) | (-(T)((T)(x + y) < x)); \ } +#define DEF_SAT_U_ADD_FMT_1_WRAP(T) DEF_SAT_U_ADD_FMT_1(T) #define DEF_SAT_U_ADD_FMT_2(T) \ T __attribute__((noinline)) \ @@ -20,6 +21,7 @@ sat_u_add_##T##_fmt_2 (T x, T y) \ { \ return (T)(x + y) >= x ? (x + y) : -1; \ } +#define DEF_SAT_U_ADD_FMT_2_WRAP(T) DEF_SAT_U_ADD_FMT_2(T) #define DEF_SAT_U_ADD_FMT_3(T) \ T __attribute__((noinline)) \ @@ -29,6 +31,7 @@ sat_u_add_##T##_fmt_3 (T x, T y) \ T overflow = __builtin_add_overflow (x, y, &ret); \ return (T)(-overflow) | ret; \ } +#define DEF_SAT_U_ADD_FMT_3_WRAP(T) DEF_SAT_U_ADD_FMT_3(T) #define DEF_SAT_U_ADD_FMT_4(T) \ T __attribute__((noinline)) \ @@ -37,6 +40,7 @@ sat_u_add_##T##_fmt_4 (T x, T y) \ T ret; \ return __builtin_add_overflow (x, y, &ret) ? -1 : ret; \ } +#define DEF_SAT_U_ADD_FMT_4_WRAP(T) DEF_SAT_U_ADD_FMT_4(T) #define DEF_SAT_U_ADD_FMT_5(T) \ T __attribute__((noinline)) \ @@ -45,6 +49,7 @@ sat_u_add_##T##_fmt_5 (T x, T y) \ T ret; \ return __builtin_add_overflow (x, y, &ret) == 0 ? ret : -1; \ } +#define DEF_SAT_U_ADD_FMT_5_WRAP(T) DEF_SAT_U_ADD_FMT_5(T) #define DEF_SAT_U_ADD_FMT_6(T) \ T __attribute__((noinline)) \ @@ -52,6 +57,7 @@ sat_u_add_##T##_fmt_6 (T x, T y) \ { \ return (T)(x + y) < x ? -1 : (x + y); \ } +#define DEF_SAT_U_ADD_FMT_6_WRAP(T) DEF_SAT_U_ADD_FMT_6(T) #define DEF_SAT_U_ADD_FMT_7(WT, T) \ T __attribute__((noinline)) \ @@ -64,11 +70,17 @@ sat_u_add_##WT##_##T##_fmt_7(T x, T y) \ #define DEF_SAT_U_ADD_FMT_7_WRAP(WT, T) DEF_SAT_U_ADD_FMT_7(WT, T) #define RUN_SAT_U_ADD_FMT_1(T, x, y) sat_u_add_##T##_fmt_1(x, y) +#define RUN_SAT_U_ADD_FMT_1_WRAP(T, x, y) RUN_SAT_U_ADD_FMT_1(T, x, y) #define RUN_SAT_U_ADD_FMT_2(T, x, y) sat_u_add_##T##_fmt_2(x, y) +#define RUN_SAT_U_ADD_FMT_2_WRAP(T, x, y) RUN_SAT_U_ADD_FMT_2(T, x, y) #define RUN_SAT_U_ADD_FMT_3(T, x, y) sat_u_add_##T##_fmt_3(x, y) +#define RUN_SAT_U_ADD_FMT_3_WRAP(T, x, y) RUN_SAT_U_ADD_FMT_3(T, x, y) #define RUN_SAT_U_ADD_FMT_4(T, x, y) sat_u_add_##T##_fmt_4(x, y) +#define RUN_SAT_U_ADD_FMT_4_WRAP(T, x, y) RUN_SAT_U_ADD_FMT_4(T, x, y) #define RUN_SAT_U_ADD_FMT_5(T, x, y) sat_u_add_##T##_fmt_5(x, y) +#define RUN_SAT_U_ADD_FMT_5_WRAP(T, x, y) RUN_SAT_U_ADD_FMT_5(T, x, y) #define RUN_SAT_U_ADD_FMT_6(T, x, y) sat_u_add_##T##_fmt_6(x, y) +#define RUN_SAT_U_ADD_FMT_6_WRAP(T, x, y) RUN_SAT_U_ADD_FMT_6(T, x, y) #define RUN_SAT_U_ADD_FMT_7_FROM_U16(T, x, y) \ sat_u_add_uint16_t_##T##_fmt_7(x, y) #define RUN_SAT_U_ADD_FMT_7_FROM_U16_WRAP(T, x, y) \ diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_arith_data.h b/gcc/testsuite/gcc.target/riscv/sat/sat_arith_data.h index 9f9f7d0bcd19..f1006889d212 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_arith_data.h +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_arith_data.h @@ -32,6 +32,11 @@ TEST_UNARY_STRUCT (uint16_t, uint32_t) TEST_UNARY_STRUCT (uint16_t, uint64_t) TEST_UNARY_STRUCT (uint32_t, uint64_t) +TEST_BINARY_STRUCT (uint8_t, usadd) +TEST_BINARY_STRUCT (uint16_t, usadd) +TEST_BINARY_STRUCT (uint32_t, usadd) +TEST_BINARY_STRUCT (uint64_t, usadd) + TEST_BINARY_STRUCT (int8_t, ssadd) TEST_BINARY_STRUCT (int16_t, ssadd) TEST_BINARY_STRUCT (int32_t, ssadd) @@ -236,6 +241,62 @@ TEST_UNARY_STRUCT_DECL(int32_t, int64_t) \ {-2147483648, -9223372036854775808ull}, }; +TEST_BINARY_STRUCT_DECL(uint8_t, usadd) TEST_BINARY_DATA(uint8_t, usadd)[] = +{ + { 0, 0, 0, }, + { 0, 1, 1, }, + { 1, 1, 2, }, + { 0, 254, 254, }, + { 1, 254, 255, }, + { 2, 254, 255, }, + { 0, 255, 255, }, + { 1, 255, 255, }, + { 2, 255, 255, }, + { 255, 255, 255, }, +}; + +TEST_BINARY_STRUCT_DECL(uint16_t, usadd) TEST_BINARY_DATA(uint16_t, usadd)[] = +{ + { 0, 0, 0, }, + { 0, 1, 1, }, + { 1, 1, 2, }, + { 0, 65534, 65534, }, + { 1, 65534, 65535, }, + { 2, 65534, 65535, }, + { 0, 65535, 65535, }, + { 1, 65535, 65535, }, + { 2, 65535, 65535, }, + { 65535, 65535, 65535, }, +}; + +TEST_BINARY_STRUCT_DECL(uint32_t, usadd) TEST_BINARY_DATA(uint32_t, usadd)[] = +{ + { 0, 0, 0, }, + { 0, 1, 1, }, + { 1, 1, 2, }, + { 0, 4294967294, 4294967294, }, + { 1, 4294967294, 4294967295, }, + { 2, 4294967294, 4294967295, }, + { 0, 4294967295, 4294967295, }, + { 1, 4294967295, 4294967295, }, + { 2, 4294967295, 4294967295, }, + { 4294967295, 4294967295, 4294967295, }, +}; + +TEST_BINARY_STRUCT_DECL(uint64_t, usadd) TEST_BINARY_DATA(uint64_t, usadd)[] = +{ + { 0, 0, 0, }, + { 0, 1, 1, }, + { 1, 1, 2, }, + { 0, 18446744073709551614u, 18446744073709551614u, }, + { 1, 18446744073709551614u, 18446744073709551615u, }, + { 2, 18446744073709551614u, 18446744073709551615u, }, + { 0, 18446744073709551615u, 18446744073709551615u, }, + { 1, 18446744073709551615u, 18446744073709551615u, }, + { 2, 18446744073709551615u, 18446744073709551615u, }, + { 18446744073709551615u, 18446744073709551615u, 18446744073709551615u, }, +}; + TEST_BINARY_STRUCT_DECL(int8_t, ssadd) TEST_BINARY_DATA(int8_t, ssadd)[] = { { 0, 0, 0}, diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u16.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u16.c index cb3879d0cded..fe015cc9d1ca 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u16.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u16.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_1 +#define T1 uint16_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_1(T) +DEF_SAT_U_ADD_FMT_1_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_1_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u32.c index c9a6080ca3b6..8ee650197383 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u32.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_1 +#define T1 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_1(T) +DEF_SAT_U_ADD_FMT_1_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 4294967294, 4294967294, }, - { 1, 4294967294, 4294967295, }, - { 2, 4294967294, 4294967295, }, - { 0, 4294967295, 4294967295, }, - { 1, 4294967295, 4294967295, }, - { 2, 4294967295, 4294967295, }, - { 4294967295, 4294967295, 4294967295, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_1_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u64.c index c19b7e22387d..d2c6af0d432d 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u64.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_1 +#define T1 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_1(T) +DEF_SAT_U_ADD_FMT_1_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 18446744073709551614u, 18446744073709551614u, }, - { 1, 18446744073709551614u, 18446744073709551615u, }, - { 2, 18446744073709551614u, 18446744073709551615u, }, - { 0, 18446744073709551615u, 18446744073709551615u, }, - { 1, 18446744073709551615u, 18446744073709551615u, }, - { 2, 18446744073709551615u, 18446744073709551615u, }, - { 18446744073709551615u, 18446744073709551615u, 18446744073709551615u, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_1_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u8.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u8.c index f19724900069..154edde17943 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u8.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-1-u8.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_1 +#define T1 uint8_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_1(T) +DEF_SAT_U_ADD_FMT_1_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_1_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u16.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u16.c index 99b5c3a39f04..1fc08bd1eb96 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u16.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u16.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_2 +#define T1 uint16_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_2(T) +DEF_SAT_U_ADD_FMT_2_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_2_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u32.c index 13f595489352..a52a230f629b 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u32.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_2 +#define T1 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_2(T) +DEF_SAT_U_ADD_FMT_2_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 4294967294, 4294967294, }, - { 1, 4294967294, 4294967295, }, - { 2, 4294967294, 4294967295, }, - { 0, 4294967295, 4294967295, }, - { 1, 4294967295, 4294967295, }, - { 2, 4294967295, 4294967295, }, - { 4294967295, 4294967295, 4294967295, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_2_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u64.c index cdbea7b1b2ca..d05ed332d841 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u64.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_2 +#define T1 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_2(T) +DEF_SAT_U_ADD_FMT_2_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 18446744073709551614u, 18446744073709551614u, }, - { 1, 18446744073709551614u, 18446744073709551615u, }, - { 2, 18446744073709551614u, 18446744073709551615u, }, - { 0, 18446744073709551615u, 18446744073709551615u, }, - { 1, 18446744073709551615u, 18446744073709551615u, }, - { 2, 18446744073709551615u, 18446744073709551615u, }, - { 18446744073709551615u, 18446744073709551615u, 18446744073709551615u, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_2_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u8.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u8.c index 508531c09d73..fd393353b569 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u8.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-2-u8.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_2 +#define T1 uint8_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_2(T) +DEF_SAT_U_ADD_FMT_2_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_2_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u16.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u16.c index bd935dcfd610..7084272442c6 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u16.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u16.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_3 +#define T1 uint16_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_3(T) +DEF_SAT_U_ADD_FMT_3_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_3_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u32.c index deccf9a75250..82de67db75a1 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u32.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_3 +#define T1 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_3(T) +DEF_SAT_U_ADD_FMT_3_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 4294967294, 4294967294, }, - { 1, 4294967294, 4294967295, }, - { 2, 4294967294, 4294967295, }, - { 0, 4294967295, 4294967295, }, - { 1, 4294967295, 4294967295, }, - { 2, 4294967295, 4294967295, }, - { 4294967295, 4294967295, 4294967295, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_3_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u64.c index 4f9936706a88..d73f3056e760 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u64.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_3 +#define T1 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_3(T) +DEF_SAT_U_ADD_FMT_3_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 18446744073709551614u, 18446744073709551614u, }, - { 1, 18446744073709551614u, 18446744073709551615u, }, - { 2, 18446744073709551614u, 18446744073709551615u, }, - { 0, 18446744073709551615u, 18446744073709551615u, }, - { 1, 18446744073709551615u, 18446744073709551615u, }, - { 2, 18446744073709551615u, 18446744073709551615u, }, - { 18446744073709551615u, 18446744073709551615u, 18446744073709551615u, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_3_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u8.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u8.c index 670932fa9101..f572c440c0e5 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u8.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-3-u8.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_3 +#define T1 uint8_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_3(T) +DEF_SAT_U_ADD_FMT_3_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_3_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u16.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u16.c index 33a595dad51b..65c431f8b893 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u16.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u16.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_4 +#define T1 uint16_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_4(T) +DEF_SAT_U_ADD_FMT_4_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_4_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u32.c index 8a5b7c106008..8a73fcde64e5 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u32.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_4 +#define T1 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_4(T) +DEF_SAT_U_ADD_FMT_4_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 4294967294, 4294967294, }, - { 1, 4294967294, 4294967295, }, - { 2, 4294967294, 4294967295, }, - { 0, 4294967295, 4294967295, }, - { 1, 4294967295, 4294967295, }, - { 2, 4294967295, 4294967295, }, - { 4294967295, 4294967295, 4294967295, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_4_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u64.c index fa20aae1d0be..0903e107955b 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u64.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_4 +#define T1 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_4(T) +DEF_SAT_U_ADD_FMT_4_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 18446744073709551614u, 18446744073709551614u, }, - { 1, 18446744073709551614u, 18446744073709551615u, }, - { 2, 18446744073709551614u, 18446744073709551615u, }, - { 0, 18446744073709551615u, 18446744073709551615u, }, - { 1, 18446744073709551615u, 18446744073709551615u, }, - { 2, 18446744073709551615u, 18446744073709551615u, }, - { 18446744073709551615u, 18446744073709551615u, 18446744073709551615u, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_4_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u8.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u8.c index 083d6e59a06f..ffdd390efd6b 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u8.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-4-u8.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_4 +#define T1 uint8_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_4(T) +DEF_SAT_U_ADD_FMT_4_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_4_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u16.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u16.c index a1d5d70b4ab5..72ccd2f776a7 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u16.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u16.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_5 +#define T1 uint16_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_5(T) +DEF_SAT_U_ADD_FMT_5_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_5_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u32.c index 7608e71dd80b..34d1a4ef5491 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u32.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_5 +#define T1 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_5(T) +DEF_SAT_U_ADD_FMT_5_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 4294967294, 4294967294, }, - { 1, 4294967294, 4294967295, }, - { 2, 4294967294, 4294967295, }, - { 0, 4294967295, 4294967295, }, - { 1, 4294967295, 4294967295, }, - { 2, 4294967295, 4294967295, }, - { 4294967295, 4294967295, 4294967295, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_5_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u64.c index 496ab58150b8..d502a58a6809 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u64.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_5 +#define T1 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_5(T) +DEF_SAT_U_ADD_FMT_5_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 18446744073709551614u, 18446744073709551614u, }, - { 1, 18446744073709551614u, 18446744073709551615u, }, - { 2, 18446744073709551614u, 18446744073709551615u, }, - { 0, 18446744073709551615u, 18446744073709551615u, }, - { 1, 18446744073709551615u, 18446744073709551615u, }, - { 2, 18446744073709551615u, 18446744073709551615u, }, - { 18446744073709551615u, 18446744073709551615u, 18446744073709551615u, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_5_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u8.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u8.c index 936028cbe8bb..f6113763b889 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u8.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-5-u8.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_5 +#define T1 uint8_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_5(T) +DEF_SAT_U_ADD_FMT_5_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_5_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u16.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u16.c index d304288d8b61..5ef250d19663 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u16.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u16.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_6 +#define T1 uint16_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_6(T) +DEF_SAT_U_ADD_FMT_6_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_6_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u32.c index 1a1ea5981335..ba95dbf0545e 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u32.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_6 +#define T1 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_6(T) +DEF_SAT_U_ADD_FMT_6_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 4294967294, 4294967294, }, - { 1, 4294967294, 4294967295, }, - { 2, 4294967294, 4294967295, }, - { 0, 4294967295, 4294967295, }, - { 1, 4294967295, 4294967295, }, - { 2, 4294967295, 4294967295, }, - { 4294967295, 4294967295, 4294967295, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_6_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u64.c index dc977d5b3a50..d0e9dfda28b9 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u64.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_6 +#define T1 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_6(T) +DEF_SAT_U_ADD_FMT_6_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 18446744073709551614u, 18446744073709551614u, }, - { 1, 18446744073709551614u, 18446744073709551615u, }, - { 2, 18446744073709551614u, 18446744073709551615u, }, - { 0, 18446744073709551615u, 18446744073709551615u, }, - { 1, 18446744073709551615u, 18446744073709551615u, }, - { 2, 18446744073709551615u, 18446744073709551615u, }, - { 18446744073709551615u, 18446744073709551615u, 18446744073709551615u, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_6_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u8.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u8.c index 8bc204ec74e4..b3d00df16d73 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u8.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-6-u8.c @@ -2,24 +2,14 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_6 +#define T1 uint8_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_6(T) +DEF_SAT_U_ADD_FMT_6_WRAP(T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_6_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c index 25dc1d1bab36..26c27783ae04 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c @@ -2,25 +2,15 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define WT uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_7_FROM_U32_WRAP +#define T1 uint16_t +#define T2 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_7_WRAP(WT, T) +DEF_SAT_U_ADD_FMT_7_WRAP(T2, T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_7_FROM_U32_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c index 565b108b5a36..1f3e2f3ff957 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c @@ -2,25 +2,15 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint16_t -#define WT uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_7_FROM_U64_WRAP +#define T1 uint16_t +#define T2 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_7_WRAP(WT, T) +DEF_SAT_U_ADD_FMT_7_WRAP(T2, T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 65534, 65534, }, - { 1, 65534, 65535, }, - { 2, 65534, 65535, }, - { 0, 65535, 65535, }, - { 1, 65535, 65535, }, - { 2, 65535, 65535, }, - { 65535, 65535, 65535, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_7_FROM_U64_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c index 6ff34fd2235b..558f6ce155d1 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c @@ -2,25 +2,15 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint32_t -#define WT uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_7_FROM_U64_WRAP +#define T1 uint32_t +#define T2 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_7_WRAP(WT, T) +DEF_SAT_U_ADD_FMT_7_WRAP(T2, T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 4294967294, 4294967294, }, - { 1, 4294967294, 4294967295, }, - { 2, 4294967294, 4294967295, }, - { 0, 4294967295, 4294967295, }, - { 1, 4294967295, 4294967295, }, - { 2, 4294967295, 4294967295, }, - { 4294967295, 4294967295, 4294967295, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_7_FROM_U64_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c index 9e6e70aa6b36..ec5ac70bd84a 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c @@ -2,25 +2,15 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define WT uint16_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_7_FROM_U16_WRAP +#define T1 uint8_t +#define T2 uint16_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_7_WRAP(WT, T) +DEF_SAT_U_ADD_FMT_7_WRAP(T2, T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_7_FROM_U16_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c index a1134edfd284..aa94eef6c329 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c @@ -2,25 +2,15 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define WT uint32_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_7_FROM_U32_WRAP +#define T1 uint8_t +#define T2 uint32_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_7_WRAP(WT, T) +DEF_SAT_U_ADD_FMT_7_WRAP(T2, T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_7_FROM_U32_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h" diff --git a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c index ef9f7aa25b0c..6ac38bae0b2b 100644 --- a/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c +++ b/gcc/testsuite/gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c @@ -2,25 +2,15 @@ /* { dg-additional-options "-std=c99" } */ #include "sat_arith.h" +#include "sat_arith_data.h" -#define T uint8_t -#define WT uint64_t -#define RUN_SAT_BINARY RUN_SAT_U_ADD_FMT_7_FROM_U64_WRAP +#define T1 uint8_t +#define T2 uint64_t +#define DATA TEST_BINARY_DATA_WRAP(T1, usadd) +#define T TEST_BINARY_STRUCT_DECL(T1, usadd) -DEF_SAT_U_ADD_FMT_7_WRAP(WT, T) +DEF_SAT_U_ADD_FMT_7_WRAP(T2, T1) -T test_data[][3] = { - /* arg_0, arg_1, expect */ - { 0, 0, 0, }, - { 0, 1, 1, }, - { 1, 1, 2, }, - { 0, 254, 254, }, - { 1, 254, 255, }, - { 2, 254, 255, }, - { 0, 255, 255, }, - { 1, 255, 255, }, - { 2, 255, 255, }, - { 255, 255, 255, }, -}; +#define RUN_BINARY(x, y) RUN_SAT_U_ADD_FMT_7_FROM_U64_WRAP(T1, x, y) -#include "scalar_sat_binary.h" +#include "scalar_sat_binary_run_xxx.h"