https://gcc.gnu.org/g:de0320712d026a2d1eeb57aef277fa5a91808ac2

commit r15-4339-gde0320712d026a2d1eeb57aef277fa5a91808ac2
Author: Thomas Schwinge <tschwi...@baylibre.com>
Date:   Mon Oct 14 14:38:13 2024 +0200

    OpenACC 'nohost' clause: harmonize 
'libgomp.oacc-{c-c++-common,fortran}/routine-nohost-1.*'
    
    The test case 'libgomp.oacc-fortran/routine-nohost-1.f90' added in 2021
    commit a61f6afbee370785cf091fe46e2e022748528307 "OpenACC 'nohost' clause" 
was
    dependend on inlining being enabled, and otherwise ('-fno-inline') failed to
    optimize/link:
    
        /tmp/ccb2hsPd.o: In function `MAIN__._omp_fn.0':
        routine-nohost-1.f90:(.text+0xf4): undefined reference to `fact_nohost_'
    
    However, as of recent commit 3269a722b7a03613e9c4e2862bc5088c4a17cc11
    "Fortran: Use OpenACC's acc_on_device builtin, fix OpenMP' 
__builtin_is_initial_device",
    we're now properly handling OpenACC/Fortran 'acc_on_device', and may specify
    '-fno-inline', like done in 'libgomp.oacc-c-c++-common/routine-nohost-1.c'.
    
            libgomp/
            * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Add
            '-fno-inline'.

Diff:
---
 libgomp/testsuite/libgomp.oacc-fortran/routine-nohost-1.f90 | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libgomp/testsuite/libgomp.oacc-fortran/routine-nohost-1.f90 
b/libgomp/testsuite/libgomp.oacc-fortran/routine-nohost-1.f90
index b0537b8ff0be..e5f3e5740da3 100644
--- a/libgomp/testsuite/libgomp.oacc-fortran/routine-nohost-1.f90
+++ b/libgomp/testsuite/libgomp.oacc-fortran/routine-nohost-1.f90
@@ -7,6 +7,8 @@
 
 ! { dg-additional-options "-fdump-tree-oaccloops" }
 
+! { dg-additional-options "-fno-inline" } for stable results regarding OpenACC 
'routine'.
+
 program main
   use openacc
   implicit none

Reply via email to