1 | // RUN: %libomp-cxx-compile-and-run | FileCheck %s --match-full-lines |
2 | |
3 | #ifndef HEADER |
4 | #define |
5 | |
6 | #include <cstdlib> |
7 | #include <cstdio> |
8 | |
9 | int main() { |
10 | printf(format: "do\n" ); |
11 | #pragma omp parallel for collapse(2) num_threads(1) |
12 | for (int i = 0; i < 3; ++i) |
13 | #pragma omp unroll partial(2) |
14 | for (int j = 0; j < 3; ++j) |
15 | printf(format: "i=%d j=%d\n" , i, j); |
16 | printf(format: "done\n" ); |
17 | return EXIT_SUCCESS; |
18 | } |
19 | |
20 | #endif /* HEADER */ |
21 | |
22 | // CHECK: do |
23 | // CHECK-NEXT: i=0 j=0 |
24 | // CHECK-NEXT: i=0 j=1 |
25 | // CHECK-NEXT: i=0 j=2 |
26 | // CHECK-NEXT: i=1 j=0 |
27 | // CHECK-NEXT: i=1 j=1 |
28 | // CHECK-NEXT: i=1 j=2 |
29 | // CHECK-NEXT: i=2 j=0 |
30 | // CHECK-NEXT: i=2 j=1 |
31 | // CHECK-NEXT: i=2 j=2 |
32 | // CHECK-NEXT: done |
33 | |