40 lines · plain
1! RUN: %flang_fc1 -emit-fir -fopenmp -fopenmp-version=60 %s -o - | FileCheck %s2 3! CHECK-LABEL: func @_QPtarget_teams_workdistribute4subroutine target_teams_workdistribute()5 use iso_fortran_env6 real(kind=real32) :: a7 real(kind=real32), dimension(10) :: x8 real(kind=real32), dimension(10) :: y9 10 ! CHECK: omp.target_data11 ! CHECK: omp.target12 ! CHECK: omp.teams13 ! CHECK: omp.parallel14 ! CHECK: omp.distribute15 ! CHECK: omp.wsloop16 ! CHECK: omp.loop_nest17 18 !$omp target teams workdistribute19 y = a * x + y20 !$omp end target teams workdistribute21end subroutine target_teams_workdistribute22 23! CHECK-LABEL: func @_QPteams_workdistribute24subroutine teams_workdistribute()25 use iso_fortran_env26 real(kind=real32) :: a27 real(kind=real32), dimension(10) :: x28 real(kind=real32), dimension(10) :: y29 30 ! CHECK: omp.teams31 ! CHECK: omp.parallel32 ! CHECK: omp.distribute33 ! CHECK: omp.wsloop34 ! CHECK: omp.loop_nest35 36 !$omp teams workdistribute37 y = a * x + y38 !$omp end teams workdistribute39end subroutine teams_workdistribute40