From a8dbb53bce9c0d8c57bd01ad9b0633157a823b9e Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Thu, 14 Oct 2021 09:29:35 +0200 Subject: [PATCH] gomp/target-device-ancestor-*.f90: Fix testcase of OG11 Contrary to GCC 12 mainline, OG11 defers the error for 'omp requires reverse_offload' until runtime (via libgomp). Update the testcases accordingly. gcc/testsuite/ChangeLog: * gfortran.dg/gomp/target-device-ancestor-2.f90: Remove dg-error for the requires-reverse_offload sorry. * gfortran.dg/gomp/target-device-ancestor-3.f90: Likewise. * gfortran.dg/gomp/target-device-ancestor-4.f90: Likewise. --- gcc/testsuite/ChangeLog.omp | 7 +++++++ .../gfortran.dg/gomp/target-device-ancestor-2.f90 | 8 ++++---- .../gfortran.dg/gomp/target-device-ancestor-3.f90 | 6 +++--- .../gfortran.dg/gomp/target-device-ancestor-4.f90 | 6 +++--- 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/gcc/testsuite/ChangeLog.omp b/gcc/testsuite/ChangeLog.omp index 0509227d06d2..2a4ebddca9e2 100644 --- a/gcc/testsuite/ChangeLog.omp +++ b/gcc/testsuite/ChangeLog.omp @@ -1,3 +1,10 @@ +2021-10-14 Tobias Burnus + + * gfortran.dg/gomp/target-device-ancestor-2.f90: Remove dg-error + for the requires-reverse_offload sorry. + * gfortran.dg/gomp/target-device-ancestor-3.f90: Likewise. + * gfortran.dg/gomp/target-device-ancestor-4.f90: Likewise. + 2021-09-24 Marcel Vollweiler This patch removes the expectation that 'requires reverse_offload' is diff --git a/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-2.f90 b/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-2.f90 index 117a1d000a57..20fdb607b240 100644 --- a/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-2.f90 +++ b/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-2.f90 @@ -4,11 +4,11 @@ implicit none integer :: a, b, c -!$omp requires reverse_offload ! { dg-error "Sorry, 'reverse_offload' clause at \\(1\\) on REQUIRES directive is not yet supported" } +!$omp requires reverse_offload -! The following test case is marked with 'xfail' because a previous 'sorry' from -! 'reverse_offload' suppresses the 'sorry' for 'ancestor'. +! The following test case is marked with 'xfail' because of the front-end +! error 'the 'device' clause expression must evaluate to 1' below. !$omp target device (ancestor: 1) ! { dg-message "" "sorry, unimplemented: 'ancestor' not yet supported" { xfail *-*-* } } !$omp end target @@ -89,4 +89,4 @@ integer :: a, b, c ! { dg-error "with 'ancestor', only the 'device', 'firstprivate', 'private', 'defaultmap', and 'map' clauses may appear on the construct" "" { xfail *-*-* } .-1 } -end \ No newline at end of file +end diff --git a/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-3.f90 b/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-3.f90 index f1145bde2ece..e7c396fdfbcb 100644 --- a/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-3.f90 +++ b/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-3.f90 @@ -16,10 +16,10 @@ subroutine f1 () implicit none integer :: n - !$omp requires reverse_offload ! { dg-error "Sorry, 'reverse_offload' clause at \\(1\\) on REQUIRES directive is not yet supported" } + !$omp requires reverse_offload !$omp target device (ancestor : 1) - n = omp_get_thread_num () ! { dg-error "" "OpenMP runtime API call 'omp_get_thread_num' in a region with 'device\\(ancestor\\)' clause" { xfail *-*-* } } + n = omp_get_thread_num () ! { dg-error "" "OpenMP runtime API call 'omp_get_thread_num' in a region with 'device\\(ancestor\\)' clause" } !$omp end target !$omp target device (device_num : 1) @@ -30,4 +30,4 @@ subroutine f1 () n = omp_get_thread_num () !$omp end target -end \ No newline at end of file +end diff --git a/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-4.f90 b/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-4.f90 index 63872fa51fb5..56aff24df50f 100644 --- a/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-4.f90 +++ b/gcc/testsuite/gfortran.dg/gomp/target-device-ancestor-4.f90 @@ -4,11 +4,11 @@ ! Test to ensure that device-modifier 'ancestor' is parsed correctly in ! device clauses. -!$omp requires reverse_offload ! { dg-error "Sorry, 'reverse_offload' clause at \\(1\\) on REQUIRES directive is not yet supported" } +!$omp requires reverse_offload -!$omp target device (ancestor : 1) ! { dg-message "" "sorry, unimplemented: 'ancestor' not yet supported" { xfail *-*-* } } +!$omp target device (ancestor : 1) ! { dg-message "" "sorry, unimplemented: 'ancestor' not yet supported" } !$omp end target end -! TODO: dg-final { scan-tree-dump-times "pragma omp target \[^\n\r)]*device\\(ancestor:1\\)" 1 "original" } } +! { dg-final { scan-tree-dump-times "pragma omp target \[^\n\r)]*device\\(ancestor:1\\)" 1 "original" } } -- 2.47.2