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