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