Mercurial > hg > CbC > CbC_gcc
view libgomp/testsuite/libgomp.c/reduction-5.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +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; }