blob: 6997e774c2d425f6ba3fbd5e2418d6abafccfae2 [file] [log] [blame] [edit]
! RUN: bbc -emit-hlfir -fopenmp -o - %s 2>&1 | FileCheck %s
! RUN: %flang_fc1 -emit-hlfir -fopenmp -o - %s 2>&1 | FileCheck %s
! CHECK: omp.declare_reduction @[[RED:.*]] : i32 init {
! CHECK: func.func @_QPreduction_teams() {
subroutine reduction_teams()
integer :: i
i = 0
! CHECK: omp.teams reduction(@[[RED]] %{{.*}}#0 -> %[[PRIV_I:.*]] : !fir.ref<i32>) {
!$omp teams reduction(+:i)
! CHECK: %[[DECL_I:.*]]:2 = hlfir.declare %[[PRIV_I]]
! CHECK: %{{.*}} = fir.load %[[DECL_I]]#0 : !fir.ref<i32>
! CHECK: hlfir.assign %{{.*}} to %[[DECL_I]]#0 : i32, !fir.ref<i32>
i = i + 1
!$omp end teams
end subroutine reduction_teams