e2587b81e06def4bddff7c56b78764e81bcc0e24
[openwrt/openwrt.git] / toolchain / binutils / patches / 2.28 / 001-ELF-BFD-Limit-_bfd_elf_link_renumber_dynsyms-call-in.patch
1 From 2424aef3a744bc6ca4099a655065c70a63f0fb49 Mon Sep 17 00:00:00 2001
2 From: "Maciej W. Rozycki" <macro@imgtec.com>
3 Date: Wed, 26 Apr 2017 22:18:13 +0100
4 Subject: ELF/BFD: Limit `_bfd_elf_link_renumber_dynsyms' call in section GC
5
6 Consistently call `_bfd_elf_link_renumber_dynsyms' only if linking a
7 dynamic binary, complementing code in `bfd_elf_size_dynsym_hash_dynstr'
8 and commit ccabcbe51e85 ("New attempt at fixing MIPS --gc-sections et
9 al."), <https://sourceware.org/ml/binutils/2005-08/msg00258.html>.
10
11 bfd/
12 * elflink.c (elf_gc_sweep): Only call
13 `_bfd_elf_link_renumber_dynsyms' if dynamic sections have been
14 created.
15
16 (backported from commit c46cec3a8cfe02fbe0f6c67ba53abc5369c5c659)
17 ---
18 bfd/ChangeLog | 6 ++++++
19 bfd/elflink.c | 3 ++-
20 2 files changed, 8 insertions(+), 1 deletion(-)
21
22 diff --git a/bfd/ChangeLog b/bfd/ChangeLog
23 index 85c6a817e5..537ebb5e2c 100644
24 --- a/bfd/ChangeLog
25 +++ b/bfd/ChangeLog
26 @@ -1,3 +1,9 @@
27 +2017-04-26 Maciej W. Rozycki <macro@imgtec.com>
28 +
29 + * elflink.c (elf_gc_sweep): Only call
30 + `_bfd_elf_link_renumber_dynsyms' if dynamic sections have been
31 + created.
32 +
33 2017-03-02 Tristan Gingold <gingold@adacore.com>
34
35 * version.m4: Bump version to 2.28
36 diff --git a/bfd/elflink.c b/bfd/elflink.c
37 index 69b66f2831..75d6543dcc 100644
38 --- a/bfd/elflink.c
39 +++ b/bfd/elflink.c
40 @@ -12986,7 +12986,8 @@ elf_gc_sweep (bfd *abfd, struct bfd_link_info *info)
41 elf_link_hash_traverse (elf_hash_table (info), elf_gc_sweep_symbol,
42 &sweep_info);
43
44 - _bfd_elf_link_renumber_dynsyms (abfd, info, &section_sym_count);
45 + if (elf_hash_table (info)->dynamic_sections_created)
46 + _bfd_elf_link_renumber_dynsyms (abfd, info, &section_sym_count);
47 return TRUE;
48 }
49
50 --
51 2.11.0
52