[gcc(refs/vendors/riscv/heads/gcc-15-with-riscv-opts)] RISC-V: Avoid scalar unsigned SAT_ADD test data duplication
Jeff Law
law@gcc.gnu.org
Fri Jan 30 06:37:37 GMT 2026
https://gcc.gnu.org/g:2c33ea962313193fcf9a6dc97db78e71edbeb3ca
commit 2c33ea962313193fcf9a6dc97db78e71edbeb3ca
Author: Pan Li <pan2.li@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.li@intel.com>
(cherry picked from commit 83477c3f6650429a7cdcb1b6da950c421aa2f77d)
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"
More information about the Gcc-cvs
mailing list