diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2015-01-19 13:03:35 +0100 |
---|---|---|
committer | Thomas Schwinge <tschwinge@gcc.gnu.org> | 2015-01-19 13:03:35 +0100 |
commit | 128b26dceb824d7760c2100cd6845c72be5a1422 (patch) | |
tree | 0dedf360229e98ec8dd3a80062bd72e0cad0cde5 /libgomp | |
parent | 3d36be01e4f9bd4d99750d93f44ef7d8f3a3cc4e (diff) | |
download | gcc-128b26dceb824d7760c2100cd6845c72be5a1422.zip gcc-128b26dceb824d7760c2100cd6845c72be5a1422.tar.gz gcc-128b26dceb824d7760c2100cd6845c72be5a1422.tar.bz2 |
[PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter.
gcc/
* omp-low.c (offload_symbol_decl): Remove variable.
(get_offload_symbol_decl): Remove function.
(expand_omp_target): For BUILT_IN_GOMP_TARGET,
BUILT_IN_GOMP_TARGET_DATA, BUILT_IN_GOMP_TARGET_UPDATE pass NULL
instead of &__OFFLOAD_TABLE__, for BUILT_IN_GOACC_DATA_START,
BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL,
BUILT_IN_GOACC_UPDATE don't pass it at all.
libgomp/
* libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
(GOACC_parallel, GOACC_update): Remove const_void *offload_table
formal parameter. Update all users.
* target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
Document unused formal parameter.
From-SVN: r219836
Diffstat (limited to 'libgomp')
-rw-r--r-- | libgomp/ChangeLog | 8 | ||||
-rw-r--r-- | libgomp/libgomp_g.h | 10 | ||||
-rw-r--r-- | libgomp/oacc-parallel.c | 8 | ||||
-rw-r--r-- | libgomp/target.c | 11 |
4 files changed, 22 insertions, 15 deletions
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 065dfd4..482a968 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,11 @@ +2015-01-19 Thomas Schwinge <thomas@codesourcery.com> + + * libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data) + (GOACC_parallel, GOACC_update): Remove const_void *offload_table + formal parameter. Update all users. + * target.c (GOMP_target, GOMP_target_data, GOMP_target_update): + Document unused formal parameter. + 2015-01-16 Thomas Schwinge <thomas@codesourcery.com> * oacc-parallel.c: Don't include <alloca.h>. diff --git a/libgomp/libgomp_g.h b/libgomp/libgomp_g.h index c1e4e63..5e88d45 100644 --- a/libgomp/libgomp_g.h +++ b/libgomp/libgomp_g.h @@ -217,15 +217,15 @@ extern void GOMP_teams (unsigned int, unsigned int); /* oacc-parallel.c */ -extern void GOACC_data_start (int, const void *, - size_t, void **, size_t *, unsigned short *); +extern void GOACC_data_start (int, size_t, void **, size_t *, + unsigned short *); extern void GOACC_data_end (void); -extern void GOACC_enter_exit_data (int, const void *, size_t, void **, +extern void GOACC_enter_exit_data (int, size_t, void **, size_t *, unsigned short *, int, int, ...); -extern void GOACC_parallel (int, void (*) (void *), const void *, size_t, +extern void GOACC_parallel (int, void (*) (void *), size_t, void **, size_t *, unsigned short *, int, int, int, int, int, ...); -extern void GOACC_update (int, const void *, size_t, void **, size_t *, +extern void GOACC_update (int, size_t, void **, size_t *, unsigned short *, int, int, ...); extern void GOACC_wait (int, int, ...); extern int GOACC_get_num_threads (void); diff --git a/libgomp/oacc-parallel.c b/libgomp/oacc-parallel.c index b5e8060..a300742 100644 --- a/libgomp/oacc-parallel.c +++ b/libgomp/oacc-parallel.c @@ -75,7 +75,7 @@ select_acc_device (int device_type) static void goacc_wait (int async, int num_waits, va_list ap); void -GOACC_parallel (int device, void (*fn) (void *), const void *offload_table, +GOACC_parallel (int device, void (*fn) (void *), size_t mapnum, void **hostaddrs, size_t *sizes, unsigned short *kinds, int num_gangs, int num_workers, int vector_length, @@ -172,7 +172,7 @@ GOACC_parallel (int device, void (*fn) (void *), const void *offload_table, } void -GOACC_data_start (int device, const void *offload_table, size_t mapnum, +GOACC_data_start (int device, size_t mapnum, void **hostaddrs, size_t *sizes, unsigned short *kinds) { bool host_fallback = device == GOMP_DEVICE_HOST_FALLBACK; @@ -218,7 +218,7 @@ GOACC_data_end (void) } void -GOACC_enter_exit_data (int device, const void *offload_table, size_t mapnum, +GOACC_enter_exit_data (int device, size_t mapnum, void **hostaddrs, size_t *sizes, unsigned short *kinds, int async, int num_waits, ...) { @@ -408,7 +408,7 @@ goacc_wait (int async, int num_waits, va_list ap) } void -GOACC_update (int device, const void *offload_table, size_t mapnum, +GOACC_update (int device, size_t mapnum, void **hostaddrs, size_t *sizes, unsigned short *kinds, int async, int num_waits, ...) { diff --git a/libgomp/target.c b/libgomp/target.c index 72d64fc..ebff55e 100644 --- a/libgomp/target.c +++ b/libgomp/target.c @@ -738,15 +738,14 @@ gomp_fini_device (struct gomp_device_descr *devicep) is GOMP_DEVICE_ICV, it means use device-var ICV. If it is GOMP_DEVICE_HOST_FALLBACK (or any value larger than last available hw device), use host fallback. - FN is address of host code, OFFLOAD_TABLE contains value of the - __OFFLOAD_TABLE__ symbol in the shared library or binary that invokes - GOMP_target. HOSTADDRS, SIZES and KINDS are arrays + FN is address of host code, UNUSED is part of the current ABI, but + we're not actually using it. HOSTADDRS, SIZES and KINDS are arrays with MAPNUM entries, with addresses of the host objects, sizes of the host objects (resp. for pointer kind pointer bias and assumed sizeof (void *) size) and kinds. */ void -GOMP_target (int device, void (*fn) (void *), const void *offload_table, +GOMP_target (int device, void (*fn) (void *), const void *unused, size_t mapnum, void **hostaddrs, size_t *sizes, unsigned char *kinds) { @@ -817,7 +816,7 @@ GOMP_target (int device, void (*fn) (void *), const void *offload_table, } void -GOMP_target_data (int device, const void *offload_table, size_t mapnum, +GOMP_target_data (int device, const void *unused, size_t mapnum, void **hostaddrs, size_t *sizes, unsigned char *kinds) { struct gomp_device_descr *devicep = resolve_device (device); @@ -873,7 +872,7 @@ GOMP_target_end_data (void) } void -GOMP_target_update (int device, const void *offload_table, size_t mapnum, +GOMP_target_update (int device, const void *unused, size_t mapnum, void **hostaddrs, size_t *sizes, unsigned char *kinds) { struct gomp_device_descr *devicep = resolve_device (device); |