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