Fortran/OpenMP: Fix clause splitting for target/parallel/teams [PR99928]
authorTobias Burnus <tobias@codesourcery.com>
Tue, 8 Jun 2021 07:51:09 +0000 (09:51 +0200)
committerTobias Burnus <tobias@codesourcery.com>
Tue, 8 Jun 2021 07:51:55 +0000 (09:51 +0200)
commit245517470d6948a40cead9f5c312b8d79ac5c491
tree0854a7cb4b0e7328130d3bdd7bd12e3f6747ce8e
parent7191e63d051b18c8f62ff73916345fc623a1bf7e
Fortran/OpenMP: Fix clause splitting for target/parallel/teams [PR99928]

PR middle-end/99928

gcc/fortran/ChangeLog:

* trans-openmp.c (gfc_add_clause_implicitly): New.
(gfc_split_omp_clauses): Use it.
(gfc_free_split_omp_clauses): New.
(gfc_trans_omp_do_simd, gfc_trans_omp_parallel_do,
gfc_trans_omp_parallel_do_simd, gfc_trans_omp_distribute,
gfc_trans_omp_teams, gfc_trans_omp_target, gfc_trans_omp_taskloop,
gfc_trans_omp_master_taskloop, gfc_trans_omp_parallel_master): Use it.

gcc/testsuite/ChangeLog:

* gfortran.dg/gomp/openmp-simd-6.f90: Update scan-tree-dump.
* gfortran.dg/gomp/scan-5.f90: Likewise.
* gfortran.dg/gomp/loop-1.f90: Likewise; remove xfail.
* gfortran.dg/gomp/pr99928-1.f90: Remove xfail.
* gfortran.dg/gomp/pr99928-2.f90: Likewise.
* gfortran.dg/gomp/pr99928-3.f90: Likewise.
* gfortran.dg/gomp/pr99928-8.f90: Likewise.
gcc/fortran/trans-openmp.c
gcc/testsuite/gfortran.dg/gomp/loop-1.f90
gcc/testsuite/gfortran.dg/gomp/openmp-simd-6.f90
gcc/testsuite/gfortran.dg/gomp/pr99928-1.f90
gcc/testsuite/gfortran.dg/gomp/pr99928-2.f90
gcc/testsuite/gfortran.dg/gomp/pr99928-3.f90
gcc/testsuite/gfortran.dg/gomp/pr99928-8.f90
gcc/testsuite/gfortran.dg/gomp/scan-5.f90