Hi, as Jakub requested, this patch deals with HSA "excess errors" in the gomp compiler testsuite by passing -Wno-hsa to all of them. After discussing this in the thread about similar libgomp tests[1] (which are however handled differently), Jakub expressed preference for passing the option in default_extra_flags rather than flags so that names of the tests do not change.
This however requires that the failing tests which use dg-options must be adjusted. There is 9 of them, most of them have just superfluous -fopenmp in them which can be removed because that is the default and the rest is handled by turning dg-options into dg-additional-options. OK for trunk? Thanks, Martin [1] https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00381.html 2016-03-04 Martin Jambor <mjam...@suse.cz> * c-c++-common/gomp/clauses-1.c: Remove dg-options. * c-c++-common/gomp/if-1.c: Likewise. * c-c++-common/gomp/pr61486-2.c: Likewise. * c-c++-common/gomp/target-teams-1.c: Moved dg-options except -fopenmp to dg-additional-options. * g++.dg/gomp/gomp.exp: Pass -Wno-hsa to all tests. * g++/gomp/target-teams-1.c: Likewise. * gcc.dg/gomp/gomp.exp: Likewise. * gcc.dg/gomp/pr68128-2.c: Moved dg-options except -fopenmp to dg-additional-options. * gfortran.dg/gomp/gomp.exp: Likewise. * gfortran.dg/gomp/target1.f90: Remove dg-options. * gfortran.dg/gomp/target2.f90: Moved dg-options except -fopenmp to dg-additional-options. * gfortran.dg/gomp/target3.f90: Remove dg-options. --- gcc/testsuite/c-c++-common/gomp/clauses-1.c | 1 - gcc/testsuite/c-c++-common/gomp/if-1.c | 1 - gcc/testsuite/c-c++-common/gomp/pr61486-2.c | 1 - gcc/testsuite/c-c++-common/gomp/target-teams-1.c | 2 +- gcc/testsuite/g++.dg/gomp/gomp.exp | 2 +- gcc/testsuite/g++.dg/gomp/target-teams-1.C | 2 +- gcc/testsuite/gcc.dg/gomp/gomp.exp | 2 +- gcc/testsuite/gcc.dg/gomp/pr68128-2.c | 2 +- gcc/testsuite/gfortran.dg/gomp/gomp.exp | 2 +- gcc/testsuite/gfortran.dg/gomp/target1.f90 | 1 - gcc/testsuite/gfortran.dg/gomp/target2.f90 | 2 +- gcc/testsuite/gfortran.dg/gomp/target3.f90 | 1 - 12 files changed, 7 insertions(+), 12 deletions(-) diff --git a/gcc/testsuite/c-c++-common/gomp/clauses-1.c b/gcc/testsuite/c-c++-common/gomp/clauses-1.c index 2d1c352..91aed39 100644 --- a/gcc/testsuite/c-c++-common/gomp/clauses-1.c +++ b/gcc/testsuite/c-c++-common/gomp/clauses-1.c @@ -1,5 +1,4 @@ /* { dg-do compile } */ -/* { dg-options "-fopenmp" } */ /* { dg-additional-options "-std=c99" { target c } } */ int t; diff --git a/gcc/testsuite/c-c++-common/gomp/if-1.c b/gcc/testsuite/c-c++-common/gomp/if-1.c index 4ba708c..3a9b538 100644 --- a/gcc/testsuite/c-c++-common/gomp/if-1.c +++ b/gcc/testsuite/c-c++-common/gomp/if-1.c @@ -1,5 +1,4 @@ /* { dg-do compile } */ -/* { dg-options "-fopenmp" } */ void foo (int a, int b, int *p, int *q) diff --git a/gcc/testsuite/c-c++-common/gomp/pr61486-2.c b/gcc/testsuite/c-c++-common/gomp/pr61486-2.c index db97143..4a68023 100644 --- a/gcc/testsuite/c-c++-common/gomp/pr61486-2.c +++ b/gcc/testsuite/c-c++-common/gomp/pr61486-2.c @@ -1,6 +1,5 @@ /* PR middle-end/61486 */ /* { dg-do compile } */ -/* { dg-options "-fopenmp" } */ /* { dg-require-effective-target alloca } */ #pragma omp declare target diff --git a/gcc/testsuite/c-c++-common/gomp/target-teams-1.c b/gcc/testsuite/c-c++-common/gomp/target-teams-1.c index 0a707c2..51b8d48 100644 --- a/gcc/testsuite/c-c++-common/gomp/target-teams-1.c +++ b/gcc/testsuite/c-c++-common/gomp/target-teams-1.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-fopenmp -fdump-tree-gimple" } */ +/* { dg-additional-options "-fdump-tree-gimple" } */ int v = 6; void bar (int); diff --git a/gcc/testsuite/g++.dg/gomp/gomp.exp b/gcc/testsuite/g++.dg/gomp/gomp.exp index 7365389..d26596c 100644 --- a/gcc/testsuite/g++.dg/gomp/gomp.exp +++ b/gcc/testsuite/g++.dg/gomp/gomp.exp @@ -29,7 +29,7 @@ dg-init # Main loop. g++-dg-runtest [lsort [concat \ [find $srcdir/$subdir *.C] \ - [find $srcdir/c-c++-common/gomp *.c]]] "" "-fopenmp" + [find $srcdir/c-c++-common/gomp *.c]]] "" "-fopenmp -Wno-hsa" # All done. dg-finish diff --git a/gcc/testsuite/g++.dg/gomp/target-teams-1.C b/gcc/testsuite/g++.dg/gomp/target-teams-1.C index 0a97de0..f78a608 100644 --- a/gcc/testsuite/g++.dg/gomp/target-teams-1.C +++ b/gcc/testsuite/g++.dg/gomp/target-teams-1.C @@ -1,5 +1,5 @@ // { dg-do compile } -// { dg-options "-fopenmp -fdump-tree-gimple" } +// { dg-additional-options "-fdump-tree-gimple" } int v = 6; void bar (int); diff --git a/gcc/testsuite/gcc.dg/gomp/gomp.exp b/gcc/testsuite/gcc.dg/gomp/gomp.exp index 78623fc..b6b5932 100644 --- a/gcc/testsuite/gcc.dg/gomp/gomp.exp +++ b/gcc/testsuite/gcc.dg/gomp/gomp.exp @@ -31,7 +31,7 @@ dg-init # Main loop. dg-runtest [lsort [concat \ [find $srcdir/$subdir *.c] \ - [find $srcdir/c-c++-common/gomp *.c]]] "" "-fopenmp" + [find $srcdir/c-c++-common/gomp *.c]]] "" "-fopenmp -Wno-hsa" # All done. dg-finish diff --git a/gcc/testsuite/gcc.dg/gomp/pr68128-2.c b/gcc/testsuite/gcc.dg/gomp/pr68128-2.c index 58a07e9..9720add 100644 --- a/gcc/testsuite/gcc.dg/gomp/pr68128-2.c +++ b/gcc/testsuite/gcc.dg/gomp/pr68128-2.c @@ -1,6 +1,6 @@ /* PR tree-optimization/68128 */ /* { dg-do compile } */ -/* { dg-options "-O2 -fopenmp -fdump-tree-omplower" } */ +/* { dg-additional-options "-O2 -fdump-tree-omplower" } */ extern int omp_get_thread_num (void); extern int omp_get_ancestor_thread_num (int); diff --git a/gcc/testsuite/gfortran.dg/gomp/gomp.exp b/gcc/testsuite/gfortran.dg/gomp/gomp.exp index 625361b..1cd2e36 100644 --- a/gcc/testsuite/gfortran.dg/gomp/gomp.exp +++ b/gcc/testsuite/gfortran.dg/gomp/gomp.exp @@ -30,7 +30,7 @@ dg-init # Main loop. gfortran-dg-runtest [lsort \ - [find $srcdir/$subdir *.\[fF\]{,90,95,03,08} ] ] "" "-fopenmp" + [find $srcdir/$subdir *.\[fF\]{,90,95,03,08} ] ] "" "-fopenmp -Wno-hsa" # All done. dg-finish diff --git a/gcc/testsuite/gfortran.dg/gomp/target1.f90 b/gcc/testsuite/gfortran.dg/gomp/target1.f90 index 14db497..1e77176 100644 --- a/gcc/testsuite/gfortran.dg/gomp/target1.f90 +++ b/gcc/testsuite/gfortran.dg/gomp/target1.f90 @@ -1,5 +1,4 @@ ! { dg-do compile } -! { dg-options "-fopenmp" } module target1 interface diff --git a/gcc/testsuite/gfortran.dg/gomp/target2.f90 b/gcc/testsuite/gfortran.dg/gomp/target2.f90 index 7521331..dfe0ec3 100644 --- a/gcc/testsuite/gfortran.dg/gomp/target2.f90 +++ b/gcc/testsuite/gfortran.dg/gomp/target2.f90 @@ -1,5 +1,5 @@ ! { dg-do compile } -! { dg-options "-fopenmp -ffree-line-length-160" } +! { dg-additional-options "-ffree-line-length-160" } subroutine foo (n, s, t, u, v, w) integer :: n, i, s, t, u, v, w diff --git a/gcc/testsuite/gfortran.dg/gomp/target3.f90 b/gcc/testsuite/gfortran.dg/gomp/target3.f90 index 7ba42a0..d968e54 100644 --- a/gcc/testsuite/gfortran.dg/gomp/target3.f90 +++ b/gcc/testsuite/gfortran.dg/gomp/target3.f90 @@ -1,5 +1,4 @@ ! { dg-do compile } -! { dg-options "-fopenmp" } subroutine foo (r) integer :: i, r -- 2.7.1