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