Files
clang-p2996/offload/test/offloading/fortran/target-map-pointer-target-array-section-3d-bounds.f90
Ethan Luis McDonough 8823448807 [Offload] Refactor offload test requirements (#95196)
Many tests in the `offload` project have requirements defined by which
targets are not supported rather than which platforms are supported.
This patch aims to streamline the requirement definitions by adding four
new feature tags: `host`, `gpu`, `amdgpu`, and `nvidiagpu`.
2024-06-29 00:56:18 -05:00

38 lines
861 B
Fortran

! Offloading test checking interaction of pointer
! and target with target where 3-D bounds have
! been specified
! REQUIRES: flang, amdgpu
! RUN: %libomptarget-compile-fortran-run-and-check-generic
program main
integer, pointer :: inArray(:,:,:)
integer, pointer :: outArray(:,:,:)
integer, target :: in(3,3,3)
integer, target :: out(3,3,3)
inArray => in
outArray => out
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
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