12021-07-18  Nick Clifton  <nickc@redhat.com>
2
3	* 2.37 release.
4
52021-07-08  H.J. Lu  <hongjiu.lu@intel.com>
6
7	PR ld/21782
8	* elf64-x86-64.c (elf_x86_64_relocate_section): Disallow PC
9	relocations against weak undefined symbols in PIE.
10
112021-07-08  Nick Clifton  <nickc@redhat.com>
12
13	* po/pt.po: Updated Portuguese translation.
14
152021-07-07  Michael Matz  <matz@suse.de>
16
17	PR ld/28021
18	* elfnn-riscv.c (riscv_relax_delete_bytes): Check for any
19	versioning.
20
212021-07-07  H.J. Lu  <hongjiu.lu@intel.com>
22
23	PR ld/18028
24	* plugin.c (bfd_plugin_close_file_descriptor): Check archive
25	only of abfd != NULL.
26	(try_claim): Pass NULL to bfd_plugin_close_file_descriptor if
27	it isn't an archive member.
28
292021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
30
31	* sysdep.h [!ENABLE_NLS]: Prevent inclusion of <libintl.h> on
32	Solaris.
33
342021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
35
36	* configure.ac: Check for strnlen declaration.
37	* configure, config.in: Regenerate.
38
392021-07-05  H.J. Lu  <hongjiu.lu@intel.com>
40
41	PR ld/28040
42	* archive.c (_bfd_archive_close_and_cleanup): Close the archive
43	plugin file descriptor if needed.
44	* bfd.c (bfd): Add archive_plugin_fd and
45	archive_plugin_fd_open_count.
46	* opncls.c (_bfd_new_bfd): Initialize to -1.
47	* plugin.c (bfd_plugin_open_input): Cache and reuse the archive
48	plugin file descriptor.
49	(bfd_plugin_close_file_descriptor): New function.
50	(try_claim): Call bfd_plugin_close_file_descriptor.
51	* plugin.h (bfd_plugin_close_file_descriptor): New.
52	* bfd-in2.h: Regenerated.
53
542021-07-05  Nick Clifton  <nickc@redhat.com>
55
56	* po/fr.po: Updated French translation.
57	* po/uk.po: Updated Ukranian translation.
58
592021-07-03  Nick Clifton  <nickc@redhat.com>
60
61	* version.m4: Update version number.
62	* configure: Regenerate.
63	* po/bfd.pot: Regenerate.
64
652021-07-03  Nick Clifton  <nickc@redhat.com>
66
67	* 2.37 release branch created.
68
692021-07-02  Nick Clifton  <nickc@redhat.com>
70
71	PR 28046
72	* dwarf2.c (read_ranges): Check that range_ptr does not exceed
73	range_end.
74
752021-06-30  YunQiang Su  <yunqiang.su@cipunited.com>
76
77	PR mips/28009
78	* bfd/elfxx-mips.c (_bfd_mips_elf_section_from_shdr,
79	_bfd_mips_elf_fake_sections): Mark LTO debug info as
80	SHT_MIPS_DWARF.
81
822021-06-29  Nick Clifton  <nickc@redhat.com>
83
84	* config.bfd (obsolete configurations): Add netbsdpe.
85
862021-06-22  Nelson Chu  <nelson.chu@sifive.com>
87
88	* elfnn-riscv.c (riscv_pcrel_hi_reloc): Added field to store
89	the original relocation type, in case the type is converted to
90	R_RISCV_HI20.
91	(riscv_pcrel_lo_reloc): Removed unused name field.
92	(riscv_pcrel_relocs): Added comments.
93	(riscv_zero_pcrel_hi_reloc): Removed unused input_bfd.
94	(riscv_record_pcrel_hi_reloc): Updated.
95	(riscv_record_pcrel_lo_reloc): Likewise.
96	(riscv_resolve_pcrel_lo_relocs): Likewise.  Check the original
97	type of auipc, to make sure the %pcrel_lo without any addends.
98	Otherwise, report dangerous relocation error.
99	(riscv_elf_relocate_section): Updated above functions are changed.
100	For R_RISCV_GOT_HI20, report dangerous relocation error when addend
101	isn't zero.
102
1032021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
104
105	PR ld/27998
106	* elfxx-x86.c (elf_x86_allocate_dynrelocs): Count PLT for GOTOFF
107	relocation against IFUNC symbols.
108	(_bfd_x86_elf_adjust_dynamic_symbol): Likewise.
109
1102021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
111
112	* elflink.c (bfd_elf_final_link): Correct DT_TEXTREL warning in
113	PDE.
114
1152021-06-18  H.J. Lu  <hongjiu.lu@intel.com>
116
117	* elf-properties.c (_bfd_elf_parse_gnu_properties): Handle
118	GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI,
119	GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI.
120	(elf_merge_gnu_properties): Likewise.
121
1222021-06-11  Alan Modra  <amodra@gmail.com>
123
124	PR 27952
125	* elf-bfd.h (struct elf_obj_tdata): Add is_pie.
126	* elflink.c (elf_link_add_object_symbols): Set is_pie.
127
1282021-06-09  Nick Clifton  <nickc@redhat.com>
129
130	PR 27666
131	* config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
132	vectors to Sparc Solaris2 targets.
133
1342021-06-08  Michael Matz  <matz@suse.de>
135
136	* elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag.
137	(_bfd_elf_slurp_secondary_reloc_section): Use it for early-out.
138
1392021-06-07  Jan Beulich  <jbeulich@suse.com>
140
141	* dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant.
142
1432021-06-02  Alan Modra  <amodra@gmail.com>
144
145	* elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if
146	subsection length is too small to cover tag and length field.
147
1482021-05-31  Nelson Chu  <nelson.chu@sifive.com>
149	    Lifang Xia  <lifang_xia@c-sky.com>
150
151	PR 27566
152	* elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer
153	to monitor the data segment phase.
154	(bfd_elfNN_riscv_set_data_segment_info): New function called by
155	after_allocation, to set the data_segment_phase from expld.dataseg.
156	(_bfd_riscv_relax_section): Don't relax when data_segment_phase is
157	exp_seg_relro_adjust (0x4).
158	* elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern.
159	(bfd_elf64_riscv_set_data_segment_info): Likewise
160
1612021-05-28  H.J. Lu  <hongjiu.lu@intel.com>
162
163	PR ld/27905
164	* elf32-i386.c: Don't include "libiberty.h".
165	(elf_howto_table): Revert commits a7664973b24 and 50c95a739c9.
166	(elf_i386_rtype_to_howto): Revert commit 50c95a739c9.
167	(elf_i386_info_to_howto_rel): Likewise.
168	(elf_i386_tls_transition): Likewise.
169	(elf_i386_relocate_section): Likewise.
170	* elf64-x86-64.c (x86_64_elf_howto_table): Revert commits
171	a7664973b24 and 50c95a739c9.
172	(elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9.
173	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise.
174	* elfxx-x86.h (elf_x86_obj_tdata): Likewise.
175	(elf_x86_has_code16): Likewise.
176
1772021-05-26  H.J. Lu  <hongjiu.lu@intel.com>
178
179	PR ld/27905
180	* elf32-i386.c: Include "libiberty.h".
181	(elf_howto_table): Add 16-bit R_386_PC16 entry.
182	(elf_i386_rtype_to_howto): Add a BFD argument.  Use 16-bit
183	R_386_PC16 if input has 16-bit mode instructions.
184	(elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto
185	call.
186	(elf_i386_tls_transition): Likewise.
187	(elf_i386_relocate_section): Likewise.
188	* elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit
189	R_X86_64_PC16 entry.
190	(elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input
191	has 16-bit mode instructions.
192	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set
193	elf_x86_has_code16 if relocatable input is marked with
194	GNU_PROPERTY_X86_FEATURE_2_CODE16.
195	* elfxx-x86.h (elf_x86_obj_tdata): Add has_code16.
196	(elf_x86_has_code16): New.
197
1982021-05-26  Nelson Chu  <nelson.chu@sifive.com>
199
200	* elfxx-riscv.h (check_unknown_prefixed_ext): New bool.
201	* elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the
202	prefixed extension name if check_unknown_prefixed_ext is false.
203	* elfnn-riscv.c (riscv_merge_arch_attr_info): Set
204	check_unknown_prefixed_ext to false for linker.
205
2062021-05-25  Nick Clifton  <nickc@redhat.com>
207
208	* elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field.
209	(elf32_arm_num_entries): New macro.
210	(elf32_arm_allocate_local_sym_info): Initialise the new field.
211	Allocate arrays individually so that buffer overruns can be
212	detected by memory checkers.
213	(elf32_arm_create_local_iplt): Check num_entries.
214	(elf32_arm_get_plt_info): Likewise.
215	(elf32_arm_final_link_relocate): Likewise.
216	(elf32_arm_check_relocs): Likewise.
217	(elf32_arm_size_dynamic_sections): Likewise.
218	(elf32_arm_output_arch_local_syms): Likewise.
219
2202021-05-25  Nick Clifton  <nickc@redhat.com>
221
222	* elf32-arm.c: Fix formatting.
223
2242021-05-25  Alan Modra  <amodra@gmail.com>
225
226	* elf-attrs.c (elf_attr_strdup): New function.
227	(_bfd_elf_attr_strdup): Use it here.
228	(elf_add_obj_attr_string): New function, extracted from..
229	(bfd_elf_add_obj_attr_string): ..here.
230	(elf_add_obj_attr_int_string): New function, extracted from..
231	(bfd_elf_add_obj_attr_int_string): ..here.
232	(_bfd_elf_parse_attributes): Don't allocate an extra byte for a
233	string terminator.  Instead ensure parsing doesn't go past
234	end of sub-section.  Use size_t variables for lengths.
235
2362021-05-22  Alan Modra  <amodra@gmail.com>
237
238	* libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter.
239	Replace data pointer with pointer to pointer.  Increment pointer
240	over bytes read.
241	* libbfd-in.h (_bfd_safe_read_leb128): Update prototype.
242	* elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit.  Be
243	careful not to increment data pointer past end.  Remove now
244	redundant pr17512 check.
245	* wasm-module.c (READ_LEB128): Adjust to suit changes to
246	_bfd_safe_read_leb128.
247	* dwarf2.c (read_n_bytes): New inline function, old one renamed to..
248	(read_blk): ..this.  Allocate and return block.  Increment bfd_byte**
249	arg.
250	(read_3_bytes): New function.
251	(read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes),
252	(read_8_bytes, read_string, read_indirect_string),
253	(read_indirect_line_string, read_alt_indirect_string): Take a
254	byte_byte** arg which is incremented over bytes read.  Remove any
255	bytes_read return.  Rewrite limit checks to compare lengths
256	rather than pointers.
257	(read_abbrevs, read_attribute_value, read_formatted_entries),
258	(decode_line_info, find_abstract_instance, read_ranges),
259	(read_rnglists, scan_unit_for_symbols, parse_comp_unit),
260	(stash_comp_unit): Adjust to suit.  Rewrite limit checks to
261	compare lengths rather than pointers.
262	* libbfd.h: Regenerate.
263
2642021-05-21  Luis Machado  <luis.machado@linaro.org>
265
266	* elf.c (elfcore_make_memtag_note_section): New function.
267	(elfcore_grok_note): Handle NT_MEMTAG note types.
268
2692021-05-20  Andrew Burgess  <andrew.burgess@embecosm.com>
270
271	* section.c (bfd_get_section_by_name): Return NULL if name is
272	NULL.
273	(bfd_get_section_by_name_if): Likewise.
274	* dwarf2.c (read_section): Remove unneeded NULL check.
275	(find_debug_info): Likewise.
276
2772021-05-19  Nick Clifton  <nickc@redhat.com>
278
279	* plugin.c (bfd_plugin_open_input): Inform the user if the limit
280	on the number of open files is reached.  If possible, try to
281	increase this limit before failing.
282
2832021-05-14  Nelson Chu  <nelson.chu@sifive.com>
284
285	* elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values
286	of %pcrel_hi, before and after adding the addend.  Make sure the
287	value won't be changed, otherwise, report dangerous error.
288
2892021-05-13  Nelson Chu  <nelson.chu@sifive.com>
290
291	* elfxx-riscv.c (check_implicit_always): The check_func, always add
292	the implicit subset without checking.
293	(check_implicit_for_i): The check_func for i, only add zicsr and
294	zifencei when the version of i less than 2.1.
295	(struct riscv_implicit_subset): Record the subsets and their
296	corresponding implicit subsets.
297	(riscv_implicit_subsets): Table records all implicit informations.
298	(riscv_parse_add_implicit_subsets): Updated and add implicit subsets
299	according to riscv_implicit_subsets.  Remove the redundant codes.
300
3012021-05-13  Alan Modra  <amodra@gmail.com>
302
303	PR 27858
304	* elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid
305	reloc howto.
306
3072021-05-12  Luis Machado  <luis.machado@linaro.org>
308
309	* elf-bfd.h (elfcore_write_aarch_mte): New prototype.
310	* elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New
311	functions.
312	(elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL.
313	(elfcore_write_register_note): Handle MTE notes.
314
3152021-05-11  Alan Modra  <amodra@gmail.com>
316
317	PR 27844
318	* pdp11.c (aout_get_external_symbols): Clear first four bytes of
319	strings array, not just the first byte.
320	* aoutx.h (aout_get_external_symbols): Likewise.
321
3222021-05-10  H.J. Lu  <hongjiu.lu@intel.com>
323
324	PR binutils/27839
325	* simple.c (bfd_simple_get_relocated_section_contents): Remove
326	strayed fprintf.
327
3282021-05-10  Nick Clifton  <nickc@redhat.com>
329
330	PR 27839
331	* simple.c (simple_dummy_add_to_set): New function.
332	(simple_dummy_constructor): New function.
333	(simple_dummy_multiple_common): New function.
334	(bfd_simple_get_relocated_section_contents): Zero out the
335	callbacks structure, and then set the add_to_set, constructor and
336	multiple_common fields.
337
3382021-05-10  Dimitar Dimitrov  <dimitar@dinux.eu>
339
340	* elf32-pru.c (elf_backend_can_gc_sections): Define as 1.
341
3422021-05-08  Mike Frysinger  <vapier@gentoo.org>
343
344	* doc/Makefile.am (html-local, bfd/index.html): New targets.
345	* doc/Makefile.in: Regenerate.
346
3472021-05-08  Mike Frysinger  <vapier@gentoo.org>
348
349	* doc/Makefile.am (AM_MAKEINFOFLAGS): Define.
350	* doc/Makefile.in: Regenerate.
351
3522021-05-07  Clément Chigot  <clement.chigot@atos.net>
353
354	* coff-rs6000.c (xcoff_dwsect_names): Add new DWARF
355	sections.
356	* coffgen.c (coff_pointerize_aux): Handle C_DWARF.
357	(coff_print_symbol): Likewise.
358	* libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update.
359
3602021-05-07  Jan Beulich  <jbeulich@suse.com>
361
362	* elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields
363	to zero.
364
3652021-05-07  Alan Modra  <amodra@gmail.com>
366
367	* bfd-in2.h: Regenerate.
368	* libbfd.h: Regenerate.
369
3702021-05-06  Stafford Horne  <shorne@gmail.com>
371
372	PR 27746
373	* elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT,
374	OR1K_ADD, OR1K_ORI): New macros to help with plt creation.
375	(elf_or1k_link_hash_table): New field plt_count.
376	(elf_or1k_link_hash_entry): New field plt_index.
377	(elf_or1k_plt_entry_size): New function.
378	(or1k_write_plt_entry): Update to support variable size PLTs.
379	(or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry
380	API.
381	(or1k_elf_finish_dynamic_symbol): Update to write large PLTs
382	when needed.
383	(allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for
384	PLT size.
385
3862021-05-06  Stafford Horne  <shorne@gmail.com>
387
388	PR 21464
389	* elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16
390	overflow check if we have R_OR1K_GOT_AHI16 followed by
391	R_OR1K_GOT16.
392
3932021-05-06  Stafford Horne  <shorne@gmail.com>
394
395	PR 21464
396	* bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation.
397	* elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise.
398	(or1k_final_link_relocate, or1k_elf_relocate_section,
399	or1k_elf_check_relocs): Likewise.
400	* libbfd.h (bfd_reloc_code_real_names): Likewise.
401	* reloc.c: Likewise.
402
4032021-05-06  Stafford Horne  <shorne@gmail.com>
404
405	PR 27624
406	* elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change
407	condition used to cleanup plt entries to cleanup forced local
408	entries.
409
4102021-05-05  H.J. Lu  <hongjiu.lu@intel.com>
411
412	PR ld/27825
413	* elflink.c (elf_link_output_symstrtab): Always append ".COUNT"
414	to local symbols.
415
4162021-05-05  Alan Modra  <amodra@gmail.com>
417
418	* vms-lib.c (vms_traverse_index): Account for vms_kbn size when
419	sanity checking keylen.
420
4212021-05-04  Nick Clifton  <nickc@redhat.com>
422
423	* libbfd.c (bfd_malloc): Provide some documenation.  Treat a size
424	of 0 as 1.
425	(bfd_realloc): Likewise.
426	(bfd_zmalloc): Likewise.
427	(bfd_realloc_or_free): Provide some documentation.  Treat a size
428	of 0 as a request to free.
429	* libbfd-in.h (bfd_realloc): Remove prototype.
430	(bfd_realloc_or_free): Remove prototype.
431	(bfd_zmalloc): Remove prototype.
432	* libbfd.h: Regenerate.
433
4342021-05-03  Jan Beulich  <jbeulich@suse.com>
435
436	* elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to
437	complain_overflow_dont.
438	* elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit
439	relocs to complain_overflow_dont.
440
4412021-05-03  Alan Modra  <amodra@gmail.com>
442
443	* elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak
444	symbols when -z dynamic-undefined-weak or when there are no
445	dynamic relocs in read-only sections and -z nodynamic-undefined-weak
446	is not given.
447	* elf64-ppc.c (allocate_dynrelocs): Likewise.
448
4492021-05-03  Alan Modra  <amodra@gmail.com>
450
451	* elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for
452	weak undefined symols that only appear on PLT relocs.
453	* elf64-ppc.c (allocate_dynrelocs): Likewise.
454
4552021-05-03  Alan Modra  <amodra@gmail.com>
456
457	PR 27755
458	* elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop.
459
4602021-05-03  Alan Modra  <amodra@gmail.com>
461
462	* elf32-csky.c (is_mapping_symbol_name): New function.
463	(csky_elf_is_target_special_symbol): Likewise.
464	(csky_elf_maybe_function_sym): Likewise.
465	(bfd_elf32_bfd_is_target_special_symbol): Define.
466	(elf_backend_maybe_function_sym): Define.
467
4682021-04-30  Nick Clifton  <nickc@redhat.com>
469
470	PR 27801
471	* mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to
472	read 32-bit value.
473
4742021-04-30  Nick Clifton  <nickc@redhat.com>
475
476	PR 27799
477	* elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes
478	that are too small.
479
4802021-04-30  Nick Clifton  <nickc@redhat.com>
481
482	PR 27797
483	* libbfd.c (bfd_realloc_or_free): Do not free a pointer than has
484	been realloc'ed to size 0.
485
4862021-04-30  Nick Clifton  <nickc@redhat.com>
487
488	PR 27795
489	* coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name
490	lengths.
491
4922021-04-29  Nick Clifton  <nickc@redhat.com>
493
494	PR 27793
495	* som.c (som_slurp_symbol_table): Assign symbols without any scope
496	to the undefined section.
497	(som_decode_symclass): Check for a missing symbol section.
498	* syms.c (bfd_decode_symclass): Likewise.
499
5002021-04-29  Nick Clifton  <nickc@redhat.com>
501
502	PR 27792
503	* som.c (som_slurp_string_table): Place a terminating NUL byte at
504	the end of the table.
505	(som_slurp_symbol_table): Check for an over-large offset into the
506	string string table.
507
5082021-04-28  Nick Clifton  <nickc@redhat.com>
509
510	* elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin
511	symbols as potential function symbols.
512	* elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise.
513	* elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
514	* elf32-arm.c (elf32_arm_maybe_function_sym): Likewise.
515
5162021-04-26  Mike Frysinger  <vapier@gentoo.org>
517
518	* elf-bfd.h: Include stdlib.h.
519
5202021-04-26  Jan Beulich  <jbeulich@suse.com>
521
522	* elf32-i386.c (elf_howto_table): Switch R_386_PC16 to
523	complain_overflow_signed.
524	* elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16
525	to complain_overflow_signed.
526
5272021-04-23  Eric Botcazou  <ebotcazou@adacore.com>
528
529	* elf.c (special_sections_p): Add .persistent.bss.
530
5312021-04-23  Jan Beulich  <jbeulich@suse.com>
532
533	* elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero
534	size field.
535	* elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL
536	has zero size field.
537
5382021-04-22  Clément Chigot  <clement.chigot@atos.net>
539
540	* hash.c (struct bfd_strtab_hash): Remove xcoff field.
541	Add length_field_size field.
542	(_bfd_stringtab_init): Change prototype.
543	Adapt to new length_field_size.
544	(_bfd_xcoff_stringtab_init): Likewise.
545	(_bfd_stringtab_add): Likewise.
546	(_bfd_stringtab_emit): Likewise.
547	* libbfd-in.h (_bfd_xcoff_stringtab_init):
548	Change prototype.
549	* libbfd.h: Regenerate.
550	* xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create):
551	Call _bfd_xcoff_stringtab_init with isxcoff64 value.
552
5532021-04-22  Clément Chigot  <clement.chigot@atos.net>
554
555	* coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for
556	unsupported storage class or auxialiry entries.
557	Improve and adapt to new aux structures.
558	Add C_DWARF support.
559	(_bfd_xcoff_swap_aux_out): Likewise.
560	* coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise.
561	(_bfd_xcoff64_swap_aux_out): Likewise.
562
5632021-04-21  Eli Zaretskii  <eliz@gnu.org>
564
565	PR 27760
566	* peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display
567	of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP,
568	IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags.
569	Decode the contents of the DllCharacteristics field.
570
5712021-04-21  Nick Clifton  <nickc@redhat.com>
572
573	PR 27759
574	* srec.c (srec_read_section): Replace assertions with error
575	returns.
576
5772021-04-20  Clément Chigot  <clement.chigot@atos.net>
578
579	PR binutils/21700
580	* reloc.c (BFD_RELOC_PPC_NEG): New relocation.
581	* bfd-in2.h: Regenerate.
582	* libbfd.h: Regenerate.
583	* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add
584	BFD_RELOC_PPC_NEG handler.
585	(xcoff_reloc_type_neg): Correctly substract addend.
586	* coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32
587	howto.
588	(xcoff64_rtype2howto): Add handler for R_NEG_32.
589	(xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler.
590	* xcofflink.c (xcoff_need_ldrel_p): Check output section
591	for R_POS-like relocations. New argument added.
592	(xcoff_mark): Adapt to new xcoff_need_ldrel_p argument.
593	(xcoff_link_input_bfd): Likewise.
594
5952021-04-16  Alan Modra  <amodra@gmail.com>
596
597	PR 27567
598	* coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags.
599	(coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT,
600	ignore alignment checks when return is false.  Formatting.
601
6022021-04-15  Nelson Chu  <nelson.chu@sifive.com>
603
604	PR27584
605	* elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to
606	omit local and empty symbols since they usually generated to
607	mark the auipc instructions.
608
6092021-04-15  Lifang Xia<lifang_xia@c-sky.com>
610
611	* elf32-csky.c (csky_elf_howto_table)
612	<R_CKCORE_PCREL_IMM16BY2>: Set special_function to
613	bfd_elf_generic_reloc.
614	<R_CKCORE_PCREL_IMM16BY4>: Likewise.
615	<R_CKCORE_PCREL_IMM10BY4>: Likewise.
616	<R_CKCORE_PCREL_IMM18BY2>: Likewise.
617	<R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise.
618
6192021-04-14  H.J. Lu  <hongjiu.lu@intel.com>
620
621	PR binutils/27708
622	* elf.c (assign_file_positions_for_non_load_sections): Set
623	p_memsz to p_filesz for the loadable PT_NOTE segment.
624
6252021-04-14  Frederic Cambus  <fred@statdns.com>
626
627	* elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef
628	checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
629
6302021-04-14  Alan Modra  <amodra@gmail.com>
631
632	PR 27631
633	* elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf
634	when hh might be NULL, test for NULL first.
635
6362021-04-14  Alan Modra  <amodra@gmail.com>
637
638	PR 27630
639	* elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
640	hash might be NULL, cast instead.
641
6422021-04-13  Clément Chigot  <clement.chigot@atos.net>
643
644	* xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
645
6462021-04-13  Nelson Chu  <nelson.chu@sifive.com>
647
648	* elfnn-riscv.c (riscv_version_mismatch): Do not report the warning
649	when the version of input or output is RISCV_UNKNOWN_VERSION, since
650	the extension is added implicitly.
651	* elfxx-riscv.c: Updated the obsolete comments.
652	(RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h.
653	* elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added.
654
6552021-04-12  Alan Modra  <amodra@gmail.com>
656
657	* elf-bfd.h (ENABLE_CHECKING): Define.
658	(elf_link_hash_lookup): Abort if wrong type of hash table.
659	* configure.ac (--enable-checking): Add support.
660	* config.in: Regenerate.
661	* configure: Regenerate.
662
6632021-04-12  Alan Modra  <amodra@gmail.com>
664
665	* elf-bfd.h (is_elf_hash_table): Convert macro to inline function.
666	(elf_link_hash_lookup, elf_link_hash_traverse): Likewise.
667	(elf_hash_table, elf_hash_table_id): Likewise.
668	* elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant
669	is_elf_hash_table check.
670	* elf32-csky.c (elf32_csky_setup_section_lists): Likewise.
671	* elf32-hppa.c (clobber_millicode_symbols): Correct param types.
672	* elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
673	* elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise.
674	(elfNN_ia64_global_dyn_sym_thunk: Likewise.
675	* elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise.
676	(elf64_ia64_global_dyn_sym_thunk): Likewise.
677	(elf64_vms_link_add_object_symbols): Pass base type of hash table
678	to is_elf_hash_table.
679	* elflink.c (_bfd_elf_dynamic_symbol_p): Likewise.
680	(_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise.
681	(_bfd_elf_strip_zero_sized_dynamic_sections): Likewise.
682	(_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise.
683	(bfd_elf_final_link): Likewise.
684	* elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise.
685	* elf64-ppc.c (ppc64_elf_set_toc): Likewise.  Use bfd_link_hash_lookup.
686
6872021-04-12  Alan Modra  <amodra@gmail.com>
688
689	* elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry*
690	from elf_backend_archive_symbol_lookup.
691	(_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*.
692	* elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise.  Check
693	we have a ppc_hash_table before accessing ppc_link_hash_entry
694	fields.
695	* elflink.c (_bfd_elf_archive_symbol_lookup): Return
696	bfd_link_hash_entry*.
697	(elf_link_add_archive_symbols): Adjust to suit.
698
6992021-04-12  Nelson Chu  <nelson.chu@sifive.com>
700
701	* elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of
702	i-ext when expanding g-ext.
703
7042021-04-12  Nelson Chu  <nelson.chu@sifive.com>
705
706	* elfxx-riscv.c (riscv_ext_dont_care_version): Removed.
707	(riscv_parse_add_subset): Always add the implicit extensions, even if
708	their versions are RISCV_UNKNOWN_VERSION.
709	(riscv_parse_std_ext): Delay to add i-ext as the implicit extension
710	in the riscv_parse_add_implicit_subsets.  Besides, add g-ext as the
711	implicit extension after it has been expanded.
712	(riscv_parse_add_implicit_subsets): Updated.
713
7142021-04-12  Nelson Chu  <nelson.chu@sifive.com>
715
716	* elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward.
717	(riscv_std_s_ext_strtab): Likewise.
718	(riscv_std_h_ext_strtab): Likewise.
719	(riscv_std_zxm_ext_strtab): Added for the zxm prefix.
720	(enum riscv_prefix_ext_class): Moved forward and renamed from
721	riscv_isa_ext_class.  Reorder them according to the parsing order,
722	since the enum values are used to check the orders in the
723	riscv_compare_subsets.
724	(struct riscv_parse_prefix_config): Moved forward and renamed from
725	riscv_parse_config_t.  Also removed the ext_valid_p field, the
726	related functions are replaced by riscv_valid_prefixed_ext.
727	(parse_config): Moved forward and updated.  The more letters of the
728	prefix string, the more forward it must be defined.  Otherwise, we
729	will get the wrong mapping when using strncmp in riscv_get_prefix_class.
730	(riscv_get_prefix_class): Moved forward.  Support to parse the
731	multi-letter prefix, like zxm.
732	(riscv_known_prefixed_ext): New function, check if the prefixed
733	extension is supported according to the right riscv_std_*_ext_strtab.
734	(riscv_valid_prefixed_ext): New function, used to replace the
735	riscv_ext_*_valid_p functions.
736	(riscv_init_ext_order): Do not set the values for prefix keywords
737	since they may have multiple letters for now.
738	(riscv_compare_subsets): Set the order values of prefix keywords
739	to negative numbers according to the riscv_prefix_ext_class.
740	(riscv_parse_std_ext): Call riscv_get_prefix_class to see if we
741	have parsed the prefixed extensions.
742	(riscv_parse_prefixed_ext): Updated and removed the parameter config.
743	Report error when the prefix is unknown.
744	(riscv_parse_subset): Do not parse the prefixed extensions according
745	to the orders in the parse_config.  Remove the confused message and
746	let riscv_parse_prefixed_ext to report the details.
747	* elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c.
748	(riscv_get_prefix_class): Removed to static.
749
7502021-04-08  Mike Frysinger  <vapier@gentoo.org>
751
752	* configure.ac (ACX_BUGURL): Use https://.
753	* configure.com (COPY_TEXT): Likewise.
754	* configure: Regenerate.
755
7562021-04-05  Alan Modra  <amodra@gmail.com>
757
758	* configure.ac: Don't check for long long or long double type.
759	Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
760	strings.h, time.h, wchar.h, wctype.h or sys/time.h.  Don't check
761	for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
762	vsnprintf, strlen or setitimer.  Sort AC_CHECK_DECLS.
763	(AC_ISC_POSIX): Don't invoke.
764	(AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
765	* sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
766	Do test HAVE_SYS_TYPES_H.  Don't include sys/time.h.  Reorder
767	header order as per automake AC_INCLUDES_DEFAULT.
768	* bfd-in.h: Include inttypes.h unconditionally.
769	* bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
770	long double are available.
771	(bfd_scan_vma): Assume long long and strtoull are available.
772	* elflink.c: Include limits.h unconditionally.
773	* elfnn-riscv.c: Likewise.
774	* wasm-module.c: Likewise.
775	* hpux-core.c: Include dirent.h unconditionally.
776	* trad-core.c: Likewise.
777	* hosts/x86-64linux.h: Include stdlib.h unconditionally.
778	* peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
779	* elf32-m68hc1x.c: Don't include alloca-conf.h.
780	* elf64-hppa.c: Likewise.
781	* som.c: Likewise.
782	* wasm-module.c: Likewise.
783	* xsym.c: Likewise.
784	* bfd-in2.h: Regenerate.
785	* config.in: Regenerate.
786	* configure: Regenerate.
787
7882021-04-01  Tamar Christina  <tamar.christina@arm.com>
789
790	PR ld/26659
791	* cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow.
792
7932021-04-01  Martin Liska  <mliska@suse.cz>
794
795	* ecoff.c (strneq): Remove strneq and use startswith.
796	(_bfd_ecoff_slurp_armap): Likewise.
797
7982021-04-01  Martin Liska  <mliska@suse.cz>
799
800	* elf-bfd.h (bfd_section_is_ctf): Use startswith function.
801	* elf.c (_bfd_elf_make_section_from_shdr): Likewise.
802	(elf_get_reloc_section): Likewise.
803	* elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
804	* elf32-m32r.c (m32r_elf_section_flags): Likewise.
805	* elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise.
806	* elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
807	(nds32_elf_relocate_section): Likewise.
808	(nds32_elf_action_discarded): Likewise.
809	(nds32_elf_check_relocs): Likewise.
810	(nds32_elf_section_flags): Likewise.
811	* elf32-or1k.c (or1k_elf_check_relocs): Likewise.
812	* elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
813	* elf32-rx.c (rx_table_find): Likewise.
814	(rx_table_map): Likewise.
815	* elf32-spu.c (spu_elf_backend_symbol_processing): Likewise.
816	(spu_elf_find_overlays): Likewise.
817	(needs_ovl_stub): Likewise.
818	(allocate_spuear_stubs): Likewise.
819	(build_spuear_stubs): Likewise.
820	(mark_overlay_section): Likewise.
821	(spu_elf_auto_overlay): Likewise.
822	(spu_elf_output_symbol_hook): Likewise.
823	* elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
824	* elf32-xtensa.c (xtensa_property_section_name): Likewise.
825	* elf64-ppc.c (ppc64_elf_section_flags): Likewise.
826	(ppc64_elf_relocate_section): Likewise.
827	* elflink.c (resolve_section): Likewise.
828	(UNARY_OP): Likewise.
829	(BINARY_OP_HEAD): Likewise.
830	(elf_link_input_bfd): Likewise.
831	* elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise.
832	* elfxx-riscv.c (riscv_parse_subset): Likewise.
833	* elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
834	* opncls.c (get_build_id): Likewise.
835
8362021-03-31  Alan Modra  <amodra@gmail.com>
837
838	PR 27671
839	* bfd-in.h: Don't poison FALSE or TRUE.
840	* bfd-in2.h: Regenerate.
841
8422021-03-31  Alan Modra  <amodra@gmail.com>
843
844	* sysdep.h: POISON_BFD_BOOLEAN: Define.
845	* aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h,
846	* aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c,
847	* bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c,
848	* coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c,
849	* coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c,
850	* coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c,
851	* coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
852	* coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
853	* coffcode.h, * coffgen.c, * cofflink.c, * compress.c,
854	* corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c,
855	* cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c,
856	* cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c,
857	* cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c,
858	* cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c,
859	* cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c,
860	* cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c,
861	* cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c,
862	* cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c,
863	* cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c,
864	* cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c,
865	* cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c,
866	* cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c,
867	* cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c,
868	* cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c,
869	* cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c,
870	* cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c,
871	* cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c,
872	* cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c,
873	* cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c,
874	* cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c,
875	* dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c,
876	* elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h,
877	* elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c,
878	* elf-nacl.h, * elf-properties.c, * elf-s390-common.c,
879	* elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h,
880	* elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c,
881	* elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c,
882	* elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c,
883	* elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c,
884	* elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
885	* elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
886	* elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c,
887	* elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
888	* elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
889	* elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c,
890	* elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
891	* elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c,
892	* elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
893	* elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c,
894	* elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c,
895	* elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c,
896	* elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h,
897	* elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h,
898	* elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c,
899	* elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h,
900	* elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
901	* elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
902	* elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c,
903	* elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c,
904	* elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
905	* elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c,
906	* elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h,
907	* elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c,
908	* elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c,
909	* elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h,
910	* elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h,
911	* elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h,
912	* elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h,
913	* format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c,
914	* i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h,
915	* libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h,
916	* libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c,
917	* mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h,
918	* merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c,
919	* pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c,
920	* pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c,
921	* pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c,
922	* peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c,
923	* reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c,
924	* som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c,
925	* verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h,
926	* wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c,
927	* xsym.h: Replace bfd_boolean with bool, FALSE with false, and
928	TRUE with true throughout.
929	* bfd-in2.h: Regenerate.
930	* libbfd.h: Regenerate.
931	* libcoff.h: Regenerate.
932
9332021-03-31  Alan Modra  <amodra@gmail.com>
934
935	* bfd-in.h: Include stdbool.h.
936	(bfd_boolean): Define as bool
937	* bfd-in2.h: Regenerate.
938
9392021-03-31  Alan Modra  <amodra@gmail.com>
940
941	* .gitignore: Delete bfd_stdint.h entry.
942	* Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h.
943	(BUILD_HFILES, LOCAL_H_DEPS): Likewise.
944	* bfd-in.h: Include stdint.h in place of bfd_stdint.h.
945	* configure.ac: Don't invoke GCC_HEADER_STDINT.
946	* configure.com: Don't create bfd_stdint.h.
947	* Makefile.in: Regenerate.
948	* aclocal.m4: Regenerate.
949	* bfd-in2.h: Regenerate.
950	* config.in: Regenerate.
951	* configure: Regenerate.
952	* doc/Makefile.in: Regenerate.
953	* po/BLD-POTFILES.in: Regenerate.
954
9552021-03-31  Alan Modra  <amodra@gmail.com>
956
957	* bfd-in.h: Include string.h.
958	(LITMEMCPY, LITSTRCPY): Delete.
959	* bfd-in2.h: Regenerate.
960
9612021-03-30  Alan Modra  <amodra@gmail.com>
962
963	* elflink.c (elf_link_add_object_symbols): Don't set h->indx
964	unless is_elf_hash_table.
965
9662021-03-29  Alan Modra  <amodra@gmail.com>
967
968	* aoutx.h (aout_link_write_symbols): Don't cast boolean expression
969	to bfd_boolean.
970	* elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans
971	against FALSE.
972	* elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE.
973	(is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE".
974	(is_reloc_SDA_relative, is_reloc_for_GOT): Likewise.
975	(is_reloc_for_PLT, is_reloc_for_TLS): Likewise.
976	* elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise.
977	* elf32-nds32.c (insert_nds32_elf_blank): Likewise.
978	* elf32-rx.c (rx_set_section_contents): Likewise.
979	* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
980	* elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise.
981	* mach-o.c (bfd_mach_o_read_command): Likewise.
982	* targets.c (bfd_get_target_info): Likewise.
983
9842021-03-29  Alan Modra  <amodra@gmail.com>
985
986	* coff-z80.c (z80_is_local_label_name): Return bfd_boolean.
987	* elf32-z80.c (z80_is_local_label_name): Likewise.
988	* elf32-spu.c (spu_elf_modify_headers): Likewise.
989	* elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>):
990	Change type to int.
991	* vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test
992	for error return from vms_write_data_block.
993
9942021-03-29  Alan Modra  <amodra@gmail.com>
995
996	* elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
997	* elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
998	(elf64_ia64_local_dyn_sym_thunk): Likewise.
999	* elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
1000	* elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
1001	(elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
1002	* elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
1003	(elfNN_ia64_local_dyn_sym_thunk): Likewise.
1004	* elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
1005	(riscv_pcrel_reloc_eq): Likewise.
1006	(riscv_elf_finish_local_dynamic_symbol): Likewise.
1007	* elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
1008	(finish_local_dynamic_symbol): Likewise.
1009	* elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
1010	* elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
1011	(mips_elf_count_got_symbols): Change return type to bfd_boolean.
1012
10132021-03-29  Alan Modra  <amodra@gmail.com>
1014
1015	* elflink.c (elf_link_output_symstrtab): Make flinfo parameter
1016	a void pointer.
1017	(bfd_elf_final_link): Delete out_sym_func typedef and don't cast
1018	elf_link_output_symstrtab when calling output_arch_syms and
1019	output_arch_local_syms.
1020	* elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms,
1021	elf_backend_output_arch_local_syms>): Change return type of func
1022	arg to match elf_link_output_symstrtab.
1023	* elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct
1024	return type.
1025	* elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type.
1026	(nds32_elf_output_arch_syms): Correct func return type.
1027
10282021-03-29  Alan Modra  <amodra@gmail.com>
1029
1030	* elf-m10200.c (mn10200_elf_relocate_section): Return int.
1031	* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1032	* elf32-arc.c (elf_arc_relocate_section): Likewise.
1033	* elf32-arm.c (elf32_arm_relocate_section): Likewise.
1034	* elf32-avr.c (elf32_avr_relocate_section): Likewise.
1035	* elf32-bfin.c (bfin_relocate_section): Likewise.
1036	(bfinfdpic_relocate_section): Likewise.
1037	* elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
1038	* elf32-cris.c (cris_elf_relocate_section): Likewise.
1039	* elf32-crx.c (elf32_crx_relocate_section): Likewise.
1040	* elf32-csky.c (csky_elf_relocate_section): Likewise.
1041	* elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1042	* elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
1043	* elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1044	* elf32-frv.c (elf32_frv_relocate_section): Likewise.
1045	* elf32-ft32.c (ft32_elf_relocate_section): Likewise.
1046	* elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1047	* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1048	* elf32-i386.c (elf_i386_relocate_section): Likewise.
1049	* elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1050	* elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1051	* elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1052	* elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1053	* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1054	* elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1055	* elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise.
1056	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1057	* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1058	* elf32-mep.c (mep_elf_relocate_section): Likewise.
1059	* elf32-metag.c (elf_metag_relocate_section): Likewise.
1060	* elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1061	* elf32-moxie.c (moxie_elf_relocate_section): Likewise.
1062	* elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1063	* elf32-mt.c (mt_elf_relocate_section): Likewise.
1064	* elf32-nds32.c (nds32_elf_relocate_section): Likewise.
1065	* elf32-nios2.c (nios2_elf32_relocate_section): Likewise.
1066	* elf32-or1k.c (or1k_elf_relocate_section): Likewise.
1067	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1068	* elf32-pru.c (pru_elf32_relocate_section): Likewise.
1069	* elf32-rl78.c (rl78_elf_relocate_section): Likewise.
1070	* elf32-rx.c (rx_elf_relocate_section): Likewise.
1071	* elf32-s390.c (elf_s390_relocate_section): Likewise.
1072	* elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1073	(_bfd_score_elf_relocate_section): Likewise.
1074	* elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise.
1075	* elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1076	* elf32-sh.c (sh_elf_relocate_section): Likewise.
1077	* elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1078	* elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
1079	* elf32-v850.c (v850_elf_relocate_section): Likewise.
1080	* elf32-vax.c (elf_vax_relocate_section): Likewise.
1081	* elf32-visium.c (visium_elf_relocate_section): Likewise.
1082	* elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1083	* elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1084	* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1085	* elf32-z80.c (z80_elf_relocate_section): Likewise.
1086	* elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1087	(elf64_alpha_relocate_section): Likewise.
1088	* elf64-bpf.c (bpf_elf_relocate_section): Likewise.
1089	* elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1090	* elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
1091	* elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1092	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1093	* elf64-s390.c (elf_s390_relocate_section): Likewise.
1094	* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1095	* elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise.
1096	* elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1097	* elfnn-riscv.c (riscv_elf_relocate_section): Likewise.
1098	* elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1099	* elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise.
1100	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1101	* elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise.
1102	* elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
1103	* elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise.
1104
11052021-03-26  Keith Seitz  <keiths@redhat.com>
1106
1107	* elfcore.h (_bfd_elf_core_find_build_id): Seek file
1108	offset of program headers after calling elf_read_notes.
1109
11102021-03-23  Jan Beulich  <jbeulich@suse.com>
1111
1112	* dwarf2.c (read_indexed_string): Rename index to idx.
1113
11142021-03-22  Martin Liska  <mliska@suse.cz>
1115
1116	* bfd-in.h (startswith): Add startswith function.
1117	(CONST_STRNEQ): Remove.
1118	* bfd-in2.h (startswith): Regenerate with make headers.
1119	* archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
1120	(_bfd_slurp_extended_name_table): Likewise.
1121	* archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
1122	* bfd.c (bfd_get_sign_extend_vma): Likewise.
1123	(bfd_convert_section_size): Likewise.
1124	(bfd_convert_section_contents): Likewise.
1125	* coff-stgo32.c (go32exe_create_stub): Likewise.
1126	(go32exe_check_format): Likewise.
1127	* coffcode.h (styp_to_sec_flags): Likewise.
1128	(GNU_DEBUGALTLINK): Likewise.
1129	* coffgen.c (_bfd_coff_section_already_linked): Likewise.
1130	(coff_gc_sweep): Likewise.
1131	(bfd_coff_gc_sections): Likewise.
1132	* cofflink.c (coff_link_add_symbols): Likewise.
1133	(process_embedded_commands): Likewise.
1134	* compress.c (bfd_is_section_compressed_with_header): Likewise.
1135	(bfd_init_section_decompress_status): Likewise.
1136	* dwarf2.c (find_debug_info): Likewise.
1137	(place_sections): Likewise.
1138	* ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
1139	* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
1140	* elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1141	(assign_section_numbers): Likewise.
1142	(elfcore_grok_win32pstatus): Likewise.
1143	* elf32-arm.c (cmse_scan): Likewise.
1144	(elf32_arm_gc_mark_extra_sections): Likewise.
1145	(elf32_arm_size_dynamic_sections): Likewise.
1146	(is_arm_elf_unwind_section_name): Likewise.
1147	* elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
1148	* elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
1149	* elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
1150	* elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
1151	* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
1152	* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1153	* elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
1154	* elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
1155	* elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
1156	* elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
1157	* elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
1158	* elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
1159	* elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
1160	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1161	* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
1162	* elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
1163	* elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
1164	* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1165	* elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
1166	(elf32_tic6x_size_dynamic_sections): Likewise.
1167	* elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
1168	* elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
1169	(xtensa_is_insntable_section): Likewise.
1170	(xtensa_is_littable_section): Likewise.
1171	(xtensa_is_proptable_section): Likewise.
1172	(xtensa_property_section_name): Likewise.
1173	(xtensa_callback_required_dependence): Likewise.
1174	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
1175	* elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
1176	* elf64-ia64-vms.c (is_unwind_section_name): Likewise.
1177	(get_reloc_section): Likewise.
1178	(elf64_ia64_size_dynamic_sections): Likewise.
1179	(elf64_ia64_object_p): Likewise.
1180	* elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
1181	* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
1182	* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
1183	* elflink.c (elf_link_add_object_symbols): Likewise.
1184	(_bfd_elf_gc_mark_extra_sections): Likewise.
1185	(bfd_elf_parse_eh_frame_entries): Likewise.
1186	(_bfd_elf_section_already_linked): Likewise.
1187	* elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
1188	* elfnn-ia64.c (is_unwind_section_name): Likewise.
1189	(elfNN_ia64_size_dynamic_sections): Likewise.
1190	(elfNN_ia64_object_p): Likewise.
1191	* elfxx-mips.c (FN_STUB_P): Likewise.
1192	(CALL_STUB_P): Likewise.
1193	(CALL_FP_STUB_P): Likewise.
1194	(_bfd_mips_elf_section_from_shdr): Likewise.
1195	(_bfd_mips_elf_fake_sections): Likewise.
1196	(_bfd_mips_elf_size_dynamic_sections): Likewise.
1197	(_bfd_mips_final_write_processing): Likewise.
1198	(_bfd_mips_elf_final_link): Likewise.
1199	* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
1200	* elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
1201	(elf_x86_64_is_reloc_section): Likewise.
1202	* hpux-core.c (thread_section_p): Likewise.
1203	* libcoff.h (bfd_pei_p): Likewise.
1204	* linker.c (REAL): Likewise.
1205	(unwrap_hash_lookup): Likewise.
1206	(_bfd_generic_link_add_one_symbol): Likewise.
1207	* mmo.c (mmo_internal_write_section): Likewise.
1208	* osf-core.c (osf_core_core_file_p): Likewise.
1209	* pef.c (bfd_pef_print_symbol): Likewise.
1210	* pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
1211	* som.c (som_slurp_symbol_table): Likewise.
1212	(som_slurp_armap): Likewise.
1213	* wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
1214
12152021-03-22  Jan Beulich  <jbeulich@suse.com>
1216
1217	* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
1218	language translation wrapping to _bfd_error_handler()
1219	invocations.
1220
12212021-03-21  Alan Modra  <amodra@gmail.com>
1222
1223	* bfd-in.h (startswith): New inline.
1224	(CONST_STRNEQ): Use startswith.
1225	* bfd-in2.h: Regenerate.
1226
12272021-03-20  Alan Modra  <amodra@gmail.com>
1228
1229	PR 27590
1230	* elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE
1231	test for .gnu.debuglto*.
1232
12332021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1234
1235	PR ld/27590
1236	* elf.c (_bfd_elf_make_section_from_shdr): Treat
1237	.gnu.debuglto_.debug_ section as debugging section unless it is
1238	marked with SHF_EXCLUDE.
1239	* elflink.c (elf_create_symbuf): Revert commit 994b2513281.
1240	(bfd_elf_match_symbols_in_sections): Ignore section symbols when
1241	matching non-debugging sections or linkonce section with comdat
1242	section.
1243
12442021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1245
1246	PR ld/27587
1247	* dwarf2.c (read_attribute_value): Check version >= 3 for
1248	DW_FORM_ref_addr.
1249
12502021-03-16  Nick Clifton  <nickc@redhat.com>
1251
1252	* peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer
1253	overrun by using sizeof of the destination x_fname field as the
1254	limit for a memcpy.
1255
12562021-03-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
1257
1258	* elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc.
1259
12602021-03-12  Clément Chigot  <clement.chigot@atos.net>
1261
1262	* reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE,
1263	BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD,
1264	BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE,
1265	BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M,
1266	BFD_RELOC_PPC64_TLS_ML): New relocations.
1267	* bfd-in2.h: Regenerate.
1268	* libbfd.h: Regenerate.
1269	* coff-rs6000.c (xcoff_calculate_relocation): Call
1270	xcoff_reloc_type_tls for TLS relocations.
1271	(xcoff_howto_table): Implement TLS relocations.
1272	(_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations.
1273	(xcoff_reloc_type_tls): New function.
1274	* coff64-rs6000.c (xcoff_calculate_relocation): Likewise.
1275	(xcoff_howto_table): Likewise.
1276	(_bfd_xcoff_reloc_type_lookup): Likewise.
1277	* coffcode.h (sec_to_styp_flags): Handle TLS sections.
1278	(styp_to_sec_flags): Likewise.
1279	(coff_compute_section_file_positions): Avoid file offset
1280	optimisation for .data when the previous section is .tdata.
1281	(coff_write_object_contents): Handle TLS sections.
1282	* coffswap.h (coff_swap_aouthdr_out): Add support for
1283	new fields in aouthdr.
1284	* libxcoff.h (xcoff_reloc_type_tls): Add prototype.
1285	* xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL.
1286	(xcoff_need_ldrel_p): Add cases for TLS relocations.
1287	(xcoff_create_ldrel): Add l_symndx for TLS sections.
1288
12892021-03-12  Clément Chigot  <clement.chigot@atos.net>
1290
1291	* reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO):
1292	New relocations.
1293	* bfd-in2.h: Regenerate.
1294	* libbfd.h: Regenerate.
1295	* coff-rs6000.c (xcoff_calculate_relocation): Call
1296	xcoff_reloc_type_toc for R_TOCU and R_TOCL.
1297	(xcoff_howto_table): Remove src_mask for TOC relocations.
1298	Add R_TOCU and R_TOCL howtos.
1299	(_bfd_xcoff_reloc_type_lookup): Add cases for
1300	BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO.
1301	(xcoff_reloc_type_toc): Compute the whole offset.
1302	Implement R_TOCU and R_TOCL.
1303	* coff64-rs6000.c (xcoff64_calculate_relocation):
1304	Likewise.
1305	(xcoff64_howto_table): Likewise.
1306	(xcoff64_reloc_type_lookup): Likewise.
1307
13082021-03-12  Clément Chigot  <clement.chigot@atos.net>
1309
1310	* coff-rs6000.c (xcoff_calculate_relocation): Correct and
1311	add new relocations.
1312	(xcoff_howto_table): Likewise.
1313	(xcoff_rtype2howto): Increase r_type maximum value.
1314	(xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead
1315	of create a new one from scratch.  Enable only some relocations
1316	to have a changing r_size.
1317	* coff64-rs6000.c (xcoff64_calculate_relocation): Likewise.
1318	(xcoff64_howto_table): Likewise.
1319	(xcoff64_rtype2howto): Likewise.
1320	(xcoff64_ppc_relocate_section): Likewise.
1321	* libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value.
1322
13232021-03-12  Clément Chigot  <clement.chigot@atos.net>
1324
1325	* coff64-rs6000.c (xcoff64_ppc_relocate_section): Move.
1326
13272021-03-12  Clément Chigot  <clement.chigot@atos.net>
1328
1329	* coff64-rs6000.c (xcoff64_write_object_contents): Remove.
1330	* coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620
1331	support for o_cputype field.  Avoid creating an empty a.out header
1332	for XCOFF64.
1333
13342021-03-12  Clément Chigot  <clement.chigot@atos.net>
1335
1336	* coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add
1337	missing smclass.
1338
13392021-03-11  Nelson Chu  <nelson.chu@sifive.com>
1340
1341	* elfnn-riscv.c (riscv_elf_link_hash_table): New boolean
1342	restart_relax, used to check if we need to run the whole
1343	relaxations from relax pass 0 to 2 again.
1344	(riscv_elf_link_hash_table_create): Init restart_relax to FALSE.
1345	(_bfd_riscv_relax_align): Remove obsolete sec_flg0 set.
1346	(_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code.
1347	(bfd_elfNN_riscv_restart_relax_sections): New function.  Called by
1348	after_allocation to check if we need to run the whole relaxations again.
1349	(_bfd_riscv_relax_section): We will only enter into the relax pass 3
1350	when the restart_relax is FALSE; At last set restart_relax to TRUE if
1351	again is TRUE, too.
1352	* elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration.
1353	(bfd_elf64_riscv_restart_relax_sections): Likewise.
1354
13552021-03-10  Jan Beulich  <jbeulich@suse.com>
1356
1357	* cofflink.c (_bfd_coff_write_global_sym): Range-check symbol
1358	offset.
1359
13602021-03-10  Alan Modra  <amodra@gmail.com>
1361	    Jan Beulich  <jbeulich@suse.com>
1362
1363	* elf.c (bfd_elf_generic_reloc): Make references between debug
1364	sections use section relative values.
1365
13662021-03-09  Jan Beulich  <jbeulich@suse.com>
1367
1368	* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA.
1369
13702021-03-05  H.J. Lu  <hongjiu.lu@intel.com>
1371
1372	PR ld/27425
1373	PR ld/27432
1374	* bfd.c (_bfd_get_link_info): New function.
1375	* elf-bfd.h (output_elf_obj_tdata): Add link_info.
1376	(elf_link_info): New.
1377	* libbfd-in.h (_bfd_get_link_info): New prototype.
1378	* coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for
1379	R_AMD64_IMAGEBASE when generating x86-64 ELF executable.
1380	* pe-x86_64.c: Include "coff/internal.h" and "libcoff.h".
1381	(pex64_link_add_symbols): New function.
1382	(coff_bfd_link_add_symbols): New macro.
1383	* libbfd.h: Regenerated.
1384
13852021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1386	    Andrew Burgess  <andrew.burgess@embecosm.com>
1387
1388	* elf-bfd.h (elfcore_write_riscv_csr): Declare.
1389	* elf.c (elfcore_grok_riscv_csr): New function.
1390	(elfcore_grok_note): Handle NT_RISCV_CSR.
1391	(elfcore_write_riscv_csr): New function.
1392	(elfcore_write_register_note): Handle '.reg-riscv-csr'.
1393
13942021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1395	    Andrew Burgess  <andrew.burgess@embecosm.com>
1396
1397	* elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define.
1398	(PRPSINFO_PR_PSARGS_LENGTH): Define.
1399	(riscv_write_core_note): New function.
1400	(riscv_elf_grok_psinfo): Make use of two new length defines.
1401	(elf_backend_write_core_note): Define.
1402
14032021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1404	    Andrew Burgess  <andrew.burgess@embecosm.com>
1405
1406	* elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
1407	* elf.c (elfcore_grok_gdb_tdesc): New function.
1408	(elfcore_grok_note): Handle NT_GDB_TDESC.
1409	(elfcore_write_gdb_tdesc): New function.
1410	(elfcore_write_register_note): Handle NT_GDB_TDESC.
1411
14122021-03-05  Nick Clifton  <nickc@redhat.com>
1413
1414	PR 27521
1415	* dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
1416	(read_indexed_string): Placeholder function.
1417	(read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
1418	forms.
1419
14202021-03-05  Alan Modra  <amodra@gmail.com>
1421
1422	* reloc.c (bfd_perform_relocation): Revert 2021-01-12 and
1423	2020-09-16 changes.
1424	* coff-x86_64.c (coff_amd64_reloc): Do more or less the same
1425	adjustments here instead.  Separate pc-relative adjustments
1426	from symbol related adjustments.  Tidy comments and formatting.
1427
14282021-03-04  Jan Beulich  <jbeulich@suse.com>
1429
1430	* coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in
1431	final PE images.
1432
14332021-03-04  Alan Modra  <amodra@gmail.com>
1434
1435	* rs6000-core.c (rs6000coff_core_p): Correct prototype.
1436
14372021-03-03  Alan Modra  <amodra@gmail.com>
1438
1439	PR 27500
1440	* elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop
1441	processing not when start/stop symbol section is unmarked but
1442	on first time a start/stop symbol is processed.
1443
14442021-03-03  Alan Modra  <amodra@gmail.com>
1445
1446	* reloc.c: Include x86_64.h rather than internal.h.
1447
14482021-03-02  Nick Clifton  <nickc@redhat.com>
1449
1450	PR 27484
1451	* dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate
1452	function and variable tags and a second time to resolve their
1453	attributes.
1454
14552021-03-02  Nick Alcock  <nick.alcock@oracle.com>
1456
1457	* elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount.
1458
14592021-03-02  Alan Modra  <amodra@gmail.com>
1460
1461	PR 27451
1462	* elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized
1463	linker defined start/stop symbols when start_stop_gc.
1464
14652021-03-02  Alan Modra  <amodra@gmail.com>
1466
1467	* elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got
1468	indirect to pc-relative or toc-relative for undefined symbols.
1469
14702021-03-01  Alan Modra  <amodra@gmail.com>
1471	    Fangrui Song <maskray@google.com>
1472
1473	* elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker
1474	defined start/stop symbols when start_stop_gc.
1475	(bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
1476	(bfd_elf_define_start_stop): Don't modify ldscript_def syms.
1477	* linker.c (bfd_generic_define_start_stop): Likewise.
1478
14792021-02-25  Alan Modra  <amodra@gmail.com>
1480
1481	PR 27441
1482	* elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak.
1483	* elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and
1484	use when deciding an as-needed library should be loaded instead
1485	of using the binding of the library definition.
1486
14872021-02-24  Alan Modra  <amodra@gmail.com>
1488
1489	PR 27459
1490	* coff-stgo32.c (go32exe_check_format): Sanity check size of
1491	header to avoid a buffer overflow.
1492
14932021-02-22  Alan Modra  <amodra@gmail.com>
1494
1495	* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
1496	* coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
1497
14982021-02-19  Nelson Chu  <nelson.chu@sifive.com>
1499
1500	PR 27158
1501	* elfnn-riscv.c (perform_relocation): Updated encoding macros.
1502	(_bfd_riscv_relax_call): Likewise.
1503	(_bfd_riscv_relax_lui): Likewise.
1504	* elfxx-riscv.c (howto_table): Likewise.
1505
15062021-02-18  Nelson Chu  <nelson.chu@sifive.com>
1507
1508	* Makefile.am: Added cpu-riscv.h.
1509	* Makefile.in: Regenerated.
1510	* po/SRC-POTFILES.in: Regenerated.
1511	* cpu-riscv.h: Added to support spec versions controlling.
1512	Also added extern arrays and functions for cpu-riscv.c.
1513	(enum riscv_spec_class): Define all spec classes here uniformly.
1514	(struct riscv_spec): Added for all specs.
1515	(RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
1516	(RISCV_GET_SPEC_NAME): Likewise.
1517	(RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
1518	(RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
1519	(RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
1520	* cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
1521	(riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
1522	(riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
1523	(riscv_priv_specs): Moved below.
1524	(riscv_get_priv_spec_class_from_numbers): Likewise, updated.
1525	(riscv_isa_specs): Moved from include/opcode/riscv.h.
1526	* elfnn-riscv.c: Included cpu-riscv.h.
1527	(riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
1528	* elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
1529	(RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
1530	* elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
1531
15322021-02-17  Alan Modra  <amodra@gmail.com>
1533
1534	* wasm-module.c: Guard include of limits.h.
1535	(CHAR_BIT): Provide backup define.
1536	(wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
1537	Correct signed overflow checking.
1538
15392021-02-17  Nelson Chu  <nelson.chu@sifive.com>
1540
1541	PR 27200
1542	* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
1543	copying the elf flags from input BFD to output BFD, until we have
1544	checked if the input BFD has no code section or not.  Also fix the
1545	problem that we only check the first section rather than the entire
1546	sections for input BFD.
1547
15482021-02-16  Alan Modra  <amodra@gmail.com>
1549
1550	* libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
1551	(_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
1552
15532021-02-15  Jan Beulich  <jbeulich@suse.com>
1554
1555	* doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
1556	* doc/Makefile.in: Re-generate.
1557
15582021-02-15  Alan Modra  <amodra@gmail.com>
1559
1560	* elf32-nds32.c (nds32_get_section_contents): Replace
1561	bfd_malloc_and_get_section with bfd_get_full_section_contents.
1562	(nds32_elf_relax_delete_blanks): Init contents.
1563	(nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
1564
15652021-02-15  Alan Modra  <amodra@gmail.com>
1566
1567	* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
1568	bfd_get_full_section_contents.
1569
15702021-02-14  Alan Modra  <amodra@gmail.com>
1571
1572	* elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
1573	all fixes to bfd_generic_get_relocated_section_contents since this
1574	function was split out.
1575
15762021-02-11  Alan Modra  <amodra@gmail.com>
1577
1578	* config.bfd: Remove ia64 from obsolete list.
1579
15802021-02-11  Alan Modra  <amodra@gmail.com>
1581
1582	PR ld/22269
1583	* elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
1584
15852021-02-11  Alan Modra  <amodra@gmail.com>
1586
1587	PR 27294
1588	* elf32-avr.c (avr_elf32_load_records_from_section): Use
1589	bfd_malloc_and_get_section.  Use bfd_byte* vars and remove then
1590	unnecessary casts.
1591
15922021-02-11  Alan Modra  <amodra@gmail.com>
1593
1594	PR 27291
1595	* section.c (bfd_get_section_contents): Avoid possible overflow
1596	when range checking offset and count.
1597	(bfd_set_section_contents): Likewise.
1598
15992021-02-03  Nick Alcock  <nick.alcock@oracle.com>
1600
1601	* configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
1602	favour of LIBINTL.
1603	* configure: Regenerated.
1604
16052021-02-09  Alan Modra  <amodra@gmail.com>
1606
1607	* config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
1608	* configure.ac: Delete symbian entries.
1609	* elf-bfd.h (enum elf_target_os): Delete is_symbian.
1610	* elf32-arm.c: Remove symbian support.  Formatting.
1611	* targets.c: Delete symbian entries.
1612	* configure: Regenerate.
1613
16142021-02-04  H.J. Lu  <hongjiu.lu@intel.com>
1615
1616	PR ld/19609
1617	* elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
1618	info when failed to convert GOTPCREL relocation.
1619
16202021-02-04  Nelson Chu  <nelson.chu@sifive.com>
1621
1622	* elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
1623
16242021-02-04  Alan Modra  <amodra@gmail.com>
1625
1626	PR 27311
1627	* elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
1628	libraries for IR references on pass over libraries after LTO
1629	recompilation.
1630
16312021-02-03  Alan Modra  <amodra@gmail.com>
1632
1633	PR 27311
1634	* elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
1635	(elf_link_add_object_symbols): Here too.  Don't pull in as-needed
1636	libraries when H is an indirect symbol after calling
1637	_bfd_elf_add_default_symbol.
1638
16392021-02-03  Alan Modra  <amodra@gmail.com>
1640
1641	PR 27311
1642	* elflink.c (_bfd_elf_add_default_symbol): Clear override when
1643	undecorated symbol will have a different version.
1644
16452021-02-02  Alan Modra  <amodra@gmail.com>
1646
1647	PR 27311
1648	* elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
1649	Use when handling default versioned symbol.  Rename existing
1650	override variable to nondef_override and use for non-default
1651	versioned symbol.
1652	(elf_link_add_object_symbols): Adjust call to suit.  Don't
1653	pull in as-needed libraries when override is set.
1654
16552021-02-01  Emery Hemingway  <ehmry@posteo.net>
1656
1657	* config.bfd: Add *-*-genode* as a target for AArch64 and x86.
1658
16592021-02-01  Egor Vishnyakov  <lenvampir@yandex.ru>
1660
1661	PR 27254
1662	* elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
1663	offset for the R_RL78_RH_SADDR relocation.
1664
16652021-01-29  Alan Modra  <amodra@gmail.com>
1666
1667	PR 27271
1668	* elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
1669	on symbols defined in absolute or other special sections.
1670
16712021-01-28  Alan Modra  <amodra@gmail.com>
1672
1673	PR 27259
1674	* elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
1675	prevent endless looping of linked-to sections.
1676
16772020-12-17  Mihails Strasuns  <mihails.strasuns@intel.com>
1678
1679	* bfd-elf.h (elfcore_write_file_note): New function.
1680	* elf.c (elfcore_write_file_note): New function.
1681
16822021-01-26  Alan Modra  <amodra@gmail.com>
1683
1684	* elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
1685
16862021-01-24  H.J. Lu  <hongjiu.lu@intel.com>
1687
1688	PR binutils/27231
1689	* dwarf2.c (read_rnglists): Ignore empty range when parsing line
1690	number tables.
1691
16922021-01-23  H.J. Lu  <hongjiu.lu@intel.com>
1693
1694	PR binutils/27231
1695	* dwarf2.c (read_rnglists): Advance rngs_ptr after
1696	_bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
1697
16982021-01-20  Alan Modra  <amodra@gmail.com>
1699
1700	* elf32-ppc.c: Delete outdated comment.
1701	(TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
1702	* elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
1703
17042021-01-20  Alan Modra  <amodra@gmail.com>
1705
1706	* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
1707	section symbols are present.
1708
17092021-01-19  Alan Modra  <amodra@gmail.com>
1710
1711	* elf64-ppc.c (elf_hash_entry): New inline function.  Use
1712	throughout to replace casts.
1713	(branch_reloc_hash_match): Remove const from params.
1714	(use_local_plt): New function.
1715	(allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
1716	(build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
1717	Use use_local_plt.
1718	* elf32-ppc.c (use_local_plt): New function.
1719	(allocate_dynrelocs, ppc_elf_relocate_section),
1720	(write_global_sym_plt): Use use_local_plt.
1721
17222021-01-17  H.J. Lu  <hongjiu.lu@intel.com>
1723
1724	PR ld/27193
1725	* elflink.c (elf_create_symbuf): Also ignore section symbols.
1726
17272021-01-16  H.J. Lu  <hongjiu.lu@intel.com>
1728
1729	PR ld/23169
1730	* elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
1731	check pointer_equality_needed.
1732
17332021-01-15  H.J. Lu  <hongjiu.lu@intel.com>
1734
1735	* elf-linker-x86.h (elf_linker_x86_params): Add
1736	report_relative_reloc.
1737	* elf32-i386.c (elf_i386_relocate_section): Call
1738	_bfd_x86_elf_link_report_relative_reloc to report relative
1739	relocations for -z report-relative-reloc.
1740	(elf_i386_finish_dynamic_symbol): Likewse.
1741	* elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
1742	(elf_x86_64_finish_dynamic_symbol): Likewse.
1743	* elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
1744	function.
1745	* elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
1746	prototype.
1747
17482021-01-16  Alan Modra  <amodra@gmail.com>
1749
1750	* compress.c (decompress_contents): Tidy inflateEnd result test.
1751
17522021-01-16  Alan Modra  <amodra@gmail.com>
1753
1754	PR 26002
1755	* elflink.c (elf_link_output_extsym): Use version 1 in
1756	.gnu.version for undefined unversioned symbols.
1757
17582021-01-15  Nelson Chu  <nelson.chu@sifive.com>
1759
1760	* elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
1761	caused the by previous commit accidentally.
1762
17632021-01-15  Nelson Chu  <nelson.chu@sifive.com>
1764
1765	* elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
1766	also aligned the code.
1767
17682021-01-15  Nelson Chu  <nelson.chu@sifive.com>
1769
1770	* elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
1771
17722021-01-15  Nelson Chu  <nelson.chu@sifive.com>
1773
1774	* elfnn-riscv.c: Comments tidy and improvement.
1775	* elfxx-riscv.c: Likewise.
1776	* elfxx-riscv.h: Likewise.
1777
17782021-01-14  H.J. Lu  <hongjiu.lu@intel.com>
1779
1780	PR ld/26688
1781	* elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
1782	section for R_BFIN_FUNCDESC.
1783
17842021-01-14  Nick Clifton  <nickc@redhat.com>
1785
1786	* elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
1787
17882021-01-13  Alan Modra  <amodra@gmail.com>
1789
1790	* Makefile.in: Regenerate.
1791	* doc/Makefile.in: Regenerate.
1792
17932021-01-13  Alan Modra  <amodra@gmail.com>
1794
1795	PR 27160
1796	* section.c (struct bfd_section): Remove pattern field.
1797	(BFD_FAKE_SECTION): Adjust to suit.
1798	* bfd-in2.h: Regenerate.
1799	* elflink.c (compare_link_order, elf_fixup_link_order): Delete.
1800	(bfd_elf_final_link): Don't call elf_fixup_link_order.
1801
18022021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
1803
1804	PR binutils/26792
1805	* configure.ac: Use GNU_MAKE_JOBSERVER.
1806	* aclocal.m4: Regenerated.
1807	* configure: Likewise.
1808
18092021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
1810
1811	PR ld/27171
1812	* reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
1813	R_AMD64_DIR32 relocations for PE/x86-64 inputs.
1814
18152021-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1816
1817	PR ld/27173
1818	* configure: Regenerated.
1819
18202021-01-11  Nick Clifton  <nickc@redhat.com>
1821
1822	* po/fr.po: Updated French translation.
1823	* po/pt.po: Updated Portuguese translation.
1824	* po/sr.po: Updated Serbian translation.
1825	* po/uk.po: Updated Ukranian translation.
1826
18272021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
1828
1829	* configure: Regenerated.
1830
18312021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
1832
1833	PR ld/27166
1834	* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
1835	-z lam-u48 and -z lam-u57.
1836
18372021-01-09  Nick Clifton  <nickc@redhat.com>
1838
1839	* version.m4: Change to 2.36.50.
1840	* configure: Regenerate.
1841	* po/bfd.pot: Regenerate.
1842
18432021-01-09  Nick Clifton  <nickc@redhat.com>
1844
1845	* 2.36 release branch crated.
1846
18472021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
1848
1849	* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
1850	LAM_U57 when setting LAM_U48.
1851
18522021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
1853
1854	PR ld/26256
1855	PR ld/27160
1856	* elflink.c (elf_fixup_link_order): Verify that fixing up
1857	SHF_LINK_ORDER doesn't increase the output section size.
1858
18592021-01-09  Alan Modra  <amodra@gmail.com>
1860
1861	* configure: Regenerate.
1862
18632021-01-07  Samuel Thibault  <samuel.thibault@gnu.org>
1864
1865	* configure: Regenerate.
1866
18672021-01-07  H.J. Lu  <hongjiu.lu@intel.com>
1868
1869	PR 27109
1870	* aix386-core.c (core_aix386_vec): Initialize
1871	keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
1872	* aout-target.h (MY (vec)): Likewise.
1873	* binary.c (binary_vec): Likewise.
1874	* cisco-core.c (core_cisco_be_vec): Likewise.
1875	(core_cisco_le_vec): Likewise.
1876	* coff-alpha.c (alpha_ecoff_le_vec): Likewise.
1877	* coff-i386.c (TARGET_SYM): Likewise.
1878	(TARGET_SYM_BIG): Likewise.
1879	* coff-ia64.c (TARGET_SYM): Likewise.
1880	* coff-mips.c (mips_ecoff_le_vec): Likewise.
1881	(mips_ecoff_be_vec): Likewise.
1882	(mips_ecoff_bele_vec): Likewise.
1883	* coff-rs6000.c (rs6000_xcoff_vec): Likewise.
1884	(powerpc_xcoff_vec): Likewise.
1885	* coff-sh.c (sh_coff_small_vec): Likewise.
1886	(sh_coff_small_le_vec): Likewise.
1887	* coff-tic30.c (tic30_coff_vec): Likewise.
1888	* coff-tic54x.c (tic54x_coff0_vec): Likewise.
1889	(tic54x_coff0_beh_vec): Likewise.
1890	(tic54x_coff1_vec): Likewise.
1891	(tic54x_coff1_beh_vec): Likewise.
1892	(tic54x_coff2_vec): Likewise.
1893	(tic54x_coff2_beh_vec): Likewise.
1894	* coff-x86_64.c (TARGET_SYM): Likewise.
1895	(TARGET_SYM_BIG): Likewise.
1896	* coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
1897	(rs6000_xcoff64_aix_vec): Likewise.
1898	* coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
1899	(CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
1900	(CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
1901	* elfxx-target.h (TARGET_BIG_SYM): Likewise.
1902	(TARGET_LITTLE_SYM): Likewise.
1903	* hppabsd-core.c (core_hppabsd_vec): Likewise.
1904	* hpux-core.c (core_hpux_vec): Likewise.
1905	* i386msdos.c (i386_msdos_vec): Likewise.
1906	* ihex.c (ihex_vec): Likewise.
1907	* irix-core.c (core_irix_vec): Likewise.
1908	* mach-o-target.c (TARGET_NAME): Likewise.
1909	* mmo.c (mmix_mmo_vec): Likewise.
1910	* netbsd-core.c (core_netbsd_vec): Likewise.
1911	* osf-core.c (core_osf_vec): Likewise.
1912	* pdp11.c (MY (vec)): Likewise.
1913	* pef.c (pef_vec): Likewise.
1914	(pef_xlib_vec): Likewise.
1915	* plugin.c (plugin_vec): Likewise.
1916	* ppcboot.c (powerpc_boot_vec): Likewise.
1917	* ptrace-core.c (core_ptrace_vec): Likewise.
1918	* sco5-core.c (core_sco5_vec): Likewise.
1919	* som.c (hppa_som_vec): Likewise.
1920	* srec.c (srec_vec): Likewise.
1921	(symbolsrec_vec): Likewise.
1922	* tekhex.c (tekhex_vec): Likewise.
1923	* trad-core.c (core_trad_vec): Likewise.
1924	* verilog.c (verilog_vec): Likewise.
1925	* vms-alpha.c (alpha_vms_vec): Likewise.
1926	* vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
1927	* wasm-module.c (wasm_vec): Likewise.
1928	* xsym.c (sym_vec): Likewise.
1929	* elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
1930	isn't set.
1931	(elf_map_symbols): Don't include ignored section symbols.
1932	* elfcode.h (elf_slurp_symbol_table): Also set
1933	BSF_SECTION_SYM_USED on STT_SECTION symbols.
1934	* elflink.c (bfd_elf_final_link): Generated section symbols only
1935	when emitting relocations or reqired.
1936	* elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
1937	* syms.c (BSF_SECTION_SYM_USED): New.
1938	* targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
1939	(bfd_target): Add keep_unused_section_symbols.
1940	(bfd_keep_unused_section_symbols): New.
1941	* bfd-in2.h: Regenerated.
1942
19432021-01-07  Nick Clifton  <nickc@redhat.com>
1944
1945	PR 25713
1946	* bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
1947	absolute paths and check to see if they are longer than MAX_PATH.
1948
19492021-01-07  Philipp Tomsich  <prt@gnu.org>
1950
1951	* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
1952
19532021-01-07  Claire Xenia Wolf  <claire@symbioticeda.com>
1954	    Jim Wilson  <jimw@sifive.com>
1955	    Andrew Waterman  <andrew@sifive.com>
1956	    Maxim Blinov  <maxim.blinov@embecosm.com>
1957	    Kito Cheng  <kito.cheng@sifive.com>
1958	    Nelson Chu  <nelson.chu@sifive.com>
1959
1960	* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
1961
19622021-01-06  H.J. Lu  <hongjiu.lu@intel.com>
1963
1964	* elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
1965	(bfinfdpic_check_relocs): Likewise.
1966
19672021-01-06  Alan Modra  <amodra@gmail.com>
1968
1969	* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
1970	on unknown r_type.
1971	* elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
1972
19732021-01-06  Alan Modra  <amodra@gmail.com>
1974
1975	* config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
1976	(sparc64-*-solaris2*): Add sparc_elf64_vec and
1977	sparc_elf32_vec.
1978
19792021-01-06  Marcus Comstedt  <marcus@mc.pp.se>
1980
1981	* config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
1982	riscvbe*-*-*.  Also added riscv_elf[32|64]_be_vec.
1983	* configure.ac: Handle riscv_elf[32|64]_be_vec.
1984	* configure: Regenerate.
1985	* elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
1986	riscv_is_insn_reloc.
1987	(riscv_get_insn): RISC-V instructions are always little endian, but
1988	bfd_get may be used for big-endian, so add new riscv_get_insn to handle
1989	the insturctions.
1990	(riscv_put_insn): Likewsie.
1991	(riscv_is_insn_reloc): Check if we are relocaing an instruction.
1992	(perform_relocation): Call riscv_is_insn_reloc to decide if we should
1993	use riscv_[get|put]_insn or bfd_[get|put].
1994	(riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
1995	or bfd_[get|put]l16 for code.
1996	(riscv_elf_relocate_section): Likewise.
1997	(riscv_elf_finish_dynamic_symbol): Likewise.
1998	(riscv_elf_finish_dynamic_sections): Likewise.
1999	(_bfd_riscv_relax_call): Likewise.
2000	(_bfd_riscv_relax_lui): Likewise.
2001	(_bfd_riscv_relax_align): Likewise.
2002	(_bfd_riscv_relax_pc): Likewise.
2003	(riscv_elf_object_p): Handled for big endian.
2004	(TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
2005	* targets.c: Add riscv_elf[32|64]_be_vec.
2006	(_bfd_target_vector): Likewise.
2007
20082021-01-05  Alan Modra  <amodra@gmail.com>
2009
2010	* elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
2011	for relocatable executable.
2012
20132021-01-05  Alan Modra  <amodra@gmail.com>
2014
2015	* vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
2016
20172021-01-05  Nelson Chu  <nelson.chu@sifive.com>
2018
2019	* elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
2020	make sure gp symbol is output as a dynamic symbol.
2021
20222021-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2023
2024	PR ld/26256
2025	* elflink.c (compare_link_order): Place unordered sections before
2026	ordered sections.
2027	(elf_fixup_link_order): Add a link info argument.  Allow mixed
2028	ordered and unordered input sections for non-relocatable link.
2029	Sort the consecutive bfd_indirect_link_order sections with the
2030	same pattern.  Change the offsets of the bfd_indirect_link_order
2031	sections only.
2032	(bfd_elf_final_link): Pass info to elf_fixup_link_order.
2033	* section.c (bfd_section): Add pattern.
2034	(BFD_FAKE_SECTION): Initialize pattern to NULL.
2035	* bfd-in2.h: Regenerated.
2036
20372021-01-04  Alexander Fedotov  <alfedotov@gmail.com>
2038
2039	* elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
2040	of private flags with 0x.
2041	* elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
2042
20432021-01-04  Alan Modra  <amodra@gmail.com>
2044
2045	PR 26822
2046	* elflink.c (elf_link_input_bfd): Use the file base name in
2047	linker generated STT_FILE symbols.
2048
20492021-01-04  Nelson Chu  <nelson.chu@sifive.com>
2050
2051	* elfxx-riscv.c (riscv_compare_subsets): Removed static.
2052	* elfxx-riscv.h: Add declaration.
2053	* elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
2054	riscv_compare_subsets to check the orders.
2055	(riscv_skip_prefix): Removed.
2056	(riscv_prefix_cmp): Removed.
2057
20582021-01-04  Alan Modra  <amodra@gmail.com>
2059
2060	PR 26741
2061	* elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
2062	calculating subset version length.
2063
20642021-01-01  Nicolas Boulenguez  <nicolas@debian.org>
2065
2066	* xcofflink.c: Correct spelling in comments.
2067
20682021-01-01  Alan Modra  <amodra@gmail.com>
2069
2070	Update year range in copyright notice of all files.
2071
2072For older changes see ChangeLog-2020
2073
2074Copyright (C) 2021 Free Software Foundation, Inc.
2075
2076Copying and distribution of this file, with or without modification,
2077are permitted in any medium without royalty provided the copyright
2078notice and this notice are preserved.
2079
2080Local Variables:
2081mode: change-log
2082left-margin: 8
2083fill-column: 74
2084version-control: never
2085End:
2086