LLVM OpenMP
20.0.0git
runtime
test
parallel
omp_parallel_default.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_default
()
6
{
7
int
i
;
8
int
sum
;
9
int
mysum;
10
int
known_sum;
11
sum
=0;
12
known_sum = (
LOOPCOUNT
* (
LOOPCOUNT
+ 1)) / 2 ;
13
14
#pragma omp parallel default(shared) private(i) private(mysum)
15
{
16
mysum = 0;
17
#pragma omp for
18
for
(
i
= 1;
i
<=
LOOPCOUNT
;
i
++) {
19
mysum = mysum +
i
;
20
}
21
#pragma omp critical
22
{
23
sum
=
sum
+ mysum;
24
}
/* end of critical */
25
}
/* end of parallel */
26
if
(known_sum !=
sum
) {
27
fprintf(stderr,
"KNOWN_SUM = %d; SUM = %d\n"
, known_sum,
sum
);
28
}
29
return
(known_sum ==
sum
);
30
}
31
32
int
main
()
33
{
34
int
i
;
35
int
num_failed=0;
36
37
for
(
i
= 0;
i
<
REPETITIONS
;
i
++) {
38
if
(!
test_omp_parallel_default
()) {
39
num_failed++;
40
}
41
}
42
return
num_failed;
43
}
i
#define i
Definition:
kmp_stub.cpp:87
sum
int sum
Definition:
omp_for_schedule_runtime.c:19
test_omp_parallel_default
int test_omp_parallel_default()
Definition:
omp_parallel_default.c:5
main
int main()
Definition:
omp_parallel_default.c:32
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:20 for LLVM OpenMP by
1.9.6