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