Commit c223608f by Thomas Schwinge Committed by Thomas Schwinge

Add libgomp.oacc-fortran/lib-16-2.f90

This is a copy of libgomp.oacc-fortran/lib-16.f90, but does 'include
"openacc_lib.h"' instead of 'use openacc'.

	libgomp/
	* testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.

From-SVN: r266683
parent 9cb95c07
2018-11-30 Thomas Schwinge <thomas@codesourcery.com>
* testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.
2018-10-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/88182
......
! See also "lib-16.f90".
! { dg-do run }
! { dg-skip-if "" { *-*-* } { "*" } { "-DACC_MEM_SHARED=0" } }
program main
implicit none
include "openacc_lib.h"
integer, parameter :: N = 256
integer, allocatable :: h(:)
integer :: i
integer :: async = 5
allocate (h(N))
do i = 1, N
h(i) = i
end do
call acc_copyin (h)
do i = 1, N
h(i) = i + i
end do
call acc_update_device_async (h, sizeof (h), async)
if (acc_is_present (h) .neqv. .TRUE.) call abort
h(:) = 0
call acc_copyout_async (h, sizeof (h), async)
call acc_wait (async)
do i = 1, N
if (h(i) /= i + i) call abort
end do
call acc_copyin (h, sizeof (h))
h(:) = 0
call acc_update_self_async (h, sizeof (h), async)
if (acc_is_present (h) .neqv. .TRUE.) call abort
do i = 1, N
if (h(i) /= i + i) call abort
end do
call acc_delete_async (h, async)
call acc_wait (async)
if (acc_is_present (h) .neqv. .FALSE.) call abort
end program
! See also "lib-16-2.f90".
! { dg-do run }
! { dg-skip-if "" { *-*-* } { "*" } { "-DACC_MEM_SHARED=0" } }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment