aboutsummaryrefslogtreecommitdiff
path: root/libgomp/testsuite
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2023-11-21 19:03:47 +0100
committerThomas Schwinge <thomas@codesourcery.com>2023-11-30 15:42:57 +0100
commit95e6e32a85566a5510d21938d439e90e504e0ddc (patch)
tree3d4e5cef07cfd9b501e31ddc2799c20a648b6362 /libgomp/testsuite
parent186e22c5de8eb49603bb1e74ac5d0eba6cc40480 (diff)
downloadgcc-95e6e32a85566a5510d21938d439e90e504e0ddc.zip
gcc-95e6e32a85566a5510d21938d439e90e504e0ddc.tar.gz
gcc-95e6e32a85566a5510d21938d439e90e504e0ddc.tar.bz2
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.
Diffstat (limited to 'libgomp/testsuite')
-rw-r--r--libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c2
-rw-r--r--libgomp/testsuite/libgomp.c/declare-variant-3.c8
-rw-r--r--libgomp/testsuite/libgomp.c/declare-variant-3.h5
3 files changed, 14 insertions, 1 deletions
diff --git a/libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c b/libgomp/testsuite/libgomp.c/declare-variant-3-sm30.c
index a373647..d2ffa56 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 0000000..62c1fa7
--- /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 646e15e..38ee257 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;
}