blob: 63d5e80500249990a13c2991b6d6862490fd7809 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
! This checks that the basic functionality of map type present functions as
! expected, no-op'ng when present
! REQUIRES: flang, amdgpu
! RUN: %libomptarget-compile-fortran-run-and-check-generic
subroutine target_data_present()
double precision, dimension(:), allocatable :: arr
integer, parameter :: N = 16
integer :: i
allocate(arr(N))
arr(:) = 10.0d0
!$omp target data map(tofrom:arr)
!$omp target data map(present,alloc:arr)
!$omp target
do i = 1,N
arr(i) = 42.0d0
end do
!$omp end target
!$omp end target data
!$omp end target data
print *, arr
deallocate(arr)
return
end subroutine
program map_present
implicit none
call target_data_present()
end program
!CHECK: 42. 42. 42. 42. 42. 42. 42. 42. 42. 42. 42. 42. 42. 42. 42. 42.
|