AArch64: Fix -Werror on build
[external/binutils.git] / bfd / ChangeLog
1 2019-05-21  Tamar Christina  <tamar.christina@arm.com>
2
3         PR ld/24373
4         * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
5         Fix print formatter.
6
7 2019-05-21  Andre Vieira  <andre.simoesdiasvieira@arm.com>
8
9         PR 24460
10         * elf32-arm.c (get_value_helper): Remove.
11         (elf32_arm_final_link_relocate): Fix branch future relocations.
12
13 2019-05-21  Tamar Christina  <tamar.christina@arm.com>
14
15         PR ld/24373
16         * bfd-in.h (enum erratum_84319_opts): New
17         (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
18         int to enum erratum_84319_opts.
19         * bfd-in2.h: Regenerate.
20         * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
21         fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
22         (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
23         (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
24         (_bfd_aarch64_resize_stubs): Amend comment.
25         (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
26         requested.
27         (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
28         (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
29         erratum workaround.
30         (clear_erratum_843419_entry): Update erratum conditional.
31
32 2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
33
34         PR ld/24571
35         * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
36         when computing distance_short_enough.
37
38 2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
39
40         PR ld/24564
41         * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
42         Wrap around even if distance equals avr_pc_wrap_around.
43
44 2019-05-20  Nick Clifton  <nickc@redhat.com>
45
46         * po/fr.po: Updated French translation.
47
48 2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
49
50         * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
51
52 2019-05-16  Alan Modra  <amodra@gmail.com>
53
54         * elf32-arm.c (elf32_arm_write_section): Revert last change.
55
56 2019-05-15  Alan Modra  <amodra@gmail.com>
57
58         * elf32-arm.c (elf32_arm_write_section): Don't leave
59         error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
60         unitialised section contents.
61
62 2019-05-14  Jamey Hicks  <jamey.hicks@gmail.com>
63
64         PR 19921
65         * verilog.c: (VerilogDataWidth): New variable.
66         (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
67
68 2019-05-08  Nick Clifton  <nickc@redhat.com>
69
70         PR 24523
71         * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
72         rather than FALSE if encountering a non-ELF file.
73
74 2019-05-06  Alan Modra  <amodra@gmail.com>
75
76         * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
77
78 2019-05-06  Alan Modra  <amodra@gmail.com>
79
80         * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
81         (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
82         Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
83         * libbfd.h: Regenerate.
84         * bfd-in2.h: Regenerate.
85
86 2019-05-04  Alan Modra  <amodra@gmail.com>
87
88         PR 24511
89         * syms.c (coff_section_type): Only allow '.', '$' and numeric
90         following the standard section names.
91         (bfd_decode_symclass): Prioritize section flag tests in
92         decode_section_type before name tests in coff_section_type.
93         * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
94         and fake_common_section using BFD_FAKE_SECTION.  Use "fake" as
95         their names and choose standard .text section flags for
96         fake_section.
97
98 2019-05-02  Nick Clifton  <nickc@redhat.com>
99
100         PR 24493
101         * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
102         .gnu.debugaltlink sections as debugging sections.
103
104 2019-04-30  Alan Modra  <amodra@gmail.com>
105
106         * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
107         (struct _ppc64_elf_section_data): Likewise.
108         (ppc64_elf_check_relocs): Set above fields.
109         (ppc64_elf_edit_toc): Add a pass over GOT relocs.
110         (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
111         when possible.
112
113 2019-04-26  H.J. Lu  <hongjiu.lu@intel.com>
114
115         PR ld/24486
116         * elflink.c (elf_link_output_extsym): Don't complain undefined
117         weak dynamic reference.
118
119 2019-04-25  Sudakshina Das  <sudi.das@arm.com>
120
121         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
122         (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
123         (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
124         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
125         (elfNN_aarch64_small_plt0_pac_entry): Remove.
126         (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
127         (elfNN_aarch64_small_plt0_bti_entry): Update.
128         (elfNN_aarch64_small_plt_bti_entry): Update.
129         (elfNN_aarch64_small_plt_pac_entry): Update.
130         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
131         (setup_plt_values): Setup new entries.
132         (elfNN_aarch64_finish_dynamic_sections): Remove size change.
133         (elfNN_aarch64_plt_sym_val): Likewise.
134
135 2019-04-22  Jim Wilson  <jimw@sifive.com>
136
137         * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
138
139 2019-04-19  Alan Modra  <amodra@gmail.com>
140
141         * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
142
143 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
144
145         * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
146         building shared object.
147         * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
148
149 2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
150
151         PR ld/24458
152         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
153         linker_def.
154
155 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
156
157         * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
158         relocation.
159         * bfd-in2.h: Regenerate.
160         * libbfd.h: Likewise.
161
162 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
163
164         * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
165         * bfd-in2.h: Regenerated.
166         * libbfd.h: Regenerated.
167
168 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
169
170         * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
171         * bfd-in2.h: Regenerated.
172         * libbfd.h: Likewise.
173
174 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
175
176         * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
177         * bfd-in2.h: Regenerated.
178         * libbfd.h: Regenerated.
179         * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
180         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
181         and R_ARM_THM_BF12 together.
182         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
183
184 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
185
186         * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
187         * libbfd.h: Regenerated.
188         * bfd-in2.h: Regenerated.
189         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
190         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
191         and R_ARM_THM_BF18 together.
192         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
193
194 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
195
196         * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
197         * bfd-in2.h: Regenerated.
198         * libbfd.h: Regenerated.
199         * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
200         (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
201         and R_ARM_THM_BF16 together.
202         (get_value_helper): New reloc helper.
203         (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
204
205 2019-04-15  Sudakshina Das  <sudi.das@arm.com>
206
207         * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
208         * bfd-in2.h: Regenerate.
209         * libbfd.h: Regenerate.
210
211 2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
212
213         * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
214         * bfd-in2.h: Regenerate.
215         * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
216         * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
217         and update assert.
218         (using_thumb2): Likewise.
219         (using_thumb2_bl): Update assert.
220         (arch_has_arm_nop): Likewise.
221         (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
222         (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
223
224 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
225
226         * elf-linker-x86.h (elf_x86_cet_report): New.
227         (elf_linker_x86_params): Add cet_report.
228         * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
229         missing IBT and SHSTK properties if needed.
230
231 2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
232
233         PR ld/24436
234         * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
235         "h != NULL".  Don't check "h != NULL" before calling.
236         bfd_elf_gc_record_vtentry.
237         * elf32-arm.c (elf32_arm_check_relocs): Likewise.
238         * elf32-bfin.c (bfin_check_relocs): Likewise.
239         * elf32-cris.c (cris_elf_check_relocs): Likewise.
240         * elf32-csky.c (csky_elf_check_relocs): Likewise.
241         * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
242         * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
243         * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
244         * elf32-frv.c (elf32_frv_check_relocs): Likewise.
245         * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
246         * elf32-i386.c (elf_i386_check_relocs): Likewise.
247         * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
248         * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
249         * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
250         * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
251         * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
252         * elf32-metag.c (elf_metag_check_relocs): Likewise.
253         * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
254         * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
255         * elf32-s390.c (elf_s390_check_relocs): Likewise.
256         * elf32-sh.c (sh_elf_check_relocs): Likewise.
257         * elf32-v850.c (v850_elf_check_relocs): Likewise.
258         * elf32-vax.c (elf_vax_check_relocs): Likewise.
259         * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
260         * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
261         * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
262         * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
263         * elf64-s390.c (elf_s390_check_relocs): Likewise.
264         * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
265         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
266         * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
267         * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
268         VTENTRY entry.
269
270 2019-04-11  Alan Modra  <amodra@gmail.com>
271
272         PR 24435
273         * elflink.c (elf_link_add_object_symbols): Don't read partial
274         dynamic entries from fuzzed objects.
275
276 2019-04-11  Tamar Christina  <tamar.christina@arm.com>
277
278         PR ld/24302
279         * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
280         DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
281         (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
282
283 2019-04-10  Michael Forney  <mforney@mforney.org>
284
285         PR 24427
286         * doc/chew.c (free_words): Correctly free "push_text" strings.
287
288 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
289
290         * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
291
292 2019-04-08  Alan Modra  <amodra@gmail.com>
293
294         * configure.ac (elfxx_x86): Define and use.
295         * configure: Regenerate.
296
297 2019-04-06  H.J. Lu  <hongjiu.lu@intel.com>
298
299         * elf-linker-x86.h: New file.
300         * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
301         to get x86-specific linker options.
302         * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
303         (elf_x86_64_check_relocs): Likewise.
304         (elf_x86_64_relocate_section): Likewise.
305         (elf_x86_64_link_setup_gnu_properties): Likewise.
306         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
307         (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
308         (_bfd_elf_linker_x86_set_options): New function.
309         * elfxx-x86.h: Include "elf-linker-x86.h".
310         (elf_x86_link_hash_table): Add params.
311
312 2019-04-03  Alan Modra  <amodra@gmail.com>
313
314         * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
315         * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
316         * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
317         * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
318         * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
319         * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
320
321 2019-04-02  Jim Wilson  <jimw@sifive.com>
322
323         PR 24389
324         * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
325         ELF header flags to after check for ELF object file.  Loop through
326         sections looking for code sections, if none, then skip ABI checks.
327
328 2019-03-30  Andrew Waterman  <andrew@sifive.com>
329
330         * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
331         rd == X_RA case.
332
333 2019-03-29  Max Filippov  <jcmvbkbc@gmail.com>
334
335         * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
336         info->export_dynamic to the conditional.
337
338 2019-03-28  Alan Modra  <amodra@gmail.com>
339
340         PR 24392
341         * configure.ac: Invoke AC_CHECK_SIZEOF(int).
342         * configure: Regenerate.
343         * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
344         workaround with SIZEOF_LONG vs. SIZEOF_INT check.
345         * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
346         * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
347         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
348
349 2019-03-21  Jim Wilson  <jimw@sifive.com>
350
351         PR 24365
352         * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
353         verify sym non-NULL before using.  Add identical check using h.
354
355 2019-03-21  Sudakshina Das  <sudi.das@arm.com>
356
357         * elf-bfd.h (struct elf_backend_data): Add argument to
358         merge_gnu_properties.
359         * elf-properties.c (elf_merge_gnu_properties): Add argument to
360         itself and while calling bed->merge_gnu_properties.
361         (elf_merge_gnu_property_list): Update the calls for
362         elf_merge_gnu_properties.
363         * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
364         of --force-bti warning and add argument.
365         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
366         warning.
367         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
368         * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
369         declaration.
370
371 2019-03-20  Sudakshina Das  <sudi.das@arm.com>
372
373         * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
374         * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
375         (elf_backend_fixup_gnu_properties): Define for AArch64.
376
377 2019-03-18  Alan Modra  <amodra@gmail.com>
378
379         PR 24355
380         * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
381         for local iplt syms with ent->plt.offset == -1.  Remove ineffective
382         attempt at writing glink stubs only once.
383
384 2019-03-16  Alan Modra  <amodra@gmail.com>
385
386         PR 24337
387         * elf.c (_bfd_elf_rela_local_sym): Revert last change.
388         (_bfd_elf_rel_local_sym): Likewise.
389         * elflink.c (elf_link_input_bfd): Use bfd_und_section for
390         section of symbols with unrecognized shndx.
391
392 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
393
394         PR ld/24267
395         * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
396         section.
397         * cofflink.c (coff_link_add_symbols): Check for symbols defined
398         in discarded section.
399
400 2019-03-15  Alan Modra  <amodra@gmail.com>
401
402         PR 24339
403         * elflink.c (elf_link_add_object_symbols): Bail out on a local
404         symbol after globals if elf_bad_symtab is not set.
405
406 2019-03-15  Alan Modra  <amodra@gmail.com>
407
408         PR 24337
409         * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
410         (_bfd_elf_rel_local_sym): Likewise.
411
412 2019-03-15  Alan Modra  <amodra@gmail.com>
413
414         PR 24336
415         * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
416         object files with sh_size not a multiple of sh_entsize.
417
418 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
419
420         PR ld/24338
421         * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
422         input with bad relocation.
423
424 22019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
425
426         * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
427
428 2019-03-14  Nick Clifton  <nickc@redhat.com>
429
430         PR 24334
431         * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
432         (save_section_vma): Initialise field to the number of entries in
433         the sec_vma table.
434         (section_vma_same): Check that the number of entries in the
435         sec_vma table matches the number of sections in the bfd.
436
437 2019-03-14  Nick Clifton  <nickc@redhat.com>
438
439         PR 24333
440         * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
441         section owner pointer when adding the default symbol.
442
443 2019-03-14  Nick Clifton  <nickc@redhat.com>
444
445         PR 24332
446         * elflink.c (elf_link_add_object_symbols): Add new local variable
447         extversym_end.  Initialise it to point to the end of the version
448         symbol table, if present.  Check it when initialising and updating
449         the ever pointer.
450
451 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
452
453         * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
454         (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
455         (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
456         (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
457         and PLT_PAC_PLT.
458         (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
459         (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
460         (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
461
462 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
463             Szabolcs Nagy  <szabolcs.nagy@arm.com>
464
465         * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
466         (aarch64_bti_pac_info): New.
467         (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
468         (bfd_elf32_aarch64_set_options): Likewise.
469         * bfd-in2.h: Regenerate
470         * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
471         (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
472         (elfNN_aarch64_small_plt0_bti_entry): New.
473         (elfNN_aarch64_small_plt_bti_entry): New.
474         (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
475         (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
476         (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
477         tlsdesc_plt_entry_size fields.
478         (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
479         (setup_plt_values): New helper function.
480         (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
481         bti enable type.
482         (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
483         fixed macros.
484         (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
485         (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
486         to plt stubs instead of fixed ones and update filling them according
487         to the need for bti.
488         (elfNN_aarch64_init_small_plt0_entry): Likewise.
489         (elfNN_aarch64_finish_dynamic_sections): Likewise.
490         (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
491         (elfNN_aarch64_plt_sym_val): Update size accordingly.
492         (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
493         is set.
494         (bfd_elfNN_get_synthetic_symtab): Define.
495         (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
496         and mising BTI NOTE SECTION.
497
498
499 2019-03-13  Sudakshina Das  <sudi.das@arm.com>
500
501         * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
502         linker created inputs from merge.
503         * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
504         GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
505         (elfNN_aarch64_link_setup_gnu_properties): New.
506         (elfNN_aarch64_merge_gnu_properties): New.
507         (elf_backend_setup_gnu_properties): Define for AArch64.
508         (elf_backend_merge_gnu_properties): Likewise.
509         * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
510         (_bfd_aarch64_elf_parse_gnu_properties): Define.
511         (_bfd_aarch64_elf_merge_gnu_properties): Define.
512         * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
513         (_bfd_aarch64_elf_parse_gnu_properties): Declare.
514         (_bfd_aarch64_elf_merge_gnu_properties): Declare.
515         (elf_backend_parse_gnu_properties): Define for AArch64.
516
517 2019-03-13  H.J. Lu  <hongjiu.lu@intel.com>
518
519         PR ld/24322
520         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
521         merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
522
523 2019-03-12  Alan Modra  <amodra@gmail.com>
524
525         * coffcode.h (buy_and_read): Delete unnecessary forward decl.  Add
526         nmemb parameter.  Use bfd_alloc2.
527         (coff_slurp_line_table): Use bfd_alloc2.  Update buy_and_read calls.
528         Delete assertion.
529         (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
530         (coff_slurp_reloc_table): Use bfd_alloc2.  Update buy_and_read calls.
531         * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
532         doesn't overflow.
533         * elf.c (bfd_section_from_shdr): Use bfd_zalloc2.  Style fix.
534         (assign_section_numbers): Style fix.
535         (swap_out_syms): Use bfd_malloc2.
536         (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
537         overflow.
538         (_bfd_elf_make_empty_symbol): Style fix.
539         (elfobj_grok_stapsdt_note_1): Formatting.
540         * elfcode.h (elf_object_p): Use bfd_alloc2.
541         (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
542         (elf_slurp_symbol_table): Use bfd_zalloc2.
543         (elf_slurp_reloc_table): Use bfd_alloc2.
544         (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
545         * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
546         size calculation doesn't overflow.
547         (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
548         * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
549         * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
550
551 2019-03-08  Alan Modra  <amodra@gmail.com>
552
553         PR 24311
554         * merge.c (merge_strings): Return secinfo.  Don't pad section
555         to alignment here.
556         (_bfd_merge_sections): Pad section to alignment here, if input
557         sections contributing to merged output all pad to alignment.
558         Formatting.
559
560 2019-03-06  Nick Clifton  <nickc@redhat.com>
561
562         * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
563         table pointer.
564         * coffgen.c (coff_find_nearest_line_with_names): Do not call
565         _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
566
567 2019-03-01  Andreas Krebbel  <krebbel@linux.ibm.com>
568
569         This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
570         2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
571
572         PR 20113
573         * elf32-s390.c (allocate_dynrelocs): Update comment.
574
575 2019-02-28  Tamar Christina  <tamar.christina@arm.com>
576
577         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
578
579 2019-02-28  Nick Clifton  <nickc@redhat.com>
580
581         PR 24273
582         * elf.c (bfd_elf_string_from_elf_section): Check for a string
583         section that is not NUL terminated.
584
585 2019-02-27  H.J. Lu  <hongjiu.lu@intel.com>
586
587         PR ld/24276
588         * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
589         by linker when checking copy reloc on protected symbol.
590
591 2019-02-24  Alan Modra  <amodra@gmail.com>
592
593         PR 24144
594         * pdp11.c (set_section_contents): Revert 2015-02-24 change.
595
596 2019-02-20  Eric Tsai  <erictsai@cadence.com>
597
598         * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
599         sections between the call site and call destination and adjust
600         call distance by the largest alignment.
601
602 2019-02-20  Alan Hayward  <alan.hayward@arm.com>
603
604         * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
605         * elf.c (elfcore_grok_aarch_pauth): New function.
606         (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
607         (elfcore_write_aarch_pauth): New function.
608         (elfcore_write_register_note): Check for AArch64 pauth section.
609
610 2019-02-20  Alan Modra  <amodra@gmail.com>
611
612         PR 24225
613         * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
614         return value.
615
616 2019-02-20  Michael Roitzsch  <reactorcontrol@icloud.com>
617
618         * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
619         Darwin hosts, not just or1k.
620         * configure: Regenerate.
621
622 2019-02-20  Alan Modra  <amodra@gmail.com>
623
624         PR 24236
625         * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
626         sentinel NUL to string buffer nearer to loop where it is used.
627         Don't go past sentinel when scanning strings, and don't write
628         NUL again.
629         * archive.c (do_slurp_coff_armap): Simplify string handling to
630         archive64.c style.
631
632 2019-02-19  Alan Modra  <amodra@gmail.com>
633
634         PR 24235
635         * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
636         attempting to prevent read past end of section.
637
638 2019-02-18  Alan Modra  <amodra@gmail.com>
639
640         PR 24225
641         * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
642         PRIx64 to generate warning messages.  Print local sym names too.
643
644 2019-02-09  Vineet Gupta  <vgupta@synopsys.com>
645
646         * elf32-arc (INIT_SYM_STRING): Delete.
647         (FINI_SYM_STRING): Likewise.
648         (init_str): Likewise.
649         (fini_str): Likewise.
650
651 2019-02-08  Alan Modra  <amodra@gmail.com>
652
653         * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
654         for bss-plt" warning to make it an error.
655
656 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
657
658         PR ld/18841
659         * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
660         reloc_class_ifunc for ifunc symbols.
661         * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
662
663 2019-02-07  Eric Botcazou  <ebotcazou@adacore.com>
664
665         * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
666         <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
667
668 2019-02-07  Nick Clifton  <nickc@redhat.com>
669
670         * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
671         into the definitely obsolete list.
672
673 2019-02-05  H.J. Lu  <hongjiu.lu@intel.com>
674
675         PR ld/24151
676         * elf64-x86-64.c (elf_x86_64_need_pic): Check
677         SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
678         (elf_x86_64_relocate_section): Move PIC check for PC-relative
679         relocations to ...
680         (elf_x86_64_check_relocs): Here.
681         (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
682         to check if a symbol is defined in a non-shared object.
683         * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
684
685 2019-01-21  Sergio Durigan Junior  <sergiodj@redhat.com>
686
687         * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
688         of 'labs' (and fix GCC warning).
689
690 2019-01-25  Nick Clifton  <nickc@redhat.com>
691
692         * po/ru.po: Updated Russian translation.
693
694 2019-01-23  Nick Clifton  <nickc@redhat.com>
695
696         * po/fr.po: Updated French translation.
697
698 2019-01-21  Nick Clifton  <nickc@redhat.com>
699
700         * po/pt.po: Updated Portuguese translation.
701         * po/uk.po: Updated Ukranian translation.
702
703 2019-01-21  Yuri Chornoivan  <yurchor@ukr.net>
704
705         PR 24108
706         * elf32-nds32.c (nds32_relocate_section): Add space between words
707         in error message.
708         * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
709         error message.
710         (riscv_i_or_e_p): Likewise.
711         (riscv_merge_arch_attr_info): Likewise.
712
713 2019-01-19  Nick Clifton  <nickc@redhat.com>
714
715         * version.m4: Reset to 2.32.51
716         * configure: Regenerate.
717         * po/bfd.pot: Regenerate.
718
719 2018-06-24  Nick Clifton  <nickc@redhat.com>
720
721         2.32 branch created.
722
723 2019-01-16  Kito Cheng  <kito@andestech.com>
724
725         * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
726         for OBJ_ATTR_PROC.
727
728 2019-01-16  Kito Cheng  <kito@andestech.com>
729             Nelson Chu  <nelson@andestech.com>
730
731         * elfnn-riscv.c (in_subsets): New.
732         (out_subsets): Likewise.
733         (merged_subsets): Likewise.
734         (riscv_std_ext_p): Likewise.
735         (riscv_non_std_ext_p): Likewise.
736         (riscv_std_sv_ext_p): Likewise.
737         (riscv_non_std_sv_ext_p): Likewise.
738         (riscv_version_mismatch): Likewise.
739         (riscv_i_or_e_p): Likewise.
740         (riscv_merge_std_ext): Likewise.
741         (riscv_merge_non_std_and_sv_ext): Likewise.
742         (riscv_merge_arch_attr_info): Likewise.
743         (riscv_merge_attributes): Likewise.
744         (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
745
746         * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
747         (elf_backend_obj_attrs_vendor): Define.
748         (elf_backend_obj_attrs_section_type): Likewise.
749         (elf_backend_obj_attrs_section): Likewise.
750         (elf_backend_obj_attrs_arg_type): Define as
751         riscv_elf_obj_attrs_arg_type.
752         * elfxx-riscv.c (riscv_estimate_digit): New.
753         (riscv_estimate_arch_strlen1): Likewise.
754         (riscv_estimate_arch_strlen): Likewise.
755         (riscv_arch_str1): Likewise.
756         (riscv_arch_str): Likewise.
757         * elfxx-riscv.h (riscv_arch_str): Declare.
758
759 2019-01-14  John Darrington <john@darrington.wattle.id.au>
760
761         * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
762         * libbfd.h: regen.
763         * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
764         source field.  (md_apply_fix): Apply final fix
765         to BFD_RELOC_S12Z_OPR.
766         * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
767
768 2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>
769
770         PR 20113
771         * elf32-s390.c (allocate_dynrelocs): Update comment.
772
773 2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>
774
775         * warning.m4: Adjust egrep pattern for non-GNU compilers.
776         * configure: Regenerate.
777
778 2019-01-08  Alan Modra  <amodra@gmail.com>
779
780         PR 23699
781         PR 24065
782         * ihex.c (ihex_write_object_contents): Properly check 32-bit
783         address range.
784
785 2019-01-05  Yoshinori Sato <ysato@users.sourceforge.jp>
786
787         * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
788         * bfd/bfd-in2.h: Regenerate.
789         * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
790         * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
791
792 2019-01-04  Lifang Xia  <lifang_xia@c-sky.com>
793
794         * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
795         default target, little endian target is more suitable.
796
797 2019-01-04  Alan Modra  <amodra@gmail.com>
798
799         PR 24061
800         PR 21786
801         * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
802         adjust all callers.
803         (EQ_VALUE_IN_FIELD): Likewise.
804         * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
805
806 2019-01-01  Alan Modra  <amodra@gmail.com>
807
808         Update year range in copyright notice of all files.
809
810 For older changes see ChangeLog-2018
811 \f
812 Copyright (C) 2019 Free Software Foundation, Inc.
813
814 Copying and distribution of this file, with or without modification,
815 are permitted in any medium without royalty provided the copyright
816 notice and this notice are preserved.
817
818 Local Variables:
819 mode: change-log
820 left-margin: 8
821 fill-column: 74
822 version-control: never
823 End: