This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb/binutils-2_28-branch] ELF/BFD: Limit `_bfd_elf_link_renumber_dynsyms' call in section GC


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2e1b086f4e20861f912d5f3b9b34180881b7273b

commit 2e1b086f4e20861f912d5f3b9b34180881b7273b
Author: Maciej W. Rozycki <macro@imgtec.com>
Date:   Wed Apr 26 22:18:13 2017 +0100

    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 (elf_gc_sweep): Only call
    	`_bfd_elf_link_renumber_dynsyms' if dynamic sections have been
    	created.
    
    (backported from commit c46cec3a8cfe02fbe0f6c67ba53abc5369c5c659)

Diff:
---
 bfd/ChangeLog | 6 ++++++
 bfd/elflink.c | 3 ++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 0087563..5bcd30b 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -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
diff --git a/bfd/elflink.c b/bfd/elflink.c
index 46d57e5..1c3e1b0 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -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;
 }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]