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