xref: /netbsd-src/external/gpl3/gdb.old/dist/bfd/ChangeLog (revision 8b657b0747480f8989760d71343d6dd33f8d4cf9)
12022-12-06  Nick Clifton  <nickc@redhat.com>
2
3	PR 29852
4	* elf32-arm.c (cmse_scan): Check for NULL entries in the
5	sym_hashes array.
6	(elf32_arm_gc_mark_extra_sections): Likewise.
7
82022-12-05  Nick Clifton  <nickc@redhat.com>
9
10	PR 29848
11	* vms-alpha.c (parse_module): Fix potential out of bounds memory
12	access.
13
142022-12-01  Nick Clifton  <nickc@redhat.com>
15
16	PR 25202
17	* bfd.c (VerilogDataEndianness): New variable.
18	(verilog_write_record): Use VerilogDataEndianness, if set, to
19	choose the endianness of the output.
20	(verilog_write_section): Adjust the address by the data width.
21
222022-11-21  Nick Clifton  <nickc@redhat.com>
23
24	PR 29764
25	* cpu-arm.c (scan): Accept machine names prefixed with "arm:".
26	* cpu-aarch64.c (scan): Accept machine names prefixed with "aarch64:".
27
282022-10-19  Nick Clifton  <nickc@redhat.com>
29
30	PR 29699
31	* elf.c (_bfd_elf_slurp_version_tables): Fail if the sh_info field
32	of the section header is zero.
33
342022-09-09  Nick Clifton  <nickc@redhat.com>
35
36	PR 29532
37	* elf.c (setup_group): Do not return false if there is no group
38	information available.
39
402022-09-02  Aaron Merey  <amerey@redhat.com>
41
42	* aout-target.h (MY_find_nearest_line_with_alt): New macro.
43	* bfd-in2.h: Regenerate.
44	* bfd.c (bfd_find_nearest_line_with_alt): New macro.
45	* binary.c (binary_find_nearest_line_with_alt): New macro.
46	* coff-rs6000.c (_bfd_xcoff_find_nearest_line_with_alt): New macro.
47	(rs6000_xcoff64_vec): Add coff_find_nearest_line_with_alt.
48	* dwarf2.c (_bfd_dwarf2_find_nearest_line): Calls
49	_bfd_dwarf2_find_nearest_line_with_alt.
50	(_bfd_dwarf2_find_nearest_line_with_alt): New function. Implements the
51	former _bfd_dwarf2_find_nearest_line. Adds parameter alt_filename.
52	Attempt to open alt_filename and use it as the .dwz file if not NULL.
53	* elf-bfd.h (_bfd_elf_find_nearest_line_with_alt): New declaration.
54	* elf.c (_bfd_elf_find_nearest_line): Calls
55	_bfd_elf_find_nearest_line_with_alt.
56	(_bfd_elf_find_nearest_line_with_alt): New function. Implements the
57	former _bfd_elf_find_nearest_line. Adds parameter alt_filename.
58	* elf32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro.
59	* elf64-mips.c (bfd_elf64_find_nearest_line_with_alt): New macro.
60	* elfn32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro.
61	* elfxx-mips.h (_bfd_mips_elf_find_nearest_line_with_alt): New macro.
62	* elfxx-target.h (bfd_elfNN_find_nearest_line_with_alt): New macro.
63	* i386mdos.c (msdos_find_nearest_line_with_alt): New macro.
64	* ihex.c (ihex_find_nearest_line_with_alt): New macro.
65	* libbfd-in.h (_bfd_nosymbols_find_nearest_line_with_alt): New
66	declaration.
67	(_bfd_dwarf2_find_nearest_line_with_alt): New declaration.
68	* libbfd.h: Regenerate.
69	* libcoff-in.h (coff_find_nearest_line_with_alt): New macro.
70	* libcoff.h: Regenerate.
71	* libecoff.h (_bfd_ecoff_find_nearest_line_with_alt): New macro.
72	* mach-o.h (bfd_mach_o_find_nearest_line_with_alt): New macro.
73	* mmo.c (mmo_find_nearest_line_with_alt): New macro.
74	* pef.c (bfd_pef_find_nearest_line_with_alt): New macro.
75	* plugin.c (bfd_plugin_find_nearest_line_with_alt): New macro.
76	* ppcboot.c (ppcboot_find_nearest_line_with_alt): New macro.
77	* som.h (som_find_nearest_line_with_alt): New macro.
78	* srec.c (srec_find_nearest_line_with_alt): New macro.
79	* syms.c (_bfd_nosymbols_find_nearest_line_with_alt): New function.
80	* targets.c (BFD_JUMP_TABLE_SYMBOLS): Add symbol for
81	NAME##_find_nearest_line_with_alt.
82	(_bfd_find_nearest_line_with_alt): Add declaration.
83	* tekhex.c (tekhex_find_nearest_line_with_alt): New macro.
84	* verilog.c (verilog_find_nearest_line_with_alt): New macro.
85	* vms-alpha.c (_bfd_vms_find_nearest_line_with_alt): New macro.
86	* wasm-module.c (wasm_find_nearest_line_with_alt): New macro.
87	* xsym.c (bfd_sym_find_nearest_line_with_alt): New macro.
88
892022-09-02  Frederic Cambus  <fred@statdns.com>
90
91	* config.bfd (arm-*-openbsd*): Restore target.
92
932022-08-30  Nick Clifton  <nickc@redhat.com>
94
95	PR 29529
96	* dwarf2.c (struct line_info_table): Add new field:
97	use_dir_and_file_0.
98	(concat_filename): Use new field to help select the correct table
99	slot.
100	(read_formatted_entries): Do not skip entry 0.
101	(decode_line_info): Set new field depending upon the version of
102	DWARF being parsed.  Initialise filename based upon the setting of
103	the new field.
104
1052022-08-22  Frederic Cambus  <fred@statdns.com>
106
107	* config.bfd (aarch64-*-openbsd*): Add target.
108
1092022-08-03  Nick Clifton  <nickc@redhat.com>
110
111	PR 29389
112	* bfd.c (BFD_CLOSED_BY_CACHE): New bfd flag.
113	* cache.c (bfd_cache_delete): Set BFD_CLOSED_BY_DELETE on the
114	closed bfd.
115	(bfd_cache_lookup_worker): Clear BFD_CLOSED_BY_DELETE on the newly
116	reopened bfd.
117	* opncls.c (bfd_set_filename): Refuse to change the name of a bfd
118	that has been closed by bfd_cache_delete.  Mark changed bfds as
119	uncacheable.
120	* bfd-in2.h: Regenerate.
121
1222022-07-29  Nick Clifton  <nickc@redhat.com>
123
124	PR 29424
125	* dwarf2.c (read_attribute_value): Handle DW_FORM_rnglistx and
126	DW_FORM_loclistx.
127
1282022-07-26  Nick Clifton  <nickc@redhat.com>
129
130	* elfnn-loongarch.c (loongarch_elf_relocate_section): Fix
131	indentation.
132
1332022-07-08  Nick Clifton  <nickc@redhat.com>
134
135	* 2.39 branch created.
136
1372022-05-19  Yvan Roux  <yvan.roux@foss.st.com>
138
139	PR 25713
140	* bfdio.c (_bfd_real_fopen): Delete ccs string.
141
1422022-04-27  John Baldwin  <jhb@FreeBSD.org>
143
144	* elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_TLS notes.
145
1462022-04-25  Nick Clifton  <nickc@redhat.com>
147
148	PR 29072
149	* elflink.c (bfd_elf_size_dynamic_sections): Display a note to the
150	user that the current ehaviour of creating an executable stack
151	because of a missing .note.GNU-stack section is deprecated and
152	will be changed in a future release.
153
1542022-04-20  Clément Chigot  <clement.chigot@atos.net>
155
156	* coff-rs6000.c (xcoff_reloc_type_noop): Add info argument.
157	(xcoff_reloc_type_fail): Likewise.
158	(xcoff_reloc_type_pos): Likewise.
159	(xcoff_reloc_type_neg): Likewise.
160	(xcoff_reloc_type_rel): Likewise.
161	(xcoff_reloc_type_toc): Likewise.
162	(xcoff_reloc_type_ba): Likewise.
163	(xcoff_reloc_type_crel): Likewise.
164	(xcoff_reloc_type_tls): Likewise.
165	(xcoff_reloc_type_br): Add stub handler.
166	(xcoff_ppc_relocate_section): Add info to
167	xcoff_calculate_relocation.
168	(xcoff_stub_indirect_call_code): New constant.
169	(xcoff_stub_shared_call_code): Likewise.
170	(bfd_xcoff_backend_data): Add stub code fields.
171	(bfd_pmac_xcoff_backend_data): Likewise.
172	* coff64-rs6000.c (xcoff64_reloc_type_br): Add stub handler.
173	(xcoff64_ppc_relocate_section): Add info to
174	xcoff64_calculate_relocation.
175	(xcoff64_stub_indirect_call_code): New constant.
176	(xcoff64_stub_shared_call_code): Likewise.
177	(bfd_xcoff_backend_data): Add stub code fields.
178	(bfd_xcoff_aix5_backend_data): Likewise.
179	* libxcoff.h (struct xcoff_backend_data_rec): Add stub fields.
180	(bfd_xcoff_stub_indirect_call_code): New define.
181	(bfd_xcoff_stub_indirect_call_size): New define.
182	(bfd_xcoff_stub_shared_call_code): New define.
183	(bfd_xcoff_stub_shared_call_size): New define.
184	(xcoff_reloc_function): Add info argument.
185	(enum xcoff_stub_type): New enum.
186	(struct xcoff_stub_hash_entry): New structure.
187	* xcofflink.c (struct xcoff_link_hash_table): Add stub hash
188	table and params fields.
189	(xcoff_stub_hash_entry): New define.
190	(xcoff_stub_hash_lookup): New define.
191	(stub_hash_newfunc): New function.
192	(_bfd_xcoff_bfd_link_hash_table_free): Free the new stub hash
193	table.
194	(_bfd_xcoff_bfd_link_hash_table_create): Create the new stub
195	hash table.
196	(xcoff_link_add_symbols): Save rawsize for XTY_SD.
197	(bfd_xcoff_link_init): New function.
198	(xcoff_stub_csect_name): New function.
199	(xcoff_stub_get_csect_in_range): New function.
200	(xcoff_stub_name): New function.
201	(bfd_xcoff_get_stub_entry): New function.
202	(bfd_xcoff_type_of_stub): New function.
203	(xcoff_add_stub): New function.
204	(xcoff_build_one_stub): New function.
205	(bfd_xcoff_size_stubs): New function.
206	(bfd_xcoff_build_stubs): New function.
207	(xcoff_stub_create_relocations): New function.
208	(xcoff_link_input_bfd): Adapt relocations to stub.
209	(xcoff_write_global_symbol): Adapt to new TOC entries generated
210	for stubs.
211	(_bfd_xcoff_bfd_final_link): Handle stub file.
212	* xcofflink.h (struct bfd_xcoff_link_params): New structure.
213
2142022-04-20  Clément Chigot  <clement.chigot@atos.net>
215
216	* coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Write len in
217	ldinfo->strings instead of directly in the output_bfd.
218	* coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
219	* xcofflink.c (struct xcoff_link_hash_table): Remove ldrel_count
220	field. Add ldinfo field.
221	(xcoff_mark_symbol): Adjust to new ldinfo field.
222	(xcoff_mark): Likewise.
223	(bfd_xcoff_link_count_reloc): Likewise.
224	(xcoff_build_loader_section): Split into two functions: one that
225	build the loader section (this function) and one that only size
226	it...
227	(xcoff_size_loader_section): ... (this function).
228	(bfd_xcoff_size_dynamic_sections): Adapt to new ldinfo field.
229	Move the part where the dynamic sections are build to ...
230	(bfd_xcoff_build_dynamic_sections): ... this function.
231	* xcofflink.h: Add bfd_xcoff_build_dynamic_sections prototype.
232
2332022-04-13  Alexander von Gluck IV  <kallisti5@unixzen.com>
234
235	* config.bfd (x86-haiku): Add i386_pei_vec as a selectable format.
236
2372022-04-08  Nick Clifton  <nickc@redhat.com>
238
239	PR 29038
240	* coffgen.c (coff_find_nearest_line_with_names): Fix typo
241	retrieving saved bias.
242
2432022-04-07  Mark Harmstone  <mark@harmstone.com>
244
245	* coff-i386.c (in_reloc_p): Add R_SECTION.
246	(howto_table): Add R_SECTION.
247	(coff_pe_i386_relocation_section): Add support for R_SECTION.
248	(coff_i386_reloc_type_lookup): Add support for
249	BFD_RELOC_16_SECCIDX.
250	* coff-x86_64.c (in_reloc_p): Add R_SECTION.
251	(howto_table): Add R_SECTION.
252	(coff_pe_amd64_relocation_section): Add support for R_SECTION.
253	(coff_amd64_reloc_type_lookup): Add support for
254	BFD_RELOC_16_SECCIDX.
255	* reloc.c: Add BFD_RELOC_16_SECIDX.
256	* bfd-in2.h: Regenerate.
257	* libbfd.h: Regenerate.
258
2592022-04-01  John Baldwin  <jhb@FreeBSD.org>
260
261	* elf-bfd.h (elfcore_write_x86_segbases): New.
262	* elf.c (elfcore_grok_freebsd_note): Add pseudosections for
263	NT_FREEBSD_X86_SEGBASES register notes.
264	(elfcore_write_x86_segbases): New.
265	(elfcore_write_register_note): Write NT_FREEBSD_X86_SEGBASES
266	register notes.
267
2682022-04-01  John Baldwin  <jhb@FreeBSD.org>
269
270	* elf.c (elfcore_grok_freebsd_note): Remove checks for namesz.
271
2722022-03-22  Steiner H Gunderson  <steinar+sourceware@gunderson.no>
273
274	* dwarf2.c (_bfd_dwarf2_find_nearest_line): if a function name is
275	found, but no line number info, then return a result of 2.
276
2772022-03-21  Steiner H Gunderson  <steinar+sourceware@gunderson.no>
278
279	PR 28978
280	* dwarf2.c (scan_unit_for_symbols): When performing second pass,
281	check to see if the function or variable being processed is the
282	same as the previous one.
283
2842022-03-18  Viorel Preoteasa  <viorel.preoteasa@gmail.com>
285
286	PR 28924
287	* elf32-arm.c (THM_MAX_FWD_BRANCH_OFFSET): Fix definition.
288	(THM2_MAX_FWD_BRANCH_OFFSET): Likewise.
289
2902022-03-16  Simon Marchi  <simon.marchi@efficios.com>
291
292	* Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES):
293	Add cpu-amdgcn.c.
294	(BFD64_BACKENDS): Add elf64-amdgcn.lo.
295	(BFD64_BACKENDS_CFILES): Add elf64-amdgcn.c.
296	* Makefile.in: Re-generate.
297	* cpu-amdgcn.c: New.
298	* elf64-amdgcn.c: New.
299	* archures.c (bfd_architecture): Add bfd_arch_amdgcn and related
300	mach defines.
301	(bfd_amdgcn_arch): New.
302	(bfd_archures_list): Add bfd_amdgcn_arch.
303	* bfd-in2.h: Re-generate.
304	* config.bfd: Handle amdgcn* target.
305	* configure.ac: Handle amdgcn_elf64_le_vec.
306	* configure: Re-generate.
307	* elf-bfd.h (elf_target_id): Add AMDGCN_ELF_DATA.
308	* targets.c (amdgcn_elf64_le_vec): New.
309	(_bfd_target_vector): Add amdgcn_elf64_le_vec.
310
3112022-03-01  Torbjörn Svensson  <torbjorn.svensson@st.com>
312	    Fred Eisele  <fredrick.eisele@gmail.com>
313
314	PR 25713
315	* bfdio.c (_bfd_real_fopen): Fix typo.
316
3172022-03-01  Nick Clifton  <nickc@redhat.com>
318
319	PR 28848
320	* elf32-arm.c (elf32_arm_merge_eabi_attributes): If the first
321	input bfd has a Tag_ABI_HardFP_use set to 3 but does not also have
322	TAG_FP_arch set then reset the TAG_ABI_HardFP_use.
323
3242022-02-28  Torbjörn Svensson  <torbjorn.svensson@st.com>
325	    Fred Eisele  <fredrick.eisele@gmail.com>
326
327	PR 25713
328	* bfdio.c (_bfd_real_fopen): Fix handling of paths longer than 260
329	characters on Windows hosts.
330
3312022-02-28  Nick Clifton  <nickc@redhat.com>
332
333	PR 28886
334	* config.bfd: Update error message for obsolete configurations.
335
3362022-02-17  Nick Clifton  <nickc@redhat.com>
337
338	* po/sr.po: Updated Serbian translation.
339
3402022-02-16  Fangrui Song  <maskray@google.com>
341	Nick Clifton  <nickc@redhat.com>
342
343	PR ld/28841
344	* bfd-in2.h (struct bfd_section): Add type.
345	(discarded_section): Add field.
346	* elf.c (elf_fake_sections): Handle bfd_section::type.
347	* section.c (BFD_FAKE_SECTION): Add field.
348	* mri.c (mri_draw_tree): Update function call.
349
3502022-02-11  Michael Forney  <mforney@mforney.org>
351
352        * bfd.c (bfd_set_gp_value): Remove return with expression
353        in void function.
354
3552022-02-09  Nick Clifton  <nickc@redhat.com>
356
357	* config.bfd: Move pending obsolesence targets into the definitely
358	obsolete list.
359
3602022-02-02  Nick Clifton  <nickc@redhat.com>
361
362	PR 28834
363	* dwarf2.c (read_section): Change the heuristic that checks for
364	overlarge dwarf debug info sections.
365
3662022-02-02  Stafford Horne  <shorne@gmail.com>
367
368	PR 28735
369	* elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define.
370	(or1k_elf_relocate_section): Use new howto instead of trying to
371	mask out relocation bits.
372
3732022-01-24  Roland McGrath  <mcgrathr@google.com>
374
375	* doc/local.mk (%D%/bfdver.texi): Add mkdir command.
376
3772022-01-24  Nick Clifton  <nickc@redhat.com>
378
379	* po/fr.po: Updated French translation.
380	* po/ro.po: Updated Romanian translation.
381	* po/uk.po: Updated Ukranian translation.
382
3832022-01-22  Nick Clifton  <nickc@redhat.com>
384
385	* version.m4: Change to 2.38.50.
386	* configure: Regenerate.
387	* po/bfd.pot: Regenerate.
388
3892022-01-22  Nick Clifton  <nickc@redhat.com>
390
391	* 2.38 release branch created.
392
3932022-01-17  Nick Clifton  <nickc@redhat.com>
394
395	* Makefile.in: Regenerate.
396	* configure: Regenerate.
397	* doc/Makefile.in: Regenerate.
398	* po/bfd.pot: Regenerate.
399
4002021-12-15  Nikita Popov  <npv1310@gmail.com>
401
402	PR 28687
403	* dwarf1.c (parse_die): Fix undefined behaviour in range tests.
404
4052021-11-17  Nick Clifton  <nickc@redhat.com>
406
407	PR 28452
408	* elf.c (assign_file_positions_for_non_load_sections): Replace
409	assertion with a warning message.
410
4112021-10-19  Nick Clifton  <nickc@redhat.com>
412
413	* linker.c (_bfd_generic_link_add_one_symbol): Test for a NULL
414	name before checking to see if the symbol is __gnu_lto_slim.
415	* archive.c (_bfd_compute_and_write_armap): Likewise.
416
4172021-09-27  Nick Alcock  <nick.alcock@oracle.com>
418
419	* configure: Regenerate.
420
4212021-09-15  Andrew Burgess  <andrew.burgess@embecosm.com>
422
423	* archures.c (bfd_arch_list): Use 'char *' instead of 'char **'
424	when calculating space for a string list.
425
4262021-09-014  Cupertino Miranda  <cmiranda@synopsys.com>
427           Claudiu Zissulescu  <claziss@synopsys.com>
428
429	* arc-got.h (arc_static_sym_data): New structure.
430	(get_static_sym_data): New function.
431	(relocate_fix_got_relocs_for_got_info): Move the computation fo
432	symbol value and section to above introduced function, and use
433	this new function.
434
4352021-09-07  Luis Machado  <luis.machado@linaro.org>
436
437	Revert: [AArch64] MTE corefile support
438
439	2021-05-21  Luis Machado  <luis.machado@linaro.org>
440
441	* elf.c (elfcore_make_memtag_note_section): New function.
442	(elfcore_grok_note): Handle NT_MEMTAG note types.
443
4442021-09-07  Nick Clifton  <nickc@redhat.com>
445
446	PR 28305
447	* elf32-xtensa.c (elf_xtensa_do_reloc): Add check for put of range
448	reloc.
449
450	PR 28303
451	* elfxx-riscv.c (riscv_elf_add_sub_reloc): Add check for out of
452	range relocs.
453
4542021-08-10  Nick Clifton  <nickc@redhat.com>
455
456	* po/sr.po: Updated Serbian translation.
457
4582021-07-18  Nick Clifton  <nickc@redhat.com>
459
460	* config.bfd: Move pending obsoletion targets to obsolete list.
461
4622021-07-16  Giulio Benetti  <giulio.benetti@benettiengineering.com>
463
464	* elf32-or1k.c (or1k_elf_relocate_section): Use a separate entry
465	in switch case R_OR1K_INSN_REL_26 where we need to check for
466	!SYMBOL_CALLS_LOCAL() instead of !SYMBOL_REFERENCES_LOCAL().
467
4682021-07-14  Clément Chigot  <clement.chigot@atos.net>
469
470	* libxcoff.h (struct xcoff_dwsect_name): Add DWARF name.
471	* coff-rs6000.c (xcoff_dwsect_names): Update.
472	* coffcode.h (sec_to_styp_flags): Likewise.
473	(coff_new_section_hook): Likewise.
474
4752021-07-10  Alan Modra  <amodra@gmail.com>
476
477	* dwarf2.c (read_address): Remove accidental commit.
478	(read_ranges): Compare offset rather than pointers.
479
4802021-07-08  Nick Clifton  <nickc@redhat.com>
481
482	* po/pt.po: Updated Portuguese translation.
483
4842021-07-07  Nick Clifton  <nickc@redhat.com>
485
486	* elfcode.h (elf_swap_symbol_out): Revert accidental change that
487	removed an abort if the shndx pointer is NULL.
488
4892021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
490
491	* sysdep.h [!ENABLE_NLS]: Prevent inclusion of <libintl.h> on
492	Solaris.
493
4942021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
495
496	* configure.ac: Check for strnlen declaration.
497	* configure, config.in: Regenerate.
498
4992021-07-07  Nick Clifton  <nickc@redhat.com>
500
501	PR 28051
502	* coff-rs6000.c (xcoff_reloc_type_tls): Reformat error messages in
503	order to fix problems when translating.
504	* cofflink.c (_bfd_coff_write_global_sym): Likewise.
505	* elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
506	Likewise.
507	* po/bfd.pot: Regenerate.
508
5092021-07-06  Michael Matz  <matz@suse.de>
510
511	PR ld/28021
512	* elfnn-riscv.c (riscv_relax_delete_bytes): Check for any
513	versioning.
514
5152021-07-06  Alan Modra  <amodra@gmail.com>
516
517	PR 28055
518	* elf64-bpf.c (bpf_elf_generic_reloc): Add missing ATTRIBUTE_UNUSED.
519
5202021-07-05  Alan Modra  <amodra@gmail.com>
521
522	PR 28055
523	* elf64-bpf.c (bpf_elf_generic_reloc): Use correct bfd for bfd_put
524	and bfd_put_32 calls.  Correct section limit checks.
525
5262021-07-03  Nick Clifton  <nickc@redhat.com>
527
528	* version.m4: Update version number.
529	* configure: Regenerate.
530	* po/opcodes.pot: Regenerate.
531
5322021-07-03  Nick Clifton  <nickc@redhat.com>
533
534	* 2.37 release branch created.
535
5362021-07-02  Nick Clifton  <nickc@redhat.com>
537
538	PR 28046
539	* dwarf2.c (read_ranges): Check that range_ptr does not exceed
540	range_end.
541
5422021-06-30  YunQiang Su  <yunqiang.su@cipunited.com>
543
544	PR mips/28009
545	* bfd/elfxx-mips.c (_bfd_mips_elf_section_from_shdr,
546	_bfd_mips_elf_fake_sections): Mark LTO debug info as
547	SHT_MIPS_DWARF.
548
5492021-06-29  Nick Clifton  <nickc@redhat.com>
550
551	* config.bfd (obsolete configurations): Add netbsdpe.
552
5532021-06-22  Nelson Chu  <nelson.chu@sifive.com>
554
555	* elfnn-riscv.c (riscv_pcrel_hi_reloc): Added field to store
556	the original relocation type, in case the type is converted to
557	R_RISCV_HI20.
558	(riscv_pcrel_lo_reloc): Removed unused name field.
559	(riscv_pcrel_relocs): Added comments.
560	(riscv_zero_pcrel_hi_reloc): Removed unused input_bfd.
561	(riscv_record_pcrel_hi_reloc): Updated.
562	(riscv_record_pcrel_lo_reloc): Likewise.
563	(riscv_resolve_pcrel_lo_relocs): Likewise.  Check the original
564	type of auipc, to make sure the %pcrel_lo without any addends.
565	Otherwise, report dangerous relocation error.
566	(riscv_elf_relocate_section): Updated above functions are changed.
567	For R_RISCV_GOT_HI20, report dangerous relocation error when addend
568	isn't zero.
569
5702021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
571
572	PR ld/27998
573	* elfxx-x86.c (elf_x86_allocate_dynrelocs): Count PLT for GOTOFF
574	relocation against IFUNC symbols.
575	(_bfd_x86_elf_adjust_dynamic_symbol): Likewise.
576
5772021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
578
579	* elflink.c (bfd_elf_final_link): Correct DT_TEXTREL warning in
580	PDE.
581
5822021-06-18  H.J. Lu  <hongjiu.lu@intel.com>
583
584	* elf-properties.c (_bfd_elf_parse_gnu_properties): Handle
585	GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI,
586	GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI.
587	(elf_merge_gnu_properties): Likewise.
588
5892021-06-11  Alan Modra  <amodra@gmail.com>
590
591	PR 27952
592	* elf-bfd.h (struct elf_obj_tdata): Add is_pie.
593	* elflink.c (elf_link_add_object_symbols): Set is_pie.
594
5952021-06-09  Nick Clifton  <nickc@redhat.com>
596
597	PR 27666
598	* config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
599	vectors to Sparc Solaris2 targets.
600
6012021-06-08  Michael Matz  <matz@suse.de>
602
603	* elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag.
604	(_bfd_elf_slurp_secondary_reloc_section): Use it for early-out.
605
6062021-06-07  Jan Beulich  <jbeulich@suse.com>
607
608	* dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant.
609
6102021-06-02  Alan Modra  <amodra@gmail.com>
611
612	* elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if
613	subsection length is too small to cover tag and length field.
614
6152021-05-31  Nelson Chu  <nelson.chu@sifive.com>
616	    Lifang Xia  <lifang_xia@c-sky.com>
617
618	PR 27566
619	* elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer
620	to monitor the data segment phase.
621	(bfd_elfNN_riscv_set_data_segment_info): New function called by
622	after_allocation, to set the data_segment_phase from expld.dataseg.
623	(_bfd_riscv_relax_section): Don't relax when data_segment_phase is
624	exp_seg_relro_adjust (0x4).
625	* elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern.
626	(bfd_elf64_riscv_set_data_segment_info): Likewise
627
6282021-05-28  H.J. Lu  <hongjiu.lu@intel.com>
629
630	PR ld/27905
631	* elf32-i386.c: Don't include "libiberty.h".
632	(elf_howto_table): Revert commits a7664973b24 and 50c95a739c9.
633	(elf_i386_rtype_to_howto): Revert commit 50c95a739c9.
634	(elf_i386_info_to_howto_rel): Likewise.
635	(elf_i386_tls_transition): Likewise.
636	(elf_i386_relocate_section): Likewise.
637	* elf64-x86-64.c (x86_64_elf_howto_table): Revert commits
638	a7664973b24 and 50c95a739c9.
639	(elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9.
640	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise.
641	* elfxx-x86.h (elf_x86_obj_tdata): Likewise.
642	(elf_x86_has_code16): Likewise.
643
6442021-05-26  H.J. Lu  <hongjiu.lu@intel.com>
645
646	PR ld/27905
647	* elf32-i386.c: Include "libiberty.h".
648	(elf_howto_table): Add 16-bit R_386_PC16 entry.
649	(elf_i386_rtype_to_howto): Add a BFD argument.  Use 16-bit
650	R_386_PC16 if input has 16-bit mode instructions.
651	(elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto
652	call.
653	(elf_i386_tls_transition): Likewise.
654	(elf_i386_relocate_section): Likewise.
655	* elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit
656	R_X86_64_PC16 entry.
657	(elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input
658	has 16-bit mode instructions.
659	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set
660	elf_x86_has_code16 if relocatable input is marked with
661	GNU_PROPERTY_X86_FEATURE_2_CODE16.
662	* elfxx-x86.h (elf_x86_obj_tdata): Add has_code16.
663	(elf_x86_has_code16): New.
664
6652021-05-26  Nelson Chu  <nelson.chu@sifive.com>
666
667	* elfxx-riscv.h (check_unknown_prefixed_ext): New bool.
668	* elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the
669	prefixed extension name if check_unknown_prefixed_ext is false.
670	* elfnn-riscv.c (riscv_merge_arch_attr_info): Set
671	check_unknown_prefixed_ext to false for linker.
672
6732021-05-25  Nick Clifton  <nickc@redhat.com>
674
675	* elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field.
676	(elf32_arm_num_entries): New macro.
677	(elf32_arm_allocate_local_sym_info): Initialise the new field.
678	Allocate arrays individually so that buffer overruns can be
679	detected by memory checkers.
680	(elf32_arm_create_local_iplt): Check num_entries.
681	(elf32_arm_get_plt_info): Likewise.
682	(elf32_arm_final_link_relocate): Likewise.
683	(elf32_arm_check_relocs): Likewise.
684	(elf32_arm_size_dynamic_sections): Likewise.
685	(elf32_arm_output_arch_local_syms): Likewise.
686
6872021-05-25  Nick Clifton  <nickc@redhat.com>
688
689	* elf32-arm.c: Fix formatting.
690
6912021-05-25  Alan Modra  <amodra@gmail.com>
692
693	* elf-attrs.c (elf_attr_strdup): New function.
694	(_bfd_elf_attr_strdup): Use it here.
695	(elf_add_obj_attr_string): New function, extracted from..
696	(bfd_elf_add_obj_attr_string): ..here.
697	(elf_add_obj_attr_int_string): New function, extracted from..
698	(bfd_elf_add_obj_attr_int_string): ..here.
699	(_bfd_elf_parse_attributes): Don't allocate an extra byte for a
700	string terminator.  Instead ensure parsing doesn't go past
701	end of sub-section.  Use size_t variables for lengths.
702
7032021-05-22  Alan Modra  <amodra@gmail.com>
704
705	* libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter.
706	Replace data pointer with pointer to pointer.  Increment pointer
707	over bytes read.
708	* libbfd-in.h (_bfd_safe_read_leb128): Update prototype.
709	* elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit.  Be
710	careful not to increment data pointer past end.  Remove now
711	redundant pr17512 check.
712	* wasm-module.c (READ_LEB128): Adjust to suit changes to
713	_bfd_safe_read_leb128.
714	* dwarf2.c (read_n_bytes): New inline function, old one renamed to..
715	(read_blk): ..this.  Allocate and return block.  Increment bfd_byte**
716	arg.
717	(read_3_bytes): New function.
718	(read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes),
719	(read_8_bytes, read_string, read_indirect_string),
720	(read_indirect_line_string, read_alt_indirect_string): Take a
721	byte_byte** arg which is incremented over bytes read.  Remove any
722	bytes_read return.  Rewrite limit checks to compare lengths
723	rather than pointers.
724	(read_abbrevs, read_attribute_value, read_formatted_entries),
725	(decode_line_info, find_abstract_instance, read_ranges),
726	(read_rnglists, scan_unit_for_symbols, parse_comp_unit),
727	(stash_comp_unit): Adjust to suit.  Rewrite limit checks to
728	compare lengths rather than pointers.
729	* libbfd.h: Regenerate.
730
7312021-05-21  Luis Machado  <luis.machado@linaro.org>
732
733	* elf.c (elfcore_make_memtag_note_section): New function.
734	(elfcore_grok_note): Handle NT_MEMTAG note types.
735
7362021-05-20  Andrew Burgess  <andrew.burgess@embecosm.com>
737
738	* section.c (bfd_get_section_by_name): Return NULL if name is
739	NULL.
740	(bfd_get_section_by_name_if): Likewise.
741	* dwarf2.c (read_section): Remove unneeded NULL check.
742	(find_debug_info): Likewise.
743
7442021-05-19  Nick Clifton  <nickc@redhat.com>
745
746	* plugin.c (bfd_plugin_open_input): Inform the user if the limit
747	on the number of open files is reached.  If possible, try to
748	increase this limit before failing.
749
7502021-05-14  Nelson Chu  <nelson.chu@sifive.com>
751
752	* elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values
753	of %pcrel_hi, before and after adding the addend.  Make sure the
754	value won't be changed, otherwise, report dangerous error.
755
7562021-05-13  Nelson Chu  <nelson.chu@sifive.com>
757
758	* elfxx-riscv.c (check_implicit_always): The check_func, always add
759	the implicit subset without checking.
760	(check_implicit_for_i): The check_func for i, only add zicsr and
761	zifencei when the version of i less than 2.1.
762	(struct riscv_implicit_subset): Record the subsets and their
763	corresponding implicit subsets.
764	(riscv_implicit_subsets): Table records all implicit informations.
765	(riscv_parse_add_implicit_subsets): Updated and add implicit subsets
766	according to riscv_implicit_subsets.  Remove the redundant codes.
767
7682021-05-13  Alan Modra  <amodra@gmail.com>
769
770	PR 27858
771	* elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid
772	reloc howto.
773
7742021-05-12  Luis Machado  <luis.machado@linaro.org>
775
776	* elf-bfd.h (elfcore_write_aarch_mte): New prototype.
777	* elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New
778	functions.
779	(elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL.
780	(elfcore_write_register_note): Handle MTE notes.
781
7822021-05-11  Alan Modra  <amodra@gmail.com>
783
784	PR 27844
785	* pdp11.c (aout_get_external_symbols): Clear first four bytes of
786	strings array, not just the first byte.
787	* aoutx.h (aout_get_external_symbols): Likewise.
788
7892021-05-10  H.J. Lu  <hongjiu.lu@intel.com>
790
791	PR binutils/27839
792	* simple.c (bfd_simple_get_relocated_section_contents): Remove
793	strayed fprintf.
794
7952021-05-10  Nick Clifton  <nickc@redhat.com>
796
797	PR 27839
798	* simple.c (simple_dummy_add_to_set): New function.
799	(simple_dummy_constructor): New function.
800	(simple_dummy_multiple_common): New function.
801	(bfd_simple_get_relocated_section_contents): Zero out the
802	callbacks structure, and then set the add_to_set, constructor and
803	multiple_common fields.
804
8052021-05-10  Dimitar Dimitrov  <dimitar@dinux.eu>
806
807	* elf32-pru.c (elf_backend_can_gc_sections): Define as 1.
808
8092021-05-08  Mike Frysinger  <vapier@gentoo.org>
810
811	* doc/Makefile.am (html-local, bfd/index.html): New targets.
812	* doc/Makefile.in: Regenerate.
813
8142021-05-08  Mike Frysinger  <vapier@gentoo.org>
815
816	* doc/Makefile.am (AM_MAKEINFOFLAGS): Define.
817	* doc/Makefile.in: Regenerate.
818
8192021-05-07  Clément Chigot  <clement.chigot@atos.net>
820
821	* coff-rs6000.c (xcoff_dwsect_names): Add new DWARF
822	sections.
823	* coffgen.c (coff_pointerize_aux): Handle C_DWARF.
824	(coff_print_symbol): Likewise.
825	* libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update.
826
8272021-05-07  Jan Beulich  <jbeulich@suse.com>
828
829	* elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields
830	to zero.
831
8322021-05-07  Alan Modra  <amodra@gmail.com>
833
834	* bfd-in2.h: Regenerate.
835	* libbfd.h: Regenerate.
836
8372021-05-06  Stafford Horne  <shorne@gmail.com>
838
839	PR 27746
840	* elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT,
841	OR1K_ADD, OR1K_ORI): New macros to help with plt creation.
842	(elf_or1k_link_hash_table): New field plt_count.
843	(elf_or1k_link_hash_entry): New field plt_index.
844	(elf_or1k_plt_entry_size): New function.
845	(or1k_write_plt_entry): Update to support variable size PLTs.
846	(or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry
847	API.
848	(or1k_elf_finish_dynamic_symbol): Update to write large PLTs
849	when needed.
850	(allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for
851	PLT size.
852
8532021-05-06  Stafford Horne  <shorne@gmail.com>
854
855	PR 21464
856	* elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16
857	overflow check if we have R_OR1K_GOT_AHI16 followed by
858	R_OR1K_GOT16.
859
8602021-05-06  Stafford Horne  <shorne@gmail.com>
861
862	PR 21464
863	* bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation.
864	* elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise.
865	(or1k_final_link_relocate, or1k_elf_relocate_section,
866	or1k_elf_check_relocs): Likewise.
867	* libbfd.h (bfd_reloc_code_real_names): Likewise.
868	* reloc.c: Likewise.
869
8702021-05-06  Stafford Horne  <shorne@gmail.com>
871
872	PR 27624
873	* elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change
874	condition used to cleanup plt entries to cleanup forced local
875	entries.
876
8772021-05-05  H.J. Lu  <hongjiu.lu@intel.com>
878
879	PR ld/27825
880	* elflink.c (elf_link_output_symstrtab): Always append ".COUNT"
881	to local symbols.
882
8832021-05-05  Alan Modra  <amodra@gmail.com>
884
885	* vms-lib.c (vms_traverse_index): Account for vms_kbn size when
886	sanity checking keylen.
887
8882021-05-04  Nick Clifton  <nickc@redhat.com>
889
890	* libbfd.c (bfd_malloc): Provide some documenation.  Treat a size
891	of 0 as 1.
892	(bfd_realloc): Likewise.
893	(bfd_zmalloc): Likewise.
894	(bfd_realloc_or_free): Provide some documentation.  Treat a size
895	of 0 as a request to free.
896	* libbfd-in.h (bfd_realloc): Remove prototype.
897	(bfd_realloc_or_free): Remove prototype.
898	(bfd_zmalloc): Remove prototype.
899	* libbfd.h: Regenerate.
900
9012021-05-03  Jan Beulich  <jbeulich@suse.com>
902
903	* elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to
904	complain_overflow_dont.
905	* elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit
906	relocs to complain_overflow_dont.
907
9082021-05-03  Alan Modra  <amodra@gmail.com>
909
910	* elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak
911	symbols when -z dynamic-undefined-weak or when there are no
912	dynamic relocs in read-only sections and -z nodynamic-undefined-weak
913	is not given.
914	* elf64-ppc.c (allocate_dynrelocs): Likewise.
915
9162021-05-03  Alan Modra  <amodra@gmail.com>
917
918	* elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for
919	weak undefined symols that only appear on PLT relocs.
920	* elf64-ppc.c (allocate_dynrelocs): Likewise.
921
9222021-05-03  Alan Modra  <amodra@gmail.com>
923
924	PR 27755
925	* elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop.
926
9272021-05-03  Alan Modra  <amodra@gmail.com>
928
929	* elf32-csky.c (is_mapping_symbol_name): New function.
930	(csky_elf_is_target_special_symbol): Likewise.
931	(csky_elf_maybe_function_sym): Likewise.
932	(bfd_elf32_bfd_is_target_special_symbol): Define.
933	(elf_backend_maybe_function_sym): Define.
934
9352021-04-30  Nick Clifton  <nickc@redhat.com>
936
937	PR 27801
938	* mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to
939	read 32-bit value.
940
9412021-04-30  Nick Clifton  <nickc@redhat.com>
942
943	PR 27799
944	* elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes
945	that are too small.
946
9472021-04-30  Nick Clifton  <nickc@redhat.com>
948
949	PR 27797
950	* libbfd.c (bfd_realloc_or_free): Do not free a pointer than has
951	been realloc'ed to size 0.
952
9532021-04-30  Nick Clifton  <nickc@redhat.com>
954
955	PR 27795
956	* coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name
957	lengths.
958
9592021-04-29  Nick Clifton  <nickc@redhat.com>
960
961	PR 27793
962	* som.c (som_slurp_symbol_table): Assign symbols without any scope
963	to the undefined section.
964	(som_decode_symclass): Check for a missing symbol section.
965	* syms.c (bfd_decode_symclass): Likewise.
966
9672021-04-29  Nick Clifton  <nickc@redhat.com>
968
969	PR 27792
970	* som.c (som_slurp_string_table): Place a terminating NUL byte at
971	the end of the table.
972	(som_slurp_symbol_table): Check for an over-large offset into the
973	string string table.
974
9752021-04-28  Nick Clifton  <nickc@redhat.com>
976
977	* elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin
978	symbols as potential function symbols.
979	* elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise.
980	* elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
981	* elf32-arm.c (elf32_arm_maybe_function_sym): Likewise.
982
9832021-04-26  Mike Frysinger  <vapier@gentoo.org>
984
985	* elf-bfd.h: Include stdlib.h.
986
9872021-04-26  Jan Beulich  <jbeulich@suse.com>
988
989	* elf32-i386.c (elf_howto_table): Switch R_386_PC16 to
990	complain_overflow_signed.
991	* elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16
992	to complain_overflow_signed.
993
9942021-04-23  Eric Botcazou  <ebotcazou@adacore.com>
995
996	* elf.c (special_sections_p): Add .persistent.bss.
997
9982021-04-23  Jan Beulich  <jbeulich@suse.com>
999
1000	* elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero
1001	size field.
1002	* elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL
1003	has zero size field.
1004
10052021-04-22  Clément Chigot  <clement.chigot@atos.net>
1006
1007	* hash.c (struct bfd_strtab_hash): Remove xcoff field.
1008	Add length_field_size field.
1009	(_bfd_stringtab_init): Change prototype.
1010	Adapt to new length_field_size.
1011	(_bfd_xcoff_stringtab_init): Likewise.
1012	(_bfd_stringtab_add): Likewise.
1013	(_bfd_stringtab_emit): Likewise.
1014	* libbfd-in.h (_bfd_xcoff_stringtab_init):
1015	Change prototype.
1016	* libbfd.h: Regenerate.
1017	* xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create):
1018	Call _bfd_xcoff_stringtab_init with isxcoff64 value.
1019
10202021-04-22  Clément Chigot  <clement.chigot@atos.net>
1021
1022	* coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for
1023	unsupported storage class or auxialiry entries.
1024	Improve and adapt to new aux structures.
1025	Add C_DWARF support.
1026	(_bfd_xcoff_swap_aux_out): Likewise.
1027	* coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise.
1028	(_bfd_xcoff64_swap_aux_out): Likewise.
1029
10302021-04-21  Eli Zaretskii  <eliz@gnu.org>
1031
1032	PR 27760
1033	* peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display
1034	of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP,
1035	IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags.
1036	Decode the contents of the DllCharacteristics field.
1037
10382021-04-21  Nick Clifton  <nickc@redhat.com>
1039
1040	PR 27759
1041	* srec.c (srec_read_section): Replace assertions with error
1042	returns.
1043
10442021-04-20  Clément Chigot  <clement.chigot@atos.net>
1045
1046	PR binutils/21700
1047	* reloc.c (BFD_RELOC_PPC_NEG): New relocation.
1048	* bfd-in2.h: Regenerate.
1049	* libbfd.h: Regenerate.
1050	* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add
1051	BFD_RELOC_PPC_NEG handler.
1052	(xcoff_reloc_type_neg): Correctly substract addend.
1053	* coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32
1054	howto.
1055	(xcoff64_rtype2howto): Add handler for R_NEG_32.
1056	(xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler.
1057	* xcofflink.c (xcoff_need_ldrel_p): Check output section
1058	for R_POS-like relocations. New argument added.
1059	(xcoff_mark): Adapt to new xcoff_need_ldrel_p argument.
1060	(xcoff_link_input_bfd): Likewise.
1061
10622021-04-16  Alan Modra  <amodra@gmail.com>
1063
1064	PR 27567
1065	* coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags.
1066	(coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT,
1067	ignore alignment checks when return is false.  Formatting.
1068
10692021-04-15  Nelson Chu  <nelson.chu@sifive.com>
1070
1071	PR27584
1072	* elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to
1073	omit local and empty symbols since they usually generated to
1074	mark the auipc instructions.
1075
10762021-04-15  Lifang Xia<lifang_xia@c-sky.com>
1077
1078	* elf32-csky.c (csky_elf_howto_table)
1079	<R_CKCORE_PCREL_IMM16BY2>: Set special_function to
1080	bfd_elf_generic_reloc.
1081	<R_CKCORE_PCREL_IMM16BY4>: Likewise.
1082	<R_CKCORE_PCREL_IMM10BY4>: Likewise.
1083	<R_CKCORE_PCREL_IMM18BY2>: Likewise.
1084	<R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise.
1085
10862021-04-14  H.J. Lu  <hongjiu.lu@intel.com>
1087
1088	PR binutils/27708
1089	* elf.c (assign_file_positions_for_non_load_sections): Set
1090	p_memsz to p_filesz for the loadable PT_NOTE segment.
1091
10922021-04-14  Frederic Cambus  <fred@statdns.com>
1093
1094	* elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef
1095	checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
1096
10972021-04-14  Alan Modra  <amodra@gmail.com>
1098
1099	PR 27631
1100	* elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf
1101	when hh might be NULL, test for NULL first.
1102
11032021-04-14  Alan Modra  <amodra@gmail.com>
1104
1105	PR 27630
1106	* elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
1107	hash might be NULL, cast instead.
1108
11092021-04-13  Clément Chigot  <clement.chigot@atos.net>
1110
1111	* xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
1112
11132021-04-13  Nelson Chu  <nelson.chu@sifive.com>
1114
1115	* elfnn-riscv.c (riscv_version_mismatch): Do not report the warning
1116	when the version of input or output is RISCV_UNKNOWN_VERSION, since
1117	the extension is added implicitly.
1118	* elfxx-riscv.c: Updated the obsolete comments.
1119	(RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h.
1120	* elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added.
1121
11222021-04-12  Alan Modra  <amodra@gmail.com>
1123
1124	* elf-bfd.h (ENABLE_CHECKING): Define.
1125	(elf_link_hash_lookup): Abort if wrong type of hash table.
1126	* configure.ac (--enable-checking): Add support.
1127	* config.in: Regenerate.
1128	* configure: Regenerate.
1129
11302021-04-12  Alan Modra  <amodra@gmail.com>
1131
1132	* elf-bfd.h (is_elf_hash_table): Convert macro to inline function.
1133	(elf_link_hash_lookup, elf_link_hash_traverse): Likewise.
1134	(elf_hash_table, elf_hash_table_id): Likewise.
1135	* elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant
1136	is_elf_hash_table check.
1137	* elf32-csky.c (elf32_csky_setup_section_lists): Likewise.
1138	* elf32-hppa.c (clobber_millicode_symbols): Correct param types.
1139	* elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
1140	* elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise.
1141	(elfNN_ia64_global_dyn_sym_thunk: Likewise.
1142	* elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise.
1143	(elf64_ia64_global_dyn_sym_thunk): Likewise.
1144	(elf64_vms_link_add_object_symbols): Pass base type of hash table
1145	to is_elf_hash_table.
1146	* elflink.c (_bfd_elf_dynamic_symbol_p): Likewise.
1147	(_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise.
1148	(_bfd_elf_strip_zero_sized_dynamic_sections): Likewise.
1149	(_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise.
1150	(bfd_elf_final_link): Likewise.
1151	* elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise.
1152	* elf64-ppc.c (ppc64_elf_set_toc): Likewise.  Use bfd_link_hash_lookup.
1153
11542021-04-12  Alan Modra  <amodra@gmail.com>
1155
1156	* elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry*
1157	from elf_backend_archive_symbol_lookup.
1158	(_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*.
1159	* elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise.  Check
1160	we have a ppc_hash_table before accessing ppc_link_hash_entry
1161	fields.
1162	* elflink.c (_bfd_elf_archive_symbol_lookup): Return
1163	bfd_link_hash_entry*.
1164	(elf_link_add_archive_symbols): Adjust to suit.
1165
11662021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1167
1168	* elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of
1169	i-ext when expanding g-ext.
1170
11712021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1172
1173	* elfxx-riscv.c (riscv_ext_dont_care_version): Removed.
1174	(riscv_parse_add_subset): Always add the implicit extensions, even if
1175	their versions are RISCV_UNKNOWN_VERSION.
1176	(riscv_parse_std_ext): Delay to add i-ext as the implicit extension
1177	in the riscv_parse_add_implicit_subsets.  Besides, add g-ext as the
1178	implicit extension after it has been expanded.
1179	(riscv_parse_add_implicit_subsets): Updated.
1180
11812021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1182
1183	* elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward.
1184	(riscv_std_s_ext_strtab): Likewise.
1185	(riscv_std_h_ext_strtab): Likewise.
1186	(riscv_std_zxm_ext_strtab): Added for the zxm prefix.
1187	(enum riscv_prefix_ext_class): Moved forward and renamed from
1188	riscv_isa_ext_class.  Reorder them according to the parsing order,
1189	since the enum values are used to check the orders in the
1190	riscv_compare_subsets.
1191	(struct riscv_parse_prefix_config): Moved forward and renamed from
1192	riscv_parse_config_t.  Also removed the ext_valid_p field, the
1193	related functions are replaced by riscv_valid_prefixed_ext.
1194	(parse_config): Moved forward and updated.  The more letters of the
1195	prefix string, the more forward it must be defined.  Otherwise, we
1196	will get the wrong mapping when using strncmp in riscv_get_prefix_class.
1197	(riscv_get_prefix_class): Moved forward.  Support to parse the
1198	multi-letter prefix, like zxm.
1199	(riscv_known_prefixed_ext): New function, check if the prefixed
1200	extension is supported according to the right riscv_std_*_ext_strtab.
1201	(riscv_valid_prefixed_ext): New function, used to replace the
1202	riscv_ext_*_valid_p functions.
1203	(riscv_init_ext_order): Do not set the values for prefix keywords
1204	since they may have multiple letters for now.
1205	(riscv_compare_subsets): Set the order values of prefix keywords
1206	to negative numbers according to the riscv_prefix_ext_class.
1207	(riscv_parse_std_ext): Call riscv_get_prefix_class to see if we
1208	have parsed the prefixed extensions.
1209	(riscv_parse_prefixed_ext): Updated and removed the parameter config.
1210	Report error when the prefix is unknown.
1211	(riscv_parse_subset): Do not parse the prefixed extensions according
1212	to the orders in the parse_config.  Remove the confused message and
1213	let riscv_parse_prefixed_ext to report the details.
1214	* elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c.
1215	(riscv_get_prefix_class): Removed to static.
1216
12172021-04-08  Mike Frysinger  <vapier@gentoo.org>
1218
1219	* configure.ac (ACX_BUGURL): Use https://.
1220	* configure.com (COPY_TEXT): Likewise.
1221	* configure: Regenerate.
1222
12232021-04-05  Alan Modra  <amodra@gmail.com>
1224
1225	* configure.ac: Don't check for long long or long double type.
1226	Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
1227	strings.h, time.h, wchar.h, wctype.h or sys/time.h.  Don't check
1228	for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
1229	vsnprintf, strlen or setitimer.  Sort AC_CHECK_DECLS.
1230	(AC_ISC_POSIX): Don't invoke.
1231	(AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
1232	* sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
1233	Do test HAVE_SYS_TYPES_H.  Don't include sys/time.h.  Reorder
1234	header order as per automake AC_INCLUDES_DEFAULT.
1235	* bfd-in.h: Include inttypes.h unconditionally.
1236	* bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
1237	long double are available.
1238	(bfd_scan_vma): Assume long long and strtoull are available.
1239	* elflink.c: Include limits.h unconditionally.
1240	* elfnn-riscv.c: Likewise.
1241	* wasm-module.c: Likewise.
1242	* hpux-core.c: Include dirent.h unconditionally.
1243	* trad-core.c: Likewise.
1244	* hosts/x86-64linux.h: Include stdlib.h unconditionally.
1245	* peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
1246	* elf32-m68hc1x.c: Don't include alloca-conf.h.
1247	* elf64-hppa.c: Likewise.
1248	* som.c: Likewise.
1249	* wasm-module.c: Likewise.
1250	* xsym.c: Likewise.
1251	* bfd-in2.h: Regenerate.
1252	* config.in: Regenerate.
1253	* configure: Regenerate.
1254
12552021-04-01  Tamar Christina  <tamar.christina@arm.com>
1256
1257	PR ld/26659
1258	* cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow.
1259
12602021-04-01  Martin Liska  <mliska@suse.cz>
1261
1262	* ecoff.c (strneq): Remove strneq and use startswith.
1263	(_bfd_ecoff_slurp_armap): Likewise.
1264
12652021-04-01  Martin Liska  <mliska@suse.cz>
1266
1267	* elf-bfd.h (bfd_section_is_ctf): Use startswith function.
1268	* elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1269	(elf_get_reloc_section): Likewise.
1270	* elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
1271	* elf32-m32r.c (m32r_elf_section_flags): Likewise.
1272	* elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise.
1273	* elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
1274	(nds32_elf_relocate_section): Likewise.
1275	(nds32_elf_action_discarded): Likewise.
1276	(nds32_elf_check_relocs): Likewise.
1277	(nds32_elf_section_flags): Likewise.
1278	* elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1279	* elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
1280	* elf32-rx.c (rx_table_find): Likewise.
1281	(rx_table_map): Likewise.
1282	* elf32-spu.c (spu_elf_backend_symbol_processing): Likewise.
1283	(spu_elf_find_overlays): Likewise.
1284	(needs_ovl_stub): Likewise.
1285	(allocate_spuear_stubs): Likewise.
1286	(build_spuear_stubs): Likewise.
1287	(mark_overlay_section): Likewise.
1288	(spu_elf_auto_overlay): Likewise.
1289	(spu_elf_output_symbol_hook): Likewise.
1290	* elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
1291	* elf32-xtensa.c (xtensa_property_section_name): Likewise.
1292	* elf64-ppc.c (ppc64_elf_section_flags): Likewise.
1293	(ppc64_elf_relocate_section): Likewise.
1294	* elflink.c (resolve_section): Likewise.
1295	(UNARY_OP): Likewise.
1296	(BINARY_OP_HEAD): Likewise.
1297	(elf_link_input_bfd): Likewise.
1298	* elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise.
1299	* elfxx-riscv.c (riscv_parse_subset): Likewise.
1300	* elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
1301	* opncls.c (get_build_id): Likewise.
1302
13032021-03-31  Alan Modra  <amodra@gmail.com>
1304
1305	PR 27671
1306	* bfd-in.h: Don't poison FALSE or TRUE.
1307	* bfd-in2.h: Regenerate.
1308
13092021-03-31  Alan Modra  <amodra@gmail.com>
1310
1311	* sysdep.h: POISON_BFD_BOOLEAN: Define.
1312	* aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h,
1313	* aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c,
1314	* bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c,
1315	* coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c,
1316	* coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c,
1317	* coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c,
1318	* coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
1319	* coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
1320	* coffcode.h, * coffgen.c, * cofflink.c, * compress.c,
1321	* corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c,
1322	* cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c,
1323	* cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c,
1324	* cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c,
1325	* cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c,
1326	* cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c,
1327	* cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c,
1328	* cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c,
1329	* cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c,
1330	* cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c,
1331	* cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c,
1332	* cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c,
1333	* cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c,
1334	* cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c,
1335	* cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c,
1336	* cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c,
1337	* cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c,
1338	* cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c,
1339	* cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c,
1340	* cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c,
1341	* cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c,
1342	* dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c,
1343	* elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h,
1344	* elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c,
1345	* elf-nacl.h, * elf-properties.c, * elf-s390-common.c,
1346	* elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h,
1347	* elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c,
1348	* elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c,
1349	* elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c,
1350	* elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c,
1351	* elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1352	* elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
1353	* elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c,
1354	* elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
1355	* elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1356	* elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c,
1357	* elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
1358	* elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c,
1359	* elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
1360	* elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c,
1361	* elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c,
1362	* elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c,
1363	* elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h,
1364	* elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h,
1365	* elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c,
1366	* elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h,
1367	* elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
1368	* elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
1369	* elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c,
1370	* elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1371	* elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
1372	* elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c,
1373	* elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h,
1374	* elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c,
1375	* elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c,
1376	* elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h,
1377	* elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h,
1378	* elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h,
1379	* elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h,
1380	* format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c,
1381	* i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h,
1382	* libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h,
1383	* libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c,
1384	* mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h,
1385	* merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c,
1386	* pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c,
1387	* pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c,
1388	* pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c,
1389	* peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c,
1390	* reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c,
1391	* som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c,
1392	* verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h,
1393	* wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c,
1394	* xsym.h: Replace bfd_boolean with bool, FALSE with false, and
1395	TRUE with true throughout.
1396	* bfd-in2.h: Regenerate.
1397	* libbfd.h: Regenerate.
1398	* libcoff.h: Regenerate.
1399
14002021-03-31  Alan Modra  <amodra@gmail.com>
1401
1402	* bfd-in.h: Include stdbool.h.
1403	(bfd_boolean): Define as bool
1404	* bfd-in2.h: Regenerate.
1405
14062021-03-31  Alan Modra  <amodra@gmail.com>
1407
1408	* .gitignore: Delete bfd_stdint.h entry.
1409	* Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h.
1410	(BUILD_HFILES, LOCAL_H_DEPS): Likewise.
1411	* bfd-in.h: Include stdint.h in place of bfd_stdint.h.
1412	* configure.ac: Don't invoke GCC_HEADER_STDINT.
1413	* configure.com: Don't create bfd_stdint.h.
1414	* Makefile.in: Regenerate.
1415	* aclocal.m4: Regenerate.
1416	* bfd-in2.h: Regenerate.
1417	* config.in: Regenerate.
1418	* configure: Regenerate.
1419	* doc/Makefile.in: Regenerate.
1420	* po/BLD-POTFILES.in: Regenerate.
1421
14222021-03-31  Alan Modra  <amodra@gmail.com>
1423
1424	* bfd-in.h: Include string.h.
1425	(LITMEMCPY, LITSTRCPY): Delete.
1426	* bfd-in2.h: Regenerate.
1427
14282021-03-30  Alan Modra  <amodra@gmail.com>
1429
1430	* elflink.c (elf_link_add_object_symbols): Don't set h->indx
1431	unless is_elf_hash_table.
1432
14332021-03-29  Alan Modra  <amodra@gmail.com>
1434
1435	* aoutx.h (aout_link_write_symbols): Don't cast boolean expression
1436	to bfd_boolean.
1437	* elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans
1438	against FALSE.
1439	* elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE.
1440	(is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE".
1441	(is_reloc_SDA_relative, is_reloc_for_GOT): Likewise.
1442	(is_reloc_for_PLT, is_reloc_for_TLS): Likewise.
1443	* elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise.
1444	* elf32-nds32.c (insert_nds32_elf_blank): Likewise.
1445	* elf32-rx.c (rx_set_section_contents): Likewise.
1446	* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
1447	* elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise.
1448	* mach-o.c (bfd_mach_o_read_command): Likewise.
1449	* targets.c (bfd_get_target_info): Likewise.
1450
14512021-03-29  Alan Modra  <amodra@gmail.com>
1452
1453	* coff-z80.c (z80_is_local_label_name): Return bfd_boolean.
1454	* elf32-z80.c (z80_is_local_label_name): Likewise.
1455	* elf32-spu.c (spu_elf_modify_headers): Likewise.
1456	* elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>):
1457	Change type to int.
1458	* vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test
1459	for error return from vms_write_data_block.
1460
14612021-03-29  Alan Modra  <amodra@gmail.com>
1462
1463	* elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
1464	* elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
1465	(elf64_ia64_local_dyn_sym_thunk): Likewise.
1466	* elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
1467	* elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
1468	(elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
1469	* elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
1470	(elfNN_ia64_local_dyn_sym_thunk): Likewise.
1471	* elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
1472	(riscv_pcrel_reloc_eq): Likewise.
1473	(riscv_elf_finish_local_dynamic_symbol): Likewise.
1474	* elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
1475	(finish_local_dynamic_symbol): Likewise.
1476	* elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
1477	* elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
1478	(mips_elf_count_got_symbols): Change return type to bfd_boolean.
1479
14802021-03-29  Alan Modra  <amodra@gmail.com>
1481
1482	* elflink.c (elf_link_output_symstrtab): Make flinfo parameter
1483	a void pointer.
1484	(bfd_elf_final_link): Delete out_sym_func typedef and don't cast
1485	elf_link_output_symstrtab when calling output_arch_syms and
1486	output_arch_local_syms.
1487	* elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms,
1488	elf_backend_output_arch_local_syms>): Change return type of func
1489	arg to match elf_link_output_symstrtab.
1490	* elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct
1491	return type.
1492	* elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type.
1493	(nds32_elf_output_arch_syms): Correct func return type.
1494
14952021-03-29  Alan Modra  <amodra@gmail.com>
1496
1497	* elf-m10200.c (mn10200_elf_relocate_section): Return int.
1498	* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1499	* elf32-arc.c (elf_arc_relocate_section): Likewise.
1500	* elf32-arm.c (elf32_arm_relocate_section): Likewise.
1501	* elf32-avr.c (elf32_avr_relocate_section): Likewise.
1502	* elf32-bfin.c (bfin_relocate_section): Likewise.
1503	(bfinfdpic_relocate_section): Likewise.
1504	* elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
1505	* elf32-cris.c (cris_elf_relocate_section): Likewise.
1506	* elf32-crx.c (elf32_crx_relocate_section): Likewise.
1507	* elf32-csky.c (csky_elf_relocate_section): Likewise.
1508	* elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1509	* elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
1510	* elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1511	* elf32-frv.c (elf32_frv_relocate_section): Likewise.
1512	* elf32-ft32.c (ft32_elf_relocate_section): Likewise.
1513	* elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1514	* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1515	* elf32-i386.c (elf_i386_relocate_section): Likewise.
1516	* elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1517	* elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1518	* elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1519	* elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1520	* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1521	* elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1522	* elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise.
1523	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1524	* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1525	* elf32-mep.c (mep_elf_relocate_section): Likewise.
1526	* elf32-metag.c (elf_metag_relocate_section): Likewise.
1527	* elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1528	* elf32-moxie.c (moxie_elf_relocate_section): Likewise.
1529	* elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1530	* elf32-mt.c (mt_elf_relocate_section): Likewise.
1531	* elf32-nds32.c (nds32_elf_relocate_section): Likewise.
1532	* elf32-nios2.c (nios2_elf32_relocate_section): Likewise.
1533	* elf32-or1k.c (or1k_elf_relocate_section): Likewise.
1534	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1535	* elf32-pru.c (pru_elf32_relocate_section): Likewise.
1536	* elf32-rl78.c (rl78_elf_relocate_section): Likewise.
1537	* elf32-rx.c (rx_elf_relocate_section): Likewise.
1538	* elf32-s390.c (elf_s390_relocate_section): Likewise.
1539	* elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1540	(_bfd_score_elf_relocate_section): Likewise.
1541	* elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise.
1542	* elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1543	* elf32-sh.c (sh_elf_relocate_section): Likewise.
1544	* elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1545	* elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
1546	* elf32-v850.c (v850_elf_relocate_section): Likewise.
1547	* elf32-vax.c (elf_vax_relocate_section): Likewise.
1548	* elf32-visium.c (visium_elf_relocate_section): Likewise.
1549	* elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1550	* elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1551	* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1552	* elf32-z80.c (z80_elf_relocate_section): Likewise.
1553	* elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1554	(elf64_alpha_relocate_section): Likewise.
1555	* elf64-bpf.c (bpf_elf_relocate_section): Likewise.
1556	* elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1557	* elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
1558	* elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1559	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1560	* elf64-s390.c (elf_s390_relocate_section): Likewise.
1561	* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1562	* elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise.
1563	* elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1564	* elfnn-riscv.c (riscv_elf_relocate_section): Likewise.
1565	* elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1566	* elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise.
1567	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1568	* elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise.
1569	* elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
1570	* elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise.
1571
15722021-03-26  Keith Seitz  <keiths@redhat.com>
1573
1574	* elfcore.h (_bfd_elf_core_find_build_id): Seek file
1575	offset of program headers after calling elf_read_notes.
1576
15772021-03-23  Jan Beulich  <jbeulich@suse.com>
1578
1579	* dwarf2.c (read_indexed_string): Rename index to idx.
1580
15812021-03-22  Martin Liska  <mliska@suse.cz>
1582
1583	* bfd-in.h (startswith): Add startswith function.
1584	(CONST_STRNEQ): Remove.
1585	* bfd-in2.h (startswith): Regenerate with make headers.
1586	* archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
1587	(_bfd_slurp_extended_name_table): Likewise.
1588	* archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
1589	* bfd.c (bfd_get_sign_extend_vma): Likewise.
1590	(bfd_convert_section_size): Likewise.
1591	(bfd_convert_section_contents): Likewise.
1592	* coff-stgo32.c (go32exe_create_stub): Likewise.
1593	(go32exe_check_format): Likewise.
1594	* coffcode.h (styp_to_sec_flags): Likewise.
1595	(GNU_DEBUGALTLINK): Likewise.
1596	* coffgen.c (_bfd_coff_section_already_linked): Likewise.
1597	(coff_gc_sweep): Likewise.
1598	(bfd_coff_gc_sections): Likewise.
1599	* cofflink.c (coff_link_add_symbols): Likewise.
1600	(process_embedded_commands): Likewise.
1601	* compress.c (bfd_is_section_compressed_with_header): Likewise.
1602	(bfd_init_section_decompress_status): Likewise.
1603	* dwarf2.c (find_debug_info): Likewise.
1604	(place_sections): Likewise.
1605	* ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
1606	* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
1607	* elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1608	(assign_section_numbers): Likewise.
1609	(elfcore_grok_win32pstatus): Likewise.
1610	* elf32-arm.c (cmse_scan): Likewise.
1611	(elf32_arm_gc_mark_extra_sections): Likewise.
1612	(elf32_arm_size_dynamic_sections): Likewise.
1613	(is_arm_elf_unwind_section_name): Likewise.
1614	* elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
1615	* elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
1616	* elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
1617	* elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
1618	* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
1619	* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1620	* elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
1621	* elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
1622	* elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
1623	* elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
1624	* elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
1625	* elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
1626	* elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
1627	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1628	* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
1629	* elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
1630	* elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
1631	* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1632	* elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
1633	(elf32_tic6x_size_dynamic_sections): Likewise.
1634	* elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
1635	* elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
1636	(xtensa_is_insntable_section): Likewise.
1637	(xtensa_is_littable_section): Likewise.
1638	(xtensa_is_proptable_section): Likewise.
1639	(xtensa_property_section_name): Likewise.
1640	(xtensa_callback_required_dependence): Likewise.
1641	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
1642	* elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
1643	* elf64-ia64-vms.c (is_unwind_section_name): Likewise.
1644	(get_reloc_section): Likewise.
1645	(elf64_ia64_size_dynamic_sections): Likewise.
1646	(elf64_ia64_object_p): Likewise.
1647	* elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
1648	* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
1649	* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
1650	* elflink.c (elf_link_add_object_symbols): Likewise.
1651	(_bfd_elf_gc_mark_extra_sections): Likewise.
1652	(bfd_elf_parse_eh_frame_entries): Likewise.
1653	(_bfd_elf_section_already_linked): Likewise.
1654	* elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
1655	* elfnn-ia64.c (is_unwind_section_name): Likewise.
1656	(elfNN_ia64_size_dynamic_sections): Likewise.
1657	(elfNN_ia64_object_p): Likewise.
1658	* elfxx-mips.c (FN_STUB_P): Likewise.
1659	(CALL_STUB_P): Likewise.
1660	(CALL_FP_STUB_P): Likewise.
1661	(_bfd_mips_elf_section_from_shdr): Likewise.
1662	(_bfd_mips_elf_fake_sections): Likewise.
1663	(_bfd_mips_elf_size_dynamic_sections): Likewise.
1664	(_bfd_mips_final_write_processing): Likewise.
1665	(_bfd_mips_elf_final_link): Likewise.
1666	* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
1667	* elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
1668	(elf_x86_64_is_reloc_section): Likewise.
1669	* hpux-core.c (thread_section_p): Likewise.
1670	* libcoff.h (bfd_pei_p): Likewise.
1671	* linker.c (REAL): Likewise.
1672	(unwrap_hash_lookup): Likewise.
1673	(_bfd_generic_link_add_one_symbol): Likewise.
1674	* mmo.c (mmo_internal_write_section): Likewise.
1675	* osf-core.c (osf_core_core_file_p): Likewise.
1676	* pef.c (bfd_pef_print_symbol): Likewise.
1677	* pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
1678	* som.c (som_slurp_symbol_table): Likewise.
1679	(som_slurp_armap): Likewise.
1680	* wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
1681
16822021-03-22  Jan Beulich  <jbeulich@suse.com>
1683
1684	* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
1685	language translation wrapping to _bfd_error_handler()
1686	invocations.
1687
16882021-03-21  Alan Modra  <amodra@gmail.com>
1689
1690	* bfd-in.h (startswith): New inline.
1691	(CONST_STRNEQ): Use startswith.
1692	* bfd-in2.h: Regenerate.
1693
16942021-03-20  Alan Modra  <amodra@gmail.com>
1695
1696	PR 27590
1697	* elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE
1698	test for .gnu.debuglto*.
1699
17002021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1701
1702	PR ld/27590
1703	* elf.c (_bfd_elf_make_section_from_shdr): Treat
1704	.gnu.debuglto_.debug_ section as debugging section unless it is
1705	marked with SHF_EXCLUDE.
1706	* elflink.c (elf_create_symbuf): Revert commit 994b2513281.
1707	(bfd_elf_match_symbols_in_sections): Ignore section symbols when
1708	matching non-debugging sections or linkonce section with comdat
1709	section.
1710
17112021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1712
1713	PR ld/27587
1714	* dwarf2.c (read_attribute_value): Check version >= 3 for
1715	DW_FORM_ref_addr.
1716
17172021-03-16  Nick Clifton  <nickc@redhat.com>
1718
1719	* peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer
1720	overrun by using sizeof of the destination x_fname field as the
1721	limit for a memcpy.
1722
17232021-03-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
1724
1725	* elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc.
1726
17272021-03-12  Clément Chigot  <clement.chigot@atos.net>
1728
1729	* reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE,
1730	BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD,
1731	BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE,
1732	BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M,
1733	BFD_RELOC_PPC64_TLS_ML): New relocations.
1734	* bfd-in2.h: Regenerate.
1735	* libbfd.h: Regenerate.
1736	* coff-rs6000.c (xcoff_calculate_relocation): Call
1737	xcoff_reloc_type_tls for TLS relocations.
1738	(xcoff_howto_table): Implement TLS relocations.
1739	(_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations.
1740	(xcoff_reloc_type_tls): New function.
1741	* coff64-rs6000.c (xcoff_calculate_relocation): Likewise.
1742	(xcoff_howto_table): Likewise.
1743	(_bfd_xcoff_reloc_type_lookup): Likewise.
1744	* coffcode.h (sec_to_styp_flags): Handle TLS sections.
1745	(styp_to_sec_flags): Likewise.
1746	(coff_compute_section_file_positions): Avoid file offset
1747	optimisation for .data when the previous section is .tdata.
1748	(coff_write_object_contents): Handle TLS sections.
1749	* coffswap.h (coff_swap_aouthdr_out): Add support for
1750	new fields in aouthdr.
1751	* libxcoff.h (xcoff_reloc_type_tls): Add prototype.
1752	* xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL.
1753	(xcoff_need_ldrel_p): Add cases for TLS relocations.
1754	(xcoff_create_ldrel): Add l_symndx for TLS sections.
1755
17562021-03-12  Clément Chigot  <clement.chigot@atos.net>
1757
1758	* reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO):
1759	New relocations.
1760	* bfd-in2.h: Regenerate.
1761	* libbfd.h: Regenerate.
1762	* coff-rs6000.c (xcoff_calculate_relocation): Call
1763	xcoff_reloc_type_toc for R_TOCU and R_TOCL.
1764	(xcoff_howto_table): Remove src_mask for TOC relocations.
1765	Add R_TOCU and R_TOCL howtos.
1766	(_bfd_xcoff_reloc_type_lookup): Add cases for
1767	BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO.
1768	(xcoff_reloc_type_toc): Compute the whole offset.
1769	Implement R_TOCU and R_TOCL.
1770	* coff64-rs6000.c (xcoff64_calculate_relocation):
1771	Likewise.
1772	(xcoff64_howto_table): Likewise.
1773	(xcoff64_reloc_type_lookup): Likewise.
1774
17752021-03-12  Clément Chigot  <clement.chigot@atos.net>
1776
1777	* coff-rs6000.c (xcoff_calculate_relocation): Correct and
1778	add new relocations.
1779	(xcoff_howto_table): Likewise.
1780	(xcoff_rtype2howto): Increase r_type maximum value.
1781	(xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead
1782	of create a new one from scratch.  Enable only some relocations
1783	to have a changing r_size.
1784	* coff64-rs6000.c (xcoff64_calculate_relocation): Likewise.
1785	(xcoff64_howto_table): Likewise.
1786	(xcoff64_rtype2howto): Likewise.
1787	(xcoff64_ppc_relocate_section): Likewise.
1788	* libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value.
1789
17902021-03-12  Clément Chigot  <clement.chigot@atos.net>
1791
1792	* coff64-rs6000.c (xcoff64_ppc_relocate_section): Move.
1793
17942021-03-12  Clément Chigot  <clement.chigot@atos.net>
1795
1796	* coff64-rs6000.c (xcoff64_write_object_contents): Remove.
1797	* coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620
1798	support for o_cputype field.  Avoid creating an empty a.out header
1799	for XCOFF64.
1800
18012021-03-12  Clément Chigot  <clement.chigot@atos.net>
1802
1803	* coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add
1804	missing smclass.
1805
18062021-03-11  Nelson Chu  <nelson.chu@sifive.com>
1807
1808	* elfnn-riscv.c (riscv_elf_link_hash_table): New boolean
1809	restart_relax, used to check if we need to run the whole
1810	relaxations from relax pass 0 to 2 again.
1811	(riscv_elf_link_hash_table_create): Init restart_relax to FALSE.
1812	(_bfd_riscv_relax_align): Remove obsolete sec_flg0 set.
1813	(_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code.
1814	(bfd_elfNN_riscv_restart_relax_sections): New function.  Called by
1815	after_allocation to check if we need to run the whole relaxations again.
1816	(_bfd_riscv_relax_section): We will only enter into the relax pass 3
1817	when the restart_relax is FALSE; At last set restart_relax to TRUE if
1818	again is TRUE, too.
1819	* elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration.
1820	(bfd_elf64_riscv_restart_relax_sections): Likewise.
1821
18222021-03-10  Jan Beulich  <jbeulich@suse.com>
1823
1824	* cofflink.c (_bfd_coff_write_global_sym): Range-check symbol
1825	offset.
1826
18272021-03-10  Alan Modra  <amodra@gmail.com>
1828	    Jan Beulich  <jbeulich@suse.com>
1829
1830	* elf.c (bfd_elf_generic_reloc): Make references between debug
1831	sections use section relative values.
1832
18332021-03-09  Jan Beulich  <jbeulich@suse.com>
1834
1835	* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA.
1836
18372021-03-05  H.J. Lu  <hongjiu.lu@intel.com>
1838
1839	PR ld/27425
1840	PR ld/27432
1841	* bfd.c (_bfd_get_link_info): New function.
1842	* elf-bfd.h (output_elf_obj_tdata): Add link_info.
1843	(elf_link_info): New.
1844	* libbfd-in.h (_bfd_get_link_info): New prototype.
1845	* coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for
1846	R_AMD64_IMAGEBASE when generating x86-64 ELF executable.
1847	* pe-x86_64.c: Include "coff/internal.h" and "libcoff.h".
1848	(pex64_link_add_symbols): New function.
1849	(coff_bfd_link_add_symbols): New macro.
1850	* libbfd.h: Regenerated.
1851
18522021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1853	    Andrew Burgess  <andrew.burgess@embecosm.com>
1854
1855	* elf-bfd.h (elfcore_write_riscv_csr): Declare.
1856	* elf.c (elfcore_grok_riscv_csr): New function.
1857	(elfcore_grok_note): Handle NT_RISCV_CSR.
1858	(elfcore_write_riscv_csr): New function.
1859	(elfcore_write_register_note): Handle '.reg-riscv-csr'.
1860
18612021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1862	    Andrew Burgess  <andrew.burgess@embecosm.com>
1863
1864	* elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define.
1865	(PRPSINFO_PR_PSARGS_LENGTH): Define.
1866	(riscv_write_core_note): New function.
1867	(riscv_elf_grok_psinfo): Make use of two new length defines.
1868	(elf_backend_write_core_note): Define.
1869
18702021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
1871	    Andrew Burgess  <andrew.burgess@embecosm.com>
1872
1873	* elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
1874	* elf.c (elfcore_grok_gdb_tdesc): New function.
1875	(elfcore_grok_note): Handle NT_GDB_TDESC.
1876	(elfcore_write_gdb_tdesc): New function.
1877	(elfcore_write_register_note): Handle NT_GDB_TDESC.
1878
18792021-03-05  Nick Clifton  <nickc@redhat.com>
1880
1881	PR 27521
1882	* dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
1883	(read_indexed_string): Placeholder function.
1884	(read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
1885	forms.
1886
18872021-03-05  Alan Modra  <amodra@gmail.com>
1888
1889	* reloc.c (bfd_perform_relocation): Revert 2021-01-12 and
1890	2020-09-16 changes.
1891	* coff-x86_64.c (coff_amd64_reloc): Do more or less the same
1892	adjustments here instead.  Separate pc-relative adjustments
1893	from symbol related adjustments.  Tidy comments and formatting.
1894
18952021-03-04  Jan Beulich  <jbeulich@suse.com>
1896
1897	* coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in
1898	final PE images.
1899
19002021-03-04  Alan Modra  <amodra@gmail.com>
1901
1902	* rs6000-core.c (rs6000coff_core_p): Correct prototype.
1903
19042021-03-03  Alan Modra  <amodra@gmail.com>
1905
1906	PR 27500
1907	* elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop
1908	processing not when start/stop symbol section is unmarked but
1909	on first time a start/stop symbol is processed.
1910
19112021-03-03  Alan Modra  <amodra@gmail.com>
1912
1913	* reloc.c: Include x86_64.h rather than internal.h.
1914
19152021-03-02  Nick Clifton  <nickc@redhat.com>
1916
1917	PR 27484
1918	* dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate
1919	function and variable tags and a second time to resolve their
1920	attributes.
1921
19222021-03-02  Nick Alcock  <nick.alcock@oracle.com>
1923
1924	* elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount.
1925
19262021-03-02  Alan Modra  <amodra@gmail.com>
1927
1928	PR 27451
1929	* elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized
1930	linker defined start/stop symbols when start_stop_gc.
1931
19322021-03-02  Alan Modra  <amodra@gmail.com>
1933
1934	* elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got
1935	indirect to pc-relative or toc-relative for undefined symbols.
1936
19372021-03-01  Alan Modra  <amodra@gmail.com>
1938	    Fangrui Song <maskray@google.com>
1939
1940	* elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker
1941	defined start/stop symbols when start_stop_gc.
1942	(bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
1943	(bfd_elf_define_start_stop): Don't modify ldscript_def syms.
1944	* linker.c (bfd_generic_define_start_stop): Likewise.
1945
19462021-02-25  Alan Modra  <amodra@gmail.com>
1947
1948	PR 27441
1949	* elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak.
1950	* elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and
1951	use when deciding an as-needed library should be loaded instead
1952	of using the binding of the library definition.
1953
19542021-02-24  Alan Modra  <amodra@gmail.com>
1955
1956	PR 27459
1957	* coff-stgo32.c (go32exe_check_format): Sanity check size of
1958	header to avoid a buffer overflow.
1959
19602021-02-22  Alan Modra  <amodra@gmail.com>
1961
1962	* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
1963	* coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
1964
19652021-02-19  Nelson Chu  <nelson.chu@sifive.com>
1966
1967	PR 27158
1968	* elfnn-riscv.c (perform_relocation): Updated encoding macros.
1969	(_bfd_riscv_relax_call): Likewise.
1970	(_bfd_riscv_relax_lui): Likewise.
1971	* elfxx-riscv.c (howto_table): Likewise.
1972
19732021-02-18  Nelson Chu  <nelson.chu@sifive.com>
1974
1975	* Makefile.am: Added cpu-riscv.h.
1976	* Makefile.in: Regenerated.
1977	* po/SRC-POTFILES.in: Regenerated.
1978	* cpu-riscv.h: Added to support spec versions controlling.
1979	Also added extern arrays and functions for cpu-riscv.c.
1980	(enum riscv_spec_class): Define all spec classes here uniformly.
1981	(struct riscv_spec): Added for all specs.
1982	(RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
1983	(RISCV_GET_SPEC_NAME): Likewise.
1984	(RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
1985	(RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
1986	(RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
1987	* cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
1988	(riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
1989	(riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
1990	(riscv_priv_specs): Moved below.
1991	(riscv_get_priv_spec_class_from_numbers): Likewise, updated.
1992	(riscv_isa_specs): Moved from include/opcode/riscv.h.
1993	* elfnn-riscv.c: Included cpu-riscv.h.
1994	(riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
1995	* elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
1996	(RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
1997	* elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
1998
19992021-02-17  Alan Modra  <amodra@gmail.com>
2000
2001	* wasm-module.c: Guard include of limits.h.
2002	(CHAR_BIT): Provide backup define.
2003	(wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
2004	Correct signed overflow checking.
2005
20062021-02-17  Nelson Chu  <nelson.chu@sifive.com>
2007
2008	PR 27200
2009	* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
2010	copying the elf flags from input BFD to output BFD, until we have
2011	checked if the input BFD has no code section or not.  Also fix the
2012	problem that we only check the first section rather than the entire
2013	sections for input BFD.
2014
20152021-02-16  Alan Modra  <amodra@gmail.com>
2016
2017	* libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
2018	(_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
2019
20202021-02-15  Jan Beulich  <jbeulich@suse.com>
2021
2022	* doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
2023	* doc/Makefile.in: Re-generate.
2024
20252021-02-15  Alan Modra  <amodra@gmail.com>
2026
2027	* elf32-nds32.c (nds32_get_section_contents): Replace
2028	bfd_malloc_and_get_section with bfd_get_full_section_contents.
2029	(nds32_elf_relax_delete_blanks): Init contents.
2030	(nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
2031
20322021-02-15  Alan Modra  <amodra@gmail.com>
2033
2034	* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
2035	bfd_get_full_section_contents.
2036
20372021-02-14  Alan Modra  <amodra@gmail.com>
2038
2039	* elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
2040	all fixes to bfd_generic_get_relocated_section_contents since this
2041	function was split out.
2042
20432021-02-11  Alan Modra  <amodra@gmail.com>
2044
2045	* config.bfd: Remove ia64 from obsolete list.
2046
20472021-02-11  Alan Modra  <amodra@gmail.com>
2048
2049	PR ld/22269
2050	* elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
2051
20522021-02-11  Alan Modra  <amodra@gmail.com>
2053
2054	PR 27294
2055	* elf32-avr.c (avr_elf32_load_records_from_section): Use
2056	bfd_malloc_and_get_section.  Use bfd_byte* vars and remove then
2057	unnecessary casts.
2058
20592021-02-11  Alan Modra  <amodra@gmail.com>
2060
2061	PR 27291
2062	* section.c (bfd_get_section_contents): Avoid possible overflow
2063	when range checking offset and count.
2064	(bfd_set_section_contents): Likewise.
2065
20662021-02-03  Nick Alcock  <nick.alcock@oracle.com>
2067
2068	* configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
2069	favour of LIBINTL.
2070	* configure: Regenerated.
2071
20722021-02-09  Alan Modra  <amodra@gmail.com>
2073
2074	* config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
2075	* configure.ac: Delete symbian entries.
2076	* elf-bfd.h (enum elf_target_os): Delete is_symbian.
2077	* elf32-arm.c: Remove symbian support.  Formatting.
2078	* targets.c: Delete symbian entries.
2079	* configure: Regenerate.
2080
20812021-02-04  H.J. Lu  <hongjiu.lu@intel.com>
2082
2083	PR ld/19609
2084	* elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
2085	info when failed to convert GOTPCREL relocation.
2086
20872021-02-04  Nelson Chu  <nelson.chu@sifive.com>
2088
2089	* elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
2090
20912021-02-04  Alan Modra  <amodra@gmail.com>
2092
2093	PR 27311
2094	* elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
2095	libraries for IR references on pass over libraries after LTO
2096	recompilation.
2097
20982021-02-03  Alan Modra  <amodra@gmail.com>
2099
2100	PR 27311
2101	* elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
2102	(elf_link_add_object_symbols): Here too.  Don't pull in as-needed
2103	libraries when H is an indirect symbol after calling
2104	_bfd_elf_add_default_symbol.
2105
21062021-02-03  Alan Modra  <amodra@gmail.com>
2107
2108	PR 27311
2109	* elflink.c (_bfd_elf_add_default_symbol): Clear override when
2110	undecorated symbol will have a different version.
2111
21122021-02-02  Alan Modra  <amodra@gmail.com>
2113
2114	PR 27311
2115	* elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
2116	Use when handling default versioned symbol.  Rename existing
2117	override variable to nondef_override and use for non-default
2118	versioned symbol.
2119	(elf_link_add_object_symbols): Adjust call to suit.  Don't
2120	pull in as-needed libraries when override is set.
2121
21222021-02-01  Emery Hemingway  <ehmry@posteo.net>
2123
2124	* config.bfd: Add *-*-genode* as a target for AArch64 and x86.
2125
21262021-02-01  Egor Vishnyakov  <lenvampir@yandex.ru>
2127
2128	PR 27254
2129	* elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
2130	offset for the R_RL78_RH_SADDR relocation.
2131
21322021-01-29  Alan Modra  <amodra@gmail.com>
2133
2134	PR 27271
2135	* elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
2136	on symbols defined in absolute or other special sections.
2137
21382021-01-28  Alan Modra  <amodra@gmail.com>
2139
2140	PR 27259
2141	* elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
2142	prevent endless looping of linked-to sections.
2143
21442020-12-17  Mihails Strasuns  <mihails.strasuns@intel.com>
2145
2146	* bfd-elf.h (elfcore_write_file_note): New function.
2147	* elf.c (elfcore_write_file_note): New function.
2148
21492021-01-26  Alan Modra  <amodra@gmail.com>
2150
2151	* elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
2152
21532021-01-24  H.J. Lu  <hongjiu.lu@intel.com>
2154
2155	PR binutils/27231
2156	* dwarf2.c (read_rnglists): Ignore empty range when parsing line
2157	number tables.
2158
21592021-01-23  H.J. Lu  <hongjiu.lu@intel.com>
2160
2161	PR binutils/27231
2162	* dwarf2.c (read_rnglists): Advance rngs_ptr after
2163	_bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
2164
21652021-01-20  Alan Modra  <amodra@gmail.com>
2166
2167	* elf32-ppc.c: Delete outdated comment.
2168	(TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2169	* elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2170
21712021-01-20  Alan Modra  <amodra@gmail.com>
2172
2173	* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
2174	section symbols are present.
2175
21762021-01-19  Alan Modra  <amodra@gmail.com>
2177
2178	* elf64-ppc.c (elf_hash_entry): New inline function.  Use
2179	throughout to replace casts.
2180	(branch_reloc_hash_match): Remove const from params.
2181	(use_local_plt): New function.
2182	(allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
2183	(build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
2184	Use use_local_plt.
2185	* elf32-ppc.c (use_local_plt): New function.
2186	(allocate_dynrelocs, ppc_elf_relocate_section),
2187	(write_global_sym_plt): Use use_local_plt.
2188
21892021-01-17  H.J. Lu  <hongjiu.lu@intel.com>
2190
2191	PR ld/27193
2192	* elflink.c (elf_create_symbuf): Also ignore section symbols.
2193
21942021-01-16  H.J. Lu  <hongjiu.lu@intel.com>
2195
2196	PR ld/23169
2197	* elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
2198	check pointer_equality_needed.
2199
22002021-01-15  H.J. Lu  <hongjiu.lu@intel.com>
2201
2202	* elf-linker-x86.h (elf_linker_x86_params): Add
2203	report_relative_reloc.
2204	* elf32-i386.c (elf_i386_relocate_section): Call
2205	_bfd_x86_elf_link_report_relative_reloc to report relative
2206	relocations for -z report-relative-reloc.
2207	(elf_i386_finish_dynamic_symbol): Likewse.
2208	* elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
2209	(elf_x86_64_finish_dynamic_symbol): Likewse.
2210	* elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
2211	function.
2212	* elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
2213	prototype.
2214
22152021-01-16  Alan Modra  <amodra@gmail.com>
2216
2217	* compress.c (decompress_contents): Tidy inflateEnd result test.
2218
22192021-01-16  Alan Modra  <amodra@gmail.com>
2220
2221	PR 26002
2222	* elflink.c (elf_link_output_extsym): Use version 1 in
2223	.gnu.version for undefined unversioned symbols.
2224
22252021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2226
2227	* elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
2228	caused the by previous commit accidentally.
2229
22302021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2231
2232	* elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
2233	also aligned the code.
2234
22352021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2236
2237	* elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
2238
22392021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2240
2241	* elfnn-riscv.c: Comments tidy and improvement.
2242	* elfxx-riscv.c: Likewise.
2243	* elfxx-riscv.h: Likewise.
2244
22452021-01-14  H.J. Lu  <hongjiu.lu@intel.com>
2246
2247	PR ld/26688
2248	* elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
2249	section for R_BFIN_FUNCDESC.
2250
22512021-01-14  Nick Clifton  <nickc@redhat.com>
2252
2253	* elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
2254
22552021-01-13  Alan Modra  <amodra@gmail.com>
2256
2257	* Makefile.in: Regenerate.
2258	* doc/Makefile.in: Regenerate.
2259
22602021-01-13  Alan Modra  <amodra@gmail.com>
2261
2262	PR 27160
2263	* section.c (struct bfd_section): Remove pattern field.
2264	(BFD_FAKE_SECTION): Adjust to suit.
2265	* bfd-in2.h: Regenerate.
2266	* elflink.c (compare_link_order, elf_fixup_link_order): Delete.
2267	(bfd_elf_final_link): Don't call elf_fixup_link_order.
2268
22692021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
2270
2271	PR binutils/26792
2272	* configure.ac: Use GNU_MAKE_JOBSERVER.
2273	* aclocal.m4: Regenerated.
2274	* configure: Likewise.
2275
22762021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
2277
2278	PR ld/27171
2279	* reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
2280	R_AMD64_DIR32 relocations for PE/x86-64 inputs.
2281
22822021-01-11  H.J. Lu  <hongjiu.lu@intel.com>
2283
2284	PR ld/27173
2285	* configure: Regenerated.
2286
22872021-01-11  Nick Clifton  <nickc@redhat.com>
2288
2289	* po/fr.po: Updated French translation.
2290	* po/pt.po: Updated Portuguese translation.
2291	* po/sr.po: Updated Serbian translation.
2292	* po/uk.po: Updated Ukranian translation.
2293
22942021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
2295
2296	* configure: Regenerated.
2297
22982021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
2299
2300	PR ld/27166
2301	* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
2302	-z lam-u48 and -z lam-u57.
2303
23042021-01-09  Nick Clifton  <nickc@redhat.com>
2305
2306	* version.m4: Change to 2.36.50.
2307	* configure: Regenerate.
2308	* po/bfd.pot: Regenerate.
2309
23102021-01-09  Nick Clifton  <nickc@redhat.com>
2311
2312	* 2.36 release branch crated.
2313
23142021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2315
2316	* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
2317	LAM_U57 when setting LAM_U48.
2318
23192021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2320
2321	PR ld/26256
2322	PR ld/27160
2323	* elflink.c (elf_fixup_link_order): Verify that fixing up
2324	SHF_LINK_ORDER doesn't increase the output section size.
2325
23262021-01-09  Alan Modra  <amodra@gmail.com>
2327
2328	* configure: Regenerate.
2329
23302021-01-07  Samuel Thibault  <samuel.thibault@gnu.org>
2331
2332	* configure: Regenerate.
2333
23342021-01-07  H.J. Lu  <hongjiu.lu@intel.com>
2335
2336	PR 27109
2337	* aix386-core.c (core_aix386_vec): Initialize
2338	keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
2339	* aout-target.h (MY (vec)): Likewise.
2340	* binary.c (binary_vec): Likewise.
2341	* cisco-core.c (core_cisco_be_vec): Likewise.
2342	(core_cisco_le_vec): Likewise.
2343	* coff-alpha.c (alpha_ecoff_le_vec): Likewise.
2344	* coff-i386.c (TARGET_SYM): Likewise.
2345	(TARGET_SYM_BIG): Likewise.
2346	* coff-ia64.c (TARGET_SYM): Likewise.
2347	* coff-mips.c (mips_ecoff_le_vec): Likewise.
2348	(mips_ecoff_be_vec): Likewise.
2349	(mips_ecoff_bele_vec): Likewise.
2350	* coff-rs6000.c (rs6000_xcoff_vec): Likewise.
2351	(powerpc_xcoff_vec): Likewise.
2352	* coff-sh.c (sh_coff_small_vec): Likewise.
2353	(sh_coff_small_le_vec): Likewise.
2354	* coff-tic30.c (tic30_coff_vec): Likewise.
2355	* coff-tic54x.c (tic54x_coff0_vec): Likewise.
2356	(tic54x_coff0_beh_vec): Likewise.
2357	(tic54x_coff1_vec): Likewise.
2358	(tic54x_coff1_beh_vec): Likewise.
2359	(tic54x_coff2_vec): Likewise.
2360	(tic54x_coff2_beh_vec): Likewise.
2361	* coff-x86_64.c (TARGET_SYM): Likewise.
2362	(TARGET_SYM_BIG): Likewise.
2363	* coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
2364	(rs6000_xcoff64_aix_vec): Likewise.
2365	* coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
2366	(CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
2367	(CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
2368	* elfxx-target.h (TARGET_BIG_SYM): Likewise.
2369	(TARGET_LITTLE_SYM): Likewise.
2370	* hppabsd-core.c (core_hppabsd_vec): Likewise.
2371	* hpux-core.c (core_hpux_vec): Likewise.
2372	* i386msdos.c (i386_msdos_vec): Likewise.
2373	* ihex.c (ihex_vec): Likewise.
2374	* irix-core.c (core_irix_vec): Likewise.
2375	* mach-o-target.c (TARGET_NAME): Likewise.
2376	* mmo.c (mmix_mmo_vec): Likewise.
2377	* netbsd-core.c (core_netbsd_vec): Likewise.
2378	* osf-core.c (core_osf_vec): Likewise.
2379	* pdp11.c (MY (vec)): Likewise.
2380	* pef.c (pef_vec): Likewise.
2381	(pef_xlib_vec): Likewise.
2382	* plugin.c (plugin_vec): Likewise.
2383	* ppcboot.c (powerpc_boot_vec): Likewise.
2384	* ptrace-core.c (core_ptrace_vec): Likewise.
2385	* sco5-core.c (core_sco5_vec): Likewise.
2386	* som.c (hppa_som_vec): Likewise.
2387	* srec.c (srec_vec): Likewise.
2388	(symbolsrec_vec): Likewise.
2389	* tekhex.c (tekhex_vec): Likewise.
2390	* trad-core.c (core_trad_vec): Likewise.
2391	* verilog.c (verilog_vec): Likewise.
2392	* vms-alpha.c (alpha_vms_vec): Likewise.
2393	* vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
2394	* wasm-module.c (wasm_vec): Likewise.
2395	* xsym.c (sym_vec): Likewise.
2396	* elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
2397	isn't set.
2398	(elf_map_symbols): Don't include ignored section symbols.
2399	* elfcode.h (elf_slurp_symbol_table): Also set
2400	BSF_SECTION_SYM_USED on STT_SECTION symbols.
2401	* elflink.c (bfd_elf_final_link): Generated section symbols only
2402	when emitting relocations or reqired.
2403	* elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2404	* syms.c (BSF_SECTION_SYM_USED): New.
2405	* targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2406	(bfd_target): Add keep_unused_section_symbols.
2407	(bfd_keep_unused_section_symbols): New.
2408	* bfd-in2.h: Regenerated.
2409
24102021-01-07  Nick Clifton  <nickc@redhat.com>
2411
2412	PR 25713
2413	* bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
2414	absolute paths and check to see if they are longer than MAX_PATH.
2415
24162021-01-07  Philipp Tomsich  <prt@gnu.org>
2417
2418	* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
2419
24202021-01-07  Claire Xenia Wolf  <claire@symbioticeda.com>
2421	    Jim Wilson  <jimw@sifive.com>
2422	    Andrew Waterman  <andrew@sifive.com>
2423	    Maxim Blinov  <maxim.blinov@embecosm.com>
2424	    Kito Cheng  <kito.cheng@sifive.com>
2425	    Nelson Chu  <nelson.chu@sifive.com>
2426
2427	* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
2428
24292021-01-06  H.J. Lu  <hongjiu.lu@intel.com>
2430
2431	* elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
2432	(bfinfdpic_check_relocs): Likewise.
2433
24342021-01-06  Alan Modra  <amodra@gmail.com>
2435
2436	* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
2437	on unknown r_type.
2438	* elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
2439
24402021-01-06  Alan Modra  <amodra@gmail.com>
2441
2442	* config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
2443	(sparc64-*-solaris2*): Add sparc_elf64_vec and
2444	sparc_elf32_vec.
2445
24462021-01-06  Marcus Comstedt  <marcus@mc.pp.se>
2447
2448	* config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
2449	riscvbe*-*-*.  Also added riscv_elf[32|64]_be_vec.
2450	* configure.ac: Handle riscv_elf[32|64]_be_vec.
2451	* configure: Regenerate.
2452	* elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
2453	riscv_is_insn_reloc.
2454	(riscv_get_insn): RISC-V instructions are always little endian, but
2455	bfd_get may be used for big-endian, so add new riscv_get_insn to handle
2456	the insturctions.
2457	(riscv_put_insn): Likewsie.
2458	(riscv_is_insn_reloc): Check if we are relocaing an instruction.
2459	(perform_relocation): Call riscv_is_insn_reloc to decide if we should
2460	use riscv_[get|put]_insn or bfd_[get|put].
2461	(riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
2462	or bfd_[get|put]l16 for code.
2463	(riscv_elf_relocate_section): Likewise.
2464	(riscv_elf_finish_dynamic_symbol): Likewise.
2465	(riscv_elf_finish_dynamic_sections): Likewise.
2466	(_bfd_riscv_relax_call): Likewise.
2467	(_bfd_riscv_relax_lui): Likewise.
2468	(_bfd_riscv_relax_align): Likewise.
2469	(_bfd_riscv_relax_pc): Likewise.
2470	(riscv_elf_object_p): Handled for big endian.
2471	(TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
2472	* targets.c: Add riscv_elf[32|64]_be_vec.
2473	(_bfd_target_vector): Likewise.
2474
24752021-01-05  Alan Modra  <amodra@gmail.com>
2476
2477	* elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
2478	for relocatable executable.
2479
24802021-01-05  Alan Modra  <amodra@gmail.com>
2481
2482	* vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
2483
24842021-01-05  Nelson Chu  <nelson.chu@sifive.com>
2485
2486	* elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
2487	make sure gp symbol is output as a dynamic symbol.
2488
24892021-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2490
2491	PR ld/26256
2492	* elflink.c (compare_link_order): Place unordered sections before
2493	ordered sections.
2494	(elf_fixup_link_order): Add a link info argument.  Allow mixed
2495	ordered and unordered input sections for non-relocatable link.
2496	Sort the consecutive bfd_indirect_link_order sections with the
2497	same pattern.  Change the offsets of the bfd_indirect_link_order
2498	sections only.
2499	(bfd_elf_final_link): Pass info to elf_fixup_link_order.
2500	* section.c (bfd_section): Add pattern.
2501	(BFD_FAKE_SECTION): Initialize pattern to NULL.
2502	* bfd-in2.h: Regenerated.
2503
25042021-01-04  Alexander Fedotov  <alfedotov@gmail.com>
2505
2506	* elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
2507	of private flags with 0x.
2508	* elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
2509
25102021-01-04  Alan Modra  <amodra@gmail.com>
2511
2512	PR 26822
2513	* elflink.c (elf_link_input_bfd): Use the file base name in
2514	linker generated STT_FILE symbols.
2515
25162021-01-04  Nelson Chu  <nelson.chu@sifive.com>
2517
2518	* elfxx-riscv.c (riscv_compare_subsets): Removed static.
2519	* elfxx-riscv.h: Add declaration.
2520	* elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
2521	riscv_compare_subsets to check the orders.
2522	(riscv_skip_prefix): Removed.
2523	(riscv_prefix_cmp): Removed.
2524
25252021-01-04  Alan Modra  <amodra@gmail.com>
2526
2527	PR 26741
2528	* elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
2529	calculating subset version length.
2530
25312021-01-01  Nicolas Boulenguez  <nicolas@debian.org>
2532
2533	* xcofflink.c: Correct spelling in comments.
2534
25352021-01-01  Alan Modra  <amodra@gmail.com>
2536
2537	Update year range in copyright notice of all files.
2538
2539For older changes see ChangeLog-2020
2540
2541Copyright (C) 2021-2022 Free Software Foundation, Inc.
2542
2543Copying and distribution of this file, with or without modification,
2544are permitted in any medium without royalty provided the copyright
2545notice and this notice are preserved.
2546
2547Local Variables:
2548mode: change-log
2549left-margin: 8
2550fill-column: 74
2551version-control: never
2552End:
2553