! Test lowering of deviceptr clause. ! RUN: bbc -fopenacc -emit-hlfir %s -o - | FileCheck %s subroutine test (a, b, n) real(8) :: a(:), b(:) !$acc parallel loop deviceptr(a,b) do i = 1,n a(i) = b(i) enddo end subroutine ! CHECK-LABEL: func.func @_QPtest( ! CHECK: %[[DECLARE_0:.*]]:2 = hlfir.declare {{.*}}"_QFtestEa" ! CHECK: %[[DECLARE_1:.*]]:2 = hlfir.declare {{.*}}"_QFtestEb" ! CHECK: %[[DEVICEPTR_0:.*]] = acc.deviceptr var(%[[DECLARE_0]]#0 : !fir.box>) -> !fir.box> {name = "a"} ! CHECK: %[[DEVICEPTR_1:.*]] = acc.deviceptr var(%[[DECLARE_1]]#0 : !fir.box>) -> !fir.box> {name = "b"} ! CHECK: acc.parallel combined(loop) dataOperands(%[[DEVICEPTR_0]], %[[DEVICEPTR_1]] : !fir.box>, !fir.box>) { ! CHECK: %[[DECLARE_4:.*]]:2 = hlfir.declare %[[DEVICEPTR_0]] ! CHECK: %[[DECLARE_5:.*]]:2 = hlfir.declare %[[DEVICEPTR_1]] ! CHECK: acc.loop combined(parallel) ! CHECK: hlfir.designate %[[DECLARE_5]]#0 ! CHECK: hlfir.designate %[[DECLARE_4]]#0