5 integer, parameter :: N
= 8
6 real, allocatable
:: a(:,:), b(:,:)
7 real, allocatable
:: c(:), d(:)
19 !$acc enter data copyin (a(1:N,1:N), b(1:N,1:N))
29 !$acc exit data copyout (a(1:N,1:N), b(1:N,1:N))
33 if (a(j
,i
) .ne
. 3.0) STOP 1
34 if (b(j
,i
) .ne
. 3.0) STOP 2
44 !$acc enter data copyin (c(1:N)) create (d(1:N)) async
53 !$acc exit data copyout (c(1:N), d(1:N)) async
57 if (d(i
) .ne
. 4.0) call abort
63 !$acc enter data copyin (c(1:N)) async
64 !$acc enter data create (d(1:N)) wait
73 !$acc exit data copyout (d(1:N)) async
78 if (d(i
) .ne
. 4.0) call abort