Don't reference past the end of the vector
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
15b23f36
L
12018-02-08 H.J. Lu <hongjiu.lu@intel.com>
2
3 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
4 Remove prototype.
5 (i386_elf32_sol2_vec): Declared.
6 (elf_i386_link_setup_gnu_properties): Set
7 need_global_offset_table with info->output_bfd->xvec.
8 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
9 Remove prototype.
10 (x86_64_elf64_sol2_vec): Declared.
11 (elf_x86_64_link_setup_gnu_properties): Set
12 need_global_offset_table with info->output_bfd->xvec.
13
dc11dea2
L
142018-02-08 H.J. Lu <hongjiu.lu@intel.com>
15
16 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
17 New prototype.
18 (elf_i386_link_setup_gnu_properties): Set need_global_offset_table
19 for Solaris.
20 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
21 New prototype.
22 (elf_x86_64_link_setup_gnu_properties): Set
23 need_global_offset_table for Solaris.
24 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the
25 unused _GLOBAL_OFFSET_TABLE_ for Solaris.
26 (_bfd_x86_elf_link_setup_gnu_properties): Copy
27 need_global_offset_table.
28 * elfxx-x86.h (elf_x86_link_hash_table): Add
29 need_global_offset_table.
30 (elf_x86_init_table): Likewise.
31
3f48fe4a
JW
322018-02-08 Jim Wilson <jimw@sifive.com>
33
34 * elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous
35 change.
36
ef135d43
NC
372018-02-08 Nick Clifton <nickc@redhat.com>
38
39 PR 22788
40 * elf.c (elf_parse_notes): Reject notes with excessuively large
41 alignments.
42
407aa07c
AM
432018-02-07 Alan Modra <amodra@gmail.com>
44
45 Revert 2018-01-17 Alan Modra <amodra@gmail.com>
46 * elf32-ppc.c: Remove speculation barrier support.
47 * elf32-ppc.h: Likewise.
48 * elf64-ppc.c: Likewise.
49 * elf64-ppc.h: Likewise.
50
ed01220c
JW
512018-02-06 Jim Wilson <jimw@sifive.com>
52
53 * elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used
54 callback to report an error.
55
c20c30f6
EB
562018-02-06 Eric Botcazou <ebotcazou@adacore.com>
57
58 PR ld/22263
59 * elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic
60 into call to !bfd_link_executable and tidy up.
61 (_bfd_sparc_elf_check_relocs): Fix formatting and tidy up.
62 <R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to
63 !bfd_link_executable.
64 <R_SPARC_TLS_IE_HI22>: Likewise.
65 <GOT relocations>: Remove useless code, tidy and merge related blocks.
66 <R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to
67 !bfd_link_executable.
68 <R_SPARC_WPLT30>: Tidy up.
69 (_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call to
70 !bfd_link_executable.
71 (allocate_dynrelocs): Likewise.
72 (_bfd_sparc_elf_relocate_section): Fix formatting and tidy up.
73 <R_SPARC_TLS_GD_HI22>: Merge into...
74 <R_SPARC_TLS_GD_LO10>: ...this. Adjust 4th argument in call to
75 sparc_elf_tls_transition and remove redundant code.
76 <R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to
77 !bfd_link_executable.
78 <R_SPARC_TLS_LDO_HIX22>: Likewise.
79 <R_SPARC_TLS_LE_HIX22>: Likewise. Tidy up.
80 <R_SPARC_TLS_LDM_CALL>: Likewise.
81 <R_SPARC_TLS_GD_CALL>: Likewise. Tidy up.
82 <R_SPARC_TLS_GD_ADD>: Likewise.
83 <R_SPARC_TLS_LDM_ADD>: Likewise.
84 <R_SPARC_TLS_LDO_ADD>: Likewise.
85 <R_SPARC_TLS_IE_LD>: Likewise.
86
46d09186
NC
872018-02-06 Miloš Stojanović <milos.stojanovic@rt-rk.com>
88
89 PR 22789
90 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf
91 functions failed to find the function name, try the generic elf
92 find function instead.
93
8278e7ce
SDJ
942018-02-06 Sergio Durigan Junior <sergiodj@redhat.com>
95
96 * coff-rs6000.c (xcoff_write_archive_contents_old): Use
97 'memcpy' instead of 'strncpy' when writing the magic number.
98
64e234d4
NC
992018-02-06 Nick Clifton <nickc@redhat.com>
100
101 PR 22794
102 * opncls.c (bfd_get_debug_link_info_1): Check the size of the
103 section before attempting to read it in.
104 (bfd_get_alt_debug_link_info): Likewise.
105
422f3d3d
PC
1062018-02-06 Paul Carroll <pcarroll@codesourcery.com>
107
108 * bfd/dwarf2.c (find_abstract_name): Modified to return file and
109 line information in addition to name, if they can be found.
110
279b2f94
RL
1112018-02-05 Renlin Li <renlin.li@arm.com>
112
113 PR ld/22764
114 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the
115 R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the
116 check for writeable section as well.
117
cd048363
L
1182018-02-05 H.J. Lu <hongjiu.lu@intel.com>
119
120 PR ld/22782
121 * elf32-i386.c (elf_i386_check_relocs): Set got_referenced if
122 _GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve
123 undefined weak symbol to 0.
124 * elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced
125 if _GLOBAL_OFFSET_TABLE_ is referenced.
126 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check
127 got_referenced instead of ref_regular_nonweak. Remove the
128 unused _GLOBAL_OFFSET_TABLE_ from symbol table.
129 * elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced.
130
e65b1a78
MR
1312018-02-05 Maciej W. Rozycki <macro@mips.com>
132
133 * elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to
134 initialize `hi_reloc'.
135
2d6dda71
MR
1362018-02-05 Maciej W. Rozycki <macro@mips.com>
137
138 * elfxx-mips.c (_bfd_mips_elf_section_processing): For
139 SHT_MIPS_REGINFO sections don't assert the correct size and
140 report an error instead.
141
75506100
MR
1422018-02-05 Maciej W. Rozycki <macro@mips.com>
143
144 * elf.c (_bfd_elf_write_object_contents): Propagate a failure
145 status from `->elf_backend_section_processing'.
146
7f02625e
JW
1472018-02-02 Jim Wilson <jimw@sifive.com>
148
149 PR ld/22756
150 * elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info.
151 If link_info->wrap_hash, check for a duplicate symbol and ignore.
152 (_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le):
153 Pass new argument to riscv_relax_delete_bytes.
154 (_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise. Remove
155 ATTRIBUTE_UNUSED from link_info parameter.
156
d830549d
AM
1572018-02-02 Alan Modra <amodra@gmail.com>
158
159 * elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops
160 emitted for toc sequence optimization. Set and use "howto" later.
161
e99955cd
SM
1622018-02-01 Simon Marchi <simon.marchi@ericsson.com>
163
164 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer
165 arithmetic on NULL pointer.
166 * elflink.c (_bfd_elf_archive_symbol_lookup,
167 elf_link_add_archive_symbols): Likewise.
168
bf3077a6
MM
1692018-01-31 Michael Matz <matz@suse.de>
170
171 * elflink.c (bfd_elf_define_start_stop): Fix check of
172 def_dynamic.
173
823143c6
L
1742018-01-31 H.J. Lu <hongjiu.lu@intel.com>
175
176 PR ld/21964
177 * elflink.c (bfd_elf_define_start_stop): Check if __start and
178 __stop symbols are referenced by shared objects.
179
76cb3a89
AM
1802018-01-30 Alan Modra <amodra@gmail.com>
181
182 PR 22758
183 * elf.c (_bfd_elf_map_sections_to_segments): Don't start a new
184 segment when demand paged with lma on the same page. Test this
185 before load/non-load, executable/non-executable,
186 writable/non-writable tests and simplify. Delete bogus relro
187 condition in writable/non-writable test. Delete outdated
188 comment. Formatting.
189
36b8fda5
AM
1902018-01-30 Alan Modra <amodra@gmail.com>
191
192 * elflink.c (bfd_elf_define_start_stop): Make __start and __stop
193 symbols dynamic.
194
eb77f6a4
AM
1952018-01-29 Alan Modra <amodra@gmail.com>
196
197 PR 22741
198 * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
199 range before converting to a symbol table pointer.
200
7d73b4c8
NC
2012018-01-27 Nick Clifton <nickc@redhat.com>
202
203 * po/ru.po: Updated Russian translation.
204
32253bb7
AM
2052018-01-26 Alan Modra <amodra@gmail.com>
206
207 * elflink.c (bfd_elf_define_start_stop): Override symbols when
208 they are defined dynamically.
209
ba21f564
AM
2102018-01-26 Alan Modra <amodra@gmail.com>
211
212 * elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when
213 .branch_lt changes size.
214
38e64b0e
AM
2152018-01-25 Alan Modra <amodra@gmail.com>
216
217 PR 22746
218 * elfcode.h (elf_object_p): Avoid integer overflow.
219
bb363086
EB
2202018-01-25 Eric Botcazou <ebotcazou@adacore.com>
221
222 PR ld/22727
223 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
224 Do a mere lookup of the __tls_get_addr symbol instead of adding it.
225
226 Revert
227 2017-10-19 H.J. Lu <hongjiu.lu@intel.com>
228
229 PR ld/22263
230 * elfxx-sparc.c (sparc_elf_tls_transition): Replace
231 bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
232 bfd_link_executable for TLS check.
233 (_bfd_sparc_elf_check_relocs): Likewise.
234 (allocate_dynrelocs): Likewise.
235 (_bfd_sparc_elf_relocate_section): Likewise.
236
1daf502a
RL
2372018-01-24 Renlin Li <renlin.li@arm.com>
238
239 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for
240 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
241 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
242 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
243 BFD_RELOC_AARCH64_MOVW_PREL_G3.
244 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
245 (_bfd_aarch64_elf_resolve_relocation): Likewise.
246
32247401
RL
2472018-01-24 Renlin Li <renlin.li@arm.com>
248
249 * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0,
250 BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1,
251 BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2,
252 BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3.
253 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for
254 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
255 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
256 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
257 BFD_RELOC_AARCH64_MOVW_PREL_G3.
258 * bfd-in2.h: Regenerate.
259 * libbfd.h: Regenerate.
260
1c5e4ee9
MR
2612018-01-23 Maciej W. Rozycki <macro@mips.com>
262
263 * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale
264 `mips_elf32_section_processing' comment reference.
265
8a1b824a
L
2662018-01-20 H.J. Lu <hongjiu.lu@intel.com>
267
268 PR ld/22721
269 * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the
270 versioned __tls_get_addr symbol.
271
ee3fbc1e
NC
2722018-01-19 Nick Clifton <nickc@redhat.com>
273
274 * po/fr.po: Updated French translation.
275
691d2e9a
AM
2762018-01-18 Alan Modra <amodra@gmail.com>
277
278 * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink.
279 * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align.
280 (ppc64_elf_build_stubs): Likewise.
281
4bfce128
NC
2822018-01-17 Nick Clifton <nickc@redhat.com>
283
284 * po/ru.po: Updated Russian translation.
285 * po/uk/po: Updated Ukranian translation.
286
c75bc4f7
AM
2872018-01-17 Alan Modra <amodra@gmail.com>
288
289 * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning.
290
1be5d8d3
AM
2912018-01-17 Alan Modra <amodra@gmail.com>
292
293 * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier.
294 (CRSETEQ, BEQCTRM): Define.
295 (is_nonpic_glink_stub): Don't check bctr.
296 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
297 (ppc_elf_relax_section): Size speculation barrier.
298 (output_bctr): New function.
299 (write_glink_stub): Use output_bctr.
300 (ppc_elf_relocate_section): Use output_bctr for long branch stub.
301 (ppc_elf_finish_dynamic_symbol): Likewise.
302 (ppc_elf_finish_dynamic_sections): Use output_bctr.
303 * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps.
304 * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define.
305 (GLINK_PLTRESOLVE_SIZE): Size speculation barrier.
306 (size_global_entry_stubs): Handle speculation barrier sizing.
307 (plt_stub_size): Likewise.
308 (output_bctr): New function.
309 (build_plt_stub, build_tls_get_addr_stub): Output speculation
310 barrier.
311 (ppc_build_one_stub): Likewise for ppc_stub_plt_branch.
312 (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch.
313 (build_global_entry_stubs): Output speculation barrier.
314 (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub.
315 * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps.
316
9e390558
AM
3172018-01-17 Alan Modra <amodra@gmail.com>
318
319 * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle
320 __tls_get_addr_opt, and alignment sizing.
321 (TLS_GET_ADDR_GLINK_SIZE): Delete.
322 (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE.
323 (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6,
324 or 8 insns.
325 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
326 (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE.
327 (ppc_elf_size_dynamic_sections): Likewise. Size branch table
328 by PLT reloc count.
329 (write_glink_stub): Handle __tls_get_addr_opt stub.
330 Pad out to size given by GLINK_ENTRY_SIZE.
331 (ppc_elf_relocate_section): Adjust write_glink_stub call.
332 (ppc_elf_finish_dynamic_symbol): Likewise.
333 (ppc_elf_finish_dynamic_sections): Write PLTresolve without using
334 insn array since so many need rewriting.
335 * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align.
336 * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from
337 GLINK_CALL_STUB_SIZE. Add htab param and evaluate to size without
338 nops. Adjust all uses.
339 (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE
340 in glink_vma calculation.
341 (struct ppc_link_hash_table): Add global_entry section pointer.
342 (create_linkage_sections): Create separate section for global
343 entry stubs.
344 (PPC_LO, PPC_HI, PPC_HA): Move earlier.
345 (size_global_entry_stubs): Handle sizing for aligned stubs.
346 (ppc64_elf_size_dynamic_sections): Handle global_entry alloc,
347 and don't stash end of glink branch table in rawsize.
348 (ppc_build_one_stub): Rewrite stub size calculations.
349 (build_global_entry_stubs): Use new section.
350 (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops.
351 Build lazy link stubs out to end of section. Build global entry
352 stubs in new section.
353
616dcb87
NC
3542018-01-15 Nick Clifton <nickc@redhat.com>
355
356 * po/uk.po: Updated Ukranian translation.
357
3957a496
NC
3582018-01-13 Nick Clifton <nickc@redhat.com>
359
360 * po/bfd.pot: Regenerated.
361
769c7ea5
NC
3622018-01-13 Nick Clifton <nickc@redhat.com>
363
364 * version.m4: Bump version to 2.30.51
365 * configure: Regenerate.
366
faf766e3
NC
3672018-01-13 Nick Clifton <nickc@redhat.com>
368
369 2.30 branch created.
370
564e11c9
JW
3712018-01-12 Jens Widell <jl@opera.com>
372
373 * elf.c (setup_group): Optimize search for group by remembering
374 last found group and restarting search at that index.
375 * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field.
376
a78eea16
AM
3772018-01-12 Gunther Nikl <gnikl@users.sourceforge.net>
378
379 * aoutx.h (aout_link_check_ar_symbols): Remove default and handle
380 bfd_link_common_skip_none in switch.
381
87e79a65
AM
3822018-01-12 Alan Modra <amodra@gmail.com>
383
384 PR ld/22649
385 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic
386 references on forced local symbols.
387
58807c48
VI
3882018-01-12 Vlad Ivanov <vlad@ivanov.email>
389
390 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
391 .reginfo section has wrong size.
392
2888249f
L
3932018-01-11 H.J. Lu <hongjiu.lu@intel.com>
394
395 PR ld/22393
396 * elf.c (_bfd_elf_map_sections_to_segments): When generating
397 separate code and read-only data LOAD segments, create a new
398 LOAD segment if the previous section contains text and the
399 current section doesn't or vice versa. Don't put a writable
400 section in a read-only segment if there is a RELRO segment.
401
d664fd41
L
4022018-01-11 H.J. Lu <hongjiu.lu@intel.com>
403
404 PR ld/22649
405 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic
406 references on forced local symbols.
407
8b6f4cd3
L
4082018-01-11 H.J. Lu <hongjiu.lu@intel.com>
409
410 PR ld/22677
411 * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY,
412 INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section.
413
6cef73f9
KLC
4142017-09-27 Kuan-Lin Chen <kuanlinchentw@gmail.com>
415
416 PR 22662
417 * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error.
418
ddb2bbcf
JB
4192018-01-03 John Baldwin <jhb@FreeBSD.org>
420
421 * elf.c (elfcore_grok_freebsd_note): Handle
422 NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and
423 NT_FREEBSD_PROCSTAT_VMMAP.
424
219d1afa
AM
4252018-01-03 Alan Modra <amodra@gmail.com>
426
427 Update year range in copyright notice of all files.
428
1e563868 429For older changes see ChangeLog-2017
3499769a 430\f
1e563868 431Copyright (C) 2018 Free Software Foundation, Inc.
3499769a
AM
432
433Copying and distribution of this file, with or without modification,
434are permitted in any medium without royalty provided the copyright
435notice and this notice are preserved.
436
437Local Variables:
438mode: change-log
439left-margin: 8
440fill-column: 74
441version-control: never
442End:
This page took 0.174331 seconds and 4 git commands to generate.