! RUN: %flang_fc1 -emit-fir -fopenmp -fopenmp-version=60 %s -o - | FileCheck %s ! CHECK-LABEL: func @_QPtarget_teams_workdistribute subroutine target_teams_workdistribute() use iso_fortran_env real(kind=real32) :: a real(kind=real32), dimension(10) :: x real(kind=real32), dimension(10) :: y !$omp target teams workdistribute ! CHECK: omp.target_data ! CHECK: omp.target ! CHECK: omp.teams ! CHECK: omp.parallel ! CHECK: omp.distribute ! CHECK: omp.wsloop ! CHECK: omp.loop_nest y = a * x + y ! CHECK: omp.target ! CHECK: omp.teams ! CHECK: omp.parallel ! CHECK: omp.distribute ! CHECK-NOT: fir.call @_FortranAAssign ! CHECK: omp.wsloop ! CHECK: omp.loop_nest y = 2.0_real32 !$omp end target teams workdistribute end subroutine target_teams_workdistribute ! CHECK-LABEL: func @_QPteams_workdistribute subroutine teams_workdistribute() use iso_fortran_env real(kind=real32) :: a real(kind=real32), dimension(10) :: x real(kind=real32), dimension(10) :: y !$omp teams workdistribute ! CHECK: omp.teams ! CHECK: omp.parallel ! CHECK: omp.distribute ! CHECK: omp.wsloop ! CHECK: omp.loop_nest y = a * x + y ! CHECK: omp.teams ! CHECK: omp.parallel ! CHECK: omp.distribute ! CHECK-NOT: fir.call @_FortranAAssign ! CHECK: omp.wsloop ! CHECK: omp.loop_nest y = 2.0_real32 !$omp end teams workdistribute end subroutine teams_workdistribute