re PR lto/81968 (early lto debug objects make Solaris ld SEGV)
authorRichard Biener <rguenther@suse.de>
Thu, 11 Jan 2018 12:12:39 +0000 (12:12 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 11 Jan 2018 12:12:39 +0000 (12:12 +0000)
commitbf6f2cc7be78a36b1648cdc9619b8fe98475825d
treed2f8fb5d40dada424665515fdd18680f7e9087d6
parentec538483a14f61226e3f89b46f098cfb98be8f12
re PR lto/81968 (early lto debug objects make Solaris ld SEGV)

2018-01-11  Richard Biener  <rguenther@suse.de>
Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

PR lto/81968
libiberty/
* simple-object-common.h (struct simple_object_functions):
Change copy_lto_debug_sections callback signature.
* simple-object-elf.c (SHN_HIRESERVE, SHT_SYMTAB_SHNDX,
SHF_INFO_LINK): Add defines.
(simple_object_elf_copy_lto_debug_sections): Instead of
leaving not to be copied sections empty unnamed SHT_NULL
remove them from the target section headers and adjust section
reference everywhere.  Handle SHN_XINDEX in the symbol table
processing properly.
* simple-object.c (handle_lto_debug_sections): Change
interface to return a modified string and handle renaming
of relocation sections.

Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r256528
libiberty/ChangeLog
libiberty/simple-object-common.h
libiberty/simple-object-elf.c
libiberty/simple-object.c