public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc/devel/omp/gcc-12] libgomp: Merge 'gomp_map_vars_openacc' into 'goacc_map_vars' [PR76739]
@ 2023-03-10 13:23 Thomas Schwinge
  0 siblings, 0 replies; only message in thread
From: Thomas Schwinge @ 2023-03-10 13:23 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:5ea330fdc918e6731c5b706715a18470909247bf

commit 5ea330fdc918e6731c5b706715a18470909247bf
Author: Thomas Schwinge <thomas@codesourcery.com>
Date:   Thu Mar 2 18:36:47 2023 +0100

    libgomp: Merge 'gomp_map_vars_openacc' into 'goacc_map_vars' [PR76739]
    
    Upstream has 'goacc_map_vars'; merge the new 'gomp_map_vars_openacc' into it.
    (Maybe the latter didn't exist yet when the former was originally added?)
    No functional change.
    
    Clean-up for og12 commit 15d0f61a7fecdc8fd12857c40879ea3730f6d99f
    "Merge non-contiguous array support patches".
    
            PR other/76739
            libgomp/
            * libgomp.h (goacc_map_vars): Add 'struct goacc_ncarray_info *'
            formal parameter.
            (gomp_map_vars_openacc): Remove.
            * target.c (goacc_map_vars): Adjust.
            (gomp_map_vars_openacc): Remove.
            * oacc-mem.c (acc_map_data, goacc_enter_datum)
            (goacc_enter_data_internal): Adjust.
            * oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start):
            Adjust.

Diff:
---
 libgomp/ChangeLog.omp   | 11 +++++++++++
 libgomp/libgomp.h       |  9 ++++-----
 libgomp/oacc-mem.c      |  8 ++++----
 libgomp/oacc-parallel.c | 10 +++++-----
 libgomp/target.c        | 17 +++--------------
 5 files changed, 27 insertions(+), 28 deletions(-)

diff --git a/libgomp/ChangeLog.omp b/libgomp/ChangeLog.omp
index 0e984754bb0..be21ec39428 100644
--- a/libgomp/ChangeLog.omp
+++ b/libgomp/ChangeLog.omp
@@ -1,5 +1,16 @@
 2023-03-10  Thomas Schwinge  <thomas@codesourcery.com>
 
+	PR other/76739
+	* libgomp.h (goacc_map_vars): Add 'struct goacc_ncarray_info *'
+	formal parameter.
+	(gomp_map_vars_openacc): Remove.
+	* target.c (goacc_map_vars): Adjust.
+	(gomp_map_vars_openacc): Remove.
+	* oacc-mem.c (acc_map_data, goacc_enter_datum)
+	(goacc_enter_data_internal): Adjust.
+	* oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start):
+	Adjust.
+
 	* oacc-host.c: Revert
 	"OpenACC profiling-interface fixes for asynchronous operations"
 	changes.
diff --git a/libgomp/libgomp.h b/libgomp/libgomp.h
index ba12d558465..92f6f14960f 100644
--- a/libgomp/libgomp.h
+++ b/libgomp/libgomp.h
@@ -1445,15 +1445,14 @@ extern void gomp_attach_pointer (struct gomp_device_descr *,
 extern void gomp_detach_pointer (struct gomp_device_descr *,
 				 struct goacc_asyncqueue *, splay_tree_key,
 				 uintptr_t, bool, struct gomp_coalesce_buf *);
+struct goacc_ncarray_info;
 extern struct target_mem_desc *goacc_map_vars (struct gomp_device_descr *,
 					       struct goacc_asyncqueue *,
 					       size_t, void **, void **,
-					       size_t *, void *, bool,
+					       size_t *, void *,
+					       struct goacc_ncarray_info *,
+					       bool,
 					       enum gomp_map_vars_kind);
-extern struct target_mem_desc *gomp_map_vars_openacc (struct gomp_device_descr *,
-						      struct goacc_asyncqueue *,
-						      size_t, void **, size_t *,
-						      unsigned short *, void *);
 extern void goacc_unmap_vars (struct target_mem_desc *, bool,
 			      struct goacc_asyncqueue *);
 extern void gomp_init_device (struct gomp_device_descr *);
diff --git a/libgomp/oacc-mem.c b/libgomp/oacc-mem.c
index 6fb8be98542..bd82beefcdb 100644
--- a/libgomp/oacc-mem.c
+++ b/libgomp/oacc-mem.c
@@ -403,7 +403,7 @@ acc_map_data (void *h, void *d, size_t s)
 
       struct target_mem_desc *tgt
 	= goacc_map_vars (acc_dev, NULL, mapnum, &hostaddrs, &devaddrs, &sizes,
-			  &kinds, true, GOMP_MAP_VARS_ENTER_DATA);
+			  &kinds, NULL, true, GOMP_MAP_VARS_ENTER_DATA);
       assert (tgt);
       assert (tgt->list_count == 1);
       splay_tree_key n = tgt->list[0].key;
@@ -572,7 +572,7 @@ goacc_enter_datum (void **hostaddrs, size_t *sizes, void *kinds, int async)
 
       struct target_mem_desc *tgt
 	= goacc_map_vars (acc_dev, aq, mapnum, hostaddrs, NULL, sizes,
-			  kinds, true, GOMP_MAP_VARS_ENTER_DATA);
+			  kinds, NULL, true, GOMP_MAP_VARS_ENTER_DATA);
       assert (tgt);
       assert (tgt->list_count == 1);
       n = tgt->list[0].key;
@@ -1247,7 +1247,7 @@ goacc_enter_data_internal (struct gomp_device_descr *acc_dev, size_t mapnum,
 	      gomp_mutex_unlock (&acc_dev->lock);
 	      struct target_mem_desc *tgt_
 		= goacc_map_vars (acc_dev, aq, groupnum, &hostaddrs[i], NULL,
-				  &sizes[i], &kinds[i], true,
+				  &sizes[i], &kinds[i], NULL, true,
 				  GOMP_MAP_VARS_ENTER_DATA);
 	      assert (tgt_ == NULL);
 	      gomp_mutex_lock (&acc_dev->lock);
@@ -1297,7 +1297,7 @@ goacc_enter_data_internal (struct gomp_device_descr *acc_dev, size_t mapnum,
 
 	  struct target_mem_desc *tgt
 	    = goacc_map_vars (acc_dev, aq, groupnum, &hostaddrs[i], NULL,
-			      &sizes[i], &kinds[i], true,
+			      &sizes[i], &kinds[i], NULL, true,
 			      GOMP_MAP_VARS_ENTER_DATA);
 	  assert (tgt);
 
diff --git a/libgomp/oacc-parallel.c b/libgomp/oacc-parallel.c
index d66bc882a5f..9c1db402c82 100644
--- a/libgomp/oacc-parallel.c
+++ b/libgomp/oacc-parallel.c
@@ -468,8 +468,8 @@ GOACC_parallel_keyed (int flags_m, void (*fn) (void *),
 
   goacc_aq aq = get_goacc_asyncqueue (async);
 
-  tgt = gomp_map_vars_openacc (acc_dev, aq, mapnum, hostaddrs, sizes, kinds,
-			       nca_info);
+  tgt = goacc_map_vars (acc_dev, aq, mapnum, hostaddrs, NULL, sizes, kinds,
+			nca_info, true, 0);
   free (nca_info);
 
   if (profiling_p)
@@ -635,7 +635,7 @@ GOACC_data_start (int flags_m, size_t mapnum,
     {
       prof_info.device_type = acc_device_host;
       api_info.device_type = prof_info.device_type;
-      tgt = gomp_map_vars_openacc (NULL, NULL, 0, NULL, NULL, NULL, NULL);
+      tgt = goacc_map_vars (NULL, NULL, 0, NULL, NULL, NULL, NULL, NULL, true, 0);
       tgt->prev = thr->mapped_data;
       thr->mapped_data = tgt;
 
@@ -652,8 +652,8 @@ GOACC_data_start (int flags_m, size_t mapnum,
     }
 
   gomp_debug (0, "  %s: prepare mappings\n", __FUNCTION__);
-  tgt = gomp_map_vars_openacc (acc_dev, NULL, mapnum, hostaddrs, sizes, kinds,
-			       nca_info);
+  tgt = goacc_map_vars (acc_dev, NULL, mapnum, hostaddrs, NULL, sizes, kinds,
+			nca_info, true, 0);
   free (nca_info);
   gomp_debug (0, "  %s: mappings prepared\n", __FUNCTION__);
   tgt->prev = thr->mapped_data;
diff --git a/libgomp/target.c b/libgomp/target.c
index fcc5b9dabca..e4fc7da6f07 100644
--- a/libgomp/target.c
+++ b/libgomp/target.c
@@ -1986,18 +1986,6 @@ gomp_map_vars_internal (struct gomp_device_descr *devicep,
   return tgt;
 }
 
-attribute_hidden struct target_mem_desc *
-gomp_map_vars_openacc (struct gomp_device_descr *devicep,
-		       struct goacc_asyncqueue *aq, size_t mapnum,
-		       void **hostaddrs, size_t *sizes, unsigned short *kinds,
-		       void *nca_info)
-{
-  return gomp_map_vars_internal (devicep, aq, mapnum, hostaddrs, NULL,
-				 sizes, (void *) kinds,
-				 (struct goacc_ncarray_info *) nca_info,
-				 true, NULL, GOMP_MAP_VARS_OPENACC);
-}
-
 static struct target_mem_desc *
 gomp_map_vars (struct gomp_device_descr *devicep, size_t mapnum,
 	       void **hostaddrs, void **devaddrs, size_t *sizes, void *kinds,
@@ -2027,11 +2015,12 @@ attribute_hidden struct target_mem_desc *
 goacc_map_vars (struct gomp_device_descr *devicep,
 		struct goacc_asyncqueue *aq, size_t mapnum,
 		void **hostaddrs, void **devaddrs, size_t *sizes,
-		void *kinds, bool short_mapkind,
+		void *kinds, struct goacc_ncarray_info *nca_info,
+		bool short_mapkind,
 		enum gomp_map_vars_kind pragma_kind)
 {
   return gomp_map_vars_internal (devicep, aq, mapnum, hostaddrs, devaddrs,
-				 sizes, kinds, NULL, short_mapkind, NULL,
+				 sizes, kinds, nca_info, short_mapkind, NULL,
 				 GOMP_MAP_VARS_OPENACC | pragma_kind);
 }

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-03-10 13:23 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-10 13:23 [gcc/devel/omp/gcc-12] libgomp: Merge 'gomp_map_vars_openacc' into 'goacc_map_vars' [PR76739] Thomas Schwinge

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).