gcc/include
Andrew Stubbs 4a87a8e4b1 amdgcn: Change offload variable table discovery
Up to now the libgomp GCN plugin has been finding the offload variables
by using a symbol lookup, but the AMD runtime requires that the symbols are
global for that to work. This was ensured by mkoffload as a post-procssing
step, but the LLVM 13 assembler no longer accepts this in the case where the
variable was previously declared differently.

This patch switches to locating the symbols directly from the
offload_var_table, which means that only one symbol needs to be forced
global.

This changes breaks the libgomp image compatibility so GOMP_VERSION_GCN has
also been bumped.

gcc/ChangeLog:

	* config/gcn/mkoffload.c (process_asm): Process the variable table
	completely differently.
	(process_obj): Encode the varaible data differently.

include/ChangeLog:

	* gomp-constants.h (GOMP_VERSION_GCN): Bump.

libgomp/ChangeLog:

	* plugin/plugin-gcn.c (struct gcn_image_desc): Remove global_variables.
	(GOMP_OFFLOAD_load_image): Locate the offload variables via the
	table, not individual symbols.
2021-12-10 10:45:09 +00:00
..
gdb
ansidecl.h
btf.h
ChangeLog Daily bump. 2021-12-09 00:16:31 +00:00
ChangeLog-9103
ChangeLog.jit
COPYING
COPYING3
ctf.h
demangle.h
dwarf2.def
dwarf2.h
dyn-string.h
environ.h
fibheap.h
filenames.h
floatformat.h Update pathname for IBM long double description. 2021-09-27 10:56:14 -04:00
fnmatch.h
gcc-c-fe.def
gcc-c-interface.h
gcc-cp-fe.def
gcc-cp-interface.h
gcc-interface.h
getopt.h
gomp-constants.h amdgcn: Change offload variable table discovery 2021-12-10 10:45:09 +00:00
hashtab.h
hsa_ext_amd.h
hsa_ext_image.h
hsa.h
leb128.h
libiberty.h
longlong.h
lto-symtab.h
md5.h include: Allow for our md5.h to defer to the system header 2021-11-05 13:06:34 +01:00
objalloc.h
obstack.h obstack.h __PTR_ALIGN vs. ubsan 2021-09-22 17:14:17 +09:30
partition.h
plugin-api.h
safe-ctype.h
sha1.h
simple-object.h
sort.h
splay-tree.h
symcat.h
timeval-utils.h
unique-ptr.h
vtv-change-permission.h
xregex2.h
xregex.h
xtensa-config.h