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