PR target/81988
[official-gcc.git] / libgomp / testsuite / libgomp.c++ / parallel-1.C
blob3c93147132840faa7226b500b28ee2497ee8f9f6
1 #include <omp.h>
3 extern "C" void abort (void);
5 int
6 foo (void)
8   return 10;
11 main ()
13   int A = 0;
15   #pragma omp parallel if (foo () > 10) shared (A)
16     {
17       A = omp_get_num_threads ();
18     }
20   if (A != 1)
21     abort ();
23   #pragma omp parallel if (foo () == 10) num_threads (3) shared (A)
24     {
25       A = omp_get_num_threads ();
26     }
28   if (A != 3)
29     abort ();
31   #pragma omp parallel if (foo () == 10) num_threads (foo ()) shared (A)
32     {
33       A = omp_get_num_threads ();
34     }
36   if (A != 10)
37     abort ();
39   return 0;