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