From 95e6e32a85566a5510d21938d439e90e504e0ddc Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 21 Nov 2023 19:03:47 +0100 Subject: [PATCH] Spin 'dg-do run' part of 'libgomp.c/declare-variant-3-sm30.c' off into new 'libgomp.c/declare-variant-3.c' Having nvptx offloading configured doesn't imply being able to run nvptx offloading test cases on the test host. Also, make 'libgomp.c/declare-variant-3.c' work for all non-offloading and offloading cases. Fix-up for commit 59b8ade88774b4dcf1691a8f650cdbb86cc30862 "[libgomp, testsuite, nvptx] Add libgomp.c/declare-variant-3-sm*.c". libgomp/ * testsuite/libgomp.c/declare-variant-3-sm30.c: Turn 'dg-do run' into 'dg-do link'. * testsuite/libgomp.c/declare-variant-3.c: New. * testsuite/libgomp.c/declare-variant-3.h: Extend. --- libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c | 2 +- libgomp/testsuite/libgomp.c/declare-variant-3.c | 8 ++++++++ libgomp/testsuite/libgomp.c/declare-variant-3.h | 5 +++++ 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 libgomp/testsuite/libgomp.c/declare-variant-3.c diff --git a/libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c b/libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c index a373647bb33..d2ffa5637c5 100644 --- a/libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c +++ b/libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c @@ -1,4 +1,4 @@ -/* { dg-do run { target { offload_target_nvptx } } } */ +/* { dg-do link { target { offload_target_nvptx } } } */ /* { dg-additional-options -foffload=nvptx-none } */ /* { dg-additional-options "-foffload=-misa=sm_30 -foffload=-mptx=_" } */ /* { dg-additional-options "-foffload=-fdump-tree-optimized" } */ diff --git a/libgomp/testsuite/libgomp.c/declare-variant-3.c b/libgomp/testsuite/libgomp.c/declare-variant-3.c new file mode 100644 index 00000000000..62c1fa766ba --- /dev/null +++ b/libgomp/testsuite/libgomp.c/declare-variant-3.c @@ -0,0 +1,8 @@ +/* { dg-additional-options -DOFFLOAD_DEVICE_NVPTX { target offload_device_nvptx } } */ +/* { dg-additional-options {-fdump-tree-optimized -foffload-options=-fdump-tree-optimized} } */ + +#include "declare-variant-3.h" + +/* { dg-final { scan-tree-dump "= f \\(\\);" "optimized" } } + { dg-final { only_for_offload_target amdgcn-amdhsa scan-offload-tree-dump "= f \\(\\);" "optimized" { target offload_target_amdgcn } } } + { dg-final { only_for_offload_target nvptx-none scan-offload-tree-dump "= f\[0-9\]+ \\(\\);" "optimized" { target offload_target_nvptx } } } */ diff --git a/libgomp/testsuite/libgomp.c/declare-variant-3.h b/libgomp/testsuite/libgomp.c/declare-variant-3.h index 646e15e5311..38ee257e42d 100644 --- a/libgomp/testsuite/libgomp.c/declare-variant-3.h +++ b/libgomp/testsuite/libgomp.c/declare-variant-3.h @@ -65,10 +65,15 @@ main (void) #pragma omp target map(from:v) v = f (); +#ifdef OFFLOAD_DEVICE_NVPTX if (v == 0) __builtin_abort (); __builtin_printf ("Nvptx accelerator: sm_%d\n", v); +#else + if (v != 0) + __builtin_abort (); +#endif return 0; }