URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libgomp/] [testsuite/] [libgomp.c/] [reduction-5.c] - Rev 735
Compare with Previous | Blame | View Log
/* 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; }