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