binutils-gdb/include
Stephen Crane c4e648430f Add plugin API for processing plugin-added input files
Gold plugins may wish to further process an input file added by a plugin. For
example, the plugin may need to assign a unique segment for sections in a
plugin-generated input file. This patch adds a plugin callback that the linker
will call when reading symbols from a new input file added after the
all_symbols_read event (i.e. an input file added by a plugin).

2017-12-11  Stephen Crane  <sjc@immunant.com>

	* plugin-api.h: Add new plugin hook to allow processing of input
	files added by a plugin.
	(ld_plugin_new_input_handler): New function hook type.
	(ld_plugin_register_new_input): New interface.
	(LDPT_REGISTER_NEW_INPUT_HOOK): New enum val.
	(tv_register_new_input): New member.

	* plugin.cc (Plugin::load): Include hooks for register_new_input
	in transfer vector.
	(Plugin::new_input): New function.
	(register_new_input): New function.
	(Plugin_manager::claim_file): Call Plugin::new_input if in
	replacement phase.
	* plugin.h (Plugin::set_new_input_handler): New function.
	* testsuite/plugin_new_section_layout.c: New plugin to test
	new_input plugin API.
	* testsuite/plugin_final_layout.sh: Add new input test.
	* testsuite/Makefile.am (plugin_layout_new_file): New test case.
	* testsuite/Makefile.in: Regenerate.
2017-12-11 14:58:38 -08:00
..
aout Fix spelling typos. 2017-07-18 16:58:14 +01:00
cgen
coff PE: don't corrupt section flags when linking from ELF objects 2017-11-13 12:26:12 +01:00
elf Re-apply "elf: Properly compute offsets of note descriptor and next note" 2017-11-24 14:52:15 -08:00
gdb Fix spelling typos. 2017-07-18 16:58:14 +01:00
mach-o Fix spelling typos. 2017-07-18 16:58:14 +01:00
nlm
opcode Use consistent types for holding instructions, instruction masks, etc. 2017-12-01 11:20:15 -06:00
som
vms
COPYING
COPYING3
ChangeLog Add plugin API for processing plugin-added input files 2017-12-11 14:58:38 -08:00
ChangeLog-0415
ChangeLog-2016
ChangeLog-9103
MAINTAINERS
alloca-conf.h
ansidecl.h Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
bfdlink.h Treat common symbol as undefined for --no-define-common 2017-08-06 08:19:04 -07:00
binary-io.h
bout.h
demangle.h Sync libiberty sources with GCC. 2017-03-13 17:49:32 +00:00
dis-asm.h binutils/objdump: Fix disassemble for huge elf sections 2017-07-14 22:51:01 +09:30
dwarf2.def LVU: dump loclists with locviews 2017-09-22 17:05:51 -03:00
dwarf2.h LVU: dump loclists with locviews 2017-09-22 17:05:51 -03:00
dyn-string.h
environ.h Fix MinGW compilation warnings due to environ.h 2017-05-31 09:35:07 +03:00
fibheap.h
filenames.h
floatformat.h
fnmatch.h
fopen-bin.h
fopen-same.h
fopen-vms.h
gcc-c-fe.def Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
gcc-c-interface.h Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
gcc-cp-fe.def Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
gcc-cp-interface.h Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
gcc-interface.h Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
getopt.h
hashtab.h
hp-symtab.h
ieee.h
leb128.h
libiberty.h Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
longlong.h Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
lto-symtab.h
md5.h
oasys.h
objalloc.h
obstack.h
os9k.h
partition.h
plugin-api.h Add plugin API for processing plugin-added input files 2017-12-11 14:58:38 -08:00
progress.h
safe-ctype.h
sha1.h
simple-object.h Sync libiberty/ & include/ with GCC 2017-09-15 17:40:33 +01:00
sort.h
splay-tree.h
symcat.h
timeval-utils.h
vtv-change-permission.h
xregex.h
xregex2.h
xtensa-config.h
xtensa-isa-internal.h
xtensa-isa.h