xref: /netbsd-src/external/gpl3/binutils.old/dist/bfd/ChangeLog (revision e992f068c547fd6e84b3f104dc2340adcc955732)
12022-08-05  Nick Clifton  <nickc@redhat.com>
2
3	2.39 Release.
4	* development.sh (experimental): Set to false.
5	(development): Set to false.
6	* version.m4: Set to 2.39.
7	* configure: Regenerate.
8
92022-07-29  Nick Clifton  <nickc@redhat.com>
10
11	PR 29424
12	* dwarf2.c (read_attribute_value): Handle DW_FORM_rnglistx and
13	DW_FORM_loclistx.
14
152022-07-08  Nick Clifton  <nickc@redhat.com>
16
17	* 2.39 branch created.
18
192022-05-19  Yvan Roux  <yvan.roux@foss.st.com>
20
21	PR 25713
22	* bfdio.c (_bfd_real_fopen): Delete ccs string.
23
242022-04-27  John Baldwin  <jhb@FreeBSD.org>
25
26	* elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_TLS notes.
27
282022-04-25  Nick Clifton  <nickc@redhat.com>
29
30	PR 29072
31	* elflink.c (bfd_elf_size_dynamic_sections): Display a note to the
32	user that the current ehaviour of creating an executable stack
33	because of a missing .note.GNU-stack section is deprecated and
34	will be changed in a future release.
35
362022-04-20  Clément Chigot  <clement.chigot@atos.net>
37
38	* coff-rs6000.c (xcoff_reloc_type_noop): Add info argument.
39	(xcoff_reloc_type_fail): Likewise.
40	(xcoff_reloc_type_pos): Likewise.
41	(xcoff_reloc_type_neg): Likewise.
42	(xcoff_reloc_type_rel): Likewise.
43	(xcoff_reloc_type_toc): Likewise.
44	(xcoff_reloc_type_ba): Likewise.
45	(xcoff_reloc_type_crel): Likewise.
46	(xcoff_reloc_type_tls): Likewise.
47	(xcoff_reloc_type_br): Add stub handler.
48	(xcoff_ppc_relocate_section): Add info to
49	xcoff_calculate_relocation.
50	(xcoff_stub_indirect_call_code): New constant.
51	(xcoff_stub_shared_call_code): Likewise.
52	(bfd_xcoff_backend_data): Add stub code fields.
53	(bfd_pmac_xcoff_backend_data): Likewise.
54	* coff64-rs6000.c (xcoff64_reloc_type_br): Add stub handler.
55	(xcoff64_ppc_relocate_section): Add info to
56	xcoff64_calculate_relocation.
57	(xcoff64_stub_indirect_call_code): New constant.
58	(xcoff64_stub_shared_call_code): Likewise.
59	(bfd_xcoff_backend_data): Add stub code fields.
60	(bfd_xcoff_aix5_backend_data): Likewise.
61	* libxcoff.h (struct xcoff_backend_data_rec): Add stub fields.
62	(bfd_xcoff_stub_indirect_call_code): New define.
63	(bfd_xcoff_stub_indirect_call_size): New define.
64	(bfd_xcoff_stub_shared_call_code): New define.
65	(bfd_xcoff_stub_shared_call_size): New define.
66	(xcoff_reloc_function): Add info argument.
67	(enum xcoff_stub_type): New enum.
68	(struct xcoff_stub_hash_entry): New structure.
69	* xcofflink.c (struct xcoff_link_hash_table): Add stub hash
70	table and params fields.
71	(xcoff_stub_hash_entry): New define.
72	(xcoff_stub_hash_lookup): New define.
73	(stub_hash_newfunc): New function.
74	(_bfd_xcoff_bfd_link_hash_table_free): Free the new stub hash
75	table.
76	(_bfd_xcoff_bfd_link_hash_table_create): Create the new stub
77	hash table.
78	(xcoff_link_add_symbols): Save rawsize for XTY_SD.
79	(bfd_xcoff_link_init): New function.
80	(xcoff_stub_csect_name): New function.
81	(xcoff_stub_get_csect_in_range): New function.
82	(xcoff_stub_name): New function.
83	(bfd_xcoff_get_stub_entry): New function.
84	(bfd_xcoff_type_of_stub): New function.
85	(xcoff_add_stub): New function.
86	(xcoff_build_one_stub): New function.
87	(bfd_xcoff_size_stubs): New function.
88	(bfd_xcoff_build_stubs): New function.
89	(xcoff_stub_create_relocations): New function.
90	(xcoff_link_input_bfd): Adapt relocations to stub.
91	(xcoff_write_global_symbol): Adapt to new TOC entries generated
92	for stubs.
93	(_bfd_xcoff_bfd_final_link): Handle stub file.
94	* xcofflink.h (struct bfd_xcoff_link_params): New structure.
95
962022-04-20  Clément Chigot  <clement.chigot@atos.net>
97
98	* coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Write len in
99	ldinfo->strings instead of directly in the output_bfd.
100	* coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
101	* xcofflink.c (struct xcoff_link_hash_table): Remove ldrel_count
102	field. Add ldinfo field.
103	(xcoff_mark_symbol): Adjust to new ldinfo field.
104	(xcoff_mark): Likewise.
105	(bfd_xcoff_link_count_reloc): Likewise.
106	(xcoff_build_loader_section): Split into two functions: one that
107	build the loader section (this function) and one that only size
108	it...
109	(xcoff_size_loader_section): ... (this function).
110	(bfd_xcoff_size_dynamic_sections): Adapt to new ldinfo field.
111	Move the part where the dynamic sections are build to ...
112	(bfd_xcoff_build_dynamic_sections): ... this function.
113	* xcofflink.h: Add bfd_xcoff_build_dynamic_sections prototype.
114
1152022-04-13  Alexander von Gluck IV  <kallisti5@unixzen.com>
116
117	* config.bfd (x86-haiku): Add i386_pei_vec as a selectable format.
118
1192022-04-08  Nick Clifton  <nickc@redhat.com>
120
121	PR 29038
122	* coffgen.c (coff_find_nearest_line_with_names): Fix typo
123	retrieving saved bias.
124
1252022-04-07  Mark Harmstone  <mark@harmstone.com>
126
127	* coff-i386.c (in_reloc_p): Add R_SECTION.
128	(howto_table): Add R_SECTION.
129	(coff_pe_i386_relocation_section): Add support for R_SECTION.
130	(coff_i386_reloc_type_lookup): Add support for
131	BFD_RELOC_16_SECCIDX.
132	* coff-x86_64.c (in_reloc_p): Add R_SECTION.
133	(howto_table): Add R_SECTION.
134	(coff_pe_amd64_relocation_section): Add support for R_SECTION.
135	(coff_amd64_reloc_type_lookup): Add support for
136	BFD_RELOC_16_SECCIDX.
137	* reloc.c: Add BFD_RELOC_16_SECIDX.
138	* bfd-in2.h: Regenerate.
139	* libbfd.h: Regenerate.
140
1412022-04-01  John Baldwin  <jhb@FreeBSD.org>
142
143	* elf-bfd.h (elfcore_write_x86_segbases): New.
144	* elf.c (elfcore_grok_freebsd_note): Add pseudosections for
145	NT_FREEBSD_X86_SEGBASES register notes.
146	(elfcore_write_x86_segbases): New.
147	(elfcore_write_register_note): Write NT_FREEBSD_X86_SEGBASES
148	register notes.
149
1502022-04-01  John Baldwin  <jhb@FreeBSD.org>
151
152	* elf.c (elfcore_grok_freebsd_note): Remove checks for namesz.
153
1542022-03-22  Steiner H Gunderson  <steinar+sourceware@gunderson.no>
155
156	* dwarf2.c (_bfd_dwarf2_find_nearest_line): if a function name is
157	found, but no line number info, then return a result of 2.
158
1592022-03-21  Steiner H Gunderson  <steinar+sourceware@gunderson.no>
160
161	PR 28978
162	* dwarf2.c (scan_unit_for_symbols): When performing second pass,
163	check to see if the function or variable being processed is the
164	same as the previous one.
165
1662022-03-18  Viorel Preoteasa  <viorel.preoteasa@gmail.com>
167
168	PR 28924
169	* elf32-arm.c (THM_MAX_FWD_BRANCH_OFFSET): Fix definition.
170	(THM2_MAX_FWD_BRANCH_OFFSET): Likewise.
171
1722022-03-16  Simon Marchi  <simon.marchi@efficios.com>
173
174	* Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES):
175	Add cpu-amdgcn.c.
176	(BFD64_BACKENDS): Add elf64-amdgcn.lo.
177	(BFD64_BACKENDS_CFILES): Add elf64-amdgcn.c.
178	* Makefile.in: Re-generate.
179	* cpu-amdgcn.c: New.
180	* elf64-amdgcn.c: New.
181	* archures.c (bfd_architecture): Add bfd_arch_amdgcn and related
182	mach defines.
183	(bfd_amdgcn_arch): New.
184	(bfd_archures_list): Add bfd_amdgcn_arch.
185	* bfd-in2.h: Re-generate.
186	* config.bfd: Handle amdgcn* target.
187	* configure.ac: Handle amdgcn_elf64_le_vec.
188	* configure: Re-generate.
189	* elf-bfd.h (elf_target_id): Add AMDGCN_ELF_DATA.
190	* targets.c (amdgcn_elf64_le_vec): New.
191	(_bfd_target_vector): Add amdgcn_elf64_le_vec.
192
1932022-03-01  Torbjörn Svensson  <torbjorn.svensson@st.com>
194	    Fred Eisele  <fredrick.eisele@gmail.com>
195
196	PR 25713
197	* bfdio.c (_bfd_real_fopen): Fix typo.
198
1992022-03-01  Nick Clifton  <nickc@redhat.com>
200
201	PR 28848
202	* elf32-arm.c (elf32_arm_merge_eabi_attributes): If the first
203	input bfd has a Tag_ABI_HardFP_use set to 3 but does not also have
204	TAG_FP_arch set then reset the TAG_ABI_HardFP_use.
205
2062022-02-28  Torbjörn Svensson  <torbjorn.svensson@st.com>
207	    Fred Eisele  <fredrick.eisele@gmail.com>
208
209	PR 25713
210	* bfdio.c (_bfd_real_fopen): Fix handling of paths longer than 260
211	characters on Windows hosts.
212
2132022-02-28  Nick Clifton  <nickc@redhat.com>
214
215	PR 28886
216	* config.bfd: Update error message for obsolete configurations.
217
2182022-02-17  Nick Clifton  <nickc@redhat.com>
219
220	* po/sr.po: Updated Serbian translation.
221
2222022-02-16  Fangrui Song  <maskray@google.com>
223	Nick Clifton  <nickc@redhat.com>
224
225	PR ld/28841
226	* bfd-in2.h (struct bfd_section): Add type.
227	(discarded_section): Add field.
228	* elf.c (elf_fake_sections): Handle bfd_section::type.
229	* section.c (BFD_FAKE_SECTION): Add field.
230	* mri.c (mri_draw_tree): Update function call.
231
2322022-02-11  Michael Forney  <mforney@mforney.org>
233
234        * bfd.c (bfd_set_gp_value): Remove return with expression
235        in void function.
236
2372022-02-09  Nick Clifton  <nickc@redhat.com>
238
239	* config.bfd: Move pending obsolesence targets into the definitely
240	obsolete list.
241
2422022-02-02  Nick Clifton  <nickc@redhat.com>
243
244	PR 28834
245	* dwarf2.c (read_section): Change the heuristic that checks for
246	overlarge dwarf debug info sections.
247
2482022-02-02  Stafford Horne  <shorne@gmail.com>
249
250	PR 28735
251	* elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define.
252	(or1k_elf_relocate_section): Use new howto instead of trying to
253	mask out relocation bits.
254
2552022-01-24  Roland McGrath  <mcgrathr@google.com>
256
257	* doc/local.mk (%D%/bfdver.texi): Add mkdir command.
258
2592022-01-24  Nick Clifton  <nickc@redhat.com>
260
261	* po/fr.po: Updated French translation.
262	* po/ro.po: Updated Romanian translation.
263	* po/uk.po: Updated Ukranian translation.
264
2652022-01-22  Nick Clifton  <nickc@redhat.com>
266
267	* version.m4: Change to 2.38.50.
268	* configure: Regenerate.
269	* po/bfd.pot: Regenerate.
270
2712022-01-22  Nick Clifton  <nickc@redhat.com>
272
273	* 2.38 release branch created.
274
2752022-01-17  Nick Clifton  <nickc@redhat.com>
276
277	* Makefile.in: Regenerate.
278	* configure: Regenerate.
279	* doc/Makefile.in: Regenerate.
280	* po/bfd.pot: Regenerate.
281
2822021-12-15  Nikita Popov  <npv1310@gmail.com>
283
284	PR 28687
285	* dwarf1.c (parse_die): Fix undefined behaviour in range tests.
286
2872021-11-17  Nick Clifton  <nickc@redhat.com>
288
289	PR 28452
290	* elf.c (assign_file_positions_for_non_load_sections): Replace
291	assertion with a warning message.
292
2932021-10-19  Nick Clifton  <nickc@redhat.com>
294
295	* linker.c (_bfd_generic_link_add_one_symbol): Test for a NULL
296	name before checking to see if the symbol is __gnu_lto_slim.
297	* archive.c (_bfd_compute_and_write_armap): Likewise.
298
2992021-09-27  Nick Alcock  <nick.alcock@oracle.com>
300
301	* configure: Regenerate.
302
3032021-09-15  Andrew Burgess  <andrew.burgess@embecosm.com>
304
305	* archures.c (bfd_arch_list): Use 'char *' instead of 'char **'
306	when calculating space for a string list.
307
3082021-09-014  Cupertino Miranda  <cmiranda@synopsys.com>
309           Claudiu Zissulescu  <claziss@synopsys.com>
310
311	* arc-got.h (arc_static_sym_data): New structure.
312	(get_static_sym_data): New function.
313	(relocate_fix_got_relocs_for_got_info): Move the computation fo
314	symbol value and section to above introduced function, and use
315	this new function.
316
3172021-09-07  Luis Machado  <luis.machado@linaro.org>
318
319	Revert: [AArch64] MTE corefile support
320
321	2021-05-21  Luis Machado  <luis.machado@linaro.org>
322
323	* elf.c (elfcore_make_memtag_note_section): New function.
324	(elfcore_grok_note): Handle NT_MEMTAG note types.
325
3262021-09-07  Nick Clifton  <nickc@redhat.com>
327
328	PR 28305
329	* elf32-xtensa.c (elf_xtensa_do_reloc): Add check for put of range
330	reloc.
331
332	PR 28303
333	* elfxx-riscv.c (riscv_elf_add_sub_reloc): Add check for out of
334	range relocs.
335
3362021-08-10  Nick Clifton  <nickc@redhat.com>
337
338	* po/sr.po: Updated Serbian translation.
339
3402021-07-18  Nick Clifton  <nickc@redhat.com>
341
342	* config.bfd: Move pending obsoletion targets to obsolete list.
343
3442021-07-16  Giulio Benetti  <giulio.benetti@benettiengineering.com>
345
346	* elf32-or1k.c (or1k_elf_relocate_section): Use a separate entry
347	in switch case R_OR1K_INSN_REL_26 where we need to check for
348	!SYMBOL_CALLS_LOCAL() instead of !SYMBOL_REFERENCES_LOCAL().
349
3502021-07-14  Clément Chigot  <clement.chigot@atos.net>
351
352	* libxcoff.h (struct xcoff_dwsect_name): Add DWARF name.
353	* coff-rs6000.c (xcoff_dwsect_names): Update.
354	* coffcode.h (sec_to_styp_flags): Likewise.
355	(coff_new_section_hook): Likewise.
356
3572021-07-10  Alan Modra  <amodra@gmail.com>
358
359	* dwarf2.c (read_address): Remove accidental commit.
360	(read_ranges): Compare offset rather than pointers.
361
3622021-07-08  Nick Clifton  <nickc@redhat.com>
363
364	* po/pt.po: Updated Portuguese translation.
365
3662021-07-07  Nick Clifton  <nickc@redhat.com>
367
368	* elfcode.h (elf_swap_symbol_out): Revert accidental change that
369	removed an abort if the shndx pointer is NULL.
370
3712021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
372
373	* sysdep.h [!ENABLE_NLS]: Prevent inclusion of <libintl.h> on
374	Solaris.
375
3762021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
377
378	* configure.ac: Check for strnlen declaration.
379	* configure, config.in: Regenerate.
380
3812021-07-07  Nick Clifton  <nickc@redhat.com>
382
383	PR 28051
384	* coff-rs6000.c (xcoff_reloc_type_tls): Reformat error messages in
385	order to fix problems when translating.
386	* cofflink.c (_bfd_coff_write_global_sym): Likewise.
387	* elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
388	Likewise.
389	* po/bfd.pot: Regenerate.
390
3912021-07-06  Michael Matz  <matz@suse.de>
392
393	PR ld/28021
394	* elfnn-riscv.c (riscv_relax_delete_bytes): Check for any
395	versioning.
396
3972021-07-06  Alan Modra  <amodra@gmail.com>
398
399	PR 28055
400	* elf64-bpf.c (bpf_elf_generic_reloc): Add missing ATTRIBUTE_UNUSED.
401
4022021-07-05  Alan Modra  <amodra@gmail.com>
403
404	PR 28055
405	* elf64-bpf.c (bpf_elf_generic_reloc): Use correct bfd for bfd_put
406	and bfd_put_32 calls.  Correct section limit checks.
407
4082021-07-03  Nick Clifton  <nickc@redhat.com>
409
410	* version.m4: Update version number.
411	* configure: Regenerate.
412	* po/opcodes.pot: Regenerate.
413
4142021-07-03  Nick Clifton  <nickc@redhat.com>
415
416	* 2.37 release branch created.
417
4182021-07-02  Nick Clifton  <nickc@redhat.com>
419
420	PR 28046
421	* dwarf2.c (read_ranges): Check that range_ptr does not exceed
422	range_end.
423
4242021-06-30  YunQiang Su  <yunqiang.su@cipunited.com>
425
426	PR mips/28009
427	* bfd/elfxx-mips.c (_bfd_mips_elf_section_from_shdr,
428	_bfd_mips_elf_fake_sections): Mark LTO debug info as
429	SHT_MIPS_DWARF.
430
4312021-06-29  Nick Clifton  <nickc@redhat.com>
432
433	* config.bfd (obsolete configurations): Add netbsdpe.
434
4352021-06-22  Nelson Chu  <nelson.chu@sifive.com>
436
437	* elfnn-riscv.c (riscv_pcrel_hi_reloc): Added field to store
438	the original relocation type, in case the type is converted to
439	R_RISCV_HI20.
440	(riscv_pcrel_lo_reloc): Removed unused name field.
441	(riscv_pcrel_relocs): Added comments.
442	(riscv_zero_pcrel_hi_reloc): Removed unused input_bfd.
443	(riscv_record_pcrel_hi_reloc): Updated.
444	(riscv_record_pcrel_lo_reloc): Likewise.
445	(riscv_resolve_pcrel_lo_relocs): Likewise.  Check the original
446	type of auipc, to make sure the %pcrel_lo without any addends.
447	Otherwise, report dangerous relocation error.
448	(riscv_elf_relocate_section): Updated above functions are changed.
449	For R_RISCV_GOT_HI20, report dangerous relocation error when addend
450	isn't zero.
451
4522021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
453
454	PR ld/27998
455	* elfxx-x86.c (elf_x86_allocate_dynrelocs): Count PLT for GOTOFF
456	relocation against IFUNC symbols.
457	(_bfd_x86_elf_adjust_dynamic_symbol): Likewise.
458
4592021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
460
461	* elflink.c (bfd_elf_final_link): Correct DT_TEXTREL warning in
462	PDE.
463
4642021-06-18  H.J. Lu  <hongjiu.lu@intel.com>
465
466	* elf-properties.c (_bfd_elf_parse_gnu_properties): Handle
467	GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI,
468	GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI.
469	(elf_merge_gnu_properties): Likewise.
470
4712021-06-11  Alan Modra  <amodra@gmail.com>
472
473	PR 27952
474	* elf-bfd.h (struct elf_obj_tdata): Add is_pie.
475	* elflink.c (elf_link_add_object_symbols): Set is_pie.
476
4772021-06-09  Nick Clifton  <nickc@redhat.com>
478
479	PR 27666
480	* config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
481	vectors to Sparc Solaris2 targets.
482
4832021-06-08  Michael Matz  <matz@suse.de>
484
485	* elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag.
486	(_bfd_elf_slurp_secondary_reloc_section): Use it for early-out.
487
4882021-06-07  Jan Beulich  <jbeulich@suse.com>
489
490	* dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant.
491
4922021-06-02  Alan Modra  <amodra@gmail.com>
493
494	* elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if
495	subsection length is too small to cover tag and length field.
496
4972021-05-31  Nelson Chu  <nelson.chu@sifive.com>
498	    Lifang Xia  <lifang_xia@c-sky.com>
499
500	PR 27566
501	* elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer
502	to monitor the data segment phase.
503	(bfd_elfNN_riscv_set_data_segment_info): New function called by
504	after_allocation, to set the data_segment_phase from expld.dataseg.
505	(_bfd_riscv_relax_section): Don't relax when data_segment_phase is
506	exp_seg_relro_adjust (0x4).
507	* elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern.
508	(bfd_elf64_riscv_set_data_segment_info): Likewise
509
5102021-05-28  H.J. Lu  <hongjiu.lu@intel.com>
511
512	PR ld/27905
513	* elf32-i386.c: Don't include "libiberty.h".
514	(elf_howto_table): Revert commits a7664973b24 and 50c95a739c9.
515	(elf_i386_rtype_to_howto): Revert commit 50c95a739c9.
516	(elf_i386_info_to_howto_rel): Likewise.
517	(elf_i386_tls_transition): Likewise.
518	(elf_i386_relocate_section): Likewise.
519	* elf64-x86-64.c (x86_64_elf_howto_table): Revert commits
520	a7664973b24 and 50c95a739c9.
521	(elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9.
522	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise.
523	* elfxx-x86.h (elf_x86_obj_tdata): Likewise.
524	(elf_x86_has_code16): Likewise.
525
5262021-05-26  H.J. Lu  <hongjiu.lu@intel.com>
527
528	PR ld/27905
529	* elf32-i386.c: Include "libiberty.h".
530	(elf_howto_table): Add 16-bit R_386_PC16 entry.
531	(elf_i386_rtype_to_howto): Add a BFD argument.  Use 16-bit
532	R_386_PC16 if input has 16-bit mode instructions.
533	(elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto
534	call.
535	(elf_i386_tls_transition): Likewise.
536	(elf_i386_relocate_section): Likewise.
537	* elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit
538	R_X86_64_PC16 entry.
539	(elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input
540	has 16-bit mode instructions.
541	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set
542	elf_x86_has_code16 if relocatable input is marked with
543	GNU_PROPERTY_X86_FEATURE_2_CODE16.
544	* elfxx-x86.h (elf_x86_obj_tdata): Add has_code16.
545	(elf_x86_has_code16): New.
546
5472021-05-26  Nelson Chu  <nelson.chu@sifive.com>
548
549	* elfxx-riscv.h (check_unknown_prefixed_ext): New bool.
550	* elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the
551	prefixed extension name if check_unknown_prefixed_ext is false.
552	* elfnn-riscv.c (riscv_merge_arch_attr_info): Set
553	check_unknown_prefixed_ext to false for linker.
554
5552021-05-25  Nick Clifton  <nickc@redhat.com>
556
557	* elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field.
558	(elf32_arm_num_entries): New macro.
559	(elf32_arm_allocate_local_sym_info): Initialise the new field.
560	Allocate arrays individually so that buffer overruns can be
561	detected by memory checkers.
562	(elf32_arm_create_local_iplt): Check num_entries.
563	(elf32_arm_get_plt_info): Likewise.
564	(elf32_arm_final_link_relocate): Likewise.
565	(elf32_arm_check_relocs): Likewise.
566	(elf32_arm_size_dynamic_sections): Likewise.
567	(elf32_arm_output_arch_local_syms): Likewise.
568
5692021-05-25  Nick Clifton  <nickc@redhat.com>
570
571	* elf32-arm.c: Fix formatting.
572
5732021-05-25  Alan Modra  <amodra@gmail.com>
574
575	* elf-attrs.c (elf_attr_strdup): New function.
576	(_bfd_elf_attr_strdup): Use it here.
577	(elf_add_obj_attr_string): New function, extracted from..
578	(bfd_elf_add_obj_attr_string): ..here.
579	(elf_add_obj_attr_int_string): New function, extracted from..
580	(bfd_elf_add_obj_attr_int_string): ..here.
581	(_bfd_elf_parse_attributes): Don't allocate an extra byte for a
582	string terminator.  Instead ensure parsing doesn't go past
583	end of sub-section.  Use size_t variables for lengths.
584
5852021-05-22  Alan Modra  <amodra@gmail.com>
586
587	* libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter.
588	Replace data pointer with pointer to pointer.  Increment pointer
589	over bytes read.
590	* libbfd-in.h (_bfd_safe_read_leb128): Update prototype.
591	* elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit.  Be
592	careful not to increment data pointer past end.  Remove now
593	redundant pr17512 check.
594	* wasm-module.c (READ_LEB128): Adjust to suit changes to
595	_bfd_safe_read_leb128.
596	* dwarf2.c (read_n_bytes): New inline function, old one renamed to..
597	(read_blk): ..this.  Allocate and return block.  Increment bfd_byte**
598	arg.
599	(read_3_bytes): New function.
600	(read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes),
601	(read_8_bytes, read_string, read_indirect_string),
602	(read_indirect_line_string, read_alt_indirect_string): Take a
603	byte_byte** arg which is incremented over bytes read.  Remove any
604	bytes_read return.  Rewrite limit checks to compare lengths
605	rather than pointers.
606	(read_abbrevs, read_attribute_value, read_formatted_entries),
607	(decode_line_info, find_abstract_instance, read_ranges),
608	(read_rnglists, scan_unit_for_symbols, parse_comp_unit),
609	(stash_comp_unit): Adjust to suit.  Rewrite limit checks to
610	compare lengths rather than pointers.
611	* libbfd.h: Regenerate.
612
6132021-05-21  Luis Machado  <luis.machado@linaro.org>
614
615	* elf.c (elfcore_make_memtag_note_section): New function.
616	(elfcore_grok_note): Handle NT_MEMTAG note types.
617
6182021-05-20  Andrew Burgess  <andrew.burgess@embecosm.com>
619
620	* section.c (bfd_get_section_by_name): Return NULL if name is
621	NULL.
622	(bfd_get_section_by_name_if): Likewise.
623	* dwarf2.c (read_section): Remove unneeded NULL check.
624	(find_debug_info): Likewise.
625
6262021-05-19  Nick Clifton  <nickc@redhat.com>
627
628	* plugin.c (bfd_plugin_open_input): Inform the user if the limit
629	on the number of open files is reached.  If possible, try to
630	increase this limit before failing.
631
6322021-05-14  Nelson Chu  <nelson.chu@sifive.com>
633
634	* elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values
635	of %pcrel_hi, before and after adding the addend.  Make sure the
636	value won't be changed, otherwise, report dangerous error.
637
6382021-05-13  Nelson Chu  <nelson.chu@sifive.com>
639
640	* elfxx-riscv.c (check_implicit_always): The check_func, always add
641	the implicit subset without checking.
642	(check_implicit_for_i): The check_func for i, only add zicsr and
643	zifencei when the version of i less than 2.1.
644	(struct riscv_implicit_subset): Record the subsets and their
645	corresponding implicit subsets.
646	(riscv_implicit_subsets): Table records all implicit informations.
647	(riscv_parse_add_implicit_subsets): Updated and add implicit subsets
648	according to riscv_implicit_subsets.  Remove the redundant codes.
649
6502021-05-13  Alan Modra  <amodra@gmail.com>
651
652	PR 27858
653	* elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid
654	reloc howto.
655
6562021-05-12  Luis Machado  <luis.machado@linaro.org>
657
658	* elf-bfd.h (elfcore_write_aarch_mte): New prototype.
659	* elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New
660	functions.
661	(elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL.
662	(elfcore_write_register_note): Handle MTE notes.
663
6642021-05-11  Alan Modra  <amodra@gmail.com>
665
666	PR 27844
667	* pdp11.c (aout_get_external_symbols): Clear first four bytes of
668	strings array, not just the first byte.
669	* aoutx.h (aout_get_external_symbols): Likewise.
670
6712021-05-10  H.J. Lu  <hongjiu.lu@intel.com>
672
673	PR binutils/27839
674	* simple.c (bfd_simple_get_relocated_section_contents): Remove
675	strayed fprintf.
676
6772021-05-10  Nick Clifton  <nickc@redhat.com>
678
679	PR 27839
680	* simple.c (simple_dummy_add_to_set): New function.
681	(simple_dummy_constructor): New function.
682	(simple_dummy_multiple_common): New function.
683	(bfd_simple_get_relocated_section_contents): Zero out the
684	callbacks structure, and then set the add_to_set, constructor and
685	multiple_common fields.
686
6872021-05-10  Dimitar Dimitrov  <dimitar@dinux.eu>
688
689	* elf32-pru.c (elf_backend_can_gc_sections): Define as 1.
690
6912021-05-08  Mike Frysinger  <vapier@gentoo.org>
692
693	* doc/Makefile.am (html-local, bfd/index.html): New targets.
694	* doc/Makefile.in: Regenerate.
695
6962021-05-08  Mike Frysinger  <vapier@gentoo.org>
697
698	* doc/Makefile.am (AM_MAKEINFOFLAGS): Define.
699	* doc/Makefile.in: Regenerate.
700
7012021-05-07  Clément Chigot  <clement.chigot@atos.net>
702
703	* coff-rs6000.c (xcoff_dwsect_names): Add new DWARF
704	sections.
705	* coffgen.c (coff_pointerize_aux): Handle C_DWARF.
706	(coff_print_symbol): Likewise.
707	* libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update.
708
7092021-05-07  Jan Beulich  <jbeulich@suse.com>
710
711	* elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields
712	to zero.
713
7142021-05-07  Alan Modra  <amodra@gmail.com>
715
716	* bfd-in2.h: Regenerate.
717	* libbfd.h: Regenerate.
718
7192021-05-06  Stafford Horne  <shorne@gmail.com>
720
721	PR 27746
722	* elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT,
723	OR1K_ADD, OR1K_ORI): New macros to help with plt creation.
724	(elf_or1k_link_hash_table): New field plt_count.
725	(elf_or1k_link_hash_entry): New field plt_index.
726	(elf_or1k_plt_entry_size): New function.
727	(or1k_write_plt_entry): Update to support variable size PLTs.
728	(or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry
729	API.
730	(or1k_elf_finish_dynamic_symbol): Update to write large PLTs
731	when needed.
732	(allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for
733	PLT size.
734
7352021-05-06  Stafford Horne  <shorne@gmail.com>
736
737	PR 21464
738	* elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16
739	overflow check if we have R_OR1K_GOT_AHI16 followed by
740	R_OR1K_GOT16.
741
7422021-05-06  Stafford Horne  <shorne@gmail.com>
743
744	PR 21464
745	* bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation.
746	* elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise.
747	(or1k_final_link_relocate, or1k_elf_relocate_section,
748	or1k_elf_check_relocs): Likewise.
749	* libbfd.h (bfd_reloc_code_real_names): Likewise.
750	* reloc.c: Likewise.
751
7522021-05-06  Stafford Horne  <shorne@gmail.com>
753
754	PR 27624
755	* elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change
756	condition used to cleanup plt entries to cleanup forced local
757	entries.
758
7592021-05-05  H.J. Lu  <hongjiu.lu@intel.com>
760
761	PR ld/27825
762	* elflink.c (elf_link_output_symstrtab): Always append ".COUNT"
763	to local symbols.
764
7652021-05-05  Alan Modra  <amodra@gmail.com>
766
767	* vms-lib.c (vms_traverse_index): Account for vms_kbn size when
768	sanity checking keylen.
769
7702021-05-04  Nick Clifton  <nickc@redhat.com>
771
772	* libbfd.c (bfd_malloc): Provide some documenation.  Treat a size
773	of 0 as 1.
774	(bfd_realloc): Likewise.
775	(bfd_zmalloc): Likewise.
776	(bfd_realloc_or_free): Provide some documentation.  Treat a size
777	of 0 as a request to free.
778	* libbfd-in.h (bfd_realloc): Remove prototype.
779	(bfd_realloc_or_free): Remove prototype.
780	(bfd_zmalloc): Remove prototype.
781	* libbfd.h: Regenerate.
782
7832021-05-03  Jan Beulich  <jbeulich@suse.com>
784
785	* elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to
786	complain_overflow_dont.
787	* elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit
788	relocs to complain_overflow_dont.
789
7902021-05-03  Alan Modra  <amodra@gmail.com>
791
792	* elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak
793	symbols when -z dynamic-undefined-weak or when there are no
794	dynamic relocs in read-only sections and -z nodynamic-undefined-weak
795	is not given.
796	* elf64-ppc.c (allocate_dynrelocs): Likewise.
797
7982021-05-03  Alan Modra  <amodra@gmail.com>
799
800	* elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for
801	weak undefined symols that only appear on PLT relocs.
802	* elf64-ppc.c (allocate_dynrelocs): Likewise.
803
8042021-05-03  Alan Modra  <amodra@gmail.com>
805
806	PR 27755
807	* elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop.
808
8092021-05-03  Alan Modra  <amodra@gmail.com>
810
811	* elf32-csky.c (is_mapping_symbol_name): New function.
812	(csky_elf_is_target_special_symbol): Likewise.
813	(csky_elf_maybe_function_sym): Likewise.
814	(bfd_elf32_bfd_is_target_special_symbol): Define.
815	(elf_backend_maybe_function_sym): Define.
816
8172021-04-30  Nick Clifton  <nickc@redhat.com>
818
819	PR 27801
820	* mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to
821	read 32-bit value.
822
8232021-04-30  Nick Clifton  <nickc@redhat.com>
824
825	PR 27799
826	* elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes
827	that are too small.
828
8292021-04-30  Nick Clifton  <nickc@redhat.com>
830
831	PR 27797
832	* libbfd.c (bfd_realloc_or_free): Do not free a pointer than has
833	been realloc'ed to size 0.
834
8352021-04-30  Nick Clifton  <nickc@redhat.com>
836
837	PR 27795
838	* coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name
839	lengths.
840
8412021-04-29  Nick Clifton  <nickc@redhat.com>
842
843	PR 27793
844	* som.c (som_slurp_symbol_table): Assign symbols without any scope
845	to the undefined section.
846	(som_decode_symclass): Check for a missing symbol section.
847	* syms.c (bfd_decode_symclass): Likewise.
848
8492021-04-29  Nick Clifton  <nickc@redhat.com>
850
851	PR 27792
852	* som.c (som_slurp_string_table): Place a terminating NUL byte at
853	the end of the table.
854	(som_slurp_symbol_table): Check for an over-large offset into the
855	string string table.
856
8572021-04-28  Nick Clifton  <nickc@redhat.com>
858
859	* elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin
860	symbols as potential function symbols.
861	* elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise.
862	* elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
863	* elf32-arm.c (elf32_arm_maybe_function_sym): Likewise.
864
8652021-04-26  Mike Frysinger  <vapier@gentoo.org>
866
867	* elf-bfd.h: Include stdlib.h.
868
8692021-04-26  Jan Beulich  <jbeulich@suse.com>
870
871	* elf32-i386.c (elf_howto_table): Switch R_386_PC16 to
872	complain_overflow_signed.
873	* elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16
874	to complain_overflow_signed.
875
8762021-04-23  Eric Botcazou  <ebotcazou@adacore.com>
877
878	* elf.c (special_sections_p): Add .persistent.bss.
879
8802021-04-23  Jan Beulich  <jbeulich@suse.com>
881
882	* elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero
883	size field.
884	* elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL
885	has zero size field.
886
8872021-04-22  Clément Chigot  <clement.chigot@atos.net>
888
889	* hash.c (struct bfd_strtab_hash): Remove xcoff field.
890	Add length_field_size field.
891	(_bfd_stringtab_init): Change prototype.
892	Adapt to new length_field_size.
893	(_bfd_xcoff_stringtab_init): Likewise.
894	(_bfd_stringtab_add): Likewise.
895	(_bfd_stringtab_emit): Likewise.
896	* libbfd-in.h (_bfd_xcoff_stringtab_init):
897	Change prototype.
898	* libbfd.h: Regenerate.
899	* xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create):
900	Call _bfd_xcoff_stringtab_init with isxcoff64 value.
901
9022021-04-22  Clément Chigot  <clement.chigot@atos.net>
903
904	* coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for
905	unsupported storage class or auxialiry entries.
906	Improve and adapt to new aux structures.
907	Add C_DWARF support.
908	(_bfd_xcoff_swap_aux_out): Likewise.
909	* coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise.
910	(_bfd_xcoff64_swap_aux_out): Likewise.
911
9122021-04-21  Eli Zaretskii  <eliz@gnu.org>
913
914	PR 27760
915	* peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display
916	of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP,
917	IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags.
918	Decode the contents of the DllCharacteristics field.
919
9202021-04-21  Nick Clifton  <nickc@redhat.com>
921
922	PR 27759
923	* srec.c (srec_read_section): Replace assertions with error
924	returns.
925
9262021-04-20  Clément Chigot  <clement.chigot@atos.net>
927
928	PR binutils/21700
929	* reloc.c (BFD_RELOC_PPC_NEG): New relocation.
930	* bfd-in2.h: Regenerate.
931	* libbfd.h: Regenerate.
932	* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add
933	BFD_RELOC_PPC_NEG handler.
934	(xcoff_reloc_type_neg): Correctly substract addend.
935	* coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32
936	howto.
937	(xcoff64_rtype2howto): Add handler for R_NEG_32.
938	(xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler.
939	* xcofflink.c (xcoff_need_ldrel_p): Check output section
940	for R_POS-like relocations. New argument added.
941	(xcoff_mark): Adapt to new xcoff_need_ldrel_p argument.
942	(xcoff_link_input_bfd): Likewise.
943
9442021-04-16  Alan Modra  <amodra@gmail.com>
945
946	PR 27567
947	* coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags.
948	(coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT,
949	ignore alignment checks when return is false.  Formatting.
950
9512021-04-15  Nelson Chu  <nelson.chu@sifive.com>
952
953	PR27584
954	* elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to
955	omit local and empty symbols since they usually generated to
956	mark the auipc instructions.
957
9582021-04-15  Lifang Xia<lifang_xia@c-sky.com>
959
960	* elf32-csky.c (csky_elf_howto_table)
961	<R_CKCORE_PCREL_IMM16BY2>: Set special_function to
962	bfd_elf_generic_reloc.
963	<R_CKCORE_PCREL_IMM16BY4>: Likewise.
964	<R_CKCORE_PCREL_IMM10BY4>: Likewise.
965	<R_CKCORE_PCREL_IMM18BY2>: Likewise.
966	<R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise.
967
9682021-04-14  H.J. Lu  <hongjiu.lu@intel.com>
969
970	PR binutils/27708
971	* elf.c (assign_file_positions_for_non_load_sections): Set
972	p_memsz to p_filesz for the loadable PT_NOTE segment.
973
9742021-04-14  Frederic Cambus  <fred@statdns.com>
975
976	* elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef
977	checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
978
9792021-04-14  Alan Modra  <amodra@gmail.com>
980
981	PR 27631
982	* elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf
983	when hh might be NULL, test for NULL first.
984
9852021-04-14  Alan Modra  <amodra@gmail.com>
986
987	PR 27630
988	* elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
989	hash might be NULL, cast instead.
990
9912021-04-13  Clément Chigot  <clement.chigot@atos.net>
992
993	* xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
994
9952021-04-13  Nelson Chu  <nelson.chu@sifive.com>
996
997	* elfnn-riscv.c (riscv_version_mismatch): Do not report the warning
998	when the version of input or output is RISCV_UNKNOWN_VERSION, since
999	the extension is added implicitly.
1000	* elfxx-riscv.c: Updated the obsolete comments.
1001	(RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h.
1002	* elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added.
1003
10042021-04-12  Alan Modra  <amodra@gmail.com>
1005
1006	* elf-bfd.h (ENABLE_CHECKING): Define.
1007	(elf_link_hash_lookup): Abort if wrong type of hash table.
1008	* configure.ac (--enable-checking): Add support.
1009	* config.in: Regenerate.
1010	* configure: Regenerate.
1011
10122021-04-12  Alan Modra  <amodra@gmail.com>
1013
1014	* elf-bfd.h (is_elf_hash_table): Convert macro to inline function.
1015	(elf_link_hash_lookup, elf_link_hash_traverse): Likewise.
1016	(elf_hash_table, elf_hash_table_id): Likewise.
1017	* elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant
1018	is_elf_hash_table check.
1019	* elf32-csky.c (elf32_csky_setup_section_lists): Likewise.
1020	* elf32-hppa.c (clobber_millicode_symbols): Correct param types.
1021	* elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
1022	* elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise.
1023	(elfNN_ia64_global_dyn_sym_thunk: Likewise.
1024	* elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise.
1025	(elf64_ia64_global_dyn_sym_thunk): Likewise.
1026	(elf64_vms_link_add_object_symbols): Pass base type of hash table
1027	to is_elf_hash_table.
1028	* elflink.c (_bfd_elf_dynamic_symbol_p): Likewise.
1029	(_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise.
1030	(_bfd_elf_strip_zero_sized_dynamic_sections): Likewise.
1031	(_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise.
1032	(bfd_elf_final_link): Likewise.
1033	* elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise.
1034	* elf64-ppc.c (ppc64_elf_set_toc): Likewise.  Use bfd_link_hash_lookup.
1035
10362021-04-12  Alan Modra  <amodra@gmail.com>
1037
1038	* elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry*
1039	from elf_backend_archive_symbol_lookup.
1040	(_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*.
1041	* elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise.  Check
1042	we have a ppc_hash_table before accessing ppc_link_hash_entry
1043	fields.
1044	* elflink.c (_bfd_elf_archive_symbol_lookup): Return
1045	bfd_link_hash_entry*.
1046	(elf_link_add_archive_symbols): Adjust to suit.
1047
10482021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1049
1050	* elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of
1051	i-ext when expanding g-ext.
1052
10532021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1054
1055	* elfxx-riscv.c (riscv_ext_dont_care_version): Removed.
1056	(riscv_parse_add_subset): Always add the implicit extensions, even if
1057	their versions are RISCV_UNKNOWN_VERSION.
1058	(riscv_parse_std_ext): Delay to add i-ext as the implicit extension
1059	in the riscv_parse_add_implicit_subsets.  Besides, add g-ext as the
1060	implicit extension after it has been expanded.
1061	(riscv_parse_add_implicit_subsets): Updated.
1062
10632021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1064
1065	* elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward.
1066	(riscv_std_s_ext_strtab): Likewise.
1067	(riscv_std_h_ext_strtab): Likewise.
1068	(riscv_std_zxm_ext_strtab): Added for the zxm prefix.
1069	(enum riscv_prefix_ext_class): Moved forward and renamed from
1070	riscv_isa_ext_class.  Reorder them according to the parsing order,
1071	since the enum values are used to check the orders in the
1072	riscv_compare_subsets.
1073	(struct riscv_parse_prefix_config): Moved forward and renamed from
1074	riscv_parse_config_t.  Also removed the ext_valid_p field, the
1075	related functions are replaced by riscv_valid_prefixed_ext.
1076	(parse_config): Moved forward and updated.  The more letters of the
1077	prefix string, the more forward it must be defined.  Otherwise, we
1078	will get the wrong mapping when using strncmp in riscv_get_prefix_class.
1079	(riscv_get_prefix_class): Moved forward.  Support to parse the
1080	multi-letter prefix, like zxm.
1081	(riscv_known_prefixed_ext): New function, check if the prefixed
1082	extension is supported according to the right riscv_std_*_ext_strtab.
1083	(riscv_valid_prefixed_ext): New function, used to replace the
1084	riscv_ext_*_valid_p functions.
1085	(riscv_init_ext_order): Do not set the values for prefix keywords
1086	since they may have multiple letters for now.
1087	(riscv_compare_subsets): Set the order values of prefix keywords
1088	to negative numbers according to the riscv_prefix_ext_class.
1089	(riscv_parse_std_ext): Call riscv_get_prefix_class to see if we
1090	have parsed the prefixed extensions.
1091	(riscv_parse_prefixed_ext): Updated and removed the parameter config.
1092	Report error when the prefix is unknown.
1093	(riscv_parse_subset): Do not parse the prefixed extensions according
1094	to the orders in the parse_config.  Remove the confused message and
1095	let riscv_parse_prefixed_ext to report the details.
1096	* elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c.
1097	(riscv_get_prefix_class): Removed to static.
1098
10992021-04-08  Mike Frysinger  <vapier@gentoo.org>
1100
1101	* configure.ac (ACX_BUGURL): Use https://.
1102	* configure.com (COPY_TEXT): Likewise.
1103	* configure: Regenerate.
1104
11052021-04-05  Alan Modra  <amodra@gmail.com>
1106
1107	* configure.ac: Don't check for long long or long double type.
1108	Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
1109	strings.h, time.h, wchar.h, wctype.h or sys/time.h.  Don't check
1110	for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
1111	vsnprintf, strlen or setitimer.  Sort AC_CHECK_DECLS.
1112	(AC_ISC_POSIX): Don't invoke.
1113	(AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
1114	* sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
1115	Do test HAVE_SYS_TYPES_H.  Don't include sys/time.h.  Reorder
1116	header order as per automake AC_INCLUDES_DEFAULT.
1117	* bfd-in.h: Include inttypes.h unconditionally.
1118	* bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
1119	long double are available.
1120	(bfd_scan_vma): Assume long long and strtoull are available.
1121	* elflink.c: Include limits.h unconditionally.
1122	* elfnn-riscv.c: Likewise.
1123	* wasm-module.c: Likewise.
1124	* hpux-core.c: Include dirent.h unconditionally.
1125	* trad-core.c: Likewise.
1126	* hosts/x86-64linux.h: Include stdlib.h unconditionally.
1127	* peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
1128	* elf32-m68hc1x.c: Don't include alloca-conf.h.
1129	* elf64-hppa.c: Likewise.
1130	* som.c: Likewise.
1131	* wasm-module.c: Likewise.
1132	* xsym.c: Likewise.
1133	* bfd-in2.h: Regenerate.
1134	* config.in: Regenerate.
1135	* configure: Regenerate.
1136
11372021-04-01  Tamar Christina  <tamar.christina@arm.com>
1138
1139	PR ld/26659
1140	* cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow.
1141
11422021-04-01  Martin Liska  <mliska@suse.cz>
1143
1144	* ecoff.c (strneq): Remove strneq and use startswith.
1145	(_bfd_ecoff_slurp_armap): Likewise.
1146
11472021-04-01  Martin Liska  <mliska@suse.cz>
1148
1149	* elf-bfd.h (bfd_section_is_ctf): Use startswith function.
1150	* elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1151	(elf_get_reloc_section): Likewise.
1152	* elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
1153	* elf32-m32r.c (m32r_elf_section_flags): Likewise.
1154	* elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise.
1155	* elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
1156	(nds32_elf_relocate_section): Likewise.
1157	(nds32_elf_action_discarded): Likewise.
1158	(nds32_elf_check_relocs): Likewise.
1159	(nds32_elf_section_flags): Likewise.
1160	* elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1161	* elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
1162	* elf32-rx.c (rx_table_find): Likewise.
1163	(rx_table_map): Likewise.
1164	* elf32-spu.c (spu_elf_backend_symbol_processing): Likewise.
1165	(spu_elf_find_overlays): Likewise.
1166	(needs_ovl_stub): Likewise.
1167	(allocate_spuear_stubs): Likewise.
1168	(build_spuear_stubs): Likewise.
1169	(mark_overlay_section): Likewise.
1170	(spu_elf_auto_overlay): Likewise.
1171	(spu_elf_output_symbol_hook): Likewise.
1172	* elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
1173	* elf32-xtensa.c (xtensa_property_section_name): Likewise.
1174	* elf64-ppc.c (ppc64_elf_section_flags): Likewise.
1175	(ppc64_elf_relocate_section): Likewise.
1176	* elflink.c (resolve_section): Likewise.
1177	(UNARY_OP): Likewise.
1178	(BINARY_OP_HEAD): Likewise.
1179	(elf_link_input_bfd): Likewise.
1180	* elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise.
1181	* elfxx-riscv.c (riscv_parse_subset): Likewise.
1182	* elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
1183	* opncls.c (get_build_id): Likewise.
1184
11852021-03-31  Alan Modra  <amodra@gmail.com>
1186
1187	PR 27671
1188	* bfd-in.h: Don't poison FALSE or TRUE.
1189	* bfd-in2.h: Regenerate.
1190
11912021-03-31  Alan Modra  <amodra@gmail.com>
1192
1193	* sysdep.h: POISON_BFD_BOOLEAN: Define.
1194	* aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h,
1195	* aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c,
1196	* bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c,
1197	* coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c,
1198	* coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c,
1199	* coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c,
1200	* coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
1201	* coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
1202	* coffcode.h, * coffgen.c, * cofflink.c, * compress.c,
1203	* corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c,
1204	* cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c,
1205	* cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c,
1206	* cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c,
1207	* cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c,
1208	* cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c,
1209	* cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c,
1210	* cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c,
1211	* cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c,
1212	* cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c,
1213	* cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c,
1214	* cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c,
1215	* cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c,
1216	* cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c,
1217	* cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c,
1218	* cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c,
1219	* cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c,
1220	* cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c,
1221	* cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c,
1222	* cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c,
1223	* cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c,
1224	* dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c,
1225	* elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h,
1226	* elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c,
1227	* elf-nacl.h, * elf-properties.c, * elf-s390-common.c,
1228	* elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h,
1229	* elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c,
1230	* elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c,
1231	* elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c,
1232	* elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c,
1233	* elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1234	* elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
1235	* elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c,
1236	* elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
1237	* elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1238	* elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c,
1239	* elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
1240	* elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c,
1241	* elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
1242	* elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c,
1243	* elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c,
1244	* elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c,
1245	* elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h,
1246	* elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h,
1247	* elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c,
1248	* elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h,
1249	* elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
1250	* elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
1251	* elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c,
1252	* elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1253	* elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
1254	* elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c,
1255	* elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h,
1256	* elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c,
1257	* elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c,
1258	* elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h,
1259	* elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h,
1260	* elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h,
1261	* elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h,
1262	* format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c,
1263	* i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h,
1264	* libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h,
1265	* libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c,
1266	* mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h,
1267	* merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c,
1268	* pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c,
1269	* pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c,
1270	* pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c,
1271	* peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c,
1272	* reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c,
1273	* som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c,
1274	* verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h,
1275	* wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c,
1276	* xsym.h: Replace bfd_boolean with bool, FALSE with false, and
1277	TRUE with true throughout.
1278	* bfd-in2.h: Regenerate.
1279	* libbfd.h: Regenerate.
1280	* libcoff.h: Regenerate.
1281
12822021-03-31  Alan Modra  <amodra@gmail.com>
1283
1284	* bfd-in.h: Include stdbool.h.
1285	(bfd_boolean): Define as bool
1286	* bfd-in2.h: Regenerate.
1287
12882021-03-31  Alan Modra  <amodra@gmail.com>
1289
1290	* .gitignore: Delete bfd_stdint.h entry.
1291	* Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h.
1292	(BUILD_HFILES, LOCAL_H_DEPS): Likewise.
1293	* bfd-in.h: Include stdint.h in place of bfd_stdint.h.
1294	* configure.ac: Don't invoke GCC_HEADER_STDINT.
1295	* configure.com: Don't create bfd_stdint.h.
1296	* Makefile.in: Regenerate.
1297	* aclocal.m4: Regenerate.
1298	* bfd-in2.h: Regenerate.
1299	* config.in: Regenerate.
1300	* configure: Regenerate.
1301	* doc/Makefile.in: Regenerate.
1302	* po/BLD-POTFILES.in: Regenerate.
1303
13042021-03-31  Alan Modra  <amodra@gmail.com>
1305
1306	* bfd-in.h: Include string.h.
1307	(LITMEMCPY, LITSTRCPY): Delete.
1308	* bfd-in2.h: Regenerate.
1309
13102021-03-30  Alan Modra  <amodra@gmail.com>
1311
1312	* elflink.c (elf_link_add_object_symbols): Don't set h->indx
1313	unless is_elf_hash_table.
1314
13152021-03-29  Alan Modra  <amodra@gmail.com>
1316
1317	* aoutx.h (aout_link_write_symbols): Don't cast boolean expression
1318	to bfd_boolean.
1319	* elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans
1320	against FALSE.
1321	* elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE.
1322	(is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE".
1323	(is_reloc_SDA_relative, is_reloc_for_GOT): Likewise.
1324	(is_reloc_for_PLT, is_reloc_for_TLS): Likewise.
1325	* elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise.
1326	* elf32-nds32.c (insert_nds32_elf_blank): Likewise.
1327	* elf32-rx.c (rx_set_section_contents): Likewise.
1328	* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
1329	* elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise.
1330	* mach-o.c (bfd_mach_o_read_command): Likewise.
1331	* targets.c (bfd_get_target_info): Likewise.
1332
13332021-03-29  Alan Modra  <amodra@gmail.com>
1334
1335	* coff-z80.c (z80_is_local_label_name): Return bfd_boolean.
1336	* elf32-z80.c (z80_is_local_label_name): Likewise.
1337	* elf32-spu.c (spu_elf_modify_headers): Likewise.
1338	* elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>):
1339	Change type to int.
1340	* vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test
1341	for error return from vms_write_data_block.
1342
13432021-03-29  Alan Modra  <amodra@gmail.com>
1344
1345	* elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
1346	* elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
1347	(elf64_ia64_local_dyn_sym_thunk): Likewise.
1348	* elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
1349	* elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
1350	(elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
1351	* elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
1352	(elfNN_ia64_local_dyn_sym_thunk): Likewise.
1353	* elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
1354	(riscv_pcrel_reloc_eq): Likewise.
1355	(riscv_elf_finish_local_dynamic_symbol): Likewise.
1356	* elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
1357	(finish_local_dynamic_symbol): Likewise.
1358	* elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
1359	* elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
1360	(mips_elf_count_got_symbols): Change return type to bfd_boolean.
1361
13622021-03-29  Alan Modra  <amodra@gmail.com>
1363
1364	* elflink.c (elf_link_output_symstrtab): Make flinfo parameter
1365	a void pointer.
1366	(bfd_elf_final_link): Delete out_sym_func typedef and don't cast
1367	elf_link_output_symstrtab when calling output_arch_syms and
1368	output_arch_local_syms.
1369	* elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms,
1370	elf_backend_output_arch_local_syms>): Change return type of func
1371	arg to match elf_link_output_symstrtab.
1372	* elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct
1373	return type.
1374	* elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type.
1375	(nds32_elf_output_arch_syms): Correct func return type.
1376
13772021-03-29  Alan Modra  <amodra@gmail.com>
1378
1379	* elf-m10200.c (mn10200_elf_relocate_section): Return int.
1380	* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1381	* elf32-arc.c (elf_arc_relocate_section): Likewise.
1382	* elf32-arm.c (elf32_arm_relocate_section): Likewise.
1383	* elf32-avr.c (elf32_avr_relocate_section): Likewise.
1384	* elf32-bfin.c (bfin_relocate_section): Likewise.
1385	(bfinfdpic_relocate_section): Likewise.
1386	* elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
1387	* elf32-cris.c (cris_elf_relocate_section): Likewise.
1388	* elf32-crx.c (elf32_crx_relocate_section): Likewise.
1389	* elf32-csky.c (csky_elf_relocate_section): Likewise.
1390	* elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1391	* elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
1392	* elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1393	* elf32-frv.c (elf32_frv_relocate_section): Likewise.
1394	* elf32-ft32.c (ft32_elf_relocate_section): Likewise.
1395	* elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1396	* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1397	* elf32-i386.c (elf_i386_relocate_section): Likewise.
1398	* elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1399	* elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1400	* elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1401	* elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1402	* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1403	* elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1404	* elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise.
1405	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1406	* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1407	* elf32-mep.c (mep_elf_relocate_section): Likewise.
1408	* elf32-metag.c (elf_metag_relocate_section): Likewise.
1409	* elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1410	* elf32-moxie.c (moxie_elf_relocate_section): Likewise.
1411	* elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1412	* elf32-mt.c (mt_elf_relocate_section): Likewise.
1413	* elf32-nds32.c (nds32_elf_relocate_section): Likewise.
1414	* elf32-nios2.c (nios2_elf32_relocate_section): Likewise.
1415	* elf32-or1k.c (or1k_elf_relocate_section): Likewise.
1416	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1417	* elf32-pru.c (pru_elf32_relocate_section): Likewise.
1418	* elf32-rl78.c (rl78_elf_relocate_section): Likewise.
1419	* elf32-rx.c (rx_elf_relocate_section): Likewise.
1420	* elf32-s390.c (elf_s390_relocate_section): Likewise.
1421	* elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1422	(_bfd_score_elf_relocate_section): Likewise.
1423	* elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise.
1424	* elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1425	* elf32-sh.c (sh_elf_relocate_section): Likewise.
1426	* elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1427	* elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
1428	* elf32-v850.c (v850_elf_relocate_section): Likewise.
1429	* elf32-vax.c (elf_vax_relocate_section): Likewise.
1430	* elf32-visium.c (visium_elf_relocate_section): Likewise.
1431	* elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1432	* elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1433	* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1434	* elf32-z80.c (z80_elf_relocate_section): Likewise.
1435	* elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1436	(elf64_alpha_relocate_section): Likewise.
1437	* elf64-bpf.c (bpf_elf_relocate_section): Likewise.
1438	* elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1439	* elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
1440	* elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1441	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1442	* elf64-s390.c (elf_s390_relocate_section): Likewise.
1443	* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1444	* elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise.
1445	* elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1446	* elfnn-riscv.c (riscv_elf_relocate_section): Likewise.
1447	* elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1448	* elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise.
1449	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1450	* elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise.
1451	* elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
1452	* elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise.
1453
14542021-03-26  Keith Seitz  <keiths@redhat.com>
1455
1456	* elfcore.h (_bfd_elf_core_find_build_id): Seek file
1457	offset of program headers after calling elf_read_notes.
1458
14592021-03-23  Jan Beulich  <jbeulich@suse.com>
1460
1461	* dwarf2.c (read_indexed_string): Rename index to idx.
1462
14632021-03-22  Martin Liska  <mliska@suse.cz>
1464
1465	* bfd-in.h (startswith): Add startswith function.
1466	(CONST_STRNEQ): Remove.
1467	* bfd-in2.h (startswith): Regenerate with make headers.
1468	* archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
1469	(_bfd_slurp_extended_name_table): Likewise.
1470	* archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
1471	* bfd.c (bfd_get_sign_extend_vma): Likewise.
1472	(bfd_convert_section_size): Likewise.
1473	(bfd_convert_section_contents): Likewise.
1474	* coff-stgo32.c (go32exe_create_stub): Likewise.
1475	(go32exe_check_format): Likewise.
1476	* coffcode.h (styp_to_sec_flags): Likewise.
1477	(GNU_DEBUGALTLINK): Likewise.
1478	* coffgen.c (_bfd_coff_section_already_linked): Likewise.
1479	(coff_gc_sweep): Likewise.
1480	(bfd_coff_gc_sections): Likewise.
1481	* cofflink.c (coff_link_add_symbols): Likewise.
1482	(process_embedded_commands): Likewise.
1483	* compress.c (bfd_is_section_compressed_with_header): Likewise.
1484	(bfd_init_section_decompress_status): Likewise.
1485	* dwarf2.c (find_debug_info): Likewise.
1486	(place_sections): Likewise.
1487	* ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
1488	* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
1489	* elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1490	(assign_section_numbers): Likewise.
1491	(elfcore_grok_win32pstatus): Likewise.
1492	* elf32-arm.c (cmse_scan): Likewise.
1493	(elf32_arm_gc_mark_extra_sections): Likewise.
1494	(elf32_arm_size_dynamic_sections): Likewise.
1495	(is_arm_elf_unwind_section_name): Likewise.
1496	* elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
1497	* elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
1498	* elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
1499	* elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
1500	* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
1501	* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1502	* elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
1503	* elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
1504	* elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
1505	* elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
1506	* elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
1507	* elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
1508	* elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
1509	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1510	* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
1511	* elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
1512	* elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
1513	* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1514	* elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
1515	(elf32_tic6x_size_dynamic_sections): Likewise.
1516	* elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
1517	* elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
1518	(xtensa_is_insntable_section): Likewise.
1519	(xtensa_is_littable_section): Likewise.
1520	(xtensa_is_proptable_section): Likewise.
1521	(xtensa_property_section_name): Likewise.
1522	(xtensa_callback_required_dependence): Likewise.
1523	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
1524	* elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
1525	* elf64-ia64-vms.c (is_unwind_section_name): Likewise.
1526	(get_reloc_section): Likewise.
1527	(elf64_ia64_size_dynamic_sections): Likewise.
1528	(elf64_ia64_object_p): Likewise.
1529	* elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
1530	* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
1531	* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
1532	* elflink.c (elf_link_add_object_symbols): Likewise.
1533	(_bfd_elf_gc_mark_extra_sections): Likewise.
1534	(bfd_elf_parse_eh_frame_entries): Likewise.
1535	(_bfd_elf_section_already_linked): Likewise.
1536	* elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
1537	* elfnn-ia64.c (is_unwind_section_name): Likewise.
1538	(elfNN_ia64_size_dynamic_sections): Likewise.
1539	(elfNN_ia64_object_p): Likewise.
1540	* elfxx-mips.c (FN_STUB_P): Likewise.
1541	(CALL_STUB_P): Likewise.
1542	(CALL_FP_STUB_P): Likewise.
1543	(_bfd_mips_elf_section_from_shdr): Likewise.
1544	(_bfd_mips_elf_fake_sections): Likewise.
1545	(_bfd_mips_elf_size_dynamic_sections): Likewise.
1546	(_bfd_mips_final_write_processing): Likewise.
1547	(_bfd_mips_elf_final_link): Likewise.
1548	* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
1549	* elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
1550	(elf_x86_64_is_reloc_section): Likewise.
1551	* hpux-core.c (thread_section_p): Likewise.
1552	* libcoff.h (bfd_pei_p): Likewise.
1553	* linker.c (REAL): Likewise.
1554	(unwrap_hash_lookup): Likewise.
1555	(_bfd_generic_link_add_one_symbol): Likewise.
1556	* mmo.c (mmo_internal_write_section): Likewise.
1557	* osf-core.c (osf_core_core_file_p): Likewise.
1558	* pef.c (bfd_pef_print_symbol): Likewise.
1559	* pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
1560	* som.c (som_slurp_symbol_table): Likewise.
1561	(som_slurp_armap): Likewise.
1562	* wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
1563
15642021-03-22  Jan Beulich  <jbeulich@suse.com>
1565
1566	* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
1567	language translation wrapping to _bfd_error_handler()
1568	invocations.
1569
15702021-03-21  Alan Modra  <amodra@gmail.com>
1571
1572	* bfd-in.h (startswith): New inline.
1573	(CONST_STRNEQ): Use startswith.
1574	* bfd-in2.h: Regenerate.
1575
15762021-03-20  Alan Modra  <amodra@gmail.com>
1577
1578	PR 27590
1579	* elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE
1580	test for .gnu.debuglto*.
1581
15822021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1583
1584	PR ld/27590
1585	* elf.c (_bfd_elf_make_section_from_shdr): Treat
1586	.gnu.debuglto_.debug_ section as debugging section unless it is
1587	marked with SHF_EXCLUDE.
1588	* elflink.c (elf_create_symbuf): Revert commit 994b2513281.
1589	(bfd_elf_match_symbols_in_sections): Ignore section symbols when
1590	matching non-debugging sections or linkonce section with comdat
1591	section.
1592
15932021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1594
1595	PR ld/27587
1596	* dwarf2.c (read_attribute_value): Check version >= 3 for
1597	DW_FORM_ref_addr.
1598
15992021-03-16  Nick Clifton  <nickc@redhat.com>
1600
1601	* peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer
1602	overrun by using sizeof of the destination x_fname field as the
1603	limit for a memcpy.
1604
16052021-03-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
1606
1607	* elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc.
1608
16092021-03-12  Clément Chigot  <clement.chigot@atos.net>
1610
1611	* reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE,
1612	BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD,
1613	BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE,
1614	BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M,
1615	BFD_RELOC_PPC64_TLS_ML): New relocations.
1616	* bfd-in2.h: Regenerate.
1617	* libbfd.h: Regenerate.
1618	* coff-rs6000.c (xcoff_calculate_relocation): Call
1619	xcoff_reloc_type_tls for TLS relocations.
1620	(xcoff_howto_table): Implement TLS relocations.
1621	(_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations.
1622	(xcoff_reloc_type_tls): New function.
1623	* coff64-rs6000.c (xcoff_calculate_relocation): Likewise.
1624	(xcoff_howto_table): Likewise.
1625	(_bfd_xcoff_reloc_type_lookup): Likewise.
1626	* coffcode.h (sec_to_styp_flags): Handle TLS sections.
1627	(styp_to_sec_flags): Likewise.
1628	(coff_compute_section_file_positions): Avoid file offset
1629	optimisation for .data when the previous section is .tdata.
1630	(coff_write_object_contents): Handle TLS sections.
1631	* coffswap.h (coff_swap_aouthdr_out): Add support for
1632	new fields in aouthdr.
1633	* libxcoff.h (xcoff_reloc_type_tls): Add prototype.
1634	* xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL.
1635	(xcoff_need_ldrel_p): Add cases for TLS relocations.
1636	(xcoff_create_ldrel): Add l_symndx for TLS sections.
1637
16382021-03-12  Clément Chigot  <clement.chigot@atos.net>
1639
1640	* reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO):
1641	New relocations.
1642	* bfd-in2.h: Regenerate.
1643	* libbfd.h: Regenerate.
1644	* coff-rs6000.c (xcoff_calculate_relocation): Call
1645	xcoff_reloc_type_toc for R_TOCU and R_TOCL.
1646	(xcoff_howto_table): Remove src_mask for TOC relocations.
1647	Add R_TOCU and R_TOCL howtos.
1648	(_bfd_xcoff_reloc_type_lookup): Add cases for
1649	BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO.
1650	(xcoff_reloc_type_toc): Compute the whole offset.
1651	Implement R_TOCU and R_TOCL.
1652	* coff64-rs6000.c (xcoff64_calculate_relocation):
1653	Likewise.
1654	(xcoff64_howto_table): Likewise.
1655	(xcoff64_reloc_type_lookup): Likewise.
1656
16572021-03-12  Clément Chigot  <clement.chigot@atos.net>
1658
1659	* coff-rs6000.c (xcoff_calculate_relocation): Correct and
1660	add new relocations.
1661	(xcoff_howto_table): Likewise.
1662	(xcoff_rtype2howto): Increase r_type maximum value.
1663	(xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead
1664	of create a new one from scratch.  Enable only some relocations
1665	to have a changing r_size.
1666	* coff64-rs6000.c (xcoff64_calculate_relocation): Likewise.
1667	(xcoff64_howto_table): Likewise.
1668	(xcoff64_rtype2howto): Likewise.
1669	(xcoff64_ppc_relocate_section): Likewise.
1670	* libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value.
1671
16722021-03-12  Clément Chigot  <clement.chigot@atos.net>
1673
1674	* coff64-rs6000.c (xcoff64_ppc_relocate_section): Move.
1675
16762021-03-12  Clément Chigot  <clement.chigot@atos.net>
1677
1678	* coff64-rs6000.c (xcoff64_write_object_contents): Remove.
1679	* coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620
1680	support for o_cputype field.  Avoid creating an empty a.out header
1681	for XCOFF64.
1682
16832021-03-12  Clément Chigot  <clement.chigot@atos.net>
1684
1685	* coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add
1686	missing smclass.
1687
16882021-03-11  Nelson Chu  <nelson.chu@sifive.com>
1689
1690	* elfnn-riscv.c (riscv_elf_link_hash_table): New boolean
1691	restart_relax, used to check if we need to run the whole
1692	relaxations from relax pass 0 to 2 again.
1693	(riscv_elf_link_hash_table_create): Init restart_relax to FALSE.
1694	(_bfd_riscv_relax_align): Remove obsolete sec_flg0 set.
1695	(_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code.
1696	(bfd_elfNN_riscv_restart_relax_sections): New function.  Called by
1697	after_allocation to check if we need to run the whole relaxations again.
1698	(_bfd_riscv_relax_section): We will only enter into the relax pass 3
1699	when the restart_relax is FALSE; At last set restart_relax to TRUE if
1700	again is TRUE, too.
1701	* elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration.
1702	(bfd_elf64_riscv_restart_relax_sections): Likewise.
1703
17042021-03-10  Jan Beulich  <jbeulich@suse.com>
1705
1706	* cofflink.c (_bfd_coff_write_global_sym): Range-check symbol
1707	offset.
1708
17092021-03-10  Alan Modra  <amodra@gmail.com>
1710	    Jan Beulich  <jbeulich@suse.com>
1711
1712	* elf.c (bfd_elf_generic_reloc): Make references between debug
1713	sections use section relative values.
1714
17152021-03-09  Jan Beulich  <jbeulich@suse.com>
1716
1717	* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA.
1718
17192021-03-05  H.J. Lu  <hongjiu.lu@intel.com>
1720
1721	PR ld/27425
1722	PR ld/27432
1723	* bfd.c (_bfd_get_link_info): New function.
1724	* elf-bfd.h (output_elf_obj_tdata): Add link_info.
1725	(elf_link_info): New.
1726	* libbfd-in.h (_bfd_get_link_info): New prototype.
1727	* coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for
1728	R_AMD64_IMAGEBASE when generating x86-64 ELF executable.
1729	* pe-x86_64.c: Include "coff/internal.h" and "libcoff.h".
1730	(pex64_link_add_symbols): New function.
1731	(coff_bfd_link_add_symbols): New macro.
1732	* libbfd.h: Regenerated.
1733
17342021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1735	    Andrew Burgess  <andrew.burgess@embecosm.com>
1736
1737	* elf-bfd.h (elfcore_write_riscv_csr): Declare.
1738	* elf.c (elfcore_grok_riscv_csr): New function.
1739	(elfcore_grok_note): Handle NT_RISCV_CSR.
1740	(elfcore_write_riscv_csr): New function.
1741	(elfcore_write_register_note): Handle '.reg-riscv-csr'.
1742
17432021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1744	    Andrew Burgess  <andrew.burgess@embecosm.com>
1745
1746	* elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define.
1747	(PRPSINFO_PR_PSARGS_LENGTH): Define.
1748	(riscv_write_core_note): New function.
1749	(riscv_elf_grok_psinfo): Make use of two new length defines.
1750	(elf_backend_write_core_note): Define.
1751
17522021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1753	    Andrew Burgess  <andrew.burgess@embecosm.com>
1754
1755	* elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
1756	* elf.c (elfcore_grok_gdb_tdesc): New function.
1757	(elfcore_grok_note): Handle NT_GDB_TDESC.
1758	(elfcore_write_gdb_tdesc): New function.
1759	(elfcore_write_register_note): Handle NT_GDB_TDESC.
1760
17612021-03-05  Nick Clifton  <nickc@redhat.com>
1762
1763	PR 27521
1764	* dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
1765	(read_indexed_string): Placeholder function.
1766	(read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
1767	forms.
1768
17692021-03-05  Alan Modra  <amodra@gmail.com>
1770
1771	* reloc.c (bfd_perform_relocation): Revert 2021-01-12 and
1772	2020-09-16 changes.
1773	* coff-x86_64.c (coff_amd64_reloc): Do more or less the same
1774	adjustments here instead.  Separate pc-relative adjustments
1775	from symbol related adjustments.  Tidy comments and formatting.
1776
17772021-03-04  Jan Beulich  <jbeulich@suse.com>
1778
1779	* coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in
1780	final PE images.
1781
17822021-03-04  Alan Modra  <amodra@gmail.com>
1783
1784	* rs6000-core.c (rs6000coff_core_p): Correct prototype.
1785
17862021-03-03  Alan Modra  <amodra@gmail.com>
1787
1788	PR 27500
1789	* elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop
1790	processing not when start/stop symbol section is unmarked but
1791	on first time a start/stop symbol is processed.
1792
17932021-03-03  Alan Modra  <amodra@gmail.com>
1794
1795	* reloc.c: Include x86_64.h rather than internal.h.
1796
17972021-03-02  Nick Clifton  <nickc@redhat.com>
1798
1799	PR 27484
1800	* dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate
1801	function and variable tags and a second time to resolve their
1802	attributes.
1803
18042021-03-02  Nick Alcock  <nick.alcock@oracle.com>
1805
1806	* elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount.
1807
18082021-03-02  Alan Modra  <amodra@gmail.com>
1809
1810	PR 27451
1811	* elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized
1812	linker defined start/stop symbols when start_stop_gc.
1813
18142021-03-02  Alan Modra  <amodra@gmail.com>
1815
1816	* elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got
1817	indirect to pc-relative or toc-relative for undefined symbols.
1818
18192021-03-01  Alan Modra  <amodra@gmail.com>
1820	    Fangrui Song <maskray@google.com>
1821
1822	* elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker
1823	defined start/stop symbols when start_stop_gc.
1824	(bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
1825	(bfd_elf_define_start_stop): Don't modify ldscript_def syms.
1826	* linker.c (bfd_generic_define_start_stop): Likewise.
1827
18282021-02-25  Alan Modra  <amodra@gmail.com>
1829
1830	PR 27441
1831	* elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak.
1832	* elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and
1833	use when deciding an as-needed library should be loaded instead
1834	of using the binding of the library definition.
1835
18362021-02-24  Alan Modra  <amodra@gmail.com>
1837
1838	PR 27459
1839	* coff-stgo32.c (go32exe_check_format): Sanity check size of
1840	header to avoid a buffer overflow.
1841
18422021-02-22  Alan Modra  <amodra@gmail.com>
1843
1844	* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
1845	* coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
1846
18472021-02-19  Nelson Chu  <nelson.chu@sifive.com>
1848
1849	PR 27158
1850	* elfnn-riscv.c (perform_relocation): Updated encoding macros.
1851	(_bfd_riscv_relax_call): Likewise.
1852	(_bfd_riscv_relax_lui): Likewise.
1853	* elfxx-riscv.c (howto_table): Likewise.
1854
18552021-02-18  Nelson Chu  <nelson.chu@sifive.com>
1856
1857	* Makefile.am: Added cpu-riscv.h.
1858	* Makefile.in: Regenerated.
1859	* po/SRC-POTFILES.in: Regenerated.
1860	* cpu-riscv.h: Added to support spec versions controlling.
1861	Also added extern arrays and functions for cpu-riscv.c.
1862	(enum riscv_spec_class): Define all spec classes here uniformly.
1863	(struct riscv_spec): Added for all specs.
1864	(RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
1865	(RISCV_GET_SPEC_NAME): Likewise.
1866	(RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
1867	(RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
1868	(RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
1869	* cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
1870	(riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
1871	(riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
1872	(riscv_priv_specs): Moved below.
1873	(riscv_get_priv_spec_class_from_numbers): Likewise, updated.
1874	(riscv_isa_specs): Moved from include/opcode/riscv.h.
1875	* elfnn-riscv.c: Included cpu-riscv.h.
1876	(riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
1877	* elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
1878	(RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
1879	* elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
1880
18812021-02-17  Alan Modra  <amodra@gmail.com>
1882
1883	* wasm-module.c: Guard include of limits.h.
1884	(CHAR_BIT): Provide backup define.
1885	(wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
1886	Correct signed overflow checking.
1887
18882021-02-17  Nelson Chu  <nelson.chu@sifive.com>
1889
1890	PR 27200
1891	* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
1892	copying the elf flags from input BFD to output BFD, until we have
1893	checked if the input BFD has no code section or not.  Also fix the
1894	problem that we only check the first section rather than the entire
1895	sections for input BFD.
1896
18972021-02-16  Alan Modra  <amodra@gmail.com>
1898
1899	* libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
1900	(_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
1901
19022021-02-15  Jan Beulich  <jbeulich@suse.com>
1903
1904	* doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
1905	* doc/Makefile.in: Re-generate.
1906
19072021-02-15  Alan Modra  <amodra@gmail.com>
1908
1909	* elf32-nds32.c (nds32_get_section_contents): Replace
1910	bfd_malloc_and_get_section with bfd_get_full_section_contents.
1911	(nds32_elf_relax_delete_blanks): Init contents.
1912	(nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
1913
19142021-02-15  Alan Modra  <amodra@gmail.com>
1915
1916	* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
1917	bfd_get_full_section_contents.
1918
19192021-02-14  Alan Modra  <amodra@gmail.com>
1920
1921	* elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
1922	all fixes to bfd_generic_get_relocated_section_contents since this
1923	function was split out.
1924
19252021-02-11  Alan Modra  <amodra@gmail.com>
1926
1927	* config.bfd: Remove ia64 from obsolete list.
1928
19292021-02-11  Alan Modra  <amodra@gmail.com>
1930
1931	PR ld/22269
1932	* elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
1933
19342021-02-11  Alan Modra  <amodra@gmail.com>
1935
1936	PR 27294
1937	* elf32-avr.c (avr_elf32_load_records_from_section): Use
1938	bfd_malloc_and_get_section.  Use bfd_byte* vars and remove then
1939	unnecessary casts.
1940
19412021-02-11  Alan Modra  <amodra@gmail.com>
1942
1943	PR 27291
1944	* section.c (bfd_get_section_contents): Avoid possible overflow
1945	when range checking offset and count.
1946	(bfd_set_section_contents): Likewise.
1947
19482021-02-03  Nick Alcock  <nick.alcock@oracle.com>
1949
1950	* configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
1951	favour of LIBINTL.
1952	* configure: Regenerated.
1953
19542021-02-09  Alan Modra  <amodra@gmail.com>
1955
1956	* config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
1957	* configure.ac: Delete symbian entries.
1958	* elf-bfd.h (enum elf_target_os): Delete is_symbian.
1959	* elf32-arm.c: Remove symbian support.  Formatting.
1960	* targets.c: Delete symbian entries.
1961	* configure: Regenerate.
1962
19632021-02-04  H.J. Lu  <hongjiu.lu@intel.com>
1964
1965	PR ld/19609
1966	* elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
1967	info when failed to convert GOTPCREL relocation.
1968
19692021-02-04  Nelson Chu  <nelson.chu@sifive.com>
1970
1971	* elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
1972
19732021-02-04  Alan Modra  <amodra@gmail.com>
1974
1975	PR 27311
1976	* elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
1977	libraries for IR references on pass over libraries after LTO
1978	recompilation.
1979
19802021-02-03  Alan Modra  <amodra@gmail.com>
1981
1982	PR 27311
1983	* elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
1984	(elf_link_add_object_symbols): Here too.  Don't pull in as-needed
1985	libraries when H is an indirect symbol after calling
1986	_bfd_elf_add_default_symbol.
1987
19882021-02-03  Alan Modra  <amodra@gmail.com>
1989
1990	PR 27311
1991	* elflink.c (_bfd_elf_add_default_symbol): Clear override when
1992	undecorated symbol will have a different version.
1993
19942021-02-02  Alan Modra  <amodra@gmail.com>
1995
1996	PR 27311
1997	* elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
1998	Use when handling default versioned symbol.  Rename existing
1999	override variable to nondef_override and use for non-default
2000	versioned symbol.
2001	(elf_link_add_object_symbols): Adjust call to suit.  Don't
2002	pull in as-needed libraries when override is set.
2003
20042021-02-01  Emery Hemingway  <ehmry@posteo.net>
2005
2006	* config.bfd: Add *-*-genode* as a target for AArch64 and x86.
2007
20082021-02-01  Egor Vishnyakov  <lenvampir@yandex.ru>
2009
2010	PR 27254
2011	* elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
2012	offset for the R_RL78_RH_SADDR relocation.
2013
20142021-01-29  Alan Modra  <amodra@gmail.com>
2015
2016	PR 27271
2017	* elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
2018	on symbols defined in absolute or other special sections.
2019
20202021-01-28  Alan Modra  <amodra@gmail.com>
2021
2022	PR 27259
2023	* elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
2024	prevent endless looping of linked-to sections.
2025
20262020-12-17  Mihails Strasuns  <mihails.strasuns@intel.com>
2027
2028	* bfd-elf.h (elfcore_write_file_note): New function.
2029	* elf.c (elfcore_write_file_note): New function.
2030
20312021-01-26  Alan Modra  <amodra@gmail.com>
2032
2033	* elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
2034
20352021-01-24  H.J. Lu  <hongjiu.lu@intel.com>
2036
2037	PR binutils/27231
2038	* dwarf2.c (read_rnglists): Ignore empty range when parsing line
2039	number tables.
2040
20412021-01-23  H.J. Lu  <hongjiu.lu@intel.com>
2042
2043	PR binutils/27231
2044	* dwarf2.c (read_rnglists): Advance rngs_ptr after
2045	_bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
2046
20472021-01-20  Alan Modra  <amodra@gmail.com>
2048
2049	* elf32-ppc.c: Delete outdated comment.
2050	(TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2051	* elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2052
20532021-01-20  Alan Modra  <amodra@gmail.com>
2054
2055	* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
2056	section symbols are present.
2057
20582021-01-19  Alan Modra  <amodra@gmail.com>
2059
2060	* elf64-ppc.c (elf_hash_entry): New inline function.  Use
2061	throughout to replace casts.
2062	(branch_reloc_hash_match): Remove const from params.
2063	(use_local_plt): New function.
2064	(allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
2065	(build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
2066	Use use_local_plt.
2067	* elf32-ppc.c (use_local_plt): New function.
2068	(allocate_dynrelocs, ppc_elf_relocate_section),
2069	(write_global_sym_plt): Use use_local_plt.
2070
20712021-01-17  H.J. Lu  <hongjiu.lu@intel.com>
2072
2073	PR ld/27193
2074	* elflink.c (elf_create_symbuf): Also ignore section symbols.
2075
20762021-01-16  H.J. Lu  <hongjiu.lu@intel.com>
2077
2078	PR ld/23169
2079	* elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
2080	check pointer_equality_needed.
2081
20822021-01-15  H.J. Lu  <hongjiu.lu@intel.com>
2083
2084	* elf-linker-x86.h (elf_linker_x86_params): Add
2085	report_relative_reloc.
2086	* elf32-i386.c (elf_i386_relocate_section): Call
2087	_bfd_x86_elf_link_report_relative_reloc to report relative
2088	relocations for -z report-relative-reloc.
2089	(elf_i386_finish_dynamic_symbol): Likewse.
2090	* elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
2091	(elf_x86_64_finish_dynamic_symbol): Likewse.
2092	* elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
2093	function.
2094	* elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
2095	prototype.
2096
20972021-01-16  Alan Modra  <amodra@gmail.com>
2098
2099	* compress.c (decompress_contents): Tidy inflateEnd result test.
2100
21012021-01-16  Alan Modra  <amodra@gmail.com>
2102
2103	PR 26002
2104	* elflink.c (elf_link_output_extsym): Use version 1 in
2105	.gnu.version for undefined unversioned symbols.
2106
21072021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2108
2109	* elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
2110	caused the by previous commit accidentally.
2111
21122021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2113
2114	* elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
2115	also aligned the code.
2116
21172021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2118
2119	* elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
2120
21212021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2122
2123	* elfnn-riscv.c: Comments tidy and improvement.
2124	* elfxx-riscv.c: Likewise.
2125	* elfxx-riscv.h: Likewise.
2126
21272021-01-14  H.J. Lu  <hongjiu.lu@intel.com>
2128
2129	PR ld/26688
2130	* elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
2131	section for R_BFIN_FUNCDESC.
2132
21332021-01-14  Nick Clifton  <nickc@redhat.com>
2134
2135	* elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
2136
21372021-01-13  Alan Modra  <amodra@gmail.com>
2138
2139	* Makefile.in: Regenerate.
2140	* doc/Makefile.in: Regenerate.
2141
21422021-01-13  Alan Modra  <amodra@gmail.com>
2143
2144	PR 27160
2145	* section.c (struct bfd_section): Remove pattern field.
2146	(BFD_FAKE_SECTION): Adjust to suit.
2147	* bfd-in2.h: Regenerate.
2148	* elflink.c (compare_link_order, elf_fixup_link_order): Delete.
2149	(bfd_elf_final_link): Don't call elf_fixup_link_order.
2150
21512021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
2152
2153	PR binutils/26792
2154	* configure.ac: Use GNU_MAKE_JOBSERVER.
2155	* aclocal.m4: Regenerated.
2156	* configure: Likewise.
2157
21582021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
2159
2160	PR ld/27171
2161	* reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
2162	R_AMD64_DIR32 relocations for PE/x86-64 inputs.
2163
21642021-01-11  H.J. Lu  <hongjiu.lu@intel.com>
2165
2166	PR ld/27173
2167	* configure: Regenerated.
2168
21692021-01-11  Nick Clifton  <nickc@redhat.com>
2170
2171	* po/fr.po: Updated French translation.
2172	* po/pt.po: Updated Portuguese translation.
2173	* po/sr.po: Updated Serbian translation.
2174	* po/uk.po: Updated Ukranian translation.
2175
21762021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
2177
2178	* configure: Regenerated.
2179
21802021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
2181
2182	PR ld/27166
2183	* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
2184	-z lam-u48 and -z lam-u57.
2185
21862021-01-09  Nick Clifton  <nickc@redhat.com>
2187
2188	* version.m4: Change to 2.36.50.
2189	* configure: Regenerate.
2190	* po/bfd.pot: Regenerate.
2191
21922021-01-09  Nick Clifton  <nickc@redhat.com>
2193
2194	* 2.36 release branch crated.
2195
21962021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2197
2198	* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
2199	LAM_U57 when setting LAM_U48.
2200
22012021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2202
2203	PR ld/26256
2204	PR ld/27160
2205	* elflink.c (elf_fixup_link_order): Verify that fixing up
2206	SHF_LINK_ORDER doesn't increase the output section size.
2207
22082021-01-09  Alan Modra  <amodra@gmail.com>
2209
2210	* configure: Regenerate.
2211
22122021-01-07  Samuel Thibault  <samuel.thibault@gnu.org>
2213
2214	* configure: Regenerate.
2215
22162021-01-07  H.J. Lu  <hongjiu.lu@intel.com>
2217
2218	PR 27109
2219	* aix386-core.c (core_aix386_vec): Initialize
2220	keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
2221	* aout-target.h (MY (vec)): Likewise.
2222	* binary.c (binary_vec): Likewise.
2223	* cisco-core.c (core_cisco_be_vec): Likewise.
2224	(core_cisco_le_vec): Likewise.
2225	* coff-alpha.c (alpha_ecoff_le_vec): Likewise.
2226	* coff-i386.c (TARGET_SYM): Likewise.
2227	(TARGET_SYM_BIG): Likewise.
2228	* coff-ia64.c (TARGET_SYM): Likewise.
2229	* coff-mips.c (mips_ecoff_le_vec): Likewise.
2230	(mips_ecoff_be_vec): Likewise.
2231	(mips_ecoff_bele_vec): Likewise.
2232	* coff-rs6000.c (rs6000_xcoff_vec): Likewise.
2233	(powerpc_xcoff_vec): Likewise.
2234	* coff-sh.c (sh_coff_small_vec): Likewise.
2235	(sh_coff_small_le_vec): Likewise.
2236	* coff-tic30.c (tic30_coff_vec): Likewise.
2237	* coff-tic54x.c (tic54x_coff0_vec): Likewise.
2238	(tic54x_coff0_beh_vec): Likewise.
2239	(tic54x_coff1_vec): Likewise.
2240	(tic54x_coff1_beh_vec): Likewise.
2241	(tic54x_coff2_vec): Likewise.
2242	(tic54x_coff2_beh_vec): Likewise.
2243	* coff-x86_64.c (TARGET_SYM): Likewise.
2244	(TARGET_SYM_BIG): Likewise.
2245	* coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
2246	(rs6000_xcoff64_aix_vec): Likewise.
2247	* coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
2248	(CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
2249	(CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
2250	* elfxx-target.h (TARGET_BIG_SYM): Likewise.
2251	(TARGET_LITTLE_SYM): Likewise.
2252	* hppabsd-core.c (core_hppabsd_vec): Likewise.
2253	* hpux-core.c (core_hpux_vec): Likewise.
2254	* i386msdos.c (i386_msdos_vec): Likewise.
2255	* ihex.c (ihex_vec): Likewise.
2256	* irix-core.c (core_irix_vec): Likewise.
2257	* mach-o-target.c (TARGET_NAME): Likewise.
2258	* mmo.c (mmix_mmo_vec): Likewise.
2259	* netbsd-core.c (core_netbsd_vec): Likewise.
2260	* osf-core.c (core_osf_vec): Likewise.
2261	* pdp11.c (MY (vec)): Likewise.
2262	* pef.c (pef_vec): Likewise.
2263	(pef_xlib_vec): Likewise.
2264	* plugin.c (plugin_vec): Likewise.
2265	* ppcboot.c (powerpc_boot_vec): Likewise.
2266	* ptrace-core.c (core_ptrace_vec): Likewise.
2267	* sco5-core.c (core_sco5_vec): Likewise.
2268	* som.c (hppa_som_vec): Likewise.
2269	* srec.c (srec_vec): Likewise.
2270	(symbolsrec_vec): Likewise.
2271	* tekhex.c (tekhex_vec): Likewise.
2272	* trad-core.c (core_trad_vec): Likewise.
2273	* verilog.c (verilog_vec): Likewise.
2274	* vms-alpha.c (alpha_vms_vec): Likewise.
2275	* vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
2276	* wasm-module.c (wasm_vec): Likewise.
2277	* xsym.c (sym_vec): Likewise.
2278	* elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
2279	isn't set.
2280	(elf_map_symbols): Don't include ignored section symbols.
2281	* elfcode.h (elf_slurp_symbol_table): Also set
2282	BSF_SECTION_SYM_USED on STT_SECTION symbols.
2283	* elflink.c (bfd_elf_final_link): Generated section symbols only
2284	when emitting relocations or reqired.
2285	* elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2286	* syms.c (BSF_SECTION_SYM_USED): New.
2287	* targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2288	(bfd_target): Add keep_unused_section_symbols.
2289	(bfd_keep_unused_section_symbols): New.
2290	* bfd-in2.h: Regenerated.
2291
22922021-01-07  Nick Clifton  <nickc@redhat.com>
2293
2294	PR 25713
2295	* bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
2296	absolute paths and check to see if they are longer than MAX_PATH.
2297
22982021-01-07  Philipp Tomsich  <prt@gnu.org>
2299
2300	* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
2301
23022021-01-07  Claire Xenia Wolf  <claire@symbioticeda.com>
2303	    Jim Wilson  <jimw@sifive.com>
2304	    Andrew Waterman  <andrew@sifive.com>
2305	    Maxim Blinov  <maxim.blinov@embecosm.com>
2306	    Kito Cheng  <kito.cheng@sifive.com>
2307	    Nelson Chu  <nelson.chu@sifive.com>
2308
2309	* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
2310
23112021-01-06  H.J. Lu  <hongjiu.lu@intel.com>
2312
2313	* elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
2314	(bfinfdpic_check_relocs): Likewise.
2315
23162021-01-06  Alan Modra  <amodra@gmail.com>
2317
2318	* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
2319	on unknown r_type.
2320	* elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
2321
23222021-01-06  Alan Modra  <amodra@gmail.com>
2323
2324	* config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
2325	(sparc64-*-solaris2*): Add sparc_elf64_vec and
2326	sparc_elf32_vec.
2327
23282021-01-06  Marcus Comstedt  <marcus@mc.pp.se>
2329
2330	* config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
2331	riscvbe*-*-*.  Also added riscv_elf[32|64]_be_vec.
2332	* configure.ac: Handle riscv_elf[32|64]_be_vec.
2333	* configure: Regenerate.
2334	* elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
2335	riscv_is_insn_reloc.
2336	(riscv_get_insn): RISC-V instructions are always little endian, but
2337	bfd_get may be used for big-endian, so add new riscv_get_insn to handle
2338	the insturctions.
2339	(riscv_put_insn): Likewsie.
2340	(riscv_is_insn_reloc): Check if we are relocaing an instruction.
2341	(perform_relocation): Call riscv_is_insn_reloc to decide if we should
2342	use riscv_[get|put]_insn or bfd_[get|put].
2343	(riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
2344	or bfd_[get|put]l16 for code.
2345	(riscv_elf_relocate_section): Likewise.
2346	(riscv_elf_finish_dynamic_symbol): Likewise.
2347	(riscv_elf_finish_dynamic_sections): Likewise.
2348	(_bfd_riscv_relax_call): Likewise.
2349	(_bfd_riscv_relax_lui): Likewise.
2350	(_bfd_riscv_relax_align): Likewise.
2351	(_bfd_riscv_relax_pc): Likewise.
2352	(riscv_elf_object_p): Handled for big endian.
2353	(TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
2354	* targets.c: Add riscv_elf[32|64]_be_vec.
2355	(_bfd_target_vector): Likewise.
2356
23572021-01-05  Alan Modra  <amodra@gmail.com>
2358
2359	* elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
2360	for relocatable executable.
2361
23622021-01-05  Alan Modra  <amodra@gmail.com>
2363
2364	* vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
2365
23662021-01-05  Nelson Chu  <nelson.chu@sifive.com>
2367
2368	* elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
2369	make sure gp symbol is output as a dynamic symbol.
2370
23712021-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2372
2373	PR ld/26256
2374	* elflink.c (compare_link_order): Place unordered sections before
2375	ordered sections.
2376	(elf_fixup_link_order): Add a link info argument.  Allow mixed
2377	ordered and unordered input sections for non-relocatable link.
2378	Sort the consecutive bfd_indirect_link_order sections with the
2379	same pattern.  Change the offsets of the bfd_indirect_link_order
2380	sections only.
2381	(bfd_elf_final_link): Pass info to elf_fixup_link_order.
2382	* section.c (bfd_section): Add pattern.
2383	(BFD_FAKE_SECTION): Initialize pattern to NULL.
2384	* bfd-in2.h: Regenerated.
2385
23862021-01-04  Alexander Fedotov  <alfedotov@gmail.com>
2387
2388	* elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
2389	of private flags with 0x.
2390	* elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
2391
23922021-01-04  Alan Modra  <amodra@gmail.com>
2393
2394	PR 26822
2395	* elflink.c (elf_link_input_bfd): Use the file base name in
2396	linker generated STT_FILE symbols.
2397
23982021-01-04  Nelson Chu  <nelson.chu@sifive.com>
2399
2400	* elfxx-riscv.c (riscv_compare_subsets): Removed static.
2401	* elfxx-riscv.h: Add declaration.
2402	* elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
2403	riscv_compare_subsets to check the orders.
2404	(riscv_skip_prefix): Removed.
2405	(riscv_prefix_cmp): Removed.
2406
24072021-01-04  Alan Modra  <amodra@gmail.com>
2408
2409	PR 26741
2410	* elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
2411	calculating subset version length.
2412
24132021-01-01  Nicolas Boulenguez  <nicolas@debian.org>
2414
2415	* xcofflink.c: Correct spelling in comments.
2416
24172021-01-01  Alan Modra  <amodra@gmail.com>
2418
2419	Update year range in copyright notice of all files.
2420
2421For older changes see ChangeLog-2020
2422
2423Copyright (C) 2021-2022 Free Software Foundation, Inc.
2424
2425Copying and distribution of this file, with or without modification,
2426are permitted in any medium without royalty provided the copyright
2427notice and this notice are preserved.
2428
2429Local Variables:
2430mode: change-log
2431left-margin: 8
2432fill-column: 74
2433version-control: never
2434End:
2435