Test which checks the omp flush directive. 2.0 omp flush omp barrier #include #include #include "omp_testsuite.h" #include "omp_my_sleep.h" int omp_flush (FILE * logFile) { int result1; int result2; int dummy; result1 = 0; result2 = 0; #pragma omp parallel { int rank; rank = omp_get_thread_num (); #pragma omp barrier if (rank == 1) { result2 = 3; #pragma omp flush (result2) dummy = result2; } if (rank == 0) { my_sleep(SLEEPTIME_LONG); #pragma omp flush (result2) result1 = result2; } } /* end of parallel */ return ((result1 == result2) && (result2 == dummy) && (result2 == 3)); }