brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.4 KiB · d579907 Raw
77 lines · plain
1! This test checks lowering of OpenMP order clause.2 3!RUN: %flang_fc1 -emit-hlfir -fopenmp -fopenmp-version=50 %s -o - | FileCheck %s4 5!CHECK-LABEL:   func.func @_QPsimd_order() {6subroutine simd_order7   !CHECK: omp.simd order(reproducible:concurrent) private({{.*}}) {8   !$omp simd order(concurrent)9   do i = 1, 1010   end do11   !CHECK: omp.simd order(reproducible:concurrent) private({{.*}}) {12   !$omp simd order(reproducible:concurrent)13   do i = 1, 1014   end do15   !CHECK: omp.simd order(unconstrained:concurrent) private({{.*}}) {16   !$omp simd order(unconstrained:concurrent)17   do i = 1, 1018   end do19end subroutine simd_order20 21!CHECK-LABEL:   func.func @_QPdo_order() {22subroutine do_order23   !CHECK: omp.wsloop order(reproducible:concurrent) private({{.*}}) {24   !$omp do order(concurrent)25   do i = 1, 1026   end do27   !CHECK: omp.wsloop order(reproducible:concurrent) private({{.*}}) {28   !$omp do order(reproducible:concurrent)29   do i = 1, 1030   end do31   !CHECK: omp.wsloop order(unconstrained:concurrent) private({{.*}}) {32   !$omp do order(unconstrained:concurrent)33   do i = 1, 1034   end do35end subroutine do_order36 37!CHECK-LABEL:   func.func @_QPdo_simd_order() {38subroutine do_simd_order39   !CHECK: omp.wsloop order(reproducible:concurrent) {40   !$omp do simd order(concurrent)41   do i = 1, 1042   end do43   !CHECK: omp.wsloop order(reproducible:concurrent) {44   !$omp do simd order(reproducible:concurrent)45   do i = 1, 1046   end do47   !CHECK: omp.wsloop order(unconstrained:concurrent) {48   !$omp do simd order(unconstrained:concurrent)49   do i = 1, 1050   end do51end subroutine do_simd_order52 53!CHECK-LABEL:   func.func @_QPdo_simd_order_parallel() {54subroutine do_simd_order_parallel55   !CHECK: omp.parallel {56   !CHECK: omp.wsloop order(reproducible:concurrent) {57   !$omp parallel do simd order(reproducible:concurrent)58   do i = 1, 1059   end do60end subroutine do_simd_order_parallel61 62 63subroutine distribute_order64   !CHECK: omp.distribute order(reproducible:concurrent) private({{.*}}) {65   !$omp teams distribute order(concurrent)66   do i=1,1067   end do68   !CHECK: omp.distribute order(reproducible:concurrent) private({{.*}}) {69   !$omp teams distribute order(reproducible:concurrent)70   do i=1,1071   end do72   !CHECK: omp.distribute order(unconstrained:concurrent) private({{.*}}) {73   !$omp teams distribute order(unconstrained:concurrent)74   do i = 1, 1075   end do76end subroutine77