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