aboutsummaryrefslogtreecommitdiff
path: root/bfd/elflink.c
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@imgtec.com>2017-04-24 20:13:28 +0100
committerMaciej W. Rozycki <macro@imgtec.com>2017-04-26 13:15:17 +0100
commitc46cec3a8cfe02fbe0f6c67ba53abc5369c5c659 (patch)
tree7a29d53022df072ccc3376f16f57dfcf9be9b9d5 /bfd/elflink.c
parentbbdd9a6894d7875407da59d490faf5588163d21c (diff)
downloadfsf-binutils-gdb-c46cec3a8cfe02fbe0f6c67ba53abc5369c5c659.zip
fsf-binutils-gdb-c46cec3a8cfe02fbe0f6c67ba53abc5369c5c659.tar.gz
fsf-binutils-gdb-c46cec3a8cfe02fbe0f6c67ba53abc5369c5c659.tar.bz2
ELF/BFD: Limit `_bfd_elf_link_renumber_dynsyms' call in section GC
Consistently call `_bfd_elf_link_renumber_dynsyms' only if linking a dynamic binary, complementing code in `bfd_elf_size_dynsym_hash_dynstr' and commit ccabcbe51e85 ("New attempt at fixing MIPS --gc-sections et al."), <https://sourceware.org/ml/binutils/2005-08/msg00258.html>. bfd/ * elflink.c (bfd_elf_size_dynamic_sections): Only call `_bfd_elf_link_renumber_dynsyms' after section GC if dynamic sections have been created.
Diffstat (limited to 'bfd/elflink.c')
-rw-r--r--bfd/elflink.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/elflink.c b/bfd/elflink.c
index 0d42c4c..05b1211 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -6460,7 +6460,8 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd,
elf_link_hash_traverse (elf_hash_table (info), elf_gc_sweep_symbol,
&sweep_info);
- _bfd_elf_link_renumber_dynsyms (output_bfd, info, &section_sym_count);
+ if (elf_hash_table (info)->dynamic_sections_created)
+ _bfd_elf_link_renumber_dynsyms (output_bfd, info, &section_sym_count);
}
/* Any syms created from now on start with -1 in