Retro68/gcc/libgomp/testsuite/libgomp.c/omp-parallel-if.c

42 lines
541 B
C
Raw Normal View History

2012-03-27 23:13:14 +00:00
#include <omp.h>
extern void abort (void);
int
foo (void)
{
return 10;
}
2015-08-28 15:33:40 +00:00
int
2012-03-27 23:13:14 +00:00
main ()
{
int A = 0;
#pragma omp parallel if (foo () > 10) shared (A)
{
A = omp_get_num_threads ();
}
if (A != 1)
abort ();
#pragma omp parallel if (foo () == 10) num_threads (3) shared (A)
{
A = omp_get_num_threads ();
}
if (A != 3)
abort ();
#pragma omp parallel if (foo () == 10) num_threads (foo ()) shared (A)
{
A = omp_get_num_threads ();
}
if (A != 10)
abort ();
return 0;
}