]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
ELF/BFD: Limit `_bfd_elf_link_renumber_dynsyms' call in section GC
authorMaciej W. Rozycki <macro@imgtec.com>
Wed, 26 Apr 2017 21:18:13 +0000 (22:18 +0100)
committerMaciej W. Rozycki <macro@imgtec.com>
Wed, 26 Apr 2017 21:30:27 +0000 (22:30 +0100)
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 (elf_gc_sweep): Only call
`_bfd_elf_link_renumber_dynsyms' if dynamic sections have been
created.

(backported from commit c46cec3a8cfe02fbe0f6c67ba53abc5369c5c659)

bfd/ChangeLog
bfd/elflink.c

index 00875637e9e68ccbda3a6bbab2415b8fd62df4a7..5bcd30b330fafa100a13605e3886dbd32b84b999 100644 (file)
@@ -1,3 +1,9 @@
+2017-04-26  Maciej W. Rozycki  <macro@imgtec.com>
+
+       * elflink.c (elf_gc_sweep): Only call
+       `_bfd_elf_link_renumber_dynsyms' if dynamic sections have been
+       created.
+
 2017-04-24  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/21425
index 46d57e59396b417a8ef66b391e467fe56d3e965a..1c3e1b0ca542034ee7d9c806486716b966aecde6 100644 (file)
@@ -12983,7 +12983,8 @@ elf_gc_sweep (bfd *abfd, struct bfd_link_info *info)
   elf_link_hash_traverse (elf_hash_table (info), elf_gc_sweep_symbol,
                          &sweep_info);
 
-  _bfd_elf_link_renumber_dynsyms (abfd, info, &section_sym_count);
+  if (elf_hash_table (info)->dynamic_sections_created)
+    _bfd_elf_link_renumber_dynsyms (abfd, info, &section_sym_count);
   return TRUE;
 }