URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [libgomp/] [testsuite/] [libgomp.c/] [barrier-1.c] - Rev 816
Compare with Previous | Blame | View Log
/* Trivial test of barrier. */ #include <omp.h> #include <sys/time.h> #include <unistd.h> #include <assert.h> #include "libgomp_g.h" struct timeval stamps[3][3]; static void function(void *dummy) { int iam = omp_get_thread_num (); gettimeofday (&stamps[iam][0], NULL); if (iam == 0) usleep (10); GOMP_barrier (); if (iam == 0) { gettimeofday (&stamps[0][1], NULL); usleep (10); } GOMP_barrier (); gettimeofday (&stamps[iam][2], NULL); } int main() { omp_set_dynamic (0); GOMP_parallel_start (function, NULL, 3); function (NULL); GOMP_parallel_end (); assert (!timercmp (&stamps[0][0], &stamps[0][1], >)); assert (!timercmp (&stamps[1][0], &stamps[0][1], >)); assert (!timercmp (&stamps[2][0], &stamps[0][1], >)); assert (!timercmp (&stamps[0][1], &stamps[0][2], >)); assert (!timercmp (&stamps[0][1], &stamps[1][2], >)); assert (!timercmp (&stamps[0][1], &stamps[2][2], >)); return 0; }