aboutsummaryrefslogtreecommitdiff
path: root/libgomp
diff options
context:
space:
mode:
Diffstat (limited to 'libgomp')
-rw-r--r--libgomp/testsuite/libgomp.c/declare-variant-1.c6
-rw-r--r--libgomp/testsuite/libgomp.fortran/declare-simd-1.f9010
2 files changed, 13 insertions, 3 deletions
diff --git a/libgomp/testsuite/libgomp.c/declare-variant-1.c b/libgomp/testsuite/libgomp.c/declare-variant-1.c
index d16608f..6129f23 100644
--- a/libgomp/testsuite/libgomp.c/declare-variant-1.c
+++ b/libgomp/testsuite/libgomp.c/declare-variant-1.c
@@ -46,8 +46,10 @@ test1 (int x)
call f03 (score 6), the sse2/avx/avx2 clones too, but avx512f clones
shall call f01 with score 8. */
/* { dg-final { scan-ltrans-tree-dump-not "f04 \\\(x" "optimized" } } */
- /* { dg-final { scan-ltrans-tree-dump-times "f03 \\\(x" 14 "optimized" } } */
- /* { dg-final { scan-ltrans-tree-dump-times "f01 \\\(x" 4 "optimized" } } */
+ /* { dg-final { scan-ltrans-tree-dump-times "f03 \\\(x" 14 "optimized" { target { !aarch64*-*-* } } } } } */
+ /* { dg-final { scan-ltrans-tree-dump-times "f01 \\\(x" 4 "optimized" { target { !aarch64*-*-* } } } } } */
+ /* { dg-final { scan-ltrans-tree-dump-times "f03 \\\(x" 10 "optimized" { target { aarch64*-*-* } } } } } */
+ /* { dg-final { scan-ltrans-tree-dump-not "f01 \\\(x" "optimized" { target { aarch64*-*-* } } } } } */
int a = f04 (x);
int b = f04 (x);
return a + b;
diff --git a/libgomp/testsuite/libgomp.fortran/declare-simd-1.f90 b/libgomp/testsuite/libgomp.fortran/declare-simd-1.f90
index cb8f4df..9d44524 100644
--- a/libgomp/testsuite/libgomp.fortran/declare-simd-1.f90
+++ b/libgomp/testsuite/libgomp.fortran/declare-simd-1.f90
@@ -1,5 +1,5 @@
! { dg-do run { target vect_simd_clones } }
-! { dg-options "-fno-inline" }
+! { dg-options "-fno-inline -cpp -D__aarch64__" }
! { dg-additional-options "-msse2" { target sse2_runtime } }
! { dg-additional-options "-mavx" { target avx_runtime } }
@@ -75,7 +75,11 @@ end module declare_simd_1_mod
end do
contains
function baz (x, y, z)
+#ifdef __aarch64__
+ !$omp declare simd (baz) simdlen (4) uniform (x, y)
+#else
!$omp declare simd (baz) simdlen (8) uniform (x, y)
+#endif
!$omp declare simd (baz)
integer, value :: y
real, value :: z
@@ -90,6 +94,10 @@ function bar (a, b, c)
real :: bar
double precision, value :: a
!$omp declare simd (bar)
+#ifdef __aarch64__
+ !$omp declare simd (bar) simdlen (2) linear (b : 2)
+#else
!$omp declare simd (bar) simdlen (4) linear (b : 2)
+#endif
bar = a + b * c
end function bar