From: Pan Li <[email protected]>
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 <[email protected]>
---
.../gcc.target/riscv/sat/sat_arith.h | 12 ++++
.../gcc.target/riscv/sat/sat_arith_data.h | 61 +++++++++++++++++++
.../riscv/sat/sat_u_add-run-1-u16.c | 24 +++-----
.../riscv/sat/sat_u_add-run-1-u32.c | 24 +++-----
.../riscv/sat/sat_u_add-run-1-u64.c | 24 +++-----
.../gcc.target/riscv/sat/sat_u_add-run-1-u8.c | 24 +++-----
.../riscv/sat/sat_u_add-run-2-u16.c | 24 +++-----
.../riscv/sat/sat_u_add-run-2-u32.c | 24 +++-----
.../riscv/sat/sat_u_add-run-2-u64.c | 24 +++-----
.../gcc.target/riscv/sat/sat_u_add-run-2-u8.c | 24 +++-----
.../riscv/sat/sat_u_add-run-3-u16.c | 24 +++-----
.../riscv/sat/sat_u_add-run-3-u32.c | 24 +++-----
.../riscv/sat/sat_u_add-run-3-u64.c | 24 +++-----
.../gcc.target/riscv/sat/sat_u_add-run-3-u8.c | 24 +++-----
.../riscv/sat/sat_u_add-run-4-u16.c | 24 +++-----
.../riscv/sat/sat_u_add-run-4-u32.c | 24 +++-----
.../riscv/sat/sat_u_add-run-4-u64.c | 24 +++-----
.../gcc.target/riscv/sat/sat_u_add-run-4-u8.c | 24 +++-----
.../riscv/sat/sat_u_add-run-5-u16.c | 24 +++-----
.../riscv/sat/sat_u_add-run-5-u32.c | 24 +++-----
.../riscv/sat/sat_u_add-run-5-u64.c | 24 +++-----
.../gcc.target/riscv/sat/sat_u_add-run-5-u8.c | 24 +++-----
.../riscv/sat/sat_u_add-run-6-u16.c | 24 +++-----
.../riscv/sat/sat_u_add-run-6-u32.c | 24 +++-----
.../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 2225d30d77e..6e97cae96e6 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 9f9f7d0bcd1..f1006889d21 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 cb3879d0cde..fe015cc9d1c 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 c9a6080ca3b..8ee65019738 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 c19b7e22387..d2c6af0d432 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 f1972490006..154edde1794 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 99b5c3a39f0..1fc08bd1eb9 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 13f59548935..a52a230f629 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 cdbea7b1b2c..d05ed332d84 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 508531c09d7..fd393353b56 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 bd935dcfd61..7084272442c 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 deccf9a7525..82de67db75a 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 4f9936706a8..d73f3056e76 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 670932fa910..f572c440c0e 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 33a595dad51..65c431f8b89 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 8a5b7c10600..8a73fcde64e 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 fa20aae1d0b..0903e107955 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 083d6e59a06..ffdd390efd6 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 a1d5d70b4ab..72ccd2f776a 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 7608e71dd80..34d1a4ef549 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 496ab58150b..d502a58a680 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 936028cbe8b..f6113763b88 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 d304288d8b6..5ef250d1966 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 1a1ea598133..ba95dbf0545 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 dc977d5b3a5..d0e9dfda28b 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 8bc204ec74e..b3d00df16d7 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 25dc1d1bab3..26c27783ae0 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 565b108b5a3..1f3e2f3ff95 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 6ff34fd2235..558f6ce155d 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 9e6e70aa6b3..ec5ac70bd84 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 a1134edfd28..aa94eef6c32 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 ef9f7aa25b0..6ac38bae0b2 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"
--
2.43.0