aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Burnus <tburnus@baylibre.com>2025-06-06 15:15:03 +0200
committerTobias Burnus <tburnus@baylibre.com>2025-06-06 15:48:47 +0200
commit76e0b6c20dc54d7a6f704a4bddd824f4c8d90c2c (patch)
tree6fc438369afafc15cc7f8feb328f53840913b7c6
parentb9b7cf8e6a742d3528d661b0b5b299af8a666b8d (diff)
downloadgcc-76e0b6c20dc54d7a6f704a4bddd824f4c8d90c2c.zip
gcc-76e0b6c20dc54d7a6f704a4bddd824f4c8d90c2c.tar.gz
gcc-76e0b6c20dc54d7a6f704a4bddd824f4c8d90c2c.tar.bz2
libgomp.c/target-map-zero-sized-3.c: Fix code for non-USM offload [PR120530]
A mapping clause was missing, causing the code to fail with offloading when a host pointer was not device accessible. libgomp/ChangeLog: PR target/120530 * testsuite/libgomp.c/target-map-zero-sized-3.c (main): Add missing map clause; remove unused variable. (cherry picked from commit 16c742e1079e838b920a1b215af17828da7c6365)
-rw-r--r--libgomp/testsuite/libgomp.c/target-map-zero-sized-3.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libgomp/testsuite/libgomp.c/target-map-zero-sized-3.c b/libgomp/testsuite/libgomp.c/target-map-zero-sized-3.c
index f968bd3..580c6ad 100644
--- a/libgomp/testsuite/libgomp.c/target-map-zero-sized-3.c
+++ b/libgomp/testsuite/libgomp.c/target-map-zero-sized-3.c
@@ -1,7 +1,7 @@
int
main ()
{
- int i, n, n2;
+ int i, n;
int data[] = {1,2};
struct S {
int **ptrset;
@@ -33,16 +33,17 @@ main ()
i = 1;
n = 0;
- n2 = 2;
+ #pragma omp target enter data map(data)
#pragma omp target enter data map(sptr1[:1], sptr1->ptrset[:3], sptr1->ptrset2[:3])
#pragma omp target enter data map(sptr1->ptrset[i][:n], sptr1->ptrset2[i][:n])
- #pragma omp target
+ #pragma omp target map(sptr1->ptrset[i][:n], sptr1->ptrset2[i][:n])
if (sptr1->ptrset2[1][0] != 1 || sptr1->ptrset2[1][1] != 2)
__builtin_abort ();
#pragma omp target exit data map(sptr1->ptrset[i][:n], sptr1->ptrset2[i][:n])
#pragma omp target exit data map(sptr1[:1], sptr1->ptrset[:3], sptr1->ptrset2[:3])
+ #pragma omp target exit data map(data)
__builtin_free (s1.ptrset);
__builtin_free (s1.ptrset2);