PR ld/24709 [arm] linker crash and assertion failure with CMSE
[external/binutils.git] / bfd / ChangeLog
1 2019-07-02  Christophe Lyon  <christophe.lyon@linaro.org>
2
3         * bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
4         (elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
5         for CMSE stubs.
6         (arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
7
8 2019-07-02  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
9
10         * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Mark debug
11         sections when .text section contain secure entry functions
12         is marked.
13
14 2019-07-01  Nick Clifton  <nickc@redhat.com>
15
16         PR 23839
17         * elf32-arm.c (elf32_arm_update_relocs): Do not include the
18         section VMA in the offset used to update exidx relocs.
19
20 2019-06-28  Nick Clifton  <nickc@redhat.com>
21
22         PR 24708
23         * elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
24         large version reference section.
25         * compress.c (bfd_get_full_section_contents): Check for an
26         uncompressed section whose size is larger than the file size.
27
28 2019-06-28  Alan Modra  <amodra@gmail.com>
29
30         * format.c (bfd_check_format_matches): Don't match plugin target
31         if another target matches.  Expand comment.
32         * targets.c (_bfd_target_vector): Move plugin_vec after all other
33         non-corefile targets, outside !SELECT_VECS.
34         * config.bfd: Don't handle targ=plugin here.
35         * configure.ac: Don't add plugin to enable_targets or handle in
36         target loop setting selvecs and other target vars.
37         * configure: Regenerate.
38
39 2019-06-26  Nick Clifton  <nickc@redhat.com>
40
41         PR 24703
42         * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
43         messages for failures.
44         * mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
45         if returning an error value.
46
47 2019-06-25  Jan Beulich  <jbeulich@suse.com>
48
49         * elf-properties.c (elf_find_and_remove_property): Rename last
50         parameter. Mention it in comment.
51
52 2019-06-24  Ilia Diachkov  <ilia.diachkov@optimitech.com>
53
54         * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
55         SEC_MERGE or SEC_CODE flags are set.
56         (_bfd_riscv_relax_section): New local symtype.  Set sym_sec and
57         symtype consistently.  Don't include sec_addr (sym_sec) in symval.
58         Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
59         Add sec_addr (sym_sec) after handling merge sections.
60
61 2019-06-24  H.J. Lu  <hongjiu.lu@intel.com>
62
63         PR ld/24721
64         * elf-properties.c (elf_merge_gnu_property_list): Remove the
65         property after reporting property removal.
66
67 2019-06-23  Alan Modra  <amodra@gmail.com>
68
69         PR 24704
70         * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
71         (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
72         Reduce range of offsets allowed for other GOT relocs.
73
74 2019-06-23  Alan Modra  <amodra@gmail.com>
75
76         PR 24689
77         * elfcode.h (elf_object_p): Warning fix.
78
79 2019-06-21  Alan Modra  <amodra@gmail.com>
80
81         PR 24689
82         * elfcode.h (elf_object_p): Check type of e_shstrndx section.
83
84 2019-06-19  Alan Modra  <amodra@gmail.com>
85
86         PR 24697
87         * elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
88         R_PPC_EMB_RELSDA.  Mask low bit of R_PPC_EMB_SDA21 r_offset.
89
90 2019-06-19  Alan Modra  <amodra@gmail.com>
91
92         * elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
93         functions that require r2 valid to use local entry.
94         (ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.
95
96 2019-06-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
97
98         * elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
99         (elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
100         with elfNN_aarch64_allocate_local_dynrelocs.
101
102 2019-06-14  Szabolcs Nagy  <szabolcs.nagy@arm.com>
103
104         * elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
105
106 2019-06-14  Alan Modra  <amodra@gmail.com>
107
108         * Makefile.in: Regenerate.
109         * configure: Regenerate.
110
111 2019-06-14  Alan Modra  <amodra@gmail.com>
112
113         * elf64-ppc.c: Fix comments involving paddi.
114
115 2019-06-12  Adam Lackorzymski  <adam@os.inf.tu-dresden.de>
116
117         PR 24643
118         * elf32-arm.c (arm_elf_find_function): Fail if the symol table is
119         absent, or the bfd is not in the ELF formart.
120         * elfnn-aarch64.c (aarch64_elf_find_function): Likewise.
121
122 2019-06-10  Christos Zoulas  <christos@zoulas.com>
123
124         PR 24650
125         * elf.c (elfcore_make_auxv_note_section): New function.
126         (elfcore_grok_note): Use it.
127         (elfcore_grok_freebsd_note): Likewise.
128         (elfcore_grok_openbsd_note): Likewise.
129         (elfcore_grok_netbsd_note): Likewise.  Plus add support for
130         NT_NETBSDCORE_AUXV notes.
131
132 2019-06-06  Sudakshina Das  <sudi.das@arm.com>
133
134         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Set
135         alignment of the new gnu property section.
136
137 2019-06-06  Sudakshina Das  <sudi.das@arm.com>
138
139         * bfd-in.h: Change comment.
140         * bfd-in2.h: Regenerate.
141         * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update warning.
142         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties):
143         Likwise.
144
145 2019-05-28  Faraz Shahbazker  <fshahbazker@wavecomp.com>
146
147         * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
148         Remove overflow check.
149
150 2019-05-28  Alan Modra  <amodra@gmail.com>
151
152         PR 24596
153         * cofflink.c (coff_link_check_archive_element): Don't assume
154         element is a coff object file after calling add_archive_element.
155
156 2019-05-28  Alan Modra  <amodra@gmail.com>
157
158         PR 24596
159         * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Don't
160         attempt to set sh_entsize for excluded PLT section.
161
162 2019-05-28  Alan Modra  <amodra@gmail.com>
163
164         PR 24596
165         * elf64-alpha.c (elf64_alpha_relocate_section): Don't attempt
166         to emit R_ALPHA_GOTTPREL in PIEs, for which no space is
167         allocated in alpha_dynamic_entries_for_reloc.
168
169 2019-05-28  Alan Modra  <amodra@gmail.com>
170
171         PR 24596
172         * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Don't segfault
173         on NULL output_section.
174         * elflink.c (elf_final_link_free): Don't free -1 symshndxbuf.
175
176 2019-05-28  Alan Modra  <amodra@gmail.com>
177
178         PR 24596
179         * elf32-m68k.c (elf_m68k_get_got_entry): Don't create a new
180         entry when MUST_FIND.  Abort when MUST_FIND not found.
181         (elf_m68k_get_bfd2got_entry): Likewise.
182         (elf_m68k_relocate_section): Remove now useless assert.
183
184 2019-05-28  Alan Modra  <amodra@gmail.com>
185
186         PR 24596
187         * elf64-hppa.c (elf64_hppa_finalize_dynreloc): Get the output bfd
188         from bfd_link_info, not an output section owner.
189         (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd): Likewise.
190         (elf_hppa_final_link_relocate): Likewise.
191
192 2019-05-28  Alan Modra  <amodra@gmail.com>
193
194         PR 24596
195         * aout-tic30.c (MY_bfd_final_link): Don't segfault on missing
196         create_object_symbols_section, obj_textsec, obj_datasec or
197         obj_bsssec.  Fix other errors in placement.
198         * config.bfd: Obsolete tic30-aout.
199
200 2019-05-28  Alan Modra  <amodra@gmail.com>
201
202         PR 24596
203         * dwarf2.c (save_section_vma, section_vma_same): Check for NULL
204         end of section list as well as section_count.
205         * xcofflink.c (xcoff_link_add_symbols): Fix temporarily changed
206         section list before returning error.
207
208 2019-05-27  Alan Modra  <amodra@gmail.com>
209
210         * elf.c (bfd_elf_set_group_contents): Exit on zero size section.
211
212 2019-05-27  Alan Modra  <amodra@gmail.com>
213
214         PR 24596
215         * linker.c (_bfd_generic_link_output_symbols): Heed BSF_KEEP.
216
217 2019-05-24  Szabolcs Nagy  <szabolcs.nagy@arm.com>
218
219         * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): New function.
220         (struct elf_aarch64_link_hash_table): Add variant_pcs member.
221         (elfNN_aarch64_allocate_dynrelocs): Update variant_pcs.
222         (elfNN_aarch64_size_dynamic_sections): Add DT_AARCH64_VARIANT_PCS.
223         (elf_backend_merge_symbol_attribute): Define.
224
225 2019-05-24  Alan Modra  <amodra@gmail.com>
226
227         * po/SRC-POTFILES.in: Regenerate.
228
229 2019-05-24  Alan Modra  <amodra@gmail.com>
230
231         * elf64-ppc.c: Comment on powerxx _notoc stub variants.
232         (LI_R11_0, LIS_R11, ORI_R11_R11_0, SLDI_R11_R11_34): Define.
233         (PADDI_R12_PC, PLD_R12_PC, D34, HA34): Define.
234         (struct ppc_link_hash_table): Add powerxx_stubs.
235         (ppc64_elf_check_relocs): Set powerxx_stubs.
236         (build_powerxx_offset, size_powerxx_offset),
237         (num_relocs_for_powerxx_offset),
238         (emit_relocs_for_powerxx_offset): New functions.
239         (plt_stub_size): Size powerxx stubs.
240         (ppc_build_one_stub): Emit powerxx stubs.
241         (ppc_size_one_stub): Size powerxx stubs.  Omit .eh_frame for
242         powerxx stubs.
243
244 2019-05-24  Alan Modra  <amodra@gmail.com>
245
246         * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
247         R_PPC64_GOT_PCREL34.
248         (xlate_pcrel_opt): New function.
249         (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
250         (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
251         for R_PPC64_GOT_PCREL34.  Implement R_PPC64_PCREL_OPT optimisation.
252
253 2019-05-24  Alan Modra  <amodra@gmail.com>
254
255         * reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
256         (BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
257         (BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),
258         (BFD_RELOC_PPC64_PLT_PCREL34),
259         (BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34),
260         (BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34),
261         (BFD_RELOC_PPC64_REL16_HIGHER34, BFD_RELOC_PPC64_REL16_HIGHERA34),
262         (BFD_RELOC_PPC64_REL16_HIGHEST34, BFD_RELOC_PPC64_REL16_HIGHESTA34),
263         (BFD_RELOC_PPC64_D28, BFD_RELOC_PPC64_PCREL28): New reloc enums.
264         * elf64-ppc.c (PNOP): Define.
265         (ppc64_elf_howto_raw): Add reloc howtos for new relocations.
266         (ppc64_elf_reloc_type_lookup): Translate new bfd reloc numbers.
267         (ppc64_elf_ha_reloc): Adjust addend for highera34 and highesta34
268         relocs.
269         (ppc64_elf_prefix_reloc): New function.
270         (struct ppc_link_hash_table): Add notoc_plt.
271         (is_branch_reloc): Add R_PPC64_PLTCALL_NOTOC.
272         (is_plt_seq_reloc): Add R_PPC64_PLT_PCREL34,
273         R_PPC64_PLT_PCREL34_NOTOC, and R_PPC64_PLTSEQ_NOTOC.
274         (ppc64_elf_check_relocs): Handle pcrel got and plt relocs.  Set
275         has_pltcall for section on seeing R_PPC64_PLTCALL_NOTOC.  Handle
276         possible need for dynamic relocs on non-pcrel powerxx relocs.
277         (dec_dynrel_count): Handle non-pcrel powerxx relocs.
278         (ppc64_elf_inline_plt): Handle R_PPC64_PLTCALL_NOTOC.
279         (toc_adjusting_stub_needed): Likewise.
280         (ppc64_elf_tls_optimize): Handle R_PPC64_PLTSEQ_NOTOC.
281         (ppc64_elf_relocate_section): Handle new powerxx relocs.
282         * bfd-in2.h: Regenerate.
283         * libbfd.h: Regenerate.
284
285 2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>
286
287         * config.bfd (targ_cpu): Process bpf-*-none only if BFD64.
288         * configure.ac: Set target_size=64 for bpf_elf64_le_vec and
289         bpf_elf64_be_vec.
290         * configure: Regenerate.
291
292 2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>
293
294         * configure: Regenerated.
295         * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
296         (ALL_MACHINES_CFILES): Add cpu-bpf.c.
297         (BFD64_BACKENDS): Add elf64-bpf.lo.
298         (BFD64_BACKENDS_CFILES): Add elf64-bpf.c.
299         * Makefile.in (SOURCE_HFILES): Regenerate.
300         * config.bfd (targ_cpu): Handle bpf-*-* targets.
301         * cpu-bpf.c: New file.
302         * elf64-bpf.c: Likewise.
303         * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and
304         bpf_elf64_le_vec.
305         * archures.c: Define architecture bfd_arch_bpf and machine
306         bfd_arch_bpf.
307         * reloc.c: Define BFD relocations used by the BPF target.
308         * bfd-in2.h: Regenerated.
309         * libbfd.h: Likewise.
310
311 2019-05-22  Alan Modra  <amodra@gmail.com>
312
313         * elf32-arm.c (arm_allocate_glue_section_space): Clear section
314         contents.
315
316 2019-05-22  Alan Modra  <amodra@gmail.com>
317
318         * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
319         processing on "size error in section".
320
321 2019-05-22  Alan Modra  <amodra@gmail.com>
322
323         * som.c (som_bfd_free_cached_info): Call
324         _bfd_generic_close_and_cleanup.
325
326 2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>
327
328         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Generate error
329         for TLS_TPREL_HI16(/LO16) relocations in shared library.
330
331 2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>
332
333         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer
334         checks.  Search the RELA table for n64 relocations.
335
336 2019-05-21  Matthew Fortune  <matthew.fortune@mips.com>
337             Faraz Shahbazker  <fshahbazker@wavecomp.com>
338
339         * elfxx-mips.c (LA25_BC): New macro.
340         (mips_elf_link_hash_table)<compact_branches>: New field.
341         (STUB_JALRC): New macro.
342         (mipsr6_o32_exec_plt0_entry_compact): New array.
343         (mipsr6_n32_exec_plt0_entry_compact): Likewise.
344         (mipsr6_n64_exec_plt0_entry_compact): Likewise.
345         (mipsr6_exec_plt_entry_compact): Likewise.
346         (mips_elf_create_la25_stub): Use BC instead of J for stubs
347         when compact_branches is true.
348         (_bfd_mips_elf_finish_dynamic_symbol): Choose the compact
349         PLT for MIPSR6 with compact_branches.  Do not reorder the
350         compact branches PLT.  Switch the lazy stub for MIPSR6
351         with compact_branches to use JALRC.
352         (mips_finish_exec_plt): Choose the compact PLT0 for MIPSR6
353         when compact_branches is true.
354         (_bfd_mips_elf_compact_branches): New function.
355         * elfxx-mips.h (_bfd_mips_elf_compact_branches): New prototype.
356
357 2019-05-21  Tamar Christina  <tamar.christina@arm.com>
358
359         PR ld/24373
360         * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
361         Fix print formatter.
362
363 2019-05-21  Andre Vieira  <andre.simoesdiasvieira@arm.com>
364
365         PR 24460
366         * elf32-arm.c (get_value_helper): Remove.
367         (elf32_arm_final_link_relocate): Fix branch future relocations.
368
369 2019-05-21  Tamar Christina  <tamar.christina@arm.com>
370
371         PR ld/24373
372         * bfd-in.h (enum erratum_84319_opts): New
373         (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
374         int to enum erratum_84319_opts.
375         * bfd-in2.h: Regenerate.
376         * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
377         fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
378         (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
379         (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
380         (_bfd_aarch64_resize_stubs): Amend comment.
381         (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
382         requested.
383         (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
384         (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
385         erratum workaround.
386         (clear_erratum_843419_entry): Update erratum conditional.
387
388 2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
389
390         PR ld/24571
391         * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
392         when computing distance_short_enough.
393
394 2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
395
396         PR ld/24564
397         * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
398         Wrap around even if distance equals avr_pc_wrap_around.
399
400 2019-05-20  Nick Clifton  <nickc@redhat.com>
401
402         * po/fr.po: Updated French translation.
403
404 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
405
406         * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
407
408 2019-05-16  Alan Modra  <amodra@gmail.com>
409
410         * elf32-arm.c (elf32_arm_write_section): Revert last change.
411
412 2019-05-15  Alan Modra  <amodra@gmail.com>
413
414         * elf32-arm.c (elf32_arm_write_section): Don't leave
415         error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
416         unitialised section contents.
417
418 2019-05-14  Jamey Hicks  <jamey.hicks@gmail.com>
419
420         PR 19921
421         * verilog.c: (VerilogDataWidth): New variable.
422         (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
423
424 2019-05-08  Nick Clifton  <nickc@redhat.com>
425
426         PR 24523
427         * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
428         rather than FALSE if encountering a non-ELF file.
429
430 2019-05-06  Alan Modra  <amodra@gmail.com>
431
432         * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
433
434 2019-05-06  Alan Modra  <amodra@gmail.com>
435
436         * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
437         (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
438         Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
439         * libbfd.h: Regenerate.
440         * bfd-in2.h: Regenerate.
441
442 2019-05-04  Alan Modra  <amodra@gmail.com>
443
444         PR 24511
445         * syms.c (coff_section_type): Only allow '.', '$' and numeric
446         following the standard section names.
447         (bfd_decode_symclass): Prioritize section flag tests in
448         decode_section_type before name tests in coff_section_type.
449         * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
450         and fake_common_section using BFD_FAKE_SECTION.  Use "fake" as
451         their names and choose standard .text section flags for
452         fake_section.
453
454 2019-05-02  Nick Clifton  <nickc@redhat.com>
455
456         PR 24493
457         * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
458         .gnu.debugaltlink sections as debugging sections.
459
460 2019-04-30  Alan Modra  <amodra@gmail.com>
461
462         * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
463         (struct _ppc64_elf_section_data): Likewise.
464         (ppc64_elf_check_relocs): Set above fields.
465         (ppc64_elf_edit_toc): Add a pass over GOT relocs.
466         (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
467         when possible.
468
469 2019-04-26  H.J. Lu  <hongjiu.lu@intel.com>
470
471         PR ld/24486
472         * elflink.c (elf_link_output_extsym): Don't complain undefined
473         weak dynamic reference.
474
475 2019-04-25  Sudakshina Das  <sudi.das@arm.com>
476
477         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
478         (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
479         (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
480         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
481         (elfNN_aarch64_small_plt0_pac_entry): Remove.
482         (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
483         (elfNN_aarch64_small_plt0_bti_entry): Update.
484         (elfNN_aarch64_small_plt_bti_entry): Update.
485         (elfNN_aarch64_small_plt_pac_entry): Update.
486         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
487         (setup_plt_values): Setup new entries.
488         (elfNN_aarch64_finish_dynamic_sections): Remove size change.
489         (elfNN_aarch64_plt_sym_val): Likewise.
490
491 2019-04-22  Jim Wilson  <jimw@sifive.com>
492
493         * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
494
495 2019-04-19  Alan Modra  <amodra@gmail.com>
496
497         * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
498
499 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
500
501         * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
502         building shared object.
503         * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
504
505 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
506
507         PR ld/24458
508         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
509         linker_def.
510
511 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
512
513         * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
514         relocation.
515         * bfd-in2.h: Regenerate.
516         * libbfd.h: Likewise.
517
518 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
519
520         * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
521         * bfd-in2.h: Regenerated.
522         * libbfd.h: Regenerated.
523
524 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
525
526         * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
527         * bfd-in2.h: Regenerated.
528         * libbfd.h: Likewise.
529
530 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
531
532         * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
533         * bfd-in2.h: Regenerated.
534         * libbfd.h: Regenerated.
535         * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
536         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
537         and R_ARM_THM_BF12 together.
538         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
539
540 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
541
542         * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
543         * libbfd.h: Regenerated.
544         * bfd-in2.h: Regenerated.
545         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
546         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
547         and R_ARM_THM_BF18 together.
548         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
549
550 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
551
552         * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
553         * bfd-in2.h: Regenerated.
554         * libbfd.h: Regenerated.
555         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
556         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
557         and R_ARM_THM_BF16 together.
558         (get_value_helper): New reloc helper.
559         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
560
561 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
562
563         * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
564         * bfd-in2.h: Regenerate.
565         * libbfd.h: Regenerate.
566
567 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
568
569         * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
570         * bfd-in2.h: Regenerate.
571         * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
572         * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
573         and update assert.
574         (using_thumb2): Likewise.
575         (using_thumb2_bl): Update assert.
576         (arch_has_arm_nop): Likewise.
577         (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
578         (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
579
580 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
581
582         * elf-linker-x86.h (elf_x86_cet_report): New.
583         (elf_linker_x86_params): Add cet_report.
584         * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
585         missing IBT and SHSTK properties if needed.
586
587 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
588
589         PR ld/24436
590         * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
591         "h != NULL".  Don't check "h != NULL" before calling.
592         bfd_elf_gc_record_vtentry.
593         * elf32-arm.c (elf32_arm_check_relocs): Likewise.
594         * elf32-bfin.c (bfin_check_relocs): Likewise.
595         * elf32-cris.c (cris_elf_check_relocs): Likewise.
596         * elf32-csky.c (csky_elf_check_relocs): Likewise.
597         * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
598         * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
599         * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
600         * elf32-frv.c (elf32_frv_check_relocs): Likewise.
601         * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
602         * elf32-i386.c (elf_i386_check_relocs): Likewise.
603         * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
604         * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
605         * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
606         * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
607         * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
608         * elf32-metag.c (elf_metag_check_relocs): Likewise.
609         * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
610         * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
611         * elf32-s390.c (elf_s390_check_relocs): Likewise.
612         * elf32-sh.c (sh_elf_check_relocs): Likewise.
613         * elf32-v850.c (v850_elf_check_relocs): Likewise.
614         * elf32-vax.c (elf_vax_check_relocs): Likewise.
615         * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
616         * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
617         * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
618         * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
619         * elf64-s390.c (elf_s390_check_relocs): Likewise.
620         * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
621         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
622         * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
623         * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
624         VTENTRY entry.
625
626 2019-04-11  Alan Modra  <amodra@gmail.com>
627
628         PR 24435
629         * elflink.c (elf_link_add_object_symbols): Don't read partial
630         dynamic entries from fuzzed objects.
631
632 2019-04-11  Tamar Christina  <tamar.christina@arm.com>
633
634         PR ld/24302
635         * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
636         DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
637         (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
638
639 2019-04-10  Michael Forney  <mforney@mforney.org>
640
641         PR 24427
642         * doc/chew.c (free_words): Correctly free "push_text" strings.
643
644 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
645
646         * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
647
648 2019-04-08  Alan Modra  <amodra@gmail.com>
649
650         * configure.ac (elfxx_x86): Define and use.
651         * configure: Regenerate.
652
653 2019-04-06  H.J. Lu  <hongjiu.lu@intel.com>
654
655         * elf-linker-x86.h: New file.
656         * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
657         to get x86-specific linker options.
658         * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
659         (elf_x86_64_check_relocs): Likewise.
660         (elf_x86_64_relocate_section): Likewise.
661         (elf_x86_64_link_setup_gnu_properties): Likewise.
662         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
663         (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
664         (_bfd_elf_linker_x86_set_options): New function.
665         * elfxx-x86.h: Include "elf-linker-x86.h".
666         (elf_x86_link_hash_table): Add params.
667
668 2019-04-03  Alan Modra  <amodra@gmail.com>
669
670         * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
671         * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
672         * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
673         * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
674         * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
675         * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
676
677 2019-04-02  Jim Wilson  <jimw@sifive.com>
678
679         PR 24389
680         * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
681         ELF header flags to after check for ELF object file.  Loop through
682         sections looking for code sections, if none, then skip ABI checks.
683
684 2019-03-30  Andrew Waterman  <andrew@sifive.com>
685
686         * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
687         rd == X_RA case.
688
689 2019-03-29  Max Filippov  <jcmvbkbc@gmail.com>
690
691         * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
692         info->export_dynamic to the conditional.
693
694 2019-03-28  Alan Modra  <amodra@gmail.com>
695
696         PR 24392
697         * configure.ac: Invoke AC_CHECK_SIZEOF(int).
698         * configure: Regenerate.
699         * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
700         workaround with SIZEOF_LONG vs. SIZEOF_INT check.
701         * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
702         * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
703         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
704
705 2019-03-21  Jim Wilson  <jimw@sifive.com>
706
707         PR 24365
708         * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
709         verify sym non-NULL before using.  Add identical check using h.
710
711 2019-03-21  Sudakshina Das  <sudi.das@arm.com>
712
713         * elf-bfd.h (struct elf_backend_data): Add argument to
714         merge_gnu_properties.
715         * elf-properties.c (elf_merge_gnu_properties): Add argument to
716         itself and while calling bed->merge_gnu_properties.
717         (elf_merge_gnu_property_list): Update the calls for
718         elf_merge_gnu_properties.
719         * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
720         of --force-bti warning and add argument.
721         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
722         warning.
723         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
724         * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
725         declaration.
726
727 2019-03-20  Sudakshina Das  <sudi.das@arm.com>
728
729         * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
730         * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
731         (elf_backend_fixup_gnu_properties): Define for AArch64.
732
733 2019-03-18  Alan Modra  <amodra@gmail.com>
734
735         PR 24355
736         * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
737         for local iplt syms with ent->plt.offset == -1.  Remove ineffective
738         attempt at writing glink stubs only once.
739
740 2019-03-16  Alan Modra  <amodra@gmail.com>
741
742         PR 24337
743         * elf.c (_bfd_elf_rela_local_sym): Revert last change.
744         (_bfd_elf_rel_local_sym): Likewise.
745         * elflink.c (elf_link_input_bfd): Use bfd_und_section for
746         section of symbols with unrecognized shndx.
747
748 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
749
750         PR ld/24267
751         * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
752         section.
753         * cofflink.c (coff_link_add_symbols): Check for symbols defined
754         in discarded section.
755
756 2019-03-15  Alan Modra  <amodra@gmail.com>
757
758         PR 24339
759         * elflink.c (elf_link_add_object_symbols): Bail out on a local
760         symbol after globals if elf_bad_symtab is not set.
761
762 2019-03-15  Alan Modra  <amodra@gmail.com>
763
764         PR 24337
765         * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
766         (_bfd_elf_rel_local_sym): Likewise.
767
768 2019-03-15  Alan Modra  <amodra@gmail.com>
769
770         PR 24336
771         * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
772         object files with sh_size not a multiple of sh_entsize.
773
774 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
775
776         PR ld/24338
777         * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
778         input with bad relocation.
779
780 22019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
781
782         * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
783
784 2019-03-14  Nick Clifton  <nickc@redhat.com>
785
786         PR 24334
787         * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
788         (save_section_vma): Initialise field to the number of entries in
789         the sec_vma table.
790         (section_vma_same): Check that the number of entries in the
791         sec_vma table matches the number of sections in the bfd.
792
793 2019-03-14  Nick Clifton  <nickc@redhat.com>
794
795         PR 24333
796         * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
797         section owner pointer when adding the default symbol.
798
799 2019-03-14  Nick Clifton  <nickc@redhat.com>
800
801         PR 24332
802         * elflink.c (elf_link_add_object_symbols): Add new local variable
803         extversym_end.  Initialise it to point to the end of the version
804         symbol table, if present.  Check it when initialising and updating
805         the ever pointer.
806
807 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
808
809         * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
810         (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
811         (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
812         (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
813         and PLT_PAC_PLT.
814         (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
815         (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
816         (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
817
818 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
819             Szabolcs Nagy  <szabolcs.nagy@arm.com>
820
821         * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
822         (aarch64_bti_pac_info): New.
823         (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
824         (bfd_elf32_aarch64_set_options): Likewise.
825         * bfd-in2.h: Regenerate
826         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
827         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
828         (elfNN_aarch64_small_plt0_bti_entry): New.
829         (elfNN_aarch64_small_plt_bti_entry): New.
830         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
831         (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
832         (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
833         tlsdesc_plt_entry_size fields.
834         (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
835         (setup_plt_values): New helper function.
836         (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
837         bti enable type.
838         (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
839         fixed macros.
840         (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
841         (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
842         to plt stubs instead of fixed ones and update filling them according
843         to the need for bti.
844         (elfNN_aarch64_init_small_plt0_entry): Likewise.
845         (elfNN_aarch64_finish_dynamic_sections): Likewise.
846         (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
847         (elfNN_aarch64_plt_sym_val): Update size accordingly.
848         (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
849         is set.
850         (bfd_elfNN_get_synthetic_symtab): Define.
851         (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
852         and mising BTI NOTE SECTION.
853
854
855 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
856
857         * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
858         linker created inputs from merge.
859         * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
860         GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
861         (elfNN_aarch64_link_setup_gnu_properties): New.
862         (elfNN_aarch64_merge_gnu_properties): New.
863         (elf_backend_setup_gnu_properties): Define for AArch64.
864         (elf_backend_merge_gnu_properties): Likewise.
865         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
866         (_bfd_aarch64_elf_parse_gnu_properties): Define.
867         (_bfd_aarch64_elf_merge_gnu_properties): Define.
868         * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
869         (_bfd_aarch64_elf_parse_gnu_properties): Declare.
870         (_bfd_aarch64_elf_merge_gnu_properties): Declare.
871         (elf_backend_parse_gnu_properties): Define for AArch64.
872
873 2019-03-13  H.J. Lu  <hongjiu.lu@intel.com>
874
875         PR ld/24322
876         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
877         merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
878
879 2019-03-12  Alan Modra  <amodra@gmail.com>
880
881         * coffcode.h (buy_and_read): Delete unnecessary forward decl.  Add
882         nmemb parameter.  Use bfd_alloc2.
883         (coff_slurp_line_table): Use bfd_alloc2.  Update buy_and_read calls.
884         Delete assertion.
885         (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
886         (coff_slurp_reloc_table): Use bfd_alloc2.  Update buy_and_read calls.
887         * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
888         doesn't overflow.
889         * elf.c (bfd_section_from_shdr): Use bfd_zalloc2.  Style fix.
890         (assign_section_numbers): Style fix.
891         (swap_out_syms): Use bfd_malloc2.
892         (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
893         overflow.
894         (_bfd_elf_make_empty_symbol): Style fix.
895         (elfobj_grok_stapsdt_note_1): Formatting.
896         * elfcode.h (elf_object_p): Use bfd_alloc2.
897         (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
898         (elf_slurp_symbol_table): Use bfd_zalloc2.
899         (elf_slurp_reloc_table): Use bfd_alloc2.
900         (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
901         * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
902         size calculation doesn't overflow.
903         (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
904         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
905         * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
906
907 2019-03-08  Alan Modra  <amodra@gmail.com>
908
909         PR 24311
910         * merge.c (merge_strings): Return secinfo.  Don't pad section
911         to alignment here.
912         (_bfd_merge_sections): Pad section to alignment here, if input
913         sections contributing to merged output all pad to alignment.
914         Formatting.
915
916 2019-03-06  Nick Clifton  <nickc@redhat.com>
917
918         * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
919         table pointer.
920         * coffgen.c (coff_find_nearest_line_with_names): Do not call
921         _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
922
923 2019-03-01  Andreas Krebbel  <krebbel@linux.ibm.com>
924
925         This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
926         2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
927
928         PR 20113
929         * elf32-s390.c (allocate_dynrelocs): Update comment.
930
931 2019-02-28  Tamar Christina  <tamar.christina@arm.com>
932
933         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
934
935 2019-02-28  Nick Clifton  <nickc@redhat.com>
936
937         PR 24273
938         * elf.c (bfd_elf_string_from_elf_section): Check for a string
939         section that is not NUL terminated.
940
941 2019-02-27  H.J. Lu  <hongjiu.lu@intel.com>
942
943         PR ld/24276
944         * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
945         by linker when checking copy reloc on protected symbol.
946
947 2019-02-24  Alan Modra  <amodra@gmail.com>
948
949         PR 24144
950         * pdp11.c (set_section_contents): Revert 2015-02-24 change.
951
952 2019-02-20  Eric Tsai  <erictsai@cadence.com>
953
954         * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
955         sections between the call site and call destination and adjust
956         call distance by the largest alignment.
957
958 2019-02-20  Alan Hayward  <alan.hayward@arm.com>
959
960         * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
961         * elf.c (elfcore_grok_aarch_pauth): New function.
962         (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
963         (elfcore_write_aarch_pauth): New function.
964         (elfcore_write_register_note): Check for AArch64 pauth section.
965
966 2019-02-20  Alan Modra  <amodra@gmail.com>
967
968         PR 24225
969         * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
970         return value.
971
972 2019-02-20  Michael Roitzsch  <reactorcontrol@icloud.com>
973
974         * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
975         Darwin hosts, not just or1k.
976         * configure: Regenerate.
977
978 2019-02-20  Alan Modra  <amodra@gmail.com>
979
980         PR 24236
981         * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
982         sentinel NUL to string buffer nearer to loop where it is used.
983         Don't go past sentinel when scanning strings, and don't write
984         NUL again.
985         * archive.c (do_slurp_coff_armap): Simplify string handling to
986         archive64.c style.
987
988 2019-02-19  Alan Modra  <amodra@gmail.com>
989
990         PR 24235
991         * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
992         attempting to prevent read past end of section.
993
994 2019-02-18  Alan Modra  <amodra@gmail.com>
995
996         PR 24225
997         * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
998         PRIx64 to generate warning messages.  Print local sym names too.
999
1000 2019-02-09  Vineet Gupta  <vgupta@synopsys.com>
1001
1002         * elf32-arc (INIT_SYM_STRING): Delete.
1003         (FINI_SYM_STRING): Likewise.
1004         (init_str): Likewise.
1005         (fini_str): Likewise.
1006
1007 2019-02-08  Alan Modra  <amodra@gmail.com>
1008
1009         * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
1010         for bss-plt" warning to make it an error.
1011
1012 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
1013
1014         PR ld/18841
1015         * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
1016         reloc_class_ifunc for ifunc symbols.
1017         * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
1018
1019 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
1020
1021         * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
1022         <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
1023
1024 2019-02-07  Nick Clifton  <nickc@redhat.com>
1025
1026         * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
1027         into the definitely obsolete list.
1028
1029 2019-02-05  H.J. Lu  <hongjiu.lu@intel.com>
1030
1031         PR ld/24151
1032         * elf64-x86-64.c (elf_x86_64_need_pic): Check
1033         SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
1034         (elf_x86_64_relocate_section): Move PIC check for PC-relative
1035         relocations to ...
1036         (elf_x86_64_check_relocs): Here.
1037         (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
1038         to check if a symbol is defined in a non-shared object.
1039         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
1040
1041 2019-01-21  Sergio Durigan Junior  <sergiodj@redhat.com>
1042
1043         * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
1044         of 'labs' (and fix GCC warning).
1045
1046 2019-01-25  Nick Clifton  <nickc@redhat.com>
1047
1048         * po/ru.po: Updated Russian translation.
1049
1050 2019-01-23  Nick Clifton  <nickc@redhat.com>
1051
1052         * po/fr.po: Updated French translation.
1053
1054 2019-01-21  Nick Clifton  <nickc@redhat.com>
1055
1056         * po/pt.po: Updated Portuguese translation.
1057         * po/uk.po: Updated Ukranian translation.
1058
1059 2019-01-21  Yuri Chornoivan  <yurchor@ukr.net>
1060
1061         PR 24108
1062         * elf32-nds32.c (nds32_relocate_section): Add space between words
1063         in error message.
1064         * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
1065         error message.
1066         (riscv_i_or_e_p): Likewise.
1067         (riscv_merge_arch_attr_info): Likewise.
1068
1069 2019-01-19  Nick Clifton  <nickc@redhat.com>
1070
1071         * version.m4: Reset to 2.32.51
1072         * configure: Regenerate.
1073         * po/bfd.pot: Regenerate.
1074
1075 2018-06-24  Nick Clifton  <nickc@redhat.com>
1076
1077         2.32 branch created.
1078
1079 2019-01-16  Kito Cheng  <kito@andestech.com>
1080
1081         * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
1082         for OBJ_ATTR_PROC.
1083
1084 2019-01-16  Kito Cheng  <kito@andestech.com>
1085             Nelson Chu  <nelson@andestech.com>
1086
1087         * elfnn-riscv.c (in_subsets): New.
1088         (out_subsets): Likewise.
1089         (merged_subsets): Likewise.
1090         (riscv_std_ext_p): Likewise.
1091         (riscv_non_std_ext_p): Likewise.
1092         (riscv_std_sv_ext_p): Likewise.
1093         (riscv_non_std_sv_ext_p): Likewise.
1094         (riscv_version_mismatch): Likewise.
1095         (riscv_i_or_e_p): Likewise.
1096         (riscv_merge_std_ext): Likewise.
1097         (riscv_merge_non_std_and_sv_ext): Likewise.
1098         (riscv_merge_arch_attr_info): Likewise.
1099         (riscv_merge_attributes): Likewise.
1100         (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
1101
1102         * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
1103         (elf_backend_obj_attrs_vendor): Define.
1104         (elf_backend_obj_attrs_section_type): Likewise.
1105         (elf_backend_obj_attrs_section): Likewise.
1106         (elf_backend_obj_attrs_arg_type): Define as
1107         riscv_elf_obj_attrs_arg_type.
1108         * elfxx-riscv.c (riscv_estimate_digit): New.
1109         (riscv_estimate_arch_strlen1): Likewise.
1110         (riscv_estimate_arch_strlen): Likewise.
1111         (riscv_arch_str1): Likewise.
1112         (riscv_arch_str): Likewise.
1113         * elfxx-riscv.h (riscv_arch_str): Declare.
1114
1115 2019-01-14  John Darrington <john@darrington.wattle.id.au>
1116
1117         * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
1118         * libbfd.h: regen.
1119         * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
1120         source field.  (md_apply_fix): Apply final fix
1121         to BFD_RELOC_S12Z_OPR.
1122         * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
1123
1124 2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
1125
1126         PR 20113
1127         * elf32-s390.c (allocate_dynrelocs): Update comment.
1128
1129 2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>
1130
1131         * warning.m4: Adjust egrep pattern for non-GNU compilers.
1132         * configure: Regenerate.
1133
1134 2019-01-08  Alan Modra  <amodra@gmail.com>
1135
1136         PR 23699
1137         PR 24065
1138         * ihex.c (ihex_write_object_contents): Properly check 32-bit
1139         address range.
1140
1141 2019-01-05  Yoshinori Sato <ysato@users.sourceforge.jp>
1142
1143         * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
1144         * bfd/bfd-in2.h: Regenerate.
1145         * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
1146         * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
1147
1148 2019-01-04  Lifang Xia  <lifang_xia@c-sky.com>
1149
1150         * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
1151         default target, little endian target is more suitable.
1152
1153 2019-01-04  Alan Modra  <amodra@gmail.com>
1154
1155         PR 24061
1156         PR 21786
1157         * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
1158         adjust all callers.
1159         (EQ_VALUE_IN_FIELD): Likewise.
1160         * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
1161
1162 2019-01-01  Alan Modra  <amodra@gmail.com>
1163
1164         Update year range in copyright notice of all files.
1165
1166 For older changes see ChangeLog-2018
1167 \f
1168 Copyright (C) 2019 Free Software Foundation, Inc.
1169
1170 Copying and distribution of this file, with or without modification,
1171 are permitted in any medium without royalty provided the copyright
1172 notice and this notice are preserved.
1173
1174 Local Variables:
1175 mode: change-log
1176 left-margin: 8
1177 fill-column: 74
1178 version-control: never
1179 End: