This is the mail archive of the binutils@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]

[PATCH v2 1/2] 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.
---
 No regressions across the usual targets.  OK for master and 2.28?

  Maciej

binutils-bfd-elf-gc-dynsym-renumber.diff
Index: binutils/bfd/elflink.c
===================================================================
--- binutils.orig/bfd/elflink.c	2017-04-22 03:35:18.929206015 +0100
+++ binutils/bfd/elflink.c	2017-04-22 03:36:05.768357914 +0100
@@ -6460,7 +6460,8 @@ bfd_elf_size_dynamic_sections (bfd *outp
       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


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