Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/c-c++-common/gomp/if-1.c @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { dg-do compile } */ void foo (int a, int b, int *p, int *q) { int i; #pragma omp parallel if (a) ; #pragma omp parallel if (parallel:a) ; #pragma omp parallel for simd if (a) for (i = 0; i < 16; i++) ; #pragma omp parallel for simd if (parallel : a) for (i = 0; i < 16; i++) ; #pragma omp parallel for simd if (simd : a) for (i = 0; i < 16; i++) ; #pragma omp parallel for simd if (simd : a) if (parallel:b) for (i = 0; i < 16; i++) ; #pragma omp task if (a) ; #pragma omp task if (task: a) ; #pragma omp taskloop if (a) for (i = 0; i < 16; i++) ; #pragma omp taskloop if (taskloop : a) for (i = 0; i < 16; i++) ; #pragma omp taskloop simd if (a) for (i = 0; i < 16; i++) ; #pragma omp taskloop simd if (taskloop : a) for (i = 0; i < 16; i++) ; #pragma omp taskloop simd if (simd : a) for (i = 0; i < 16; i++) ; #pragma omp taskloop simd if (taskloop:b) if (simd : a) for (i = 0; i < 16; i++) ; #pragma omp target if (a) ; #pragma omp target if (target: a) ; #pragma omp target simd if (a) for (i = 0; i < 16; i++) ; #pragma omp target simd if (simd : a) if (target: b) for (i = 0; i < 16; i++) ; #pragma omp target teams distribute parallel for simd if (a) for (i = 0; i < 16; i++) ; #pragma omp target teams distribute parallel for simd if (parallel : a) if (target: b) for (i = 0; i < 16; i++) ; #pragma omp target teams distribute parallel for simd if (simd : a) if (target: b) for (i = 0; i < 16; i++) ; #pragma omp target data if (a) map (p[0:2]) ; #pragma omp target data if (target data: a) map (p[0:2]) ; #pragma omp target enter data if (a) map (to: p[0:2]) #pragma omp target enter data if (target enter data: a) map (to: p[0:2]) #pragma omp target exit data if (a) map (from: p[0:2]) #pragma omp target exit data if (target exit data: a) map (from: p[0:2]) #pragma omp target update if (a) to (q[0:3]) #pragma omp target update if (target update:a) to (q[0:3]) #pragma omp parallel { #pragma omp cancel parallel if (a) } #pragma omp parallel { #pragma omp cancel parallel if (cancel:a) } #pragma omp for for (i = 0; i < 16; i++) { #pragma omp cancel for if (a) } #pragma omp for for (i = 0; i < 16; i++) { #pragma omp cancel for if (cancel: a) } #pragma omp sections { #pragma omp section { #pragma omp cancel sections if (a) } } #pragma omp sections { #pragma omp section { #pragma omp cancel sections if (cancel: a) } } #pragma omp taskgroup { #pragma omp task { #pragma omp cancel taskgroup if (a) } #pragma omp task { #pragma omp cancel taskgroup if (cancel: a) } } }