!RUN: split-file %s %t !RUN: %flang_fc1 -emit-hlfir -fopenmp -fopenmp-version=50 %t/no_bind_clause.f90 -o - \ !RUN: | FileCheck %s !RUN: %flang_fc1 -emit-hlfir -fopenmp -fopenmp-version=50 %t/bind_clause_teams.f90 -o - \ !RUN: | FileCheck %s !--- no_bind_clause.f90 subroutine target_teams_loop implicit none integer :: x, i !$omp teams loop do i = 0, 10 x = x + i end do end subroutine target_teams_loop !--- bind_clause_teams.f90 subroutine target_teams_loop implicit none integer :: x, i !$omp teams loop bind(teams) do i = 0, 10 x = x + i end do end subroutine target_teams_loop !CHECK-LABEL: func.func @_QPtarget_teams_loop !CHECK: %[[I_DECL:.*]]:2 = hlfir.declare %{{.*}} {uniq_name = "{{.*}}i"} !CHECK: %[[X_DECL:.*]]:2 = hlfir.declare %{{.*}} {uniq_name = "{{.*}}x"} !CHECK: omp.teams { !CHECK: %[[LB:.*]] = arith.constant 0 : i32 !CHECK: %[[UB:.*]] = arith.constant 10 : i32 !CHECK: %[[STEP:.*]] = arith.constant 1 : i32 !CHECK: omp.parallel private(@{{.*}} %[[I_DECL]]#0 !CHECK-SAME: -> %[[I_PRIV_ARG:[^[:space:]]+]] : !fir.ref) { !CHECK: omp.distribute { !CHECK: omp.wsloop { !CHECK: omp.loop_nest (%{{.*}}) : i32 = !CHECK-SAME: (%[[LB]]) to (%[[UB]]) inclusive step (%[[STEP]]) { !CHECK: %[[I_PRIV_DECL:.*]]:2 = hlfir.declare %[[I_PRIV_ARG]] !CHECK: hlfir.assign %{{.*}} to %[[I_PRIV_DECL]]#0 : i32, !fir.ref !CHECK: hlfir.assign %{{.*}} to %[[X_DECL]]#0 : i32, !fir.ref !CHECK: } !CHECK: } !CHECK: } !CHECK: } !CHECK: } !CHECK: }