blob: 17fe2b708503df42eed3c2d45c7d15e0f8a79104 [file] [edit]
! A bind("name") target is its own external name, declared verbatim (not
! mangled), so later passes reference a live symbol.
! RUN: bbc -fopenacc -emit-hlfir %s -o - | FileCheck %s
! CHECK: acc.routine @[[ACLEAR_DEV_ROUTINE:.*]] func(@aclear_dev) seq
! CHECK: acc.routine @{{.*}} func(@_QPaclear) bind("aclear_dev") seq
! CHECK: func.func private @aclear_dev({{.*}}) attributes {acc.routine_info = #acc.routine_info<[@[[ACLEAR_DEV_ROUTINE]]]>}
subroutine s_bind_str_undeclared(n, x)
integer :: n, i
real :: x(n)
!$acc routine(aclear) seq bind("aclear_dev")
external :: aclear
!$acc parallel loop
do i = 1, n
call aclear(x(i))
end do
end subroutine