[gcc r17-2447] OpenMP: Handle 'device_type(host)' on 'target': Repair 'libgomp.c/target-device-type-3.c' offload tr

Thomas Schwinge via Gcc-cvs <[email protected]>
Newsgroups gmane.comp.gcc.cvs
Message-ID <[email protected]>
https://gcc.gnu.org/g:921e86d41efcbb7b434c1be9561019de5941a899

commit r17-2447-g921e86d41efcbb7b434c1be9561019de5941a899
Author: Thomas Schwinge <[email protected]>
Date:   Thu Jul 16 11:35:09 2026 +0200

    OpenMP: Handle 'device_type(host)' on 'target': Repair 'libgomp.c/target-device-type-3.c' offload tree dump scanning
    
    Per commit 2468c79741f97c2aa0cbb4baaccb86fd4a150910
    "OpenMP: Handle 'device_type(host)' on 'target'",
    'libgomp.c/target-device-type-3.c':
    
        [...]
        // NOTE: With offloading,
        //   UNRESOLVED:
        // is expected for the "optimized" tests as those dumps are only enabled
        // for the no-host side.
        [...]
        /* { dg-final { scan-tree-dump "hhh" "optimized" { target offload_device } } } */
        /* { dg-final { scan-tree-dump-not "ggg" "optimized" { target offload_device } } } */
        /* { dg-final { scan-tree-dump-not "_omp_fn" "optimized" { target offload_device } } } */
        [...]
    
    ..., resulting in:
    
        +PASS: libgomp.c/target-device-type-3.c (test for excess errors)
        +PASS: libgomp.c/target-device-type-3.c execution test
        +PASS: libgomp.c/target-device-type-3.c scan-tree-dump-times ompexp "omp declare target" 1
        +PASS: libgomp.c/target-device-type-3.c scan-tree-dump-not ompexp "omp target entrypoint"
        +PASS: libgomp.c/target-device-type-3.c scan-tree-dump ompexp "__builtin_GOMP_target_ext \\(-3,"
        +UNRESOLVED: libgomp.c/target-device-type-3.c scan-tree-dump optimized "hhh"
        +UNRESOLVED: libgomp.c/target-device-type-3.c scan-tree-dump-not optimized "ggg"
        +UNRESOLVED: libgomp.c/target-device-type-3.c scan-tree-dump-not optimized "_omp_fn"
    
    I assume that intended to test what I've now implemented?
    
        [...]
        -UNRESOLVED: libgomp.c/target-device-type-3.c scan-tree-dump optimized "hhh"
        -UNRESOLVED: libgomp.c/target-device-type-3.c scan-tree-dump-not optimized "ggg"
        -UNRESOLVED: libgomp.c/target-device-type-3.c scan-tree-dump-not optimized "_omp_fn"
        +PASS: libgomp.c/target-device-type-3.c scan-amdgcn-amdhsa-offload-tree-dump optimized "hhh"
        +PASS: libgomp.c/target-device-type-3.c scan-amdgcn-amdhsa-offload-tree-dump-not optimized "ggg"
        +PASS: libgomp.c/target-device-type-3.c scan-amdgcn-amdhsa-offload-tree-dump-not optimized "_omp_fn"
        +PASS: libgomp.c/target-device-type-3.c scan-nvptx-none-offload-tree-dump optimized "hhh"
        +PASS: libgomp.c/target-device-type-3.c scan-nvptx-none-offload-tree-dump-not optimized "ggg"
        +PASS: libgomp.c/target-device-type-3.c scan-nvptx-none-offload-tree-dump-not optimized "_omp_fn"
    
    (Also, effective-target 'offload_device' tests "if [an] offload device is
    available", which wasn't the right conditional here: should rather have used
    'offload_target_any': "if compiling for any offload target".  But that still
    wouldn't have achieved what this intended to test.)
    
            libgomp/
            * testsuite/libgomp.c/target-device-type-3.c: Repair offload tree
            dump scanning.

Diff:
---
 libgomp/testsuite/libgomp.c/target-device-type-3.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/libgomp/testsuite/libgomp.c/target-device-type-3.c b/libgomp/testsuite/libgomp.c/target-device-type-3.c
index faedcabdf227..832f714db819 100644
--- a/libgomp/testsuite/libgomp.c/target-device-type-3.c
+++ b/libgomp/testsuite/libgomp.c/target-device-type-3.c
@@ -6,11 +6,6 @@
    default-device-var ICV - and it shall not create any device code for
    neither the target region nor the called functions.  */
 
-// NOTE: With offloading,
-//   UNRESOLVED:
-// is expected for the "optimized" tests as those dumps are only enabled
-// for the no-host side.
-
 
 // Due to 'device_type(nohost)', the outlined region shall not be marked
 // as 'target entrypoint' - nor should 'ggg' become implicitly
@@ -28,9 +23,9 @@
 
 // On the device side, expect only hhh:
 
-/* { dg-final { scan-tree-dump "hhh" "optimized" { target offload_device } } } */
-/* { dg-final { scan-tree-dump-not "ggg" "optimized" { target offload_device } } } */
-/* { dg-final { scan-tree-dump-not "_omp_fn" "optimized" { target offload_device } } } */
+/* { dg-final { scan-offload-tree-dump "hhh" "optimized" } } */
+/* { dg-final { scan-offload-tree-dump-not "ggg" "optimized" } } */
+/* { dg-final { scan-offload-tree-dump-not "_omp_fn" "optimized" } } */
 
 
 #include <omp.h>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.