diff options
Diffstat (limited to 'libgomp')
-rw-r--r-- | libgomp/testsuite/libgomp.c/declare-variant-1.c | 6 | ||||
-rw-r--r-- | libgomp/testsuite/libgomp.fortran/declare-simd-1.f90 | 10 |
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 |