Skip to content

Commit

Permalink
Fix tests for gomp
Browse files Browse the repository at this point in the history
This is to fix testisms initially introduced by:
commit f5fc001
Author: Andre Vieira <[email protected]>
Date:   Mon Dec 11 14:24:41 2023 +0000

    aarch64: enable mixed-types for aarch64 simdclones

gcc/testsuite/ChangeLog:

	* gcc.dg/gomp/pr87887-1.c: Fixed test.
	* gcc.dg/gomp/pr89246-1.c: Likewise.
	* gcc.dg/gomp/simd-clones-2.c: Likewise.

libgomp/ChangeLog:

	* testsuite/libgomp.c/declare-variant-1.c: Fixed test.
	* testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
  • Loading branch information
avieira-arm committed Dec 15, 2023
1 parent 1d8ac2a commit 863df36
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 20 deletions.
2 changes: 0 additions & 2 deletions gcc/testsuite/gcc.dg/gomp/pr87887-1.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,13 @@ foo (int x)
{
return (struct S) { x };
}
/* { dg-warning "unsupported return type ‘struct S’ for ‘simd’ functions" "" { target aarch64*-*-* } .-4 } */

#pragma omp declare simd
int
bar (struct S x)
{
return x.n;
}
/* { dg-warning "unsupported argument type ‘struct S’ for ‘simd’ functions" "" { target aarch64*-*-* } .-4 } */

#pragma omp declare simd uniform (x)
int
Expand Down
1 change: 0 additions & 1 deletion gcc/testsuite/gcc.dg/gomp/pr89246-1.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ int foo (__int128 x)
{
return x;
}
/* { dg-warning "unsupported argument type ‘__int128’ for ‘simd’ functions" "" { target aarch64*-*-* } .-4 } */

#pragma omp declare simd
extern int bar (int x);
Expand Down
1 change: 0 additions & 1 deletion gcc/testsuite/gcc.dg/gomp/simd-clones-2.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ float setArray(float *a, float x, int k)
/* { dg-final { scan-tree-dump "_ZGVnN2ua32vl_setArray" "optimized" { target aarch64*-*-* } } } */
/* { dg-final { scan-tree-dump "_ZGVnN4ua32vl_setArray" "optimized" { target aarch64*-*-* } } } */
/* { dg-final { scan-tree-dump "_ZGVnN2vvva32_addit" "optimized" { target aarch64*-*-* } } } */
/* { dg-final { scan-tree-dump "_ZGVnN4vvva32_addit" "optimized" { target aarch64*-*-* } } } */
/* { dg-final { scan-tree-dump "_ZGVnM2vl66u_addit" "optimized" { target aarch64*-*-* } } } */
/* { dg-final { scan-tree-dump "_ZGVnM4vl66u_addit" "optimized" { target aarch64*-*-* } } } */

Expand Down
13 changes: 7 additions & 6 deletions libgomp/testsuite/libgomp.c/declare-variant-1.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,16 +40,17 @@ f04 (int a)
int
test1 (int x)
{
/* At gimplification time, we can't decide yet which function to call. */
/* { dg-final { scan-tree-dump-times "f04 \\\(x" 2 "gimple" } } */
/* At gimplification time, we can't decide yet which function to call for
x86_64 targets, given the f01 variant. */
/* { dg-final { scan-tree-dump-times "f04 \\\(x" 2 "gimple" { target x86_64-*-* } } } */
/* After simd clones are created, the original non-clone test1 shall
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" { 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*-*-* } } } } } */
/* { 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;
Expand Down
12 changes: 2 additions & 10 deletions libgomp/testsuite/libgomp.fortran/declare-simd-1.f90
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
! { dg-do run { target vect_simd_clones } }
! { dg-options "-fno-inline -cpp -D__aarch64__" }
! { dg-do run { target { vect_simd_clones && { x86_64-*-* || i?86-*-* } } } }
! { dg-options "-fno-inline" }
! { dg-additional-options "-msse2" { target sse2_runtime } }
! { dg-additional-options "-mavx" { target avx_runtime } }

Expand Down Expand Up @@ -75,11 +75,7 @@ end function bar
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
Expand All @@ -94,10 +90,6 @@ 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

0 comments on commit 863df36

Please sign in to comment.