diff options
author | Samuel Antao <sfantao@us.ibm.com> | 2016-02-27 00:01:58 +0000 |
---|---|---|
committer | Samuel Antao <sfantao@us.ibm.com> | 2016-02-27 00:01:58 +0000 |
commit | f91b1639505183a88b147012068776abf53a37cd (patch) | |
tree | 27bbafa3babec9a33872cf9382355a718db0a4a4 /clang/test/OpenMP | |
parent | 4b618dcc93285a2c1c9233db8f242264473f31b7 (diff) | |
download | bcm5719-llvm-f91b1639505183a88b147012068776abf53a37cd.tar.gz bcm5719-llvm-f91b1639505183a88b147012068776abf53a37cd.zip |
[OpenMP] Fix parsing of delete map clause modifier in C++ mode.
Summary: The map modifier 'delete' is parser in c++ mode as a delete keyword, which requires special handling in the map clause parsing.
Reviewers: hfinkel, carlo.bertolli, arpith-jacob, kkwli0, ABataev
Subscribers: cfe-commits, fraggamuffin, caomhin
Differential Revision: http://reviews.llvm.org/D17629
llvm-svn: 262094
Diffstat (limited to 'clang/test/OpenMP')
-rw-r--r-- | clang/test/OpenMP/target_enter_data_map_messages.c | 1 | ||||
-rw-r--r-- | clang/test/OpenMP/target_exit_data_ast_print.cpp | 16 | ||||
-rw-r--r-- | clang/test/OpenMP/target_exit_data_map_messages.c | 1 |
3 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/OpenMP/target_enter_data_map_messages.c b/clang/test/OpenMP/target_enter_data_map_messages.c index e927ea61ad0..6f5aad1ef65 100644 --- a/clang/test/OpenMP/target_enter_data_map_messages.c +++ b/clang/test/OpenMP/target_enter_data_map_messages.c @@ -1,4 +1,5 @@ // RUN: %clang_cc1 -triple x86_64-apple-macos10.7.0 -verify -fopenmp -ferror-limit 100 -o - %s +// RUN: %clang_cc1 -triple x86_64-apple-macos10.7.0 -verify -fopenmp -ferror-limit 100 -o - -x c++ %s int main(int argc, char **argv) { diff --git a/clang/test/OpenMP/target_exit_data_ast_print.cpp b/clang/test/OpenMP/target_exit_data_ast_print.cpp index 1b324b4c3b8..e2c6d7fd65c 100644 --- a/clang/test/OpenMP/target_exit_data_ast_print.cpp +++ b/clang/test/OpenMP/target_exit_data_ast_print.cpp @@ -23,6 +23,10 @@ T tmain(T argc, T *argv) { #pragma omp target exit data map(release: x[0:10], c) +#pragma omp target exit data map(delete: x[0:10]) + +#pragma omp target exit data map(always, delete: x[0:10]) + #pragma omp target exit data map(from: c) map(release: d) #pragma omp target exit data map(always,release: e) @@ -71,6 +75,8 @@ T tmain(T argc, T *argv) { // CHECK-NEXT: #pragma omp target exit data map(from: c) // CHECK-NEXT: #pragma omp target exit data map(from: c) if(b > e) // CHECK-NEXT: #pragma omp target exit data map(release: x[0:10],c) +// CHECK-NEXT: #pragma omp target exit data map(delete: x[0:10]) +// CHECK-NEXT: #pragma omp target exit data map(always,delete: x[0:10]) // CHECK-NEXT: #pragma omp target exit data map(from: c) map(release: d) // CHECK-NEXT: #pragma omp target exit data map(always,release: e) // CHECK-NEXT: #pragma omp target exit data nowait map(from: i) @@ -98,6 +104,8 @@ T tmain(T argc, T *argv) { // CHECK-NEXT: #pragma omp target exit data map(from: c) // CHECK-NEXT: #pragma omp target exit data map(from: c) if(b > e) // CHECK-NEXT: #pragma omp target exit data map(release: x[0:10],c) +// CHECK-NEXT: #pragma omp target exit data map(delete: x[0:10]) +// CHECK-NEXT: #pragma omp target exit data map(always,delete: x[0:10]) // CHECK-NEXT: #pragma omp target exit data map(from: c) map(release: d) // CHECK-NEXT: #pragma omp target exit data map(always,release: e) // CHECK-NEXT: #pragma omp target exit data nowait map(from: i) @@ -125,6 +133,8 @@ T tmain(T argc, T *argv) { // CHECK-NEXT: #pragma omp target exit data map(from: c) // CHECK-NEXT: #pragma omp target exit data map(from: c) if(b > e) // CHECK-NEXT: #pragma omp target exit data map(release: x[0:10],c) +// CHECK-NEXT: #pragma omp target exit data map(delete: x[0:10]) +// CHECK-NEXT: #pragma omp target exit data map(always,delete: x[0:10]) // CHECK-NEXT: #pragma omp target exit data map(from: c) map(release: d) // CHECK-NEXT: #pragma omp target exit data map(always,release: e) // CHECK-NEXT: #pragma omp target exit data nowait map(from: i) @@ -168,6 +178,12 @@ int main (int argc, char **argv) { #pragma omp target exit data map(from: x[0:10], c) // CHECK-NEXT: #pragma omp target exit data map(from: x[0:10],c) +#pragma omp target exit data map(delete: x[0:10]) +// CHECK-NEXT: #pragma omp target exit data map(delete: x[0:10]) + +#pragma omp target exit data map(always, delete: x[0:10]) +// CHECK-NEXT: #pragma omp target exit data map(always,delete: x[0:10]) + #pragma omp target exit data map(from: c) map(release: d) // CHECK-NEXT: #pragma omp target exit data map(from: c) map(release: d) diff --git a/clang/test/OpenMP/target_exit_data_map_messages.c b/clang/test/OpenMP/target_exit_data_map_messages.c index 26178e19e64..a9953fbbb4c 100644 --- a/clang/test/OpenMP/target_exit_data_map_messages.c +++ b/clang/test/OpenMP/target_exit_data_map_messages.c @@ -1,4 +1,5 @@ // RUN: %clang_cc1 -triple x86_64-apple-macos10.7.0 -verify -fopenmp -ferror-limit 100 -o - %s +// RUN: %clang_cc1 -triple x86_64-apple-macos10.7.0 -verify -fopenmp -ferror-limit 100 -o - -x c++ %s int main(int argc, char **argv) { |