https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69921
--- Comment #3 from Thomas Schwinge <tschwinge at gcc dot gnu.org> --- Author: tschwinge Date: Fri May 12 09:20:35 2017 New Revision: 247958 URL: https://gcc.gnu.org/viewcvs?rev=247958&root=gcc&view=rev Log: [PR middle-end/69921] Use "oacc kernels parallelized" attribute for parallelized OpenACC kernels gcc/ PR middle-end/69921 * tree-parloops.c (create_parallel_loop): Set "oacc kernels parallelized" attribute for parallelized OpenACC kernels. * omp-low.c (execute_oacc_device_lower): Use it. * config/nvptx/nvptx.c (nvptx_goacc_validate_dims): Likewise. * omp-low.c (set_oacc_fn_attrib): Make it "static". * omp-low.h (set_oacc_fn_attrib): Remove prototype. gcc/testsuite/ * c-c++-common/goacc/classify-kernels-unparallelized.c: Adjust. * c-c++-common/goacc/classify-kernels.c: Likewise. * c-c++-common/goacc/kernels-acc-loop-reduction.c: Likewise. * c-c++-common/goacc/kernels-acc-loop-smaller-equal.c: Likewise. * c-c++-common/goacc/kernels-counter-vars-function-scope.c: Likewise. * c-c++-common/goacc/kernels-double-reduction-n.c: Likewise. * c-c++-common/goacc/kernels-double-reduction.c: Likewise. * c-c++-common/goacc/kernels-loop-2-acc-loop.c: Likewise. * c-c++-common/goacc/kernels-loop-2.c: Likewise. * c-c++-common/goacc/kernels-loop-3-acc-loop.c: Likewise. * c-c++-common/goacc/kernels-loop-3.c: Likewise. * c-c++-common/goacc/kernels-loop-acc-loop.c: Likewise. * c-c++-common/goacc/kernels-loop-data-2.c: Likewise. * c-c++-common/goacc/kernels-loop-data-enter-exit-2.c: Likewise. * c-c++-common/goacc/kernels-loop-data-enter-exit.c: Likewise. * c-c++-common/goacc/kernels-loop-data-update.c: Likewise. * c-c++-common/goacc/kernels-loop-data.c: Likewise. * c-c++-common/goacc/kernels-loop-g.c: Likewise. * c-c++-common/goacc/kernels-loop-mod-not-zero.c: Likewise. * c-c++-common/goacc/kernels-loop-n-acc-loop.c: Likewise. * c-c++-common/goacc/kernels-loop-n.c: Likewise. * c-c++-common/goacc/kernels-loop-nest.c: Likewise. * c-c++-common/goacc/kernels-loop.c: Likewise. * c-c++-common/goacc/kernels-one-counter-var.c: Likewise. * c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c: Likewise. * c-c++-common/goacc/kernels-reduction.c: Likewise. * gfortran.dg/goacc/classify-kernels-unparallelized.f95: Likewise. * gfortran.dg/goacc/classify-kernels.f95: Likewise. * gfortran.dg/goacc/kernels-loop-2.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-2.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-enter-exit.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data-update.f95: Likewise. * gfortran.dg/goacc/kernels-loop-data.f95: Likewise. * gfortran.dg/goacc/kernels-loop-n.f95: Likewise. * gfortran.dg/goacc/kernels-loop.f95: Likewise. * gfortran.dg/goacc/kernels-parallel-loop-data-enter-exit.f95: Likewise. trunk r247957 Modified: branches/gomp-4_0-branch/gcc/ChangeLog.gomp branches/gomp-4_0-branch/gcc/config/nvptx/nvptx.c branches/gomp-4_0-branch/gcc/omp-low.c branches/gomp-4_0-branch/gcc/omp-low.h branches/gomp-4_0-branch/gcc/testsuite/ChangeLog.gomp branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/classify-kernels-unparallelized.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/classify-kernels.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-acc-loop-reduction.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-acc-loop-smaller-equal.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-counter-vars-function-scope.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-double-reduction-n.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-double-reduction.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-2-acc-loop.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-2.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-3-acc-loop.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-3.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-acc-loop.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-2.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit-2.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-enter-exit.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-data-update.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-data.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-g.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-mod-not-zero.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-n-acc-loop.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-n.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop-nest.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-loop.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-one-counter-var.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-parallel-loop-data-enter-exit.c branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/goacc/kernels-reduction.c branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/classify-kernels-unparallelized.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/classify-kernels.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop-2.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-2.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-update.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop-n.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-loop.f95 branches/gomp-4_0-branch/gcc/testsuite/gfortran.dg/goacc/kernels-parallel-loop-data-enter-exit.f95 branches/gomp-4_0-branch/gcc/tree-parloops.c