re PR lto/81968 (early lto debug objects make Solaris ld SEGV)

2017-08-31  Richard Biener  <rguenther@suse.de>

	PR lto/81968
	* simple-object-elf.c (simple_object_elf_copy_lto_debug_section):
	Keep names of removed global symbols.

From-SVN: r251560
This commit is contained in:
Richard Biener 2017-08-31 11:21:40 +00:00 committed by Richard Biener
parent 7488b5779f
commit a621861e39
2 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2017-08-31 Richard Biener <rguenther@suse.de>
PR lto/81968
* simple-object-elf.c (simple_object_elf_copy_lto_debug_section):
Keep names of removed global symbols.
2017-08-29 Tony Reix <tony.reix@atos.net>
* simple-object-xcoff.c (simple_object_xcoff_find_sections):

View File

@ -1349,9 +1349,11 @@ simple_object_elf_copy_lto_debug_sections (simple_object_read *sobj,
if (discard)
{
/* Make discarded symbols undefined and unnamed. */
ELF_SET_FIELD (type_functions, ei_class, Sym,
ent, st_name, Elf_Word, 0);
/* Make discarded symbols undefined and unnamed
in case it is local. */
if (ELF_ST_BIND (*st_info) == STB_LOCAL)
ELF_SET_FIELD (type_functions, ei_class, Sym,
ent, st_name, Elf_Word, 0);
ELF_SET_FIELD (type_functions, ei_class, Sym,
ent, st_value, Elf_Addr, 0);
ELF_SET_FIELD (type_functions, ei_class, Sym,