Mercurial > hg > CbC > CbC_gcc
view libgomp/testsuite/libgomp.c/reduction-5.c @ 143:76e1cf5455ef
add cbc_gc test
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 23 Dec 2018 19:24:05 +0900 |
parents | a06113de4d67 |
children |
line wrap: on
line source
/* PR middle-end/36506 */ extern void abort (void); int main (void) { int sum = 0, prod = 1; #pragma omp parallel #pragma omp sections reduction (+:sum) { #pragma omp section sum += 2; #pragma omp section sum += 2; #pragma omp section sum += 2; } if (sum != 6) abort (); sum = 0; #pragma omp parallel sections reduction (+:sum) { #pragma omp section sum += 2; #pragma omp section sum += 2; #pragma omp section sum += 2; } if (sum != 6) abort (); sum = 0; #pragma omp parallel #pragma omp sections reduction (+:sum) reduction (*:prod) { #pragma omp section { sum += 2; prod *= 2; } #pragma omp section { sum += 2; prod *= 2; } #pragma omp section { sum += 2; prod *= 2; } } if (sum != 6 || prod != 8) abort (); sum = 0; prod = 1; #pragma omp parallel sections reduction (+:sum) reduction (*:prod) { #pragma omp section { sum += 2; prod *= 2; } #pragma omp section { sum += 2; prod *= 2; } #pragma omp section { sum += 2; prod *= 2; } } if (sum != 6 || prod != 8) abort (); return 0; }