Hi! On 2019-11-26T22:49:21+0800, Chung-Lin Tang wrote: > this is a reorg of the last non-contiguous arrays patch. (Sorry, this is still not the master branch integration email...) Just a small clean-up, to simplify other changes that I'm working on: > (4) Along the way, I've added a 'gomp_map_vars_openacc' for specializing our > uses, which should shave off quite some code through inlining. > --- libgomp/libgomp.h (revision 278656) > +++ libgomp/libgomp.h (working copy) > @@ -1167,6 +1167,10 @@ extern struct target_mem_desc *gomp_map_vars_async > size_t, void **, void **, > size_t *, void *, 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 gomp_unmap_tgt (struct target_mem_desc *); > extern void gomp_unmap_vars (struct target_mem_desc *, bool); > extern void gomp_unmap_vars_async (struct target_mem_desc *, bool, > --- libgomp/target.c (revision 278656) > +++ libgomp/target.c (working copy) > @@ -1086,12 +1248,25 @@ gomp_map_vars_internal (struct gomp_device_descr * > } > > 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, GOMP_MAP_VARS_OPENACC); > +} Pushed to devel/omp/gcc-12 branch commit 5ea330fdc918e6731c5b706715a18470909247bf "libgomp: Merge 'gomp_map_vars_openacc' into 'goacc_map_vars' [PR76739]", see attached. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955