diff options
Diffstat (limited to 'test/OpenMP/critical_ast_print.cpp')
-rw-r--r-- | test/OpenMP/critical_ast_print.cpp | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/test/OpenMP/critical_ast_print.cpp b/test/OpenMP/critical_ast_print.cpp index 87a1fe0bcee7..7189fddd7186 100644 --- a/test/OpenMP/critical_ast_print.cpp +++ b/test/OpenMP/critical_ast_print.cpp @@ -8,6 +8,26 @@ void foo() {} +// CHECK: template <typename T, int N> int tmain(T argc, char **argv) +template <typename T, int N> +int tmain (T argc, char **argv) { + T b = argc, c, d, e, f, g; + static int a; +// CHECK: static int a; +#pragma omp critical + a=2; +// CHECK-NEXT: #pragma omp critical +// CHECK-NEXT: a = 2; +// CHECK-NEXT: ++a; + ++a; +#pragma omp critical (the_name) hint(N) + foo(); +// CHECK-NEXT: #pragma omp critical (the_name) hint(N) +// CHECK-NEXT: foo(); +// CHECK-NEXT: return N; + return N; +} + int main (int argc, char **argv) { int b = argc, c, d, e, f, g; static int a; @@ -18,12 +38,12 @@ int main (int argc, char **argv) { // CHECK-NEXT: a = 2; // CHECK-NEXT: ++a; ++a; -#pragma omp critical (the_name) +#pragma omp critical (the_name1) hint(23) foo(); -// CHECK-NEXT: #pragma omp critical (the_name) +// CHECK-NEXT: #pragma omp critical (the_name1) hint(23) // CHECK-NEXT: foo(); -// CHECK-NEXT: return 0; - return 0; +// CHECK-NEXT: return tmain<int, 4>(a, argv); + return tmain<int, 4>(a, argv); } #endif |