Summary: This patch cleans up the training whitespace in a bunch of tests and CMake files. Most just in preparation for other cleanups.
43 lines
1.1 KiB
Fortran
43 lines
1.1 KiB
Fortran
! Offloading test checking interaction of an
|
|
! enter and exit map of an array of scalars
|
|
! with specified bounds
|
|
! REQUIRES: flang, amdgcn-amd-amdhsa
|
|
! UNSUPPORTED: nvptx64-nvidia-cuda
|
|
! UNSUPPORTED: nvptx64-nvidia-cuda-LTO
|
|
! UNSUPPORTED: aarch64-unknown-linux-gnu
|
|
! UNSUPPORTED: aarch64-unknown-linux-gnu-LTO
|
|
! UNSUPPORTED: x86_64-pc-linux-gnu
|
|
! UNSUPPORTED: x86_64-pc-linux-gnu-LTO
|
|
|
|
! RUN: %libomptarget-compile-fortran-run-and-check-generic
|
|
|
|
program main
|
|
integer :: array(10)
|
|
|
|
do I = 1, 10
|
|
array(I) = I + I
|
|
end do
|
|
|
|
!$omp target enter data map(to: array(3:6))
|
|
! Shouldn't overwrite data already locked in
|
|
! on target via enter, which will then be
|
|
! overwritten by our exit
|
|
do I = 1, 10
|
|
array(I) = 10
|
|
end do
|
|
|
|
! The compiler/runtime is less lenient about read/write out of
|
|
! bounds when using enter and exit, we have to specifically loop
|
|
! over the correctly mapped range
|
|
!$omp target
|
|
do i=3,6
|
|
array(i) = array(i) + i
|
|
end do
|
|
!$omp end target
|
|
|
|
!$omp target exit data map(from: array(3:6))
|
|
print *, array
|
|
end program
|
|
|
|
!CHECK: 10 10 9 12 15 18 10 10 10 10
|