54 lines · plain
1! REQUIRES: plugins, examples, shell2 3! RUN: %flang_fc1 -load %llvmshlibdir/flangOmpReport%pluginext -plugin flang-omp-report -fopenmp -fopenmp-version=50 %s -o - | FileCheck %s4 5! Check for ORDER([order-modifier :]concurrent) clause on OpenMP constructs6 7subroutine test_order()8 integer :: i, j = 19 !$omp do order(concurrent)10 do i=1,1011 j = j + 112 end do13 !$omp end do14end subroutine15 16!CHECK: - file: {{.*}}17!CHECK: line: 918!CHECK: construct: do19!CHECK: clauses:20!CHECK: - clause: order21!CHECK: details: concurrent22 23subroutine test_order_reproducible()24 integer :: i, j = 125 !$omp simd order(reproducible:concurrent)26 do i=1,1027 j = j + 128 end do29 !$omp end simd30end subroutine31 32!CHECK: - file: {{.*}}33!CHECK: line: 2534!CHECK: construct: simd35!CHECK: clauses:36!CHECK: - clause: order37!CHECK: details: 'reproducible:concurrent'38 39subroutine test_order_unconstrained()40 integer :: i, j = 141 !$omp target teams distribute parallel do simd order(unconstrained:concurrent)42 do i=1,1043 j = j + 144 end do45 !$omp end target teams distribute parallel do simd46end subroutine47 48!CHECK: - file: {{.*}}49!CHECK: line: 4150!CHECK: construct: target teams distribute parallel do simd51!CHECK: clauses:52!CHECK: - clause: order53!CHECK: details: 'unconstrained:concurrent'54