Initial support for the OpenACC kernels construct in the C front end.
commit07385a716d04d0e54cbe4fcfd5a7d0d037c083b6
authortschwinge <tschwinge@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 28 Feb 2014 09:20:55 +0000 (28 09:20 +0000)
committertschwinge <tschwinge@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 28 Feb 2014 09:20:55 +0000 (28 09:20 +0000)
tree4ff837de6545fc1736bf410de6de80ab78592444
parent737f06bec987ab7e50f03640769c8b398503131e
Initial support for the OpenACC kernels construct in the C front end.

gcc/c-family/
* c-pragma.c (oacc_pragmas): Add "kernels".
* c-pragma.h (enum pragma_kind): Add PRAGMA_OACC_KERNELS.
gcc/c/
* c-parser.c (OACC_KERNELS_CLAUSE_MASK): New macro definition.
(c_parser_oacc_kernels): New function.
(c_parser_omp_construct): Handle PRAGMA_OACC_KERNELS.
* c-tree.h (c_finish_oacc_kernels): New prototype.
* c-typeck.c (c_finish_oacc_kernels): New function.
gcc/testsuite/
* c-c++-common/goacc-gomp/nesting-fail-1.c: Extend for OpenACC
kernels construct.
* c-c++-common/goacc/clauses-fail.c: Likewise.
* c-c++-common/goacc/data-clause-duplicate-1.c: Likewise.
* c-c++-common/goacc/deviceptr-1.c: Likewise.
* c-c++-common/goacc/nesting-fail-1.c: Likewise.
* c-c++-common/goacc/kernels-1.c: New file.
* gcc.dg/goacc/parallel-sb-1.c: Rename to...
* gcc.dg/goacc/sb-1.c: ... this new file, and extend for OpenACC
kernels and data constructs.
* gcc.dg/goacc/parallel-sb-2.c: Rename to...
* gcc.dg/goacc/sb-2.c: ... this new file, and extend for OpenACC
kernels and data constructs.
libgomp/
* testsuite/libgomp.oacc-c/goacc_kernels.c: New file.
* testsuite/libgomp.oacc-c/kernels-1.c: Likewise.
* testsuite/libgomp.oacc-c/parallel-1.c: Add one missing test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@208216 138bc75d-0d04-0410-961f-82ee72b054a4
22 files changed:
gcc/c-family/ChangeLog.gomp
gcc/c-family/c-pragma.c
gcc/c-family/c-pragma.h
gcc/c/ChangeLog.gomp
gcc/c/c-parser.c
gcc/c/c-tree.h
gcc/c/c-typeck.c
gcc/testsuite/ChangeLog.gomp
gcc/testsuite/c-c++-common/goacc-gomp/nesting-fail-1.c
gcc/testsuite/c-c++-common/goacc/clauses-fail.c
gcc/testsuite/c-c++-common/goacc/data-clause-duplicate-1.c
gcc/testsuite/c-c++-common/goacc/deviceptr-1.c
gcc/testsuite/c-c++-common/goacc/kernels-1.c [new file with mode: 0644]
gcc/testsuite/c-c++-common/goacc/nesting-fail-1.c
gcc/testsuite/gcc.dg/goacc/parallel-sb-1.c [deleted file]
gcc/testsuite/gcc.dg/goacc/parallel-sb-2.c [deleted file]
gcc/testsuite/gcc.dg/goacc/sb-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/goacc/sb-2.c [new file with mode: 0644]
libgomp/ChangeLog.gomp
libgomp/testsuite/libgomp.oacc-c/goacc_kernels.c [new file with mode: 0644]
libgomp/testsuite/libgomp.oacc-c/kernels-1.c [copied from libgomp/testsuite/libgomp.oacc-c/parallel-1.c with 67% similarity]
libgomp/testsuite/libgomp.oacc-c/parallel-1.c