diff options
author | Tom de Vries <tdevries@suse.de> | 2018-07-26 07:52:45 +0000 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2018-07-26 07:52:45 +0000 |
commit | 25cf1148980ba804f65187aa98dfa8e8597b83c7 (patch) | |
tree | cf3e513145ef78b66dcaffc2cad3965e2dfcc66f | |
parent | bf76d7aab06ffbb7289656a180d8bb492095c728 (diff) |
[libgomp, openacc, testsuite] Fix async logic in lib-12.f90
In testcase lib-12.f90, all acc_async_test calls are placed in a location
where they are not guaranteed to succeed, which explains why there's an xfail
for the lower optimization levels.
This patch fixes the problem by moving the acc_async_test calls to the correct
locations.
Reg-tested on x86_64 with nvptx accelerator.
2018-07-26 Tom de Vries <tdevries@suse.de>
* testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls
to correct locations. Remove xfail.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@262990 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libgomp/ChangeLog | 5 | ||||
-rw-r--r-- | libgomp/testsuite/libgomp.oacc-fortran/lib-12.f90 | 6 |
2 files changed, 7 insertions, 4 deletions
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index ac8c5b64091..a3ed6ff2a20 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,5 +1,10 @@ 2018-07-26 Tom de Vries <tdevries@suse.de> + * testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls + to correct locations. Remove xfail. + +2018-07-26 Tom de Vries <tdevries@suse.de> + * testsuite/libgomp.oacc-fortran/lib-13.f90: Replace acc_wait_all with acc_wait. Move acc_async_test calls to correct locations. Remove xfail. diff --git a/libgomp/testsuite/libgomp.oacc-fortran/lib-12.f90 b/libgomp/testsuite/libgomp.oacc-fortran/lib-12.f90 index e307dfde374..6912f67d444 100644 --- a/libgomp/testsuite/libgomp.oacc-fortran/lib-12.f90 +++ b/libgomp/testsuite/libgomp.oacc-fortran/lib-12.f90 @@ -1,5 +1,4 @@ ! { dg-do run } -! { dg-xfail-run-if "TODO" { openacc_nvidia_accel_selected } { "-O0" "-O1" } { "" } } program main use openacc @@ -18,10 +17,9 @@ program main call acc_wait_async (0, 1) - if (acc_async_test (0) .neqv. .TRUE.) call abort + call acc_wait (1) + if (acc_async_test (0) .neqv. .TRUE.) call abort if (acc_async_test (1) .neqv. .TRUE.) call abort - call acc_wait (1) - end program |