aboutsummaryrefslogtreecommitdiff
path: root/libiberty/simple-object-elf.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2017-10-30 12:48:53 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2017-10-30 12:48:53 +0000
commit2c24409655e61a35fdbdaf69ab3a204b7414d778 (patch)
tree7ab0fd6ebaef0b1c0e09b38d3fbfd99eff6b42bd /libiberty/simple-object-elf.c
parent71684bd8ba8cc10809fa19accd9c062b75671c5b (diff)
2017-10-30 Richard Biener <rguenther@suse.de>
PR lto/82757 * simple-object-elf.c (simple_object_elf_copy_lto_debug_sections): Strip two leading _s from the __gnu_lto_* symbols. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254219 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libiberty/simple-object-elf.c')
-rw-r--r--libiberty/simple-object-elf.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libiberty/simple-object-elf.c b/libiberty/simple-object-elf.c
index 14f71053150..27431db98c7 100644
--- a/libiberty/simple-object-elf.c
+++ b/libiberty/simple-object-elf.c
@@ -1384,7 +1384,12 @@ simple_object_elf_copy_lto_debug_sections (simple_object_read *sobj,
&& p[1] == '_'
&& strncmp (p + (p[2] == '_'),
"__gnu_lto_", 10) == 0)
- other = STV_HIDDEN;
+ {
+ other = STV_HIDDEN;
+ ELF_SET_FIELD (type_functions, ei_class, Sym,
+ ent, st_name, Elf_Word,
+ st_name + 2);
+ }
}
}
*st_other = other;