Handle OpenACC 'self' clause for compute constructs in OpenACC 'kernels' decomposition
commit7b2ae64b68132c1c643cb34d58cd5eab6f9de652
authorThomas Schwinge <thomas@codesourcery.com>
Mon, 23 Oct 2023 13:28:30 +0000 (23 15:28 +0200)
committerThomas Schwinge <thomas@codesourcery.com>
Wed, 25 Oct 2023 09:30:36 +0000 (25 11:30 +0200)
tree3e5de3c6d07afcc967a7f4987439019458c4f490
parent047841a68ebf5f991e842961f9e54f3c10b94f2c
Handle OpenACC 'self' clause for compute constructs in OpenACC 'kernels' decomposition

... to fix up recent commit 3a3596389c2e539cb8fd5dc5784a4e2afe193a2a
"OpenACC 2.7: Implement self clause for compute constructs" for that case.

gcc/
* omp-oacc-kernels-decompose.cc (omp_oacc_kernels_decompose_1):
Handle 'OMP_CLAUSE_SELF' like 'OMP_CLAUSE_IF'.
* omp-expand.cc (expand_omp_target): Handle 'OMP_CLAUSE_SELF' for
'GF_OMP_TARGET_KIND_OACC_DATA_KERNELS'.
gcc/testsuite/
* c-c++-common/goacc/self-clause-2.c: Verify
'--param=openacc-kernels=decompose'.
* gfortran.dg/goacc/kernels-tree.f95: Adjust.
libgomp/
* oacc-parallel.c (GOACC_data_start): Handle
'GOACC_FLAG_LOCAL_DEVICE'.
(GOACC_parallel_keyed): Simplify accordingly.
* testsuite/libgomp.oacc-fortran/self-1.f90: Adjust.
gcc/omp-expand.cc
gcc/omp-oacc-kernels-decompose.cc
gcc/testsuite/c-c++-common/goacc/self-clause-2.c
gcc/testsuite/gfortran.dg/goacc/kernels-tree.f95
libgomp/oacc-parallel.c
libgomp/testsuite/libgomp.oacc-fortran/self-1.f90