summaryrefslogtreecommitdiffstats
path: root/gcc/testsuite/c-c++-common/gomp
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2014-04-24 21:21:48 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2014-04-24 21:21:48 +0000
commit9d0b45e744fe3eb72e5a47df714935d798705fbb (patch)
treec255a0f89ce718c275286a167fc2c8d77f219d80 /gcc/testsuite/c-c++-common/gomp
parent6753d0d27511f30725bdb46de1d0ef33e0fc483b (diff)
downloadppe42-gcc-9d0b45e744fe3eb72e5a47df714935d798705fbb.tar.gz
ppe42-gcc-9d0b45e744fe3eb72e5a47df714935d798705fbb.zip
gcc/c/
* c-parser.c (c_parser_omp_atomic): Allow seq_cst before atomic-clause, allow comma in between atomic-clause and seq_cst. gcc/cp/ * parser.c (cp_parser_omp_atomic): Allow seq_cst before atomic-clause, allow comma in between atomic-clause and seq_cst. gcc/testsuite/ * c-c++-common/gomp/atomic-16.c: Remove all dg-error directives. Replace load with read and store with write. libgomp/ * testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and atomic type clauses in any order and optional comma in between. * testsuite/libgomp.c++/atomic-15.C: Likewise. * testsuite/libgomp.c/atomic-17.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@209763 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/c-c++-common/gomp')
-rw-r--r--gcc/testsuite/c-c++-common/gomp/atomic-16.c40
1 files changed, 20 insertions, 20 deletions
diff --git a/gcc/testsuite/c-c++-common/gomp/atomic-16.c b/gcc/testsuite/c-c++-common/gomp/atomic-16.c
index 87fbaa23317..9332396eaa5 100644
--- a/gcc/testsuite/c-c++-common/gomp/atomic-16.c
+++ b/gcc/testsuite/c-c++-common/gomp/atomic-16.c
@@ -7,28 +7,28 @@ void
foo ()
{
int v;
- #pragma omp atomic seq_cst load /* { dg-error "expected end of line" } */
- v = x; /* { dg-error "invalid form" } */
- #pragma omp atomic seq_cst, load /* { dg-error "expected end of line" } */
- v = x; /* { dg-error "invalid form" } */
- #pragma omp atomic seq_cst store /* { dg-error "expected end of line" } */
- x = v; /* { dg-error "invalid form" } */
- #pragma omp atomic seq_cst ,store /* { dg-error "expected end of line" } */
- x = v; /* { dg-error "invalid form" } */
- #pragma omp atomic seq_cst update /* { dg-error "expected end of line" } */
+ #pragma omp atomic seq_cst read
+ v = x;
+ #pragma omp atomic seq_cst, read
+ v = x;
+ #pragma omp atomic seq_cst write
+ x = v;
+ #pragma omp atomic seq_cst ,write
+ x = v;
+ #pragma omp atomic seq_cst update
x += v;
- #pragma omp atomic seq_cst , update /* { dg-error "expected end of line" } */
+ #pragma omp atomic seq_cst , update
x += v;
- #pragma omp atomic seq_cst capture /* { dg-error "expected end of line" } */
- v = x += 2; /* { dg-error "invalid form" } */
- #pragma omp atomic seq_cst, capture /* { dg-error "expected end of line" } */
- v = x += 2; /* { dg-error "invalid form" } */
- #pragma omp atomic load , seq_cst /* { dg-error "expected end of line" } */
- v = x; /* { dg-error "invalid form" } */
- #pragma omp atomic store ,seq_cst /* { dg-error "expected end of line" } */
- x = v; /* { dg-error "invalid form" } */
- #pragma omp atomic update, seq_cst /* { dg-error "expected end of line" } */
+ #pragma omp atomic seq_cst capture
+ v = x += 2;
+ #pragma omp atomic seq_cst, capture
+ v = x += 2;
+ #pragma omp atomic read , seq_cst
+ v = x;
+ #pragma omp atomic write ,seq_cst
+ x = v;
+ #pragma omp atomic update, seq_cst
x += v;
- #pragma omp atomic capture, seq_cst /* { dg-error "expected end of line" } */
+ #pragma omp atomic capture, seq_cst
v = x += 2;
}
OpenPOWER on IntegriCloud