'libgomp.oacc-fortran/{error_,}stop-{1,2,3}.f': initialize before the checkpoint
authorThomas Schwinge <thomas@codesourcery.com>
Wed, 6 May 2020 08:05:49 +0000 (10:05 +0200)
committerThomas Schwinge <thomas@codesourcery.com>
Thu, 4 Jun 2020 16:56:36 +0000 (18:56 +0200)
If, for example, GCC is configured such that 'libgomp-plugin-nvptx.so.1'
dynamically links against 'libcuda.so.1', but testing is run on a system where
there is no 'libcuda.so.1', this produces output such as:

    PASS: libgomp.oacc-fortran/error_stop-1.f -DACC_DEVICE_TYPE_host=1 -DACC_MEM_SHARED=1 -foffload=disable  -O0  (test for excess errors)
    PASS: libgomp.oacc-fortran/error_stop-1.f -DACC_DEVICE_TYPE_host=1 -DACC_MEM_SHARED=1 -foffload=disable  -O0  execution test
    FAIL: libgomp.oacc-fortran/error_stop-1.f -DACC_DEVICE_TYPE_host=1 -DACC_MEM_SHARED=1 -foffload=disable  -O0  output pattern test, is  CheCKpOInT

    libgomp: while loading libgomp-plugin-nvptx.so.1: libcuda.so.1: cannot open shared object file: No such file or directory
    ERROR STOP

    Error termination. Backtrace: [...]
    , should match CheCKpOInT(
    |
    |^M)+ERROR STOP (
    |
    |^M)+Error termination.*

..., where after 'CheCKpOInT' we got 'libgomp: while loading [...]' injected
before the expected 'ERROR STOP'.

libgomp/
* testsuite/libgomp.oacc-fortran/error_stop-1.f: Initialize before
the checkpoint.
* testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
* testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
* testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
* testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
* testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.

libgomp/testsuite/libgomp.oacc-fortran/error_stop-1.f
libgomp/testsuite/libgomp.oacc-fortran/error_stop-2.f
libgomp/testsuite/libgomp.oacc-fortran/error_stop-3.f
libgomp/testsuite/libgomp.oacc-fortran/stop-1.f
libgomp/testsuite/libgomp.oacc-fortran/stop-2.f
libgomp/testsuite/libgomp.oacc-fortran/stop-3.f

index a3f54d57bc3562263285954b0476500387e82251..de727749a53fb261c05d3d60a74e7dca8c8848f8 100644 (file)
@@ -3,6 +3,10 @@
       PROGRAM MAIN
       IMPLICIT NONE
 
+! Initialize before the checkpoint, in case this produces any output.
+!$ACC PARALLEL
+!$ACC END PARALLEL
+
       PRINT *, "CheCKpOInT"
 !$ACC PARALLEL
       ERROR STOP
index 5d5d20d1bc53df87732e2ae003058cf825da32a7..475c9cb5850768cfc3d05771e3fc0f1248c23032 100644 (file)
@@ -3,6 +3,10 @@
       PROGRAM MAIN
       IMPLICIT NONE
 
+! Initialize before the checkpoint, in case this produces any output.
+!$ACC PARALLEL
+!$ACC END PARALLEL
+
       PRINT *, "CheCKpOInT"
 !$ACC PARALLEL
       ERROR STOP 35
index edb063b182bc42127ef84a6357e374c1780bdd7a..ab63444ce34fddee0f0f13e7ecc18b782757c923 100644 (file)
@@ -3,6 +3,10 @@
       PROGRAM MAIN
       IMPLICIT NONE
 
+! Initialize before the checkpoint, in case this produces any output.
+!$ACC PARALLEL
+!$ACC END PARALLEL
+
       PRINT *, "CheCKpOInT"
 !$ACC PARALLEL
       ERROR STOP "SiGN"
index af267fc08d1dc1d567e16180a70370d2aa9be350..2c00d2e5bf8c56e687dda0793caaf7e584f125cf 100644 (file)
@@ -3,6 +3,10 @@
       PROGRAM MAIN
       IMPLICIT NONE
 
+! Initialize before the checkpoint, in case this produces any output.
+!$ACC PARALLEL
+!$ACC END PARALLEL
+
       PRINT *, "CheCKpOInT"
 !$ACC PARALLEL
       STOP
index 13c06845c08fb8e2196fc544955e06a3168cb842..adade54557c2e3eec6a7f724f7d2e212e2a49606 100644 (file)
@@ -3,6 +3,10 @@
       PROGRAM MAIN
       IMPLICIT NONE
 
+! Initialize before the checkpoint, in case this produces any output.
+!$ACC PARALLEL
+!$ACC END PARALLEL
+
       PRINT *, "CheCKpOInT"
 !$ACC PARALLEL
       STOP 35
index 3bd7446571de17820bf9137e2a69be60daade7ec..157e369d4e7e90a34648745466283342068f5ce9 100644 (file)
@@ -3,6 +3,10 @@
       PROGRAM MAIN
       IMPLICIT NONE
 
+! Initialize before the checkpoint, in case this produces any output.
+!$ACC PARALLEL
+!$ACC END PARALLEL
+
       PRINT *, "CheCKpOInT"
 !$ACC PARALLEL
       STOP "SiGN"