LLVM OpenMP
runtime
test
transform
flatten
mixed-sign.c
Go to the documentation of this file.
1
// RUN: %libomp-compile -fopenmp-version=61 && %libomp-run \
2
// RUN: | FileCheck %s --match-full-lines
3
4
#include <stdio.h>
5
#include <stdlib.h>
6
7
typedef
__SIZE_TYPE__
size_t
;
8
9
static
void
flatten
(
int
n) {
10
#pragma omp flatten depth(2)
11
for
(
size_t
i
= 0;
i
< (
size_t
)n; ++
i
)
12
for
(
int
j
= 0;
j
< n; ++
j
)
13
printf(
"i=%zu j=%d\n"
,
i
,
j
);
14
}
15
16
int
main
(
void
) {
17
printf(
"n2-begin\n"
);
18
flatten
(2);
19
printf(
"n2-end\n"
);
20
21
printf(
"n0-begin\n"
);
22
flatten
(0);
23
printf(
"n0-end\n"
);
24
25
printf(
"nneg-begin\n"
);
26
flatten
(-2);
27
printf(
"nneg-end\n"
);
28
return
EXIT_SUCCESS;
29
}
30
31
// CHECK: n2-begin
32
// CHECK-NEXT: i=0 j=0
33
// CHECK-NEXT: i=0 j=1
34
// CHECK-NEXT: i=1 j=0
35
// CHECK-NEXT: i=1 j=1
36
// CHECK-NEXT: n2-end
37
// CHECK-NEXT: n0-begin
38
// CHECK-NEXT: n0-end
39
// CHECK-NEXT: nneg-begin
40
// CHECK-NEXT: nneg-end
i
#define i
Definition
kmp_stub.cpp:88
main
int main(void)
Definition
mixed-sign.c:16
size_t
__SIZE_TYPE__ size_t
Definition
mixed-sign.c:7
flatten
static void flatten(int n)
Definition
mixed-sign.c:9
j
int j
Definition
omp_single_copyprivate.c:6
Generated on
for LLVM OpenMP by
1.14.0