Mercurial > hg > CbC > CbC_gcc
view libgomp/testsuite/libgomp.c/reduction-4.c @ 0:a06113de4d67
first commit
author | kent <kent@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 17 Jul 2009 14:47:48 +0900 |
parents | |
children |
line wrap: on
line source
#include <omp.h> #include <stdlib.h> int main (void) { int i = 0, j = 0, k = 0, l = 0; #pragma omp parallel num_threads(4) reduction(-:i) reduction(|:k) \ reduction(^:l) { if (i != 0 || k != 0 || l != 0) #pragma omp atomic j |= 1; if (omp_get_num_threads () != 4) #pragma omp atomic j |= 2; i = omp_get_thread_num (); k = 1 << (2 * i); l = 0xea << (3 * i); } if (j & 1) abort (); if ((j & 2) == 0) { if (i != (0 + 1 + 2 + 3)) abort (); if (k != 0x55) abort (); if (l != 0x1e93a) abort (); } return 0; }