LLVM OpenMP
20.0.0git
runtime
test
worksharing
for
omp_parallel_for_lastprivate.c
Go to the documentation of this file.
1
// RUN: %libomp-compile-and-run
2
#include <stdio.h>
3
#include "
omp_testsuite.h
"
4
5
int
test_omp_parallel_for_lastprivate
()
6
{
7
int
sum
;
8
int
i
;
9
int
i0;
10
int
known_sum;
11
12
sum
=0;
13
i0 = -1;
14
15
#pragma omp parallel for reduction(+:sum) \
16
schedule(static,7) private(i) lastprivate(i0)
17
for
(
i
= 1;
i
<=
LOOPCOUNT
;
i
++) {
18
sum
=
sum
+
i
;
19
i0 =
i
;
20
}
/* end of parallel for */
21
22
known_sum = (
LOOPCOUNT
* (
LOOPCOUNT
+ 1)) / 2;
23
return
((known_sum ==
sum
) && (i0 ==
LOOPCOUNT
));
24
}
/* end of check_parallel_for_lastprivate */
25
26
int
main
()
27
{
28
int
i
;
29
int
num_failed=0;
30
31
for
(
i
= 0;
i
<
REPETITIONS
;
i
++) {
32
if
(!
test_omp_parallel_for_lastprivate
()) {
33
num_failed++;
34
}
35
}
36
return
num_failed;
37
}
i
#define i
Definition:
kmp_stub.cpp:87
sum
int sum
Definition:
omp_for_schedule_runtime.c:19
test_omp_parallel_for_lastprivate
int test_omp_parallel_for_lastprivate()
Definition:
omp_parallel_for_lastprivate.c:5
main
int main()
Definition:
omp_parallel_for_lastprivate.c:26
omp_testsuite.h
LOOPCOUNT
#define LOOPCOUNT
Definition:
omp_testsuite.h:12
REPETITIONS
#define REPETITIONS
Definition:
omp_testsuite.h:13
Generated on Wed Feb 5 2025 10:57:22 for LLVM OpenMP by
1.9.6