diff options
| author | Alexey Bataev <a.bataev@hotmail.com> | 2015-01-19 05:20:46 +0000 |
|---|---|---|
| committer | Alexey Bataev <a.bataev@hotmail.com> | 2015-01-19 05:20:46 +0000 |
| commit | 3255bf3aacbb71d1a52f3d0951af87717e0ee30a (patch) | |
| tree | 8bcd7b0cd19c85ef6659877b19c2cf663df98e5c /clang/test/OpenMP/single_ast_print.cpp | |
| parent | b93d3dbc1fc963834d51168d34a76815d2906391 (diff) | |
| download | bcm5719-llvm-3255bf3aacbb71d1a52f3d0951af87717e0ee30a.tar.gz bcm5719-llvm-3255bf3aacbb71d1a52f3d0951af87717e0ee30a.zip | |
[OPENMP] Disable copyprivate an nowait clauses in 'single' directive.
The copyprivate clause must not be used with the nowait clause in single
directive.
llvm-svn: 226429
Diffstat (limited to 'clang/test/OpenMP/single_ast_print.cpp')
| -rw-r--r-- | clang/test/OpenMP/single_ast_print.cpp | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/clang/test/OpenMP/single_ast_print.cpp b/clang/test/OpenMP/single_ast_print.cpp index 65a007e271c..b9eba9d7eb2 100644 --- a/clang/test/OpenMP/single_ast_print.cpp +++ b/clang/test/OpenMP/single_ast_print.cpp @@ -14,10 +14,16 @@ T tmain(T argc) { static T a; // CHECK: static T a; #pragma omp parallel private(g) -#pragma omp single private(argc, b), firstprivate(c, d), nowait copyprivate(g) +#pragma omp single private(argc, b), firstprivate(c, d), nowait foo(); // CHECK-NEXT: #pragma omp parallel private(g) - // CHECK-NEXT: #pragma omp single private(argc,b) firstprivate(c,d) nowait copyprivate(g) + // CHECK-NEXT: #pragma omp single private(argc,b) firstprivate(c,d) nowait + // CHECK-NEXT: foo(); +#pragma omp parallel private(g) +#pragma omp single private(argc, b), firstprivate(c, d), copyprivate(g) + foo(); + // CHECK-NEXT: #pragma omp parallel private(g) + // CHECK-NEXT: #pragma omp single private(argc,b) firstprivate(c,d) copyprivate(g) // CHECK-NEXT: foo(); return T(); } @@ -27,10 +33,16 @@ int main(int argc, char **argv) { static int a; // CHECK: static int a; #pragma omp parallel private(g) -#pragma omp single private(argc, b), firstprivate(argv, c), nowait copyprivate(g) +#pragma omp single private(argc, b), firstprivate(argv, c), nowait + foo(); + // CHECK-NEXT: #pragma omp parallel private(g) + // CHECK-NEXT: #pragma omp single private(argc,b) firstprivate(argv,c) nowait + // CHECK-NEXT: foo(); +#pragma omp parallel private(g) +#pragma omp single private(argc, b), firstprivate(c, d), copyprivate(g) foo(); // CHECK-NEXT: #pragma omp parallel private(g) - // CHECK-NEXT: #pragma omp single private(argc,b) firstprivate(argv,c) nowait copyprivate(g) + // CHECK-NEXT: #pragma omp single private(argc,b) firstprivate(c,d) copyprivate(g) // CHECK-NEXT: foo(); return (tmain<int, 5>(argc) + tmain<char, 1>(argv[0][0])); } |

