Retro68/gcc/libgomp/testsuite/libgomp.c++/parallel-1.C

41 lines
541 B
C++
Raw Normal View History

2012-03-27 23:13:14 +00:00
#include <omp.h>
extern "C" void abort (void);
int
foo (void)
{
return 10;
}
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;
}