PR22746, crash when running 32-bit objdump on corrupted file
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2018-01-25 Alan Modra <amodra@gmail.com>
2
3 PR 22746
4 * elfcode.h (elf_object_p): Avoid integer overflow.
5
6 2018-01-25 Eric Botcazou <ebotcazou@adacore.com>
7
8 PR ld/22727
9 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
10 Do a mere lookup of the __tls_get_addr symbol instead of adding it.
11
12 Revert
13 2017-10-19 H.J. Lu <hongjiu.lu@intel.com>
14
15 PR ld/22263
16 * elfxx-sparc.c (sparc_elf_tls_transition): Replace
17 bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
18 bfd_link_executable for TLS check.
19 (_bfd_sparc_elf_check_relocs): Likewise.
20 (allocate_dynrelocs): Likewise.
21 (_bfd_sparc_elf_relocate_section): Likewise.
22
23 2018-01-24 Renlin Li <renlin.li@arm.com>
24
25 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for
26 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
27 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
28 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
29 BFD_RELOC_AARCH64_MOVW_PREL_G3.
30 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
31 (_bfd_aarch64_elf_resolve_relocation): Likewise.
32
33 2018-01-24 Renlin Li <renlin.li@arm.com>
34
35 * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0,
36 BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1,
37 BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2,
38 BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3.
39 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for
40 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
41 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
42 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
43 BFD_RELOC_AARCH64_MOVW_PREL_G3.
44 * bfd-in2.h: Regenerate.
45 * libbfd.h: Regenerate.
46
47 2018-01-23 Maciej W. Rozycki <macro@mips.com>
48
49 * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale
50 `mips_elf32_section_processing' comment reference.
51
52 2018-01-20 H.J. Lu <hongjiu.lu@intel.com>
53
54 PR ld/22721
55 * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the
56 versioned __tls_get_addr symbol.
57
58 2018-01-19 Nick Clifton <nickc@redhat.com>
59
60 * po/fr.po: Updated French translation.
61
62 2018-01-18 Alan Modra <amodra@gmail.com>
63
64 * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink.
65 * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align.
66 (ppc64_elf_build_stubs): Likewise.
67
68 2018-01-17 Nick Clifton <nickc@redhat.com>
69
70 * po/ru.po: Updated Russian translation.
71 * po/uk/po: Updated Ukranian translation.
72
73 2018-01-17 Alan Modra <amodra@gmail.com>
74
75 * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning.
76
77 2018-01-17 Alan Modra <amodra@gmail.com>
78
79 * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier.
80 (CRSETEQ, BEQCTRM): Define.
81 (is_nonpic_glink_stub): Don't check bctr.
82 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
83 (ppc_elf_relax_section): Size speculation barrier.
84 (output_bctr): New function.
85 (write_glink_stub): Use output_bctr.
86 (ppc_elf_relocate_section): Use output_bctr for long branch stub.
87 (ppc_elf_finish_dynamic_symbol): Likewise.
88 (ppc_elf_finish_dynamic_sections): Use output_bctr.
89 * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps.
90 * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define.
91 (GLINK_PLTRESOLVE_SIZE): Size speculation barrier.
92 (size_global_entry_stubs): Handle speculation barrier sizing.
93 (plt_stub_size): Likewise.
94 (output_bctr): New function.
95 (build_plt_stub, build_tls_get_addr_stub): Output speculation
96 barrier.
97 (ppc_build_one_stub): Likewise for ppc_stub_plt_branch.
98 (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch.
99 (build_global_entry_stubs): Output speculation barrier.
100 (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub.
101 * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps.
102
103 2018-01-17 Alan Modra <amodra@gmail.com>
104
105 * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle
106 __tls_get_addr_opt, and alignment sizing.
107 (TLS_GET_ADDR_GLINK_SIZE): Delete.
108 (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE.
109 (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6,
110 or 8 insns.
111 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
112 (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE.
113 (ppc_elf_size_dynamic_sections): Likewise. Size branch table
114 by PLT reloc count.
115 (write_glink_stub): Handle __tls_get_addr_opt stub.
116 Pad out to size given by GLINK_ENTRY_SIZE.
117 (ppc_elf_relocate_section): Adjust write_glink_stub call.
118 (ppc_elf_finish_dynamic_symbol): Likewise.
119 (ppc_elf_finish_dynamic_sections): Write PLTresolve without using
120 insn array since so many need rewriting.
121 * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align.
122 * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from
123 GLINK_CALL_STUB_SIZE. Add htab param and evaluate to size without
124 nops. Adjust all uses.
125 (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE
126 in glink_vma calculation.
127 (struct ppc_link_hash_table): Add global_entry section pointer.
128 (create_linkage_sections): Create separate section for global
129 entry stubs.
130 (PPC_LO, PPC_HI, PPC_HA): Move earlier.
131 (size_global_entry_stubs): Handle sizing for aligned stubs.
132 (ppc64_elf_size_dynamic_sections): Handle global_entry alloc,
133 and don't stash end of glink branch table in rawsize.
134 (ppc_build_one_stub): Rewrite stub size calculations.
135 (build_global_entry_stubs): Use new section.
136 (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops.
137 Build lazy link stubs out to end of section. Build global entry
138 stubs in new section.
139
140 2018-01-15 Nick Clifton <nickc@redhat.com>
141
142 * po/uk.po: Updated Ukranian translation.
143
144 2018-01-13 Nick Clifton <nickc@redhat.com>
145
146 * po/bfd.pot: Regenerated.
147
148 2018-01-13 Nick Clifton <nickc@redhat.com>
149
150 * version.m4: Bump version to 2.30.51
151 * configure: Regenerate.
152
153 2018-01-13 Nick Clifton <nickc@redhat.com>
154
155 2.30 branch created.
156
157 2018-01-12 Jens Widell <jl@opera.com>
158
159 * elf.c (setup_group): Optimize search for group by remembering
160 last found group and restarting search at that index.
161 * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field.
162
163 2018-01-12 Gunther Nikl <gnikl@users.sourceforge.net>
164
165 * aoutx.h (aout_link_check_ar_symbols): Remove default and handle
166 bfd_link_common_skip_none in switch.
167
168 2018-01-12 Alan Modra <amodra@gmail.com>
169
170 PR ld/22649
171 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic
172 references on forced local symbols.
173
174 2018-01-12 Vlad Ivanov <vlad@ivanov.email>
175
176 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
177 .reginfo section has wrong size.
178
179 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
180
181 PR ld/22393
182 * elf.c (_bfd_elf_map_sections_to_segments): When generating
183 separate code and read-only data LOAD segments, create a new
184 LOAD segment if the previous section contains text and the
185 current section doesn't or vice versa. Don't put a writable
186 section in a read-only segment if there is a RELRO segment.
187
188 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
189
190 PR ld/22649
191 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic
192 references on forced local symbols.
193
194 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
195
196 PR ld/22677
197 * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY,
198 INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section.
199
200 2017-09-27 Kuan-Lin Chen <kuanlinchentw@gmail.com>
201
202 PR 22662
203 * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error.
204
205 2018-01-03 John Baldwin <jhb@FreeBSD.org>
206
207 * elf.c (elfcore_grok_freebsd_note): Handle
208 NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and
209 NT_FREEBSD_PROCSTAT_VMMAP.
210
211 2018-01-03 Alan Modra <amodra@gmail.com>
212
213 Update year range in copyright notice of all files.
214
215 For older changes see ChangeLog-2017
216 \f
217 Copyright (C) 2018 Free Software Foundation, Inc.
218
219 Copying and distribution of this file, with or without modification,
220 are permitted in any medium without royalty provided the copyright
221 notice and this notice are preserved.
222
223 Local Variables:
224 mode: change-log
225 left-margin: 8
226 fill-column: 74
227 version-control: never
228 End:
This page took 0.034703 seconds and 4 git commands to generate.