aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2018-02-01 11:04:58 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2018-02-01 11:04:58 +0000
commit0c64497d6eae75b9f87aef777f9beb5184ecaa64 (patch)
treea8a51730f29186c0ba73725362bf62ec2f16b6ba
parent002092be4027b1fd667178e9bbe99fa6ecee2e10 (diff)
downloadgcc-0c64497d6eae75b9f87aef777f9beb5184ecaa64.zip
gcc-0c64497d6eae75b9f87aef777f9beb5184ecaa64.tar.gz
gcc-0c64497d6eae75b9f87aef777f9beb5184ecaa64.tar.bz2
[AArch64] Fix SVE testsuite failures for ILP32 (PR 83846)
The SVE tests are split into code-quality compile tests and runtime tests. A lot of the former are geared towards LP64. It would be possible (but tedious!) to mark up every line that is expected to work only for LP64, but I think it would be a constant source of problems. Since the code has not been tuned for ILP32 yet, I think the best thing is to select only the runtime tests for that combination. They all pass on aarch64-elf and aarch64_be-elf except vec-cond-[34].c, which are unsupported due to the lack of fenv support. The patch also replaces uses of built-in types with stdint.h types where possible. (This excludes tests that change the endianness, since we can't assume that system header files work in that case.) 2018-02-01 Richard Sandiford <richard.sandiford@linaro.org> gcc/testsuite/ PR testsuite/83846 * gcc.target/aarch64/sve/aarch64-sve.exp: Only do *_run tests for ILP32. * gcc.target/aarch64/sve/clastb_2_run.c (main): Use TYPE instead of hard-coding the choice. * gcc.target/aarch64/sve/clastb_4_run.c (main): Likewise. * gcc.target/aarch64/sve/clastb_5_run.c (main): Likewise. * gcc.target/aarch64/sve/clastb_3_run.c (main): Likewise. Generalize memset call. * gcc.target/aarch64/sve/const_pred_1.C: Include stdint.h and use stdint.h types. * gcc.target/aarch64/sve/const_pred_2.C: Likewise. * gcc.target/aarch64/sve/const_pred_3.C: Likewise. * gcc.target/aarch64/sve/const_pred_4.C: Likewise. * gcc.target/aarch64/sve/load_const_offset_2.c: Likewise. * gcc.target/aarch64/sve/logical_1.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_1.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_2.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_3.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_4.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_5.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_6.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_7.c: Likewise. * gcc.target/aarch64/sve/mask_struct_load_8.c: Likewise. * gcc.target/aarch64/sve/mask_struct_store_1.c: Likewise. * gcc.target/aarch64/sve/mask_struct_store_2.c: Likewise. * gcc.target/aarch64/sve/mask_struct_store_3.c: Likewise. * gcc.target/aarch64/sve/mask_struct_store_4.c: Likewise. * gcc.target/aarch64/sve/struct_vect_1.c: Likewise. * gcc.target/aarch64/sve/struct_vect_2.c: Likewise. * gcc.target/aarch64/sve/struct_vect_2_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_3.c: Likewise. * gcc.target/aarch64/sve/struct_vect_3_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_4.c: Likewise. * gcc.target/aarch64/sve/struct_vect_4_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_7.c: Likewise. * gcc.target/aarch64/sve/struct_vect_8.c: Likewise. * gcc.target/aarch64/sve/struct_vect_8_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_9.c: Likewise. * gcc.target/aarch64/sve/struct_vect_9_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_10.c: Likewise. * gcc.target/aarch64/sve/struct_vect_10_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_11.c: Likewise. * gcc.target/aarch64/sve/struct_vect_11_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_12.c: Likewise. * gcc.target/aarch64/sve/struct_vect_12_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_13.c: Likewise. * gcc.target/aarch64/sve/struct_vect_13_run.c: Likewise. * gcc.target/aarch64/sve/struct_vect_14.c: Likewise. * gcc.target/aarch64/sve/struct_vect_18.c: Likewise. * gcc.target/aarch64/sve/struct_vect_19.c: Likewise. * gcc.target/aarch64/sve/struct_vect_20.c: Likewise. * gcc.target/aarch64/sve/struct_vect_21.c: Likewise. * gcc.target/aarch64/sve/struct_vect_22.c: Likewise. * gcc.target/aarch64/sve/struct_vect_23.c: Likewise. * gcc.target/aarch64/sve/popcount_1.c (popcount_64): Use __builtin_popcountll rather than __builtin_popcountl. Reviewed-by: James Greenhalgh <james.greenhalgh@arm.com> From-SVN: r257290
-rw-r--r--gcc/testsuite/ChangeLog60
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp10
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/clastb_2_run.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/clastb_3_run.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/clastb_4_run.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/clastb_5_run.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/const_pred_1.C4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/const_pred_2.C4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/const_pred_3.C4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/const_pred_4.C4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/load_const_offset_2.c14
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/logical_1.c12
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_1.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_2.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_3.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_4.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_5.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_6.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_7.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_8.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_1.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_2.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_3.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_4.c22
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/popcount_1.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_1.c4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10.c4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10_run.c4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11_run.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12_run.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13_run.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_14.c8
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_18.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_19.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_20.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_21.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_22.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_23.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2_run.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3_run.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4_run.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_7.c6
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8.c4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8_run.c4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9.c4
-rw-r--r--gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9_run.c4
52 files changed, 312 insertions, 192 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 522938f..bd118a9 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,65 @@
2018-02-01 Richard Sandiford <richard.sandiford@linaro.org>
+ PR testsuite/83846
+ * gcc.target/aarch64/sve/aarch64-sve.exp: Only do *_run tests
+ for ILP32.
+ * gcc.target/aarch64/sve/clastb_2_run.c (main): Use TYPE instead
+ of hard-coding the choice.
+ * gcc.target/aarch64/sve/clastb_4_run.c (main): Likewise.
+ * gcc.target/aarch64/sve/clastb_5_run.c (main): Likewise.
+ * gcc.target/aarch64/sve/clastb_3_run.c (main): Likewise. Generalize
+ memset call.
+ * gcc.target/aarch64/sve/const_pred_1.C: Include stdint.h and use
+ stdint.h types.
+ * gcc.target/aarch64/sve/const_pred_2.C: Likewise.
+ * gcc.target/aarch64/sve/const_pred_3.C: Likewise.
+ * gcc.target/aarch64/sve/const_pred_4.C: Likewise.
+ * gcc.target/aarch64/sve/load_const_offset_2.c: Likewise.
+ * gcc.target/aarch64/sve/logical_1.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_1.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_2.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_3.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_4.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_5.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_6.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_7.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_load_8.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_store_1.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_store_2.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_store_3.c: Likewise.
+ * gcc.target/aarch64/sve/mask_struct_store_4.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_1.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_2.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_2_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_3.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_3_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_4.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_4_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_7.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_8.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_8_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_9.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_9_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_10.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_10_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_11.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_11_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_12.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_12_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_13.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_13_run.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_14.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_18.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_19.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_20.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_21.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_22.c: Likewise.
+ * gcc.target/aarch64/sve/struct_vect_23.c: Likewise.
+ * gcc.target/aarch64/sve/popcount_1.c (popcount_64): Use
+ __builtin_popcountll rather than __builtin_popcountl.
+
+2018-02-01 Richard Sandiford <richard.sandiford@linaro.org>
+
* gcc.target/aarch64/sve/slp_2.c: Expect LD1RQ to be used instead
of LD1R[HWD] for multi-element constants on big-endian targets.
* gcc.target/aarch64/sve/slp_3.c: Likewise.
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp b/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp
index 934a6a8..e2d92d4 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp
+++ b/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp
@@ -44,8 +44,16 @@ if { [check_effective_target_aarch64_sve] } {
set sve_flags "-march=armv8.2-a+sve"
}
+# Most of the code-quality tests are written for LP64. Just do the
+# correctness tests for ILP32.
+if { [check_effective_target_ilp32] } {
+ set pattern "*_run"
+} else {
+ set pattern "*"
+}
+
# Main loop.
-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cCS\]]] \
+dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/$pattern.\[cCS\]]] \
$sve_flags $DEFAULT_CFLAGS
# All done.
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/clastb_2_run.c b/gcc/testsuite/gcc.target/aarch64/sve/clastb_2_run.c
index dcbacf9..e23314d 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/clastb_2_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/clastb_2_run.c
@@ -6,15 +6,15 @@
int __attribute__ ((optimize (1)))
main (void)
{
- unsigned int a[N] = {
+ TYPE a[N] = {
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32
};
- __builtin_memset (a + 32, 43, (N - 32) * sizeof (int));
+ __builtin_memset (a + 32, 43, (N - 32) * sizeof (TYPE));
- unsigned int ret = condition_reduction (a, 16);
+ TYPE ret = condition_reduction (a, 16);
if (ret != 10)
__builtin_abort ();
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/clastb_3_run.c b/gcc/testsuite/gcc.target/aarch64/sve/clastb_3_run.c
index 2ff1605..5b0eef6 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/clastb_3_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/clastb_3_run.c
@@ -6,15 +6,15 @@
int __attribute__ ((optimize (1)))
main (void)
{
- unsigned char a[N] = {
+ TYPE a[N] = {
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32
};
- __builtin_memset (a + 32, 43, N - 32);
+ __builtin_memset (a + 32, 43, (N - 32) * sizeof (TYPE));
- unsigned char ret = condition_reduction (a, 16);
+ TYPE ret = condition_reduction (a, 16);
if (ret != 10)
__builtin_abort ();
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/clastb_4_run.c b/gcc/testsuite/gcc.target/aarch64/sve/clastb_4_run.c
index d0c4af8..7aa3603 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/clastb_4_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/clastb_4_run.c
@@ -8,15 +8,15 @@ extern void abort (void) __attribute__ ((noreturn));
int __attribute__ ((optimize (1)))
main (void)
{
- short a[N] = {
+ TYPE a[N] = {
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32
};
- __builtin_memset (a+32, 43, (N-32)*sizeof (short));
+ __builtin_memset (a+32, 43, (N-32)*sizeof (TYPE));
- short ret = condition_reduction (a, 16);
+ TYPE ret = condition_reduction (a, 16);
if (ret != 10)
abort ();
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/clastb_5_run.c b/gcc/testsuite/gcc.target/aarch64/sve/clastb_5_run.c
index 3c9d054..134a2df 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/clastb_5_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/clastb_5_run.c
@@ -6,15 +6,15 @@
int __attribute__ ((optimize (1)))
main (void)
{
- long a[N] = {
+ TYPE a[N] = {
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32
};
- __builtin_memset (a + 32, 43, (N - 32) * sizeof (long));
+ __builtin_memset (a + 32, 43, (N - 32) * sizeof (TYPE));
- long ret = condition_reduction (a, 16);
+ TYPE ret = condition_reduction (a, 16);
if (ret != 10)
__builtin_abort ();
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_1.C b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_1.C
index 58ab159..25b7663 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_1.C
+++ b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_1.C
@@ -1,7 +1,9 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msve-vector-bits=256" } */
-typedef signed char vnx16qi __attribute__((vector_size(32)));
+#include <stdint.h>
+
+typedef int8_t vnx16qi __attribute__((vector_size(32)));
vnx16qi
foo (vnx16qi x, vnx16qi y)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_2.C b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_2.C
index 55dc874..4c781ca 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_2.C
+++ b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_2.C
@@ -1,7 +1,9 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msve-vector-bits=256" } */
-typedef short vnx8hi __attribute__((vector_size(32)));
+#include <stdint.h>
+
+typedef int16_t vnx8hi __attribute__((vector_size(32)));
vnx8hi
foo (vnx8hi x, vnx8hi y)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_3.C b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_3.C
index 16d0a33..6196ee0 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_3.C
+++ b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_3.C
@@ -1,7 +1,9 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msve-vector-bits=256" } */
-typedef int vnx4si __attribute__((vector_size(32)));
+#include <stdint.h>
+
+typedef int32_t vnx4si __attribute__((vector_size(32)));
vnx4si
foo (vnx4si x, vnx4si y)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_4.C b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_4.C
index 02bd096..2bdf67fd 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/const_pred_4.C
+++ b/gcc/testsuite/gcc.target/aarch64/sve/const_pred_4.C
@@ -1,7 +1,9 @@
/* { dg-do compile } */
/* { dg-options "-O2 -msve-vector-bits=256" } */
-typedef long long vnx2di __attribute__((vector_size(32)));
+#include <stdint.h>
+
+typedef int64_t vnx2di __attribute__((vector_size(32)));
vnx2di
foo (vnx2di x, vnx2di y)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/load_const_offset_2.c b/gcc/testsuite/gcc.target/aarch64/sve/load_const_offset_2.c
index 25e84e3..e02a6b5 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/load_const_offset_2.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/load_const_offset_2.c
@@ -1,14 +1,16 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize -save-temps" } */
+#include <stdint.h>
+
void
-f (unsigned int *restrict a, signed char *restrict b, signed char mask, int n)
+f (uint32_t *restrict a, int8_t *restrict b, int8_t mask, int n)
{
for (int i = 0; i < n; ++i)
- a[i] += (signed char) (b[i] | mask);
+ a[i] += (int8_t) (b[i] | mask);
}
-/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+\]\n} 1 } } */
-/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+, #1, mul vl\]\n} 1 } } */
-/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+, #2, mul vl\]\n} 1 } } */
-/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+, #3, mul vl\]\n} 1 } } */
+/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+\]\n} 1 { xfail ilp32 } } } */
+/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+, #1, mul vl\]\n} 1 { xfail ilp32 } } } */
+/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+, #2, mul vl\]\n} 1 { xfail ilp32 } } } */
+/* { dg-final { scan-assembler-times {\tld1w\tz[0-9]+\.s, p[0-7]/z, \[x[0-9]+, #3, mul vl\]\n} 1 { xfail ilp32 } } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/logical_1.c b/gcc/testsuite/gcc.target/aarch64/sve/logical_1.c
index 25cd908..f3d43cc 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/logical_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/logical_1.c
@@ -1,6 +1,8 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O3 --save-temps" } */
+#include <stdint.h>
+
#define DO_CONSTANT(VALUE, TYPE, OP, NAME) \
void vlogical_imm_##NAME##_##TYPE (TYPE *dst, int count) \
{ \
@@ -78,12 +80,12 @@ void vlogical_imm_##NAME##_##TYPE (TYPE *dst, int count) \
DO_CONSTANT (-8, TYPE, OP, NAME ## minus8) \
DO_CONSTANT (-9, TYPE, OP, NAME ## minus9)
-DO_LOGICAL_OPS_BRIEF (char, &, and)
-DO_LOGICAL_OPS_BRIEF (long, &, and)
+DO_LOGICAL_OPS_BRIEF (int8_t, &, and)
+DO_LOGICAL_OPS_BRIEF (int64_t, &, and)
-DO_LOGICAL_OPS (int, &, and)
-DO_LOGICAL_OPS (int, |, or)
-DO_LOGICAL_OPS (int, ^, xor)
+DO_LOGICAL_OPS (int32_t, &, and)
+DO_LOGICAL_OPS (int32_t, |, or)
+DO_LOGICAL_OPS (int32_t, ^, xor)
/* { dg-final { scan-assembler-times {\tand\tz[0-9]+\.d, z[0-9]+\.d, #0x1\n} 1 } } */
/* { dg-final { scan-assembler-times {\tand\tz[0-9]+\.s, z[0-9]+\.s, #0x1\n} 1 } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_1.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_1.c
index c3c335e..d450332 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_1.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_2 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -12,22 +14,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_2.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_2.c
index 1afb21f..812b967 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_2.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_2.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_3 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -14,22 +16,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_3.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_3.c
index a5b386d..29702ab 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_3.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_3.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_4 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -15,22 +17,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_4.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_4.c
index 9c66643..436da08 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_4.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_4.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_3 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -12,22 +14,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_5.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_5.c
index 4141235..08e5824 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_5.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_5.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_4 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -12,22 +14,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_6.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_6.c
index 8056226..d4542ec 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_6.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_6.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_2 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -12,22 +14,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_7.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_7.c
index 982fa8b..9d26e15 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_7.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_7.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_3 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -12,22 +14,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_8.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_8.c
index c1da197..17fd4c0 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_8.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_load_8.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_4 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -12,22 +14,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_1.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_1.c
index 47ad135..8897fe1 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_1.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_2 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -18,22 +20,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_2.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_2.c
index e87a31c7..dccdcee 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_2.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_2.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_3 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -19,22 +21,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_3.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_3.c
index 908b12b..001f5be 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_3.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_3.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_4 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -20,22 +22,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_4.c b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_4.c
index f7b63b5..59e9ee4 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_4.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/mask_struct_store_4.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize -ffast-math" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, OUTTYPE, INTYPE, MASKTYPE) \
void __attribute__ ((noinline, noclone)) \
NAME##_2 (OUTTYPE *__restrict dest, INTYPE *__restrict src, \
@@ -16,22 +18,22 @@
}
#define TEST2(NAME, OUTTYPE, INTYPE) \
- TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, signed char) \
- TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, unsigned short) \
+ TEST_LOOP (NAME##_i8, OUTTYPE, INTYPE, int8_t) \
+ TEST_LOOP (NAME##_i16, OUTTYPE, INTYPE, uint16_t) \
TEST_LOOP (NAME##_f32, OUTTYPE, INTYPE, float) \
TEST_LOOP (NAME##_f64, OUTTYPE, INTYPE, double)
#define TEST1(NAME, OUTTYPE) \
- TEST2 (NAME##_i8, OUTTYPE, signed char) \
- TEST2 (NAME##_i16, OUTTYPE, unsigned short) \
- TEST2 (NAME##_i32, OUTTYPE, int) \
- TEST2 (NAME##_i64, OUTTYPE, unsigned long)
+ TEST2 (NAME##_i8, OUTTYPE, int8_t) \
+ TEST2 (NAME##_i16, OUTTYPE, uint16_t) \
+ TEST2 (NAME##_i32, OUTTYPE, int32_t) \
+ TEST2 (NAME##_i64, OUTTYPE, uint64_t)
#define TEST(NAME) \
- TEST1 (NAME##_i8, signed char) \
- TEST1 (NAME##_i16, unsigned short) \
- TEST1 (NAME##_i32, int) \
- TEST1 (NAME##_i64, unsigned long) \
+ TEST1 (NAME##_i8, int8_t) \
+ TEST1 (NAME##_i16, uint16_t) \
+ TEST1 (NAME##_i32, int32_t) \
+ TEST1 (NAME##_i64, uint64_t) \
TEST2 (NAME##_f16_f16, _Float16, _Float16) \
TEST2 (NAME##_f32_f32, float, float) \
TEST2 (NAME##_f64_f64, double, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/popcount_1.c b/gcc/testsuite/gcc.target/aarch64/sve/popcount_1.c
index 188127b..dfb6f4a 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/popcount_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/popcount_1.c
@@ -14,7 +14,7 @@ void __attribute__ ((noinline, noclone))
popcount_64 (unsigned int *restrict dst, uint64_t *restrict src, int size)
{
for (int i = 0; i < size; ++i)
- dst[i] = __builtin_popcountl (src[i]);
+ dst[i] = __builtin_popcountll (src[i]);
}
/* { dg-final { scan-assembler-times {\tcnt\tz[0-9]+\.s, p[0-7]/m, z[0-9]+\.s\n} 1 } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_1.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_1.c
index 014f4ec..6e3c889 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_1.c
@@ -1,8 +1,10 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
+#include <stdint.h>
+
#ifndef TYPE
-#define TYPE unsigned char
+#define TYPE uint8_t
#endif
#ifndef NAME
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10.c
index e19ab3d..f06ab21 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10.c
@@ -1,8 +1,8 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned long
-#define ITYPE long
+#define TYPE uint64_t
+#define ITYPE int64_t
#include "struct_vect_7.c"
/* { dg-final { scan-assembler {\tld2d\t{z[0-9]+.d - z[0-9]+.d}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10_run.c
index e0e5cf9..f09ea60 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_10_run.c
@@ -1,6 +1,6 @@
/* { dg-do run { target aarch64_sve_hw } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned long
-#define ITYPE long
+#define TYPE uint64_t
+#define ITYPE int64_t
#include "struct_vect_7_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11.c
index ae66546..a47b145 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11.c
@@ -2,7 +2,7 @@
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
#define TYPE _Float16
-#define ITYPE short
+#define ITYPE int16_t
#include "struct_vect_7.c"
/* { dg-final { scan-assembler {\tld2h\t{z[0-9]+.h - z[0-9]+.h}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11_run.c
index 1544d8e..847646a 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_11_run.c
@@ -2,5 +2,5 @@
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
#define TYPE _Float16
-#define ITYPE short
+#define ITYPE int16_t
#include "struct_vect_7_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12.c
index 69bea7b..117ed3e 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12.c
@@ -2,7 +2,7 @@
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
#define TYPE float
-#define ITYPE int
+#define ITYPE int32_t
#include "struct_vect_7.c"
/* { dg-final { scan-assembler {\tld2w\t{z[0-9]+.s - z[0-9]+.s}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12_run.c
index 784d93d..ae6b413 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_12_run.c
@@ -2,5 +2,5 @@
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
#define TYPE float
-#define ITYPE int
+#define ITYPE int32_t
#include "struct_vect_7_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13.c
index 13947a3..0e0a909 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13.c
@@ -2,7 +2,7 @@
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
#define TYPE double
-#define ITYPE long
+#define ITYPE int64_t
#include "struct_vect_7.c"
/* { dg-final { scan-assembler {\tld2d\t{z[0-9]+.d - z[0-9]+.d}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13_run.c
index 1674fae..ac8839c 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_13_run.c
@@ -2,5 +2,5 @@
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
#define TYPE double
-#define ITYPE long
+#define ITYPE int64_t
#include "struct_vect_7_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_14.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_14.c
index 8c40132..45644b6 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_14.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_14.c
@@ -1,25 +1,25 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize -msve-vector-bits=256 --save-temps" } */
-#define TYPE unsigned char
+#define TYPE uint8_t
#define NAME(X) qi_##X
#include "struct_vect_1.c"
#undef NAME
#undef TYPE
-#define TYPE unsigned short
+#define TYPE uint16_t
#define NAME(X) hi_##X
#include "struct_vect_1.c"
#undef NAME
#undef TYPE
-#define TYPE unsigned int
+#define TYPE uint32_t
#define NAME(X) si_##X
#include "struct_vect_1.c"
#undef NAME
#undef TYPE
-#define TYPE unsigned long
+#define TYPE uint64_t
#define NAME(X) di_##X
#include "struct_vect_1.c"
#undef NAME
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_18.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_18.c
index 8b93b4c..dc912e6 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_18.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_18.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize" } */
+#include <stdint.h>
+
#define N 2000
#define TEST_LOOP(NAME, TYPE) \
@@ -12,8 +14,8 @@
}
#define TEST(NAME) \
- TEST_LOOP (NAME##_i8, signed char) \
- TEST_LOOP (NAME##_i16, unsigned short) \
+ TEST_LOOP (NAME##_i8, int8_t) \
+ TEST_LOOP (NAME##_i16, uint16_t) \
TEST_LOOP (NAME##_f32, float) \
TEST_LOOP (NAME##_f64, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_19.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_19.c
index 6a67e18..6568dc7 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_19.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_19.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, TYPE) \
void __attribute__ ((noinline, noclone)) \
NAME (TYPE *restrict dest, TYPE *restrict src, int n) \
@@ -10,8 +12,8 @@
}
#define TEST(NAME) \
- TEST_LOOP (NAME##_i8, signed char) \
- TEST_LOOP (NAME##_i16, unsigned short) \
+ TEST_LOOP (NAME##_i8, int8_t) \
+ TEST_LOOP (NAME##_i16, uint16_t) \
TEST_LOOP (NAME##_f32, float) \
TEST_LOOP (NAME##_f64, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2.c
index 8374583..e171595 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2.c
@@ -1,7 +1,7 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned short
+#define TYPE uint16_t
#include "struct_vect_1.c"
/* { dg-final { scan-assembler {\tld2h\t{z[0-9]+.h - z[0-9]+.h}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_20.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_20.c
index 6d616eb..6c3520c 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_20.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_20.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize" } */
+#include <stdint.h>
+
#define N 2000
#define TEST_LOOP(NAME, TYPE) \
@@ -12,8 +14,8 @@
}
#define TEST(NAME) \
- TEST_LOOP (NAME##_i8, signed char) \
- TEST_LOOP (NAME##_i16, unsigned short) \
+ TEST_LOOP (NAME##_i8, int8_t) \
+ TEST_LOOP (NAME##_i16, uint16_t) \
TEST_LOOP (NAME##_f32, float) \
TEST_LOOP (NAME##_f64, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_21.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_21.c
index 4758c9d..4b2a5e4 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_21.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_21.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, TYPE) \
void __attribute__ ((noinline, noclone)) \
NAME (TYPE *restrict dest, TYPE *restrict src, int n) \
@@ -10,8 +12,8 @@
}
#define TEST(NAME) \
- TEST_LOOP (NAME##_i8, signed char) \
- TEST_LOOP (NAME##_i16, unsigned short) \
+ TEST_LOOP (NAME##_i8, int8_t) \
+ TEST_LOOP (NAME##_i16, uint16_t) \
TEST_LOOP (NAME##_f32, float) \
TEST_LOOP (NAME##_f64, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_22.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_22.c
index 322b561..b615360 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_22.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_22.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize" } */
+#include <stdint.h>
+
#define N 2000
#define TEST_LOOP(NAME, TYPE) \
@@ -12,8 +14,8 @@
}
#define TEST(NAME) \
- TEST_LOOP (NAME##_i8, signed char) \
- TEST_LOOP (NAME##_i16, unsigned short) \
+ TEST_LOOP (NAME##_i8, int8_t) \
+ TEST_LOOP (NAME##_i16, uint16_t) \
TEST_LOOP (NAME##_f32, float) \
TEST_LOOP (NAME##_f64, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_23.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_23.c
index 1698a2e..b529e03 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_23.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_23.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-vectorize" } */
+#include <stdint.h>
+
#define TEST_LOOP(NAME, TYPE) \
void __attribute__ ((noinline, noclone)) \
NAME (TYPE *restrict dest, TYPE *restrict src, int n) \
@@ -10,8 +12,8 @@
}
#define TEST(NAME) \
- TEST_LOOP (NAME##_i8, signed char) \
- TEST_LOOP (NAME##_i16, unsigned short) \
+ TEST_LOOP (NAME##_i8, int8_t) \
+ TEST_LOOP (NAME##_i16, uint16_t) \
TEST_LOOP (NAME##_f32, float) \
TEST_LOOP (NAME##_f64, double)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2_run.c
index a9b8e1d..fad6162 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_2_run.c
@@ -1,5 +1,5 @@
/* { dg-do run { target aarch64_sve_hw } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned short
+#define TYPE uint16_t
#include "struct_vect_1_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3.c
index a3e49a5..6bda613 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3.c
@@ -1,7 +1,7 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned int
+#define TYPE uint32_t
#include "struct_vect_1.c"
/* { dg-final { scan-assembler {\tld2w\t{z[0-9]+.s - z[0-9]+.s}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3_run.c
index 03ffc7a..22d03f9 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_3_run.c
@@ -1,5 +1,5 @@
/* { dg-do run { target aarch64_sve_hw } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned int
+#define TYPE uint32_t
#include "struct_vect_1_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4.c
index fcd6476..4682d7e 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4.c
@@ -1,7 +1,7 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned long
+#define TYPE uint64_t
#include "struct_vect_1.c"
/* { dg-final { scan-assembler {\tld2d\t{z[0-9]+.d - z[0-9]+.d}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4_run.c
index 15238b4..9513940 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_4_run.c
@@ -1,5 +1,5 @@
/* { dg-do run { target aarch64_sve_hw } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned long
+#define TYPE uint64_t
#include "struct_vect_1_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_7.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_7.c
index 203a978..b741901 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_7.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_7.c
@@ -1,9 +1,11 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
+#include <stdint.h>
+
#ifndef TYPE
-#define TYPE unsigned char
-#define ITYPE signed char
+#define TYPE uint8_t
+#define ITYPE int8_t
#endif
void __attribute__ ((noinline, noclone))
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8.c
index 0905bfd..07e38943 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8.c
@@ -1,8 +1,8 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned short
-#define ITYPE short
+#define TYPE uint16_t
+#define ITYPE int16_t
#include "struct_vect_7.c"
/* { dg-final { scan-assembler {\tld2h\t{z[0-9]+.h - z[0-9]+.h}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8_run.c
index 3e360d8..c9569717 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_8_run.c
@@ -1,6 +1,6 @@
/* { dg-do run { target aarch64_sve_hw } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned short
-#define ITYPE short
+#define TYPE uint16_t
+#define ITYPE int16_t
#include "struct_vect_7_run.c"
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9.c
index b6bc5c0..2fbcc92 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9.c
@@ -1,8 +1,8 @@
/* { dg-do assemble { target aarch64_asm_sve_ok } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned int
-#define ITYPE int
+#define TYPE uint32_t
+#define ITYPE int32_t
#include "struct_vect_7.c"
/* { dg-final { scan-assembler {\tld2w\t{z[0-9]+.s - z[0-9]+.s}, p[0-7]/z, \[x[0-9]+\]\n} } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9_run.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9_run.c
index 3588b26..f898772 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9_run.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_9_run.c
@@ -1,6 +1,6 @@
/* { dg-do run { target aarch64_sve_hw } } */
/* { dg-options "-O2 -ftree-vectorize --save-temps" } */
-#define TYPE unsigned int
-#define ITYPE int
+#define TYPE uint32_t
+#define ITYPE int32_t
#include "struct_vect_7_run.c"