API extension for binutils (type of symbols).
authorMartin Liska <mliska@suse.cz>
Thu, 19 Mar 2020 15:56:27 +0000 (16:56 +0100)
committerMartin Liska <mliska@suse.cz>
Thu, 19 Mar 2020 15:56:27 +0000 (16:56 +0100)
commitc8429c2aba80f845939ffa6b2cfe8a0be1b50078
tree24fdc75d0c796217da6680c0dd3e9abddb1238ca
parentf5389e17e4b8cfd4877082b46d31d1db3341a0aa
API extension for binutils (type of symbols).

* lto-section-in.c: Add ext_symtab.
* lto-streamer-out.c (write_symbol_extension_info): New.
(produce_symtab_extension): New.
(produce_asm_for_decls): Stream also produce_symtab_extension.
* lto-streamer.h (enum lto_section_type): New section.
* lto-symtab.h (enum gcc_plugin_symbol_type): New.
(enum gcc_plugin_symbol_section_kind): Likewise.
* lto-plugin.c (LTO_SECTION_PREFIX): Rename to ...
(LTO_SYMTAB_PREFIX): ... this.
(LTO_SECTION_PREFIX_LEN): Rename to ...
(LTO_SYMTAB_PREFIX_LEN): ... this.
(LTO_SYMTAB_EXT_PREFIX): New.
(LTO_SYMTAB_EXT_PREFIX_LEN): New.
(LTO_LTO_PREFIX): New.
(LTO_LTO_PREFIX_LEN): New.
(parse_table_entry): Fill up unused to zero.
(parse_table_entry_extension): New.
(parse_symtab_extension): New.
(finish_conflict_resolution): Change type
for resolution.
(process_symtab): Use new macro name.
(process_symtab_extension): New.
(claim_file_handler): Parse also process_symtab_extension.
(onload): Call new add_symbols_v2.
gcc/ChangeLog
gcc/lto-section-in.c
gcc/lto-streamer-out.c
gcc/lto-streamer.h
include/ChangeLog
include/lto-symtab.h
lto-plugin/ChangeLog
lto-plugin/lto-plugin.c