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