blob: 7dba860a4a8328850c91ad2ed08a8934b7cabb98 [file] [log] [blame] [edit]
! Offloading test checking interaction of allocatables with multi-dimensional
! bounds (3-D in this case) and a target region
! REQUIRES: flang, amdgpu
! RUN: %libomptarget-compile-fortran-run-and-check-generic
program main
integer, allocatable :: inArray(:,:,:)
integer, allocatable :: outArray(:,:,:)
allocate(inArray(3,3,3))
allocate(outArray(3,3,3))
do i = 1, 3
do j = 1, 3
do k = 1, 3
inArray(i, j, k) = 42
outArray(i, j, k) = 0
end do
end do
end do
!$omp target map(tofrom:inArray(1:3, 1:3, 2:2), outArray(1:3, 1:3, 1:3))
do j = 1, 3
do k = 1, 3
outArray(k, j, 2) = inArray(k, j, 2)
end do
end do
!$omp end target
print *, outArray
deallocate(inArray)
deallocate(outArray)
end program
! CHECK: 0 0 0 0 0 0 0 0 0 42 42 42 42 42 42 42 42 42 0 0 0 0 0 0 0 0 0