brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 84c4cb5 Raw
23 lines · plain
1! RUN: %flang_fc1 -fopenmp -emit-hlfir -o - %s | FileCheck %s2 3subroutine depend_complex(z)4! CHECK-LABEL:   func.func @_QPdepend_complex(5! CHECK-SAME:      %[[ARG0:.*]]: !fir.ref<complex<f32>> {fir.bindc_name = "z"}) {6  complex :: z7! CHECK:           %[[VAL_0:.*]] = fir.dummy_scope : !fir.dscope8! CHECK:           %[[VAL_1:.*]]:2 = hlfir.declare %[[ARG0]] dummy_scope %[[VAL_0]] arg {{[0-9]+}} {uniq_name = "_QFdepend_complexEz"} : (!fir.ref<complex<f32>>, !fir.dscope) -> (!fir.ref<complex<f32>>, !fir.ref<complex<f32>>)9  !$omp task depend(in:z%re)10! CHECK:           %[[VAL_2:.*]] = hlfir.designate %[[VAL_1]]#0  real : (!fir.ref<complex<f32>>) -> !fir.ref<f32>11! CHECK:           omp.task depend(taskdependin -> %[[VAL_2]] : !fir.ref<f32>) {12! CHECK:             omp.terminator13! CHECK:           }14  !$omp end task15  !$omp task depend(in:z%im)16! CHECK:           %[[VAL_3:.*]] = hlfir.designate %[[VAL_1]]#0  imag : (!fir.ref<complex<f32>>) -> !fir.ref<f32>17! CHECK:           omp.task depend(taskdependin -> %[[VAL_3]] : !fir.ref<f32>) {18! CHECK:             omp.terminator19! CHECK:           }20  !$omp end task21end subroutine22 23