]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
Automatic date update in version.in
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
f75bcf7e
NC
12021-06-09 Nick Clifton <nickc@redhat.com>
2
3 PR 27666
4 * config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
5 vectors to Sparc Solaris2 targets.
6
5804373d
MM
72021-06-08 Michael Matz <matz@suse.de>
8
9 * elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag.
10 (_bfd_elf_slurp_secondary_reloc_section): Use it for early-out.
11
6bee34a1
JB
122021-06-07 Jan Beulich <jbeulich@suse.com>
13
14 * dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant.
15
45342c7c
AM
162021-06-02 Alan Modra <amodra@gmail.com>
17
18 * elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if
19 subsection length is too small to cover tag and length field.
20
ef9d2565
NC
212021-05-31 Nelson Chu <nelson.chu@sifive.com>
22 Lifang Xia <lifang_xia@c-sky.com>
23
24 PR 27566
25 * elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer
26 to monitor the data segment phase.
27 (bfd_elfNN_riscv_set_data_segment_info): New function called by
28 after_allocation, to set the data_segment_phase from expld.dataseg.
29 (_bfd_riscv_relax_section): Don't relax when data_segment_phase is
30 exp_seg_relro_adjust (0x4).
31 * elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern.
32 (bfd_elf64_riscv_set_data_segment_info): Likewise
33
1273b2f8
L
342021-05-28 H.J. Lu <hongjiu.lu@intel.com>
35
36 PR ld/27905
37 * elf32-i386.c: Don't include "libiberty.h".
38 (elf_howto_table): Revert commits a7664973b24 and 50c95a739c9.
39 (elf_i386_rtype_to_howto): Revert commit 50c95a739c9.
40 (elf_i386_info_to_howto_rel): Likewise.
41 (elf_i386_tls_transition): Likewise.
42 (elf_i386_relocate_section): Likewise.
43 * elf64-x86-64.c (x86_64_elf_howto_table): Revert commits
44 a7664973b24 and 50c95a739c9.
45 (elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9.
46 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise.
47 * elfxx-x86.h (elf_x86_obj_tdata): Likewise.
48 (elf_x86_has_code16): Likewise.
49
50c95a73
L
502021-05-26 H.J. Lu <hongjiu.lu@intel.com>
51
52 PR ld/27905
53 * elf32-i386.c: Include "libiberty.h".
54 (elf_howto_table): Add 16-bit R_386_PC16 entry.
55 (elf_i386_rtype_to_howto): Add a BFD argument. Use 16-bit
56 R_386_PC16 if input has 16-bit mode instructions.
57 (elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto
58 call.
59 (elf_i386_tls_transition): Likewise.
60 (elf_i386_relocate_section): Likewise.
61 * elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit
62 R_X86_64_PC16 entry.
63 (elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input
64 has 16-bit mode instructions.
65 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set
66 elf_x86_has_code16 if relocatable input is marked with
67 GNU_PROPERTY_X86_FEATURE_2_CODE16.
68 * elfxx-x86.h (elf_x86_obj_tdata): Add has_code16.
69 (elf_x86_has_code16): New.
70
fe1f847d
NC
712021-05-26 Nelson Chu <nelson.chu@sifive.com>
72
73 * elfxx-riscv.h (check_unknown_prefixed_ext): New bool.
74 * elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the
75 prefixed extension name if check_unknown_prefixed_ext is false.
76 * elfnn-riscv.c (riscv_merge_arch_attr_info): Set
77 check_unknown_prefixed_ext to false for linker.
78
74fd118f
NC
792021-05-25 Nick Clifton <nickc@redhat.com>
80
81 * elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field.
82 (elf32_arm_num_entries): New macro.
83 (elf32_arm_allocate_local_sym_info): Initialise the new field.
84 Allocate arrays individually so that buffer overruns can be
85 detected by memory checkers.
86 (elf32_arm_create_local_iplt): Check num_entries.
87 (elf32_arm_get_plt_info): Likewise.
88 (elf32_arm_final_link_relocate): Likewise.
89 (elf32_arm_check_relocs): Likewise.
90 (elf32_arm_size_dynamic_sections): Likewise.
91 (elf32_arm_output_arch_local_syms): Likewise.
92
cc850f74
NC
932021-05-25 Nick Clifton <nickc@redhat.com>
94
95 * elf32-arm.c: Fix formatting.
96
4be1e8db
AM
972021-05-25 Alan Modra <amodra@gmail.com>
98
99 * elf-attrs.c (elf_attr_strdup): New function.
100 (_bfd_elf_attr_strdup): Use it here.
101 (elf_add_obj_attr_string): New function, extracted from..
102 (bfd_elf_add_obj_attr_string): ..here.
103 (elf_add_obj_attr_int_string): New function, extracted from..
104 (bfd_elf_add_obj_attr_int_string): ..here.
105 (_bfd_elf_parse_attributes): Don't allocate an extra byte for a
106 string terminator. Instead ensure parsing doesn't go past
107 end of sub-section. Use size_t variables for lengths.
108
574ec108
AM
1092021-05-22 Alan Modra <amodra@gmail.com>
110
111 * libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter.
112 Replace data pointer with pointer to pointer. Increment pointer
113 over bytes read.
114 * libbfd-in.h (_bfd_safe_read_leb128): Update prototype.
115 * elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit. Be
116 careful not to increment data pointer past end. Remove now
117 redundant pr17512 check.
118 * wasm-module.c (READ_LEB128): Adjust to suit changes to
119 _bfd_safe_read_leb128.
120 * dwarf2.c (read_n_bytes): New inline function, old one renamed to..
121 (read_blk): ..this. Allocate and return block. Increment bfd_byte**
122 arg.
123 (read_3_bytes): New function.
124 (read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes),
125 (read_8_bytes, read_string, read_indirect_string),
126 (read_indirect_line_string, read_alt_indirect_string): Take a
127 byte_byte** arg which is incremented over bytes read. Remove any
128 bytes_read return. Rewrite limit checks to compare lengths
129 rather than pointers.
130 (read_abbrevs, read_attribute_value, read_formatted_entries),
131 (decode_line_info, find_abstract_instance, read_ranges),
132 (read_rnglists, scan_unit_for_symbols, parse_comp_unit),
133 (stash_comp_unit): Adjust to suit. Rewrite limit checks to
134 compare lengths rather than pointers.
135 * libbfd.h: Regenerate.
136
894982bf
LM
1372021-05-21 Luis Machado <luis.machado@linaro.org>
138
139 * elf.c (elfcore_make_memtag_note_section): New function.
140 (elfcore_grok_note): Handle NT_MEMTAG note types.
141
427e4066
AB
1422021-05-20 Andrew Burgess <andrew.burgess@embecosm.com>
143
144 * section.c (bfd_get_section_by_name): Return NULL if name is
145 NULL.
146 (bfd_get_section_by_name_if): Likewise.
147 * dwarf2.c (read_section): Remove unneeded NULL check.
148 (find_debug_info): Likewise.
149
83b0a686
NC
1502021-05-19 Nick Clifton <nickc@redhat.com>
151
152 * plugin.c (bfd_plugin_open_input): Inform the user if the limit
153 on the number of open files is reached. If possible, try to
154 increase this limit before failing.
155
75f03fa7
NC
1562021-05-14 Nelson Chu <nelson.chu@sifive.com>
157
158 * elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values
159 of %pcrel_hi, before and after adding the addend. Make sure the
160 value won't be changed, otherwise, report dangerous error.
161
7671eff8
NC
1622021-05-13 Nelson Chu <nelson.chu@sifive.com>
163
164 * elfxx-riscv.c (check_implicit_always): The check_func, always add
165 the implicit subset without checking.
166 (check_implicit_for_i): The check_func for i, only add zicsr and
167 zifencei when the version of i less than 2.1.
168 (struct riscv_implicit_subset): Record the subsets and their
169 corresponding implicit subsets.
170 (riscv_implicit_subsets): Table records all implicit informations.
171 (riscv_parse_add_implicit_subsets): Updated and add implicit subsets
172 according to riscv_implicit_subsets. Remove the redundant codes.
173
4863cddb
AM
1742021-05-13 Alan Modra <amodra@gmail.com>
175
176 PR 27858
177 * elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid
178 reloc howto.
179
f0bbe8ba
LM
1802021-05-12 Luis Machado <luis.machado@linaro.org>
181
182 * elf-bfd.h (elfcore_write_aarch_mte): New prototype.
183 * elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New
184 functions.
185 (elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL.
186 (elfcore_write_register_note): Handle MTE notes.
187
8ca5537b
AM
1882021-05-11 Alan Modra <amodra@gmail.com>
189
190 PR 27844
191 * pdp11.c (aout_get_external_symbols): Clear first four bytes of
192 strings array, not just the first byte.
193 * aoutx.h (aout_get_external_symbols): Likewise.
194
b397aef4
L
1952021-05-10 H.J. Lu <hongjiu.lu@intel.com>
196
197 PR binutils/27839
198 * simple.c (bfd_simple_get_relocated_section_contents): Remove
199 strayed fprintf.
200
23182ac0
NC
2012021-05-10 Nick Clifton <nickc@redhat.com>
202
203 PR 27839
204 * simple.c (simple_dummy_add_to_set): New function.
205 (simple_dummy_constructor): New function.
206 (simple_dummy_multiple_common): New function.
207 (bfd_simple_get_relocated_section_contents): Zero out the
208 callbacks structure, and then set the add_to_set, constructor and
209 multiple_common fields.
210
5b45e89f
DD
2112021-05-10 Dimitar Dimitrov <dimitar@dinux.eu>
212
213 * elf32-pru.c (elf_backend_can_gc_sections): Define as 1.
214
cf758b39
MF
2152021-05-08 Mike Frysinger <vapier@gentoo.org>
216
217 * doc/Makefile.am (html-local, bfd/index.html): New targets.
218 * doc/Makefile.in: Regenerate.
219
2faf902d
MF
2202021-05-08 Mike Frysinger <vapier@gentoo.org>
221
222 * doc/Makefile.am (AM_MAKEINFOFLAGS): Define.
223 * doc/Makefile.in: Regenerate.
224
97834047
CC
2252021-05-07 Clément Chigot <clement.chigot@atos.net>
226
227 * coff-rs6000.c (xcoff_dwsect_names): Add new DWARF
228 sections.
229 * coffgen.c (coff_pointerize_aux): Handle C_DWARF.
230 (coff_print_symbol): Likewise.
231 * libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update.
232
17c6c3b9
JB
2332021-05-07 Jan Beulich <jbeulich@suse.com>
234
235 * elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields
236 to zero.
237
a41513ef
AM
2382021-05-07 Alan Modra <amodra@gmail.com>
239
240 * bfd-in2.h: Regenerate.
241 * libbfd.h: Regenerate.
242
284a1309
SH
2432021-05-06 Stafford Horne <shorne@gmail.com>
244
245 PR 27746
246 * elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT,
247 OR1K_ADD, OR1K_ORI): New macros to help with plt creation.
248 (elf_or1k_link_hash_table): New field plt_count.
249 (elf_or1k_link_hash_entry): New field plt_index.
250 (elf_or1k_plt_entry_size): New function.
251 (or1k_write_plt_entry): Update to support variable size PLTs.
252 (or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry
253 API.
254 (or1k_elf_finish_dynamic_symbol): Update to write large PLTs
255 when needed.
256 (allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for
257 PLT size.
258
3c3de29b
SH
2592021-05-06 Stafford Horne <shorne@gmail.com>
260
261 PR 21464
262 * elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16
263 overflow check if we have R_OR1K_GOT_AHI16 followed by
264 R_OR1K_GOT16.
265
0b3e14c9
SH
2662021-05-06 Stafford Horne <shorne@gmail.com>
267
268 PR 21464
269 * bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation.
270 * elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise.
271 (or1k_final_link_relocate, or1k_elf_relocate_section,
272 or1k_elf_check_relocs): Likewise.
273 * libbfd.h (bfd_reloc_code_real_names): Likewise.
274 * reloc.c: Likewise.
275
a76ef689
SH
2762021-05-06 Stafford Horne <shorne@gmail.com>
277
278 PR 27624
279 * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change
280 condition used to cleanup plt entries to cleanup forced local
281 entries.
282
4467df35
L
2832021-05-05 H.J. Lu <hongjiu.lu@intel.com>
284
285 PR ld/27825
286 * elflink.c (elf_link_output_symstrtab): Always append ".COUNT"
287 to local symbols.
288
c38c6234
AM
2892021-05-05 Alan Modra <amodra@gmail.com>
290
291 * vms-lib.c (vms_traverse_index): Account for vms_kbn size when
292 sanity checking keylen.
293
bd6d8601
NC
2942021-05-04 Nick Clifton <nickc@redhat.com>
295
296 * libbfd.c (bfd_malloc): Provide some documenation. Treat a size
297 of 0 as 1.
298 (bfd_realloc): Likewise.
299 (bfd_zmalloc): Likewise.
300 (bfd_realloc_or_free): Provide some documentation. Treat a size
301 of 0 as a request to free.
302 * libbfd-in.h (bfd_realloc): Remove prototype.
303 (bfd_realloc_or_free): Remove prototype.
304 (bfd_zmalloc): Remove prototype.
305 * libbfd.h: Regenerate.
306
4c398cc0
JB
3072021-05-03 Jan Beulich <jbeulich@suse.com>
308
309 * elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to
310 complain_overflow_dont.
311 * elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit
312 relocs to complain_overflow_dont.
313
49160308
AM
3142021-05-03 Alan Modra <amodra@gmail.com>
315
316 * elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak
317 symbols when -z dynamic-undefined-weak or when there are no
318 dynamic relocs in read-only sections and -z nodynamic-undefined-weak
319 is not given.
320 * elf64-ppc.c (allocate_dynrelocs): Likewise.
321
b2936612
AM
3222021-05-03 Alan Modra <amodra@gmail.com>
323
324 * elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for
325 weak undefined symols that only appear on PLT relocs.
326 * elf64-ppc.c (allocate_dynrelocs): Likewise.
327
337d0bf8
AM
3282021-05-03 Alan Modra <amodra@gmail.com>
329
330 PR 27755
331 * elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop.
332
5072b52d
AM
3332021-05-03 Alan Modra <amodra@gmail.com>
334
335 * elf32-csky.c (is_mapping_symbol_name): New function.
336 (csky_elf_is_target_special_symbol): Likewise.
337 (csky_elf_maybe_function_sym): Likewise.
338 (bfd_elf32_bfd_is_target_special_symbol): Define.
339 (elf_backend_maybe_function_sym): Define.
340
d1fbc3ba
NC
3412021-04-30 Nick Clifton <nickc@redhat.com>
342
343 PR 27801
344 * mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to
345 read 32-bit value.
346
9f84cb38
NC
3472021-04-30 Nick Clifton <nickc@redhat.com>
348
349 PR 27799
350 * elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes
351 that are too small.
352
6cb40a67
NC
3532021-04-30 Nick Clifton <nickc@redhat.com>
354
355 PR 27797
356 * libbfd.c (bfd_realloc_or_free): Do not free a pointer than has
357 been realloc'ed to size 0.
358
bceb87ef
NC
3592021-04-30 Nick Clifton <nickc@redhat.com>
360
361 PR 27795
362 * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name
363 lengths.
364
09e40e44
NC
3652021-04-29 Nick Clifton <nickc@redhat.com>
366
367 PR 27793
368 * som.c (som_slurp_symbol_table): Assign symbols without any scope
369 to the undefined section.
370 (som_decode_symclass): Check for a missing symbol section.
371 * syms.c (bfd_decode_symclass): Likewise.
372
063e75c9
NC
3732021-04-29 Nick Clifton <nickc@redhat.com>
374
375 PR 27792
376 * som.c (som_slurp_string_table): Place a terminating NUL byte at
377 the end of the table.
378 (som_slurp_symbol_table): Check for an over-large offset into the
379 string string table.
380
24aebc79
NC
3812021-04-28 Nick Clifton <nickc@redhat.com>
382
383 * elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin
384 symbols as potential function symbols.
385 * elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise.
386 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
387 * elf32-arm.c (elf32_arm_maybe_function_sym): Likewise.
388
3955e346
MF
3892021-04-26 Mike Frysinger <vapier@gentoo.org>
390
391 * elf-bfd.h: Include stdlib.h.
392
a7664973
JB
3932021-04-26 Jan Beulich <jbeulich@suse.com>
394
395 * elf32-i386.c (elf_howto_table): Switch R_386_PC16 to
396 complain_overflow_signed.
397 * elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16
398 to complain_overflow_signed.
399
f5e98b7d
EB
4002021-04-23 Eric Botcazou <ebotcazou@adacore.com>
401
402 * elf.c (special_sections_p): Add .persistent.bss.
403
c21346c5
JB
4042021-04-23 Jan Beulich <jbeulich@suse.com>
405
406 * elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero
407 size field.
408 * elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL
409 has zero size field.
410
bdd2aaf6
CC
4112021-04-22 Clément Chigot <clement.chigot@atos.net>
412
413 * hash.c (struct bfd_strtab_hash): Remove xcoff field.
414 Add length_field_size field.
415 (_bfd_stringtab_init): Change prototype.
416 Adapt to new length_field_size.
417 (_bfd_xcoff_stringtab_init): Likewise.
418 (_bfd_stringtab_add): Likewise.
419 (_bfd_stringtab_emit): Likewise.
420 * libbfd-in.h (_bfd_xcoff_stringtab_init):
421 Change prototype.
422 * libbfd.h: Regenerate.
423 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create):
424 Call _bfd_xcoff_stringtab_init with isxcoff64 value.
425
b11b2969
CC
4262021-04-22 Clément Chigot <clement.chigot@atos.net>
427
428 * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for
429 unsupported storage class or auxialiry entries.
430 Improve and adapt to new aux structures.
431 Add C_DWARF support.
432 (_bfd_xcoff_swap_aux_out): Likewise.
433 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise.
434 (_bfd_xcoff64_swap_aux_out): Likewise.
435
18e9a809
EZ
4362021-04-21 Eli Zaretskii <eliz@gnu.org>
437
438 PR 27760
439 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display
440 of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP,
441 IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags.
442 Decode the contents of the DllCharacteristics field.
443
33fe00c1
NC
4442021-04-21 Nick Clifton <nickc@redhat.com>
445
446 PR 27759
447 * srec.c (srec_read_section): Replace assertions with error
448 returns.
449
c5df7e44
CC
4502021-04-20 Clément Chigot <clement.chigot@atos.net>
451
452 PR binutils/21700
453 * reloc.c (BFD_RELOC_PPC_NEG): New relocation.
454 * bfd-in2.h: Regenerate.
455 * libbfd.h: Regenerate.
456 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add
457 BFD_RELOC_PPC_NEG handler.
458 (xcoff_reloc_type_neg): Correctly substract addend.
459 * coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32
460 howto.
461 (xcoff64_rtype2howto): Add handler for R_NEG_32.
462 (xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler.
463 * xcofflink.c (xcoff_need_ldrel_p): Check output section
464 for R_POS-like relocations. New argument added.
465 (xcoff_mark): Adapt to new xcoff_need_ldrel_p argument.
466 (xcoff_link_input_bfd): Likewise.
467
6f8f6017
AM
4682021-04-16 Alan Modra <amodra@gmail.com>
469
470 PR 27567
471 * coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags.
472 (coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT,
473 ignore alignment checks when return is false. Formatting.
474
ddfe525f
NC
4752021-04-15 Nelson Chu <nelson.chu@sifive.com>
476
477 PR27584
478 * elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to
479 omit local and empty symbols since they usually generated to
480 mark the auipc instructions.
481
f6a1f957
LX
4822021-04-15 Lifang Xia<lifang_xia@c-sky.com>
483
484 * elf32-csky.c (csky_elf_howto_table)
485 <R_CKCORE_PCREL_IMM16BY2>: Set special_function to
486 bfd_elf_generic_reloc.
487 <R_CKCORE_PCREL_IMM16BY4>: Likewise.
488 <R_CKCORE_PCREL_IMM10BY4>: Likewise.
489 <R_CKCORE_PCREL_IMM18BY2>: Likewise.
490 <R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise.
491
9917b559
L
4922021-04-14 H.J. Lu <hongjiu.lu@intel.com>
493
494 PR binutils/27708
495 * elf.c (assign_file_positions_for_non_load_sections): Set
496 p_memsz to p_filesz for the loadable PT_NOTE segment.
497
5f47741b
FC
4982021-04-14 Frederic Cambus <fred@statdns.com>
499
500 * elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef
501 checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
502
8985b74b
AM
5032021-04-14 Alan Modra <amodra@gmail.com>
504
505 PR 27631
506 * elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf
507 when hh might be NULL, test for NULL first.
508
c9f9a78d
AM
5092021-04-14 Alan Modra <amodra@gmail.com>
510
511 PR 27630
512 * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
513 hash might be NULL, cast instead.
514
d2f1139e
CC
5152021-04-13 Clément Chigot <clement.chigot@atos.net>
516
517 * xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
518
e3839c10
NC
5192021-04-13 Nelson Chu <nelson.chu@sifive.com>
520
521 * elfnn-riscv.c (riscv_version_mismatch): Do not report the warning
522 when the version of input or output is RISCV_UNKNOWN_VERSION, since
523 the extension is added implicitly.
524 * elfxx-riscv.c: Updated the obsolete comments.
525 (RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h.
526 * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added.
527
43e05cd4
AM
5282021-04-12 Alan Modra <amodra@gmail.com>
529
530 * elf-bfd.h (ENABLE_CHECKING): Define.
531 (elf_link_hash_lookup): Abort if wrong type of hash table.
532 * configure.ac (--enable-checking): Add support.
533 * config.in: Regenerate.
534 * configure: Regenerate.
535
2cc15b10
AM
5362021-04-12 Alan Modra <amodra@gmail.com>
537
538 * elf-bfd.h (is_elf_hash_table): Convert macro to inline function.
539 (elf_link_hash_lookup, elf_link_hash_traverse): Likewise.
540 (elf_hash_table, elf_hash_table_id): Likewise.
541 * elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant
542 is_elf_hash_table check.
543 * elf32-csky.c (elf32_csky_setup_section_lists): Likewise.
544 * elf32-hppa.c (clobber_millicode_symbols): Correct param types.
545 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
546 * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise.
547 (elfNN_ia64_global_dyn_sym_thunk: Likewise.
548 * elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise.
549 (elf64_ia64_global_dyn_sym_thunk): Likewise.
550 (elf64_vms_link_add_object_symbols): Pass base type of hash table
551 to is_elf_hash_table.
552 * elflink.c (_bfd_elf_dynamic_symbol_p): Likewise.
553 (_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise.
554 (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise.
555 (_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise.
556 (bfd_elf_final_link): Likewise.
557 * elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise.
558 * elf64-ppc.c (ppc64_elf_set_toc): Likewise. Use bfd_link_hash_lookup.
559
b585e899
AM
5602021-04-12 Alan Modra <amodra@gmail.com>
561
562 * elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry*
563 from elf_backend_archive_symbol_lookup.
564 (_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*.
565 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise. Check
566 we have a ppc_hash_table before accessing ppc_link_hash_entry
567 fields.
568 * elflink.c (_bfd_elf_archive_symbol_lookup): Return
569 bfd_link_hash_entry*.
570 (elf_link_add_archive_symbols): Adjust to suit.
571
f5b10973
NC
5722021-04-12 Nelson Chu <nelson.chu@sifive.com>
573
574 * elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of
575 i-ext when expanding g-ext.
576
f0bae255
NC
5772021-04-12 Nelson Chu <nelson.chu@sifive.com>
578
579 * elfxx-riscv.c (riscv_ext_dont_care_version): Removed.
580 (riscv_parse_add_subset): Always add the implicit extensions, even if
581 their versions are RISCV_UNKNOWN_VERSION.
582 (riscv_parse_std_ext): Delay to add i-ext as the implicit extension
583 in the riscv_parse_add_implicit_subsets. Besides, add g-ext as the
584 implicit extension after it has been expanded.
585 (riscv_parse_add_implicit_subsets): Updated.
586
e601909a
NC
5872021-04-12 Nelson Chu <nelson.chu@sifive.com>
588
589 * elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward.
590 (riscv_std_s_ext_strtab): Likewise.
591 (riscv_std_h_ext_strtab): Likewise.
592 (riscv_std_zxm_ext_strtab): Added for the zxm prefix.
593 (enum riscv_prefix_ext_class): Moved forward and renamed from
594 riscv_isa_ext_class. Reorder them according to the parsing order,
595 since the enum values are used to check the orders in the
596 riscv_compare_subsets.
597 (struct riscv_parse_prefix_config): Moved forward and renamed from
598 riscv_parse_config_t. Also removed the ext_valid_p field, the
599 related functions are replaced by riscv_valid_prefixed_ext.
600 (parse_config): Moved forward and updated. The more letters of the
601 prefix string, the more forward it must be defined. Otherwise, we
602 will get the wrong mapping when using strncmp in riscv_get_prefix_class.
603 (riscv_get_prefix_class): Moved forward. Support to parse the
604 multi-letter prefix, like zxm.
605 (riscv_known_prefixed_ext): New function, check if the prefixed
606 extension is supported according to the right riscv_std_*_ext_strtab.
607 (riscv_valid_prefixed_ext): New function, used to replace the
608 riscv_ext_*_valid_p functions.
609 (riscv_init_ext_order): Do not set the values for prefix keywords
610 since they may have multiple letters for now.
611 (riscv_compare_subsets): Set the order values of prefix keywords
612 to negative numbers according to the riscv_prefix_ext_class.
613 (riscv_parse_std_ext): Call riscv_get_prefix_class to see if we
614 have parsed the prefixed extensions.
615 (riscv_parse_prefixed_ext): Updated and removed the parameter config.
616 Report error when the prefix is unknown.
617 (riscv_parse_subset): Do not parse the prefixed extensions according
618 to the orders in the parse_config. Remove the confused message and
619 let riscv_parse_prefixed_ext to report the details.
620 * elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c.
621 (riscv_get_prefix_class): Removed to static.
622
eec8bf7e
MF
6232021-04-08 Mike Frysinger <vapier@gentoo.org>
624
625 * configure.ac (ACX_BUGURL): Use https://.
626 * configure.com (COPY_TEXT): Likewise.
627 * configure: Regenerate.
628
83c79df8
AM
6292021-04-05 Alan Modra <amodra@gmail.com>
630
631 * configure.ac: Don't check for long long or long double type.
632 Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
633 strings.h, time.h, wchar.h, wctype.h or sys/time.h. Don't check
634 for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
635 vsnprintf, strlen or setitimer. Sort AC_CHECK_DECLS.
636 (AC_ISC_POSIX): Don't invoke.
637 (AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
638 * sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
639 Do test HAVE_SYS_TYPES_H. Don't include sys/time.h. Reorder
640 header order as per automake AC_INCLUDES_DEFAULT.
641 * bfd-in.h: Include inttypes.h unconditionally.
642 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
643 long double are available.
644 (bfd_scan_vma): Assume long long and strtoull are available.
645 * elflink.c: Include limits.h unconditionally.
646 * elfnn-riscv.c: Likewise.
647 * wasm-module.c: Likewise.
648 * hpux-core.c: Include dirent.h unconditionally.
649 * trad-core.c: Likewise.
650 * hosts/x86-64linux.h: Include stdlib.h unconditionally.
651 * peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
652 * elf32-m68hc1x.c: Don't include alloca-conf.h.
653 * elf64-hppa.c: Likewise.
654 * som.c: Likewise.
655 * wasm-module.c: Likewise.
656 * xsym.c: Likewise.
657 * bfd-in2.h: Regenerate.
658 * config.in: Regenerate.
659 * configure: Regenerate.
660
74edb473
TC
6612021-04-01 Tamar Christina <tamar.christina@arm.com>
662
663 PR ld/26659
664 * cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow.
665
e9b095a5
ML
6662021-04-01 Martin Liska <mliska@suse.cz>
667
668 * ecoff.c (strneq): Remove strneq and use startswith.
669 (_bfd_ecoff_slurp_armap): Likewise.
670
3f3328b8
ML
6712021-04-01 Martin Liska <mliska@suse.cz>
672
673 * elf-bfd.h (bfd_section_is_ctf): Use startswith function.
674 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
675 (elf_get_reloc_section): Likewise.
676 * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
677 * elf32-m32r.c (m32r_elf_section_flags): Likewise.
678 * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise.
679 * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
680 (nds32_elf_relocate_section): Likewise.
681 (nds32_elf_action_discarded): Likewise.
682 (nds32_elf_check_relocs): Likewise.
683 (nds32_elf_section_flags): Likewise.
684 * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
685 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
686 * elf32-rx.c (rx_table_find): Likewise.
687 (rx_table_map): Likewise.
688 * elf32-spu.c (spu_elf_backend_symbol_processing): Likewise.
689 (spu_elf_find_overlays): Likewise.
690 (needs_ovl_stub): Likewise.
691 (allocate_spuear_stubs): Likewise.
692 (build_spuear_stubs): Likewise.
693 (mark_overlay_section): Likewise.
694 (spu_elf_auto_overlay): Likewise.
695 (spu_elf_output_symbol_hook): Likewise.
696 * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
697 * elf32-xtensa.c (xtensa_property_section_name): Likewise.
698 * elf64-ppc.c (ppc64_elf_section_flags): Likewise.
699 (ppc64_elf_relocate_section): Likewise.
700 * elflink.c (resolve_section): Likewise.
701 (UNARY_OP): Likewise.
702 (BINARY_OP_HEAD): Likewise.
703 (elf_link_input_bfd): Likewise.
704 * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise.
705 * elfxx-riscv.c (riscv_parse_subset): Likewise.
706 * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
707 * opncls.c (get_build_id): Likewise.
708
65c5fbd4
AM
7092021-03-31 Alan Modra <amodra@gmail.com>
710
711 PR 27671
712 * bfd-in.h: Don't poison FALSE or TRUE.
713 * bfd-in2.h: Regenerate.
714
0a1b45a2
AM
7152021-03-31 Alan Modra <amodra@gmail.com>
716
717 * sysdep.h: POISON_BFD_BOOLEAN: Define.
718 * aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h,
719 * aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c,
720 * bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c,
721 * coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c,
722 * coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c,
723 * coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c,
724 * coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
725 * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
726 * coffcode.h, * coffgen.c, * cofflink.c, * compress.c,
727 * corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c,
728 * cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c,
729 * cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c,
730 * cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c,
731 * cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c,
732 * cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c,
733 * cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c,
734 * cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c,
735 * cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c,
736 * cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c,
737 * cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c,
738 * cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c,
739 * cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c,
740 * cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c,
741 * cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c,
742 * cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c,
743 * cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c,
744 * cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c,
745 * cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c,
746 * cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c,
747 * cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c,
748 * dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c,
749 * elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h,
750 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c,
751 * elf-nacl.h, * elf-properties.c, * elf-s390-common.c,
752 * elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h,
753 * elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c,
754 * elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c,
755 * elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c,
756 * elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c,
757 * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
758 * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
759 * elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c,
760 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
761 * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
762 * elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c,
763 * elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
764 * elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c,
765 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
766 * elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c,
767 * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c,
768 * elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c,
769 * elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h,
770 * elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h,
771 * elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c,
772 * elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h,
773 * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
774 * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
775 * elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c,
776 * elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c,
777 * elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
778 * elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c,
779 * elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h,
780 * elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c,
781 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c,
782 * elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h,
783 * elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h,
784 * elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h,
785 * elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h,
786 * format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c,
787 * i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h,
788 * libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h,
789 * libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c,
790 * mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h,
791 * merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c,
792 * pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c,
793 * pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c,
794 * pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c,
795 * peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c,
796 * reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c,
797 * som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c,
798 * verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h,
799 * wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c,
800 * xsym.h: Replace bfd_boolean with bool, FALSE with false, and
801 TRUE with true throughout.
802 * bfd-in2.h: Regenerate.
803 * libbfd.h: Regenerate.
804 * libcoff.h: Regenerate.
805
ad9e24ad
AM
8062021-03-31 Alan Modra <amodra@gmail.com>
807
808 * bfd-in.h: Include stdbool.h.
809 (bfd_boolean): Define as bool
810 * bfd-in2.h: Regenerate.
811
3dfb1b6d
AM
8122021-03-31 Alan Modra <amodra@gmail.com>
813
814 * .gitignore: Delete bfd_stdint.h entry.
815 * Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h.
816 (BUILD_HFILES, LOCAL_H_DEPS): Likewise.
817 * bfd-in.h: Include stdint.h in place of bfd_stdint.h.
818 * configure.ac: Don't invoke GCC_HEADER_STDINT.
819 * configure.com: Don't create bfd_stdint.h.
820 * Makefile.in: Regenerate.
821 * aclocal.m4: Regenerate.
822 * bfd-in2.h: Regenerate.
823 * config.in: Regenerate.
824 * configure: Regenerate.
825 * doc/Makefile.in: Regenerate.
826 * po/BLD-POTFILES.in: Regenerate.
827
57ae980e
AM
8282021-03-31 Alan Modra <amodra@gmail.com>
829
830 * bfd-in.h: Include string.h.
831 (LITMEMCPY, LITSTRCPY): Delete.
832 * bfd-in2.h: Regenerate.
833
d1cbe007
AM
8342021-03-30 Alan Modra <amodra@gmail.com>
835
836 * elflink.c (elf_link_add_object_symbols): Don't set h->indx
837 unless is_elf_hash_table.
838
63b4cc53
AM
8392021-03-29 Alan Modra <amodra@gmail.com>
840
841 * aoutx.h (aout_link_write_symbols): Don't cast boolean expression
842 to bfd_boolean.
843 * elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans
844 against FALSE.
845 * elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE.
846 (is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE".
847 (is_reloc_SDA_relative, is_reloc_for_GOT): Likewise.
848 (is_reloc_for_PLT, is_reloc_for_TLS): Likewise.
849 * elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise.
850 * elf32-nds32.c (insert_nds32_elf_blank): Likewise.
851 * elf32-rx.c (rx_set_section_contents): Likewise.
852 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
853 * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise.
854 * mach-o.c (bfd_mach_o_read_command): Likewise.
855 * targets.c (bfd_get_target_info): Likewise.
856
f4f9ede0
AM
8572021-03-29 Alan Modra <amodra@gmail.com>
858
859 * coff-z80.c (z80_is_local_label_name): Return bfd_boolean.
860 * elf32-z80.c (z80_is_local_label_name): Likewise.
861 * elf32-spu.c (spu_elf_modify_headers): Likewise.
862 * elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>):
863 Change type to int.
864 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test
865 for error return from vms_write_data_block.
866
1201fda6
AM
8672021-03-29 Alan Modra <amodra@gmail.com>
868
869 * elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
870 * elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
871 (elf64_ia64_local_dyn_sym_thunk): Likewise.
872 * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
873 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
874 (elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
875 * elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
876 (elfNN_ia64_local_dyn_sym_thunk): Likewise.
877 * elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
878 (riscv_pcrel_reloc_eq): Likewise.
879 (riscv_elf_finish_local_dynamic_symbol): Likewise.
880 * elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
881 (finish_local_dynamic_symbol): Likewise.
882 * elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
883 * elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
884 (mips_elf_count_got_symbols): Change return type to bfd_boolean.
885
37bb890f
AM
8862021-03-29 Alan Modra <amodra@gmail.com>
887
888 * elflink.c (elf_link_output_symstrtab): Make flinfo parameter
889 a void pointer.
890 (bfd_elf_final_link): Delete out_sym_func typedef and don't cast
891 elf_link_output_symstrtab when calling output_arch_syms and
892 output_arch_local_syms.
893 * elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms,
894 elf_backend_output_arch_local_syms>): Change return type of func
895 arg to match elf_link_output_symstrtab.
896 * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct
897 return type.
898 * elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type.
899 (nds32_elf_output_arch_syms): Correct func return type.
900
0f684201
AM
9012021-03-29 Alan Modra <amodra@gmail.com>
902
903 * elf-m10200.c (mn10200_elf_relocate_section): Return int.
904 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
905 * elf32-arc.c (elf_arc_relocate_section): Likewise.
906 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
907 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
908 * elf32-bfin.c (bfin_relocate_section): Likewise.
909 (bfinfdpic_relocate_section): Likewise.
910 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
911 * elf32-cris.c (cris_elf_relocate_section): Likewise.
912 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
913 * elf32-csky.c (csky_elf_relocate_section): Likewise.
914 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
915 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
916 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
917 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
918 * elf32-ft32.c (ft32_elf_relocate_section): Likewise.
919 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
920 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
921 * elf32-i386.c (elf_i386_relocate_section): Likewise.
922 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
923 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
924 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
925 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
926 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
927 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
928 * elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise.
929 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
930 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
931 * elf32-mep.c (mep_elf_relocate_section): Likewise.
932 * elf32-metag.c (elf_metag_relocate_section): Likewise.
933 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
934 * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
935 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
936 * elf32-mt.c (mt_elf_relocate_section): Likewise.
937 * elf32-nds32.c (nds32_elf_relocate_section): Likewise.
938 * elf32-nios2.c (nios2_elf32_relocate_section): Likewise.
939 * elf32-or1k.c (or1k_elf_relocate_section): Likewise.
940 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
941 * elf32-pru.c (pru_elf32_relocate_section): Likewise.
942 * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
943 * elf32-rx.c (rx_elf_relocate_section): Likewise.
944 * elf32-s390.c (elf_s390_relocate_section): Likewise.
945 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
946 (_bfd_score_elf_relocate_section): Likewise.
947 * elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise.
948 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
949 * elf32-sh.c (sh_elf_relocate_section): Likewise.
950 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
951 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
952 * elf32-v850.c (v850_elf_relocate_section): Likewise.
953 * elf32-vax.c (elf_vax_relocate_section): Likewise.
954 * elf32-visium.c (visium_elf_relocate_section): Likewise.
955 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
956 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
957 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
958 * elf32-z80.c (z80_elf_relocate_section): Likewise.
959 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
960 (elf64_alpha_relocate_section): Likewise.
961 * elf64-bpf.c (bpf_elf_relocate_section): Likewise.
962 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
963 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
964 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
965 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
966 * elf64-s390.c (elf_s390_relocate_section): Likewise.
967 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
968 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise.
969 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
970 * elfnn-riscv.c (riscv_elf_relocate_section): Likewise.
971 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
972 * elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise.
973 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
974 * elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise.
975 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
976 * elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise.
977
ff5b3e14
KS
9782021-03-26 Keith Seitz <keiths@redhat.com>
979
980 * elfcore.h (_bfd_elf_core_find_build_id): Seek file
981 offset of program headers after calling elf_read_notes.
982
f596b03f
JB
9832021-03-23 Jan Beulich <jbeulich@suse.com>
984
985 * dwarf2.c (read_indexed_string): Rename index to idx.
986
08dedd66
ML
9872021-03-22 Martin Liska <mliska@suse.cz>
988
989 * bfd-in.h (startswith): Add startswith function.
990 (CONST_STRNEQ): Remove.
991 * bfd-in2.h (startswith): Regenerate with make headers.
992 * archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
993 (_bfd_slurp_extended_name_table): Likewise.
994 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
995 * bfd.c (bfd_get_sign_extend_vma): Likewise.
996 (bfd_convert_section_size): Likewise.
997 (bfd_convert_section_contents): Likewise.
998 * coff-stgo32.c (go32exe_create_stub): Likewise.
999 (go32exe_check_format): Likewise.
1000 * coffcode.h (styp_to_sec_flags): Likewise.
1001 (GNU_DEBUGALTLINK): Likewise.
1002 * coffgen.c (_bfd_coff_section_already_linked): Likewise.
1003 (coff_gc_sweep): Likewise.
1004 (bfd_coff_gc_sections): Likewise.
1005 * cofflink.c (coff_link_add_symbols): Likewise.
1006 (process_embedded_commands): Likewise.
1007 * compress.c (bfd_is_section_compressed_with_header): Likewise.
1008 (bfd_init_section_decompress_status): Likewise.
1009 * dwarf2.c (find_debug_info): Likewise.
1010 (place_sections): Likewise.
1011 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
1012 * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
1013 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1014 (assign_section_numbers): Likewise.
1015 (elfcore_grok_win32pstatus): Likewise.
1016 * elf32-arm.c (cmse_scan): Likewise.
1017 (elf32_arm_gc_mark_extra_sections): Likewise.
1018 (elf32_arm_size_dynamic_sections): Likewise.
1019 (is_arm_elf_unwind_section_name): Likewise.
1020 * elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
1021 * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
1022 * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
1023 * elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
1024 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
1025 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1026 * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
1027 * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
1028 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
1029 * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
1030 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
1031 * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
1032 * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
1033 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1034 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
1035 * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
1036 * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
1037 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1038 * elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
1039 (elf32_tic6x_size_dynamic_sections): Likewise.
1040 * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
1041 * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
1042 (xtensa_is_insntable_section): Likewise.
1043 (xtensa_is_littable_section): Likewise.
1044 (xtensa_is_proptable_section): Likewise.
1045 (xtensa_property_section_name): Likewise.
1046 (xtensa_callback_required_dependence): Likewise.
1047 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
1048 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
1049 * elf64-ia64-vms.c (is_unwind_section_name): Likewise.
1050 (get_reloc_section): Likewise.
1051 (elf64_ia64_size_dynamic_sections): Likewise.
1052 (elf64_ia64_object_p): Likewise.
1053 * elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
1054 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
1055 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
1056 * elflink.c (elf_link_add_object_symbols): Likewise.
1057 (_bfd_elf_gc_mark_extra_sections): Likewise.
1058 (bfd_elf_parse_eh_frame_entries): Likewise.
1059 (_bfd_elf_section_already_linked): Likewise.
1060 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
1061 * elfnn-ia64.c (is_unwind_section_name): Likewise.
1062 (elfNN_ia64_size_dynamic_sections): Likewise.
1063 (elfNN_ia64_object_p): Likewise.
1064 * elfxx-mips.c (FN_STUB_P): Likewise.
1065 (CALL_STUB_P): Likewise.
1066 (CALL_FP_STUB_P): Likewise.
1067 (_bfd_mips_elf_section_from_shdr): Likewise.
1068 (_bfd_mips_elf_fake_sections): Likewise.
1069 (_bfd_mips_elf_size_dynamic_sections): Likewise.
1070 (_bfd_mips_final_write_processing): Likewise.
1071 (_bfd_mips_elf_final_link): Likewise.
1072 * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
1073 * elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
1074 (elf_x86_64_is_reloc_section): Likewise.
1075 * hpux-core.c (thread_section_p): Likewise.
1076 * libcoff.h (bfd_pei_p): Likewise.
1077 * linker.c (REAL): Likewise.
1078 (unwrap_hash_lookup): Likewise.
1079 (_bfd_generic_link_add_one_symbol): Likewise.
1080 * mmo.c (mmo_internal_write_section): Likewise.
1081 * osf-core.c (osf_core_core_file_p): Likewise.
1082 * pef.c (bfd_pef_print_symbol): Likewise.
1083 * pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
1084 * som.c (som_slurp_symbol_table): Likewise.
1085 (som_slurp_armap): Likewise.
1086 * wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
1087
2aaf2ce8
JB
10882021-03-22 Jan Beulich <jbeulich@suse.com>
1089
1090 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
1091 language translation wrapping to _bfd_error_handler()
1092 invocations.
1093
e9338841
AM
10942021-03-21 Alan Modra <amodra@gmail.com>
1095
1096 * bfd-in.h (startswith): New inline.
1097 (CONST_STRNEQ): Use startswith.
1098 * bfd-in2.h: Regenerate.
1099
15407e7e
AM
11002021-03-20 Alan Modra <amodra@gmail.com>
1101
1102 PR 27590
1103 * elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE
1104 test for .gnu.debuglto*.
1105
3818d4ab
L
11062021-03-18 H.J. Lu <hongjiu.lu@intel.com>
1107
1108 PR ld/27590
15407e7e 1109 * elf.c (_bfd_elf_make_section_from_shdr): Treat
3818d4ab
L
1110 .gnu.debuglto_.debug_ section as debugging section unless it is
1111 marked with SHF_EXCLUDE.
1112 * elflink.c (elf_create_symbuf): Revert commit 994b2513281.
1113 (bfd_elf_match_symbols_in_sections): Ignore section symbols when
1114 matching non-debugging sections or linkonce section with comdat
1115 section.
1116
51f6e7a9
L
11172021-03-18 H.J. Lu <hongjiu.lu@intel.com>
1118
1119 PR ld/27587
1120 * dwarf2.c (read_attribute_value): Check version >= 3 for
1121 DW_FORM_ref_addr.
1122
012d4426
NC
11232021-03-16 Nick Clifton <nickc@redhat.com>
1124
1125 * peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer
1126 overrun by using sizeof of the destination x_fname field as the
1127 limit for a memcpy.
1128
80d49d6a
KLC
11292021-03-16 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1130
1131 * elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc.
1132
1b2cb8e2
CC
11332021-03-12 Clément Chigot <clement.chigot@atos.net>
1134
1135 * reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE,
1136 BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD,
1137 BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE,
1138 BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M,
1139 BFD_RELOC_PPC64_TLS_ML): New relocations.
1140 * bfd-in2.h: Regenerate.
1141 * libbfd.h: Regenerate.
1142 * coff-rs6000.c (xcoff_calculate_relocation): Call
1143 xcoff_reloc_type_tls for TLS relocations.
1144 (xcoff_howto_table): Implement TLS relocations.
1145 (_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations.
1146 (xcoff_reloc_type_tls): New function.
1147 * coff64-rs6000.c (xcoff_calculate_relocation): Likewise.
1148 (xcoff_howto_table): Likewise.
1149 (_bfd_xcoff_reloc_type_lookup): Likewise.
1150 * coffcode.h (sec_to_styp_flags): Handle TLS sections.
1151 (styp_to_sec_flags): Likewise.
1152 (coff_compute_section_file_positions): Avoid file offset
1153 optimisation for .data when the previous section is .tdata.
1154 (coff_write_object_contents): Handle TLS sections.
1155 * coffswap.h (coff_swap_aouthdr_out): Add support for
1156 new fields in aouthdr.
1157 * libxcoff.h (xcoff_reloc_type_tls): Add prototype.
1158 * xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL.
1159 (xcoff_need_ldrel_p): Add cases for TLS relocations.
1160 (xcoff_create_ldrel): Add l_symndx for TLS sections.
1161
4a403be0
CC
11622021-03-12 Clément Chigot <clement.chigot@atos.net>
1163
1164 * reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO):
1165 New relocations.
1166 * bfd-in2.h: Regenerate.
1167 * libbfd.h: Regenerate.
1168 * coff-rs6000.c (xcoff_calculate_relocation): Call
1169 xcoff_reloc_type_toc for R_TOCU and R_TOCL.
1170 (xcoff_howto_table): Remove src_mask for TOC relocations.
1171 Add R_TOCU and R_TOCL howtos.
1172 (_bfd_xcoff_reloc_type_lookup): Add cases for
1173 BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO.
1174 (xcoff_reloc_type_toc): Compute the whole offset.
1175 Implement R_TOCU and R_TOCL.
1176 * coff64-rs6000.c (xcoff64_calculate_relocation):
1177 Likewise.
1178 (xcoff64_howto_table): Likewise.
1179 (xcoff64_reloc_type_lookup): Likewise.
1180
2c1bef53
CC
11812021-03-12 Clément Chigot <clement.chigot@atos.net>
1182
1183 * coff-rs6000.c (xcoff_calculate_relocation): Correct and
1184 add new relocations.
1185 (xcoff_howto_table): Likewise.
1186 (xcoff_rtype2howto): Increase r_type maximum value.
1187 (xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead
1188 of create a new one from scratch. Enable only some relocations
1189 to have a changing r_size.
1190 * coff64-rs6000.c (xcoff64_calculate_relocation): Likewise.
1191 (xcoff64_howto_table): Likewise.
1192 (xcoff64_rtype2howto): Likewise.
1193 (xcoff64_ppc_relocate_section): Likewise.
1194 * libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value.
1195
0c929e83
CC
11962021-03-12 Clément Chigot <clement.chigot@atos.net>
1197
1198 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Move.
1199
6d4d9328
CC
12002021-03-12 Clément Chigot <clement.chigot@atos.net>
1201
1202 * coff64-rs6000.c (xcoff64_write_object_contents): Remove.
1203 * coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620
1204 support for o_cputype field. Avoid creating an empty a.out header
1205 for XCOFF64.
1206
8aa2d023
CC
12072021-03-12 Clément Chigot <clement.chigot@atos.net>
1208
1209 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add
1210 missing smclass.
1211
ebdcad3f
NC
12122021-03-11 Nelson Chu <nelson.chu@sifive.com>
1213
1214 * elfnn-riscv.c (riscv_elf_link_hash_table): New boolean
1215 restart_relax, used to check if we need to run the whole
1216 relaxations from relax pass 0 to 2 again.
1217 (riscv_elf_link_hash_table_create): Init restart_relax to FALSE.
1218 (_bfd_riscv_relax_align): Remove obsolete sec_flg0 set.
1219 (_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code.
1220 (bfd_elfNN_riscv_restart_relax_sections): New function. Called by
1221 after_allocation to check if we need to run the whole relaxations again.
1222 (_bfd_riscv_relax_section): We will only enter into the relax pass 3
1223 when the restart_relax is FALSE; At last set restart_relax to TRUE if
1224 again is TRUE, too.
1225 * elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration.
1226 (bfd_elf64_riscv_restart_relax_sections): Likewise.
1227
67b0f684
JB
12282021-03-10 Jan Beulich <jbeulich@suse.com>
1229
1230 * cofflink.c (_bfd_coff_write_global_sym): Range-check symbol
1231 offset.
1232
2dfa8341
AM
12332021-03-10 Alan Modra <amodra@gmail.com>
1234 Jan Beulich <jbeulich@suse.com>
1235
1236 * elf.c (bfd_elf_generic_reloc): Make references between debug
1237 sections use section relative values.
1238
87fa7d56
JB
12392021-03-09 Jan Beulich <jbeulich@suse.com>
1240
1241 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA.
1242
8c0546e9
L
12432021-03-05 H.J. Lu <hongjiu.lu@intel.com>
1244
1245 PR ld/27425
1246 PR ld/27432
1247 * bfd.c (_bfd_get_link_info): New function.
1248 * elf-bfd.h (output_elf_obj_tdata): Add link_info.
1249 (elf_link_info): New.
1250 * libbfd-in.h (_bfd_get_link_info): New prototype.
1251 * coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for
1252 R_AMD64_IMAGEBASE when generating x86-64 ELF executable.
1253 * pe-x86_64.c: Include "coff/internal.h" and "libcoff.h".
1254 (pex64_link_add_symbols): New function.
1255 (coff_bfd_link_add_symbols): New macro.
1256 * libbfd.h: Regenerated.
1257
db6092f3
AB
12582021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1259 Andrew Burgess <andrew.burgess@embecosm.com>
1260
1261 * elf-bfd.h (elfcore_write_riscv_csr): Declare.
1262 * elf.c (elfcore_grok_riscv_csr): New function.
1263 (elfcore_grok_note): Handle NT_RISCV_CSR.
1264 (elfcore_write_riscv_csr): New function.
1265 (elfcore_write_register_note): Handle '.reg-riscv-csr'.
1266
0897bb7d
AB
12672021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1268 Andrew Burgess <andrew.burgess@embecosm.com>
1269
1270 * elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define.
1271 (PRPSINFO_PR_PSARGS_LENGTH): Define.
1272 (riscv_write_core_note): New function.
1273 (riscv_elf_grok_psinfo): Make use of two new length defines.
1274 (elf_backend_write_core_note): Define.
1275
b63a5e38
AB
12762021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1277 Andrew Burgess <andrew.burgess@embecosm.com>
1278
1279 * elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
1280 * elf.c (elfcore_grok_gdb_tdesc): New function.
1281 (elfcore_grok_note): Handle NT_GDB_TDESC.
1282 (elfcore_write_gdb_tdesc): New function.
1283 (elfcore_write_register_note): Handle NT_GDB_TDESC.
1284
2017f387
NC
12852021-03-05 Nick Clifton <nickc@redhat.com>
1286
1287 PR 27521
1288 * dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
1289 (read_indexed_string): Placeholder function.
1290 (read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
1291 forms.
1292
b01b5d9a
AM
12932021-03-05 Alan Modra <amodra@gmail.com>
1294
1295 * reloc.c (bfd_perform_relocation): Revert 2021-01-12 and
1296 2020-09-16 changes.
1297 * coff-x86_64.c (coff_amd64_reloc): Do more or less the same
1298 adjustments here instead. Separate pc-relative adjustments
1299 from symbol related adjustments. Tidy comments and formatting.
1300
6b5465b9
JB
13012021-03-04 Jan Beulich <jbeulich@suse.com>
1302
1303 * coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in
1304 final PE images.
1305
0b7733b6
AM
13062021-03-04 Alan Modra <amodra@gmail.com>
1307
1308 * rs6000-core.c (rs6000coff_core_p): Correct prototype.
1309
5789f845
AM
13102021-03-03 Alan Modra <amodra@gmail.com>
1311
1312 PR 27500
1313 * elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop
1314 processing not when start/stop symbol section is unmarked but
1315 on first time a start/stop symbol is processed.
1316
dc83f2d2
AM
13172021-03-03 Alan Modra <amodra@gmail.com>
1318
1319 * reloc.c: Include x86_64.h rather than internal.h.
1320
ca8f6bc6
NC
13212021-03-02 Nick Clifton <nickc@redhat.com>
1322
1323 PR 27484
1324 * dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate
1325 function and variable tags and a second time to resolve their
1326 attributes.
1327
211bcd01
NA
13282021-03-02 Nick Alcock <nick.alcock@oracle.com>
1329
1330 * elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount.
1331
b80e421f
AM
13322021-03-02 Alan Modra <amodra@gmail.com>
1333
1334 PR 27451
1335 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized
1336 linker defined start/stop symbols when start_stop_gc.
1337
f5b9c288
AM
13382021-03-02 Alan Modra <amodra@gmail.com>
1339
1340 * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got
1341 indirect to pc-relative or toc-relative for undefined symbols.
1342
8ee10e86
AM
13432021-03-01 Alan Modra <amodra@gmail.com>
1344 Fangrui Song <maskray@google.com>
1345
1346 * elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker
1347 defined start/stop symbols when start_stop_gc.
1348 (bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
1349 (bfd_elf_define_start_stop): Don't modify ldscript_def syms.
1350 * linker.c (bfd_generic_define_start_stop): Likewise.
1351
bbaddd4b
AM
13522021-02-25 Alan Modra <amodra@gmail.com>
1353
1354 PR 27441
1355 * elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak.
1356 * elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and
1357 use when deciding an as-needed library should be loaded instead
1358 of using the binding of the library definition.
1359
93af1b04
AM
13602021-02-24 Alan Modra <amodra@gmail.com>
1361
1362 PR 27459
1363 * coff-stgo32.c (go32exe_check_format): Sanity check size of
1364 header to avoid a buffer overflow.
1365
e9d18e06
AM
13662021-02-22 Alan Modra <amodra@gmail.com>
1367
1368 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
1369 * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
1370
5a9f5403
NC
13712021-02-19 Nelson Chu <nelson.chu@sifive.com>
1372
1373 PR 27158
1374 * elfnn-riscv.c (perform_relocation): Updated encoding macros.
1375 (_bfd_riscv_relax_call): Likewise.
1376 (_bfd_riscv_relax_lui): Likewise.
1377 * elfxx-riscv.c (howto_table): Likewise.
1378
3d73d29e
NC
13792021-02-18 Nelson Chu <nelson.chu@sifive.com>
1380
1381 * Makefile.am: Added cpu-riscv.h.
1382 * Makefile.in: Regenerated.
1383 * po/SRC-POTFILES.in: Regenerated.
1384 * cpu-riscv.h: Added to support spec versions controlling.
1385 Also added extern arrays and functions for cpu-riscv.c.
1386 (enum riscv_spec_class): Define all spec classes here uniformly.
1387 (struct riscv_spec): Added for all specs.
1388 (RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
1389 (RISCV_GET_SPEC_NAME): Likewise.
1390 (RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
1391 (RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
1392 (RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
1393 * cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
1394 (riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
1395 (riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
1396 (riscv_priv_specs): Moved below.
1397 (riscv_get_priv_spec_class_from_numbers): Likewise, updated.
1398 (riscv_isa_specs): Moved from include/opcode/riscv.h.
1399 * elfnn-riscv.c: Included cpu-riscv.h.
1400 (riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
1401 * elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
1402 (RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
1403 * elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
1404
b9b204b3
AM
14052021-02-17 Alan Modra <amodra@gmail.com>
1406
1407 * wasm-module.c: Guard include of limits.h.
1408 (CHAR_BIT): Provide backup define.
1409 (wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
1410 Correct signed overflow checking.
1411
0d6aab77
NC
14122021-02-17 Nelson Chu <nelson.chu@sifive.com>
1413
1414 PR 27200
1415 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
1416 copying the elf flags from input BFD to output BFD, until we have
1417 checked if the input BFD has no code section or not. Also fix the
1418 problem that we only check the first section rather than the entire
1419 sections for input BFD.
1420
7b54cadd
AM
14212021-02-16 Alan Modra <amodra@gmail.com>
1422
1423 * libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
1424 (_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
1425
8c674061
JB
14262021-02-15 Jan Beulich <jbeulich@suse.com>
1427
1428 * doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
1429 * doc/Makefile.in: Re-generate.
1430
1781a9d0
AM
14312021-02-15 Alan Modra <amodra@gmail.com>
1432
1433 * elf32-nds32.c (nds32_get_section_contents): Replace
1434 bfd_malloc_and_get_section with bfd_get_full_section_contents.
1435 (nds32_elf_relax_delete_blanks): Init contents.
1436 (nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
1437
8b78cbec
AM
14382021-02-15 Alan Modra <amodra@gmail.com>
1439
1440 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
1441 bfd_get_full_section_contents.
1442
d7a7af8f
AM
14432021-02-14 Alan Modra <amodra@gmail.com>
1444
1445 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
1446 all fixes to bfd_generic_get_relocated_section_contents since this
1447 function was split out.
1448
234b98ce
AM
14492021-02-11 Alan Modra <amodra@gmail.com>
1450
1451 * config.bfd: Remove ia64 from obsolete list.
1452
769c253f
AM
14532021-02-11 Alan Modra <amodra@gmail.com>
1454
1455 PR ld/22269
1456 * elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
1457
31c711a2
AM
14582021-02-11 Alan Modra <amodra@gmail.com>
1459
1460 PR 27294
1461 * elf32-avr.c (avr_elf32_load_records_from_section): Use
1462 bfd_malloc_and_get_section. Use bfd_byte* vars and remove then
1463 unnecessary casts.
1464
6db658c5
AM
14652021-02-11 Alan Modra <amodra@gmail.com>
1466
1467 PR 27291
1468 * section.c (bfd_get_section_contents): Avoid possible overflow
1469 when range checking offset and count.
1470 (bfd_set_section_contents): Likewise.
1471
95148614
NA
14722021-02-03 Nick Alcock <nick.alcock@oracle.com>
1473
1474 * configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
1475 favour of LIBINTL.
1476 * configure: Regenerated.
1477
a57d1773
AM
14782021-02-09 Alan Modra <amodra@gmail.com>
1479
1480 * config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
1481 * configure.ac: Delete symbian entries.
1482 * elf-bfd.h (enum elf_target_os): Delete is_symbian.
1483 * elf32-arm.c: Remove symbian support. Formatting.
1484 * targets.c: Delete symbian entries.
1485 * configure: Regenerate.
1486
1a2f1b54
L
14872021-02-04 H.J. Lu <hongjiu.lu@intel.com>
1488
1489 PR ld/19609
1490 * elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
1491 info when failed to convert GOTPCREL relocation.
1492
24075dcc
NC
14932021-02-04 Nelson Chu <nelson.chu@sifive.com>
1494
1495 * elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
1496
7d409ac0
AM
14972021-02-04 Alan Modra <amodra@gmail.com>
1498
1499 PR 27311
1500 * elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
1501 libraries for IR references on pass over libraries after LTO
1502 recompilation.
1503
f01fb44c
AM
15042021-02-03 Alan Modra <amodra@gmail.com>
1505
1506 PR 27311
1507 * elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
1508 (elf_link_add_object_symbols): Here too. Don't pull in as-needed
1509 libraries when H is an indirect symbol after calling
1510 _bfd_elf_add_default_symbol.
1511
69551367
AM
15122021-02-03 Alan Modra <amodra@gmail.com>
1513
1514 PR 27311
1515 * elflink.c (_bfd_elf_add_default_symbol): Clear override when
1516 undecorated symbol will have a different version.
1517
9918bff7
AM
15182021-02-02 Alan Modra <amodra@gmail.com>
1519
1520 PR 27311
1521 * elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
1522 Use when handling default versioned symbol. Rename existing
1523 override variable to nondef_override and use for non-default
1524 versioned symbol.
1525 (elf_link_add_object_symbols): Adjust call to suit. Don't
1526 pull in as-needed libraries when override is set.
1527
1f568f9a
EH
15282021-02-01 Emery Hemingway <ehmry@posteo.net>
1529
1530 * config.bfd: Add *-*-genode* as a target for AArch64 and x86.
1531
34c10233
EV
15322021-02-01 Egor Vishnyakov <lenvampir@yandex.ru>
1533
1534 PR 27254
1535 * elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
1536 offset for the R_RL78_RH_SADDR relocation.
1537
c4566785
AM
15382021-01-29 Alan Modra <amodra@gmail.com>
1539
1540 PR 27271
1541 * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
1542 on symbols defined in absolute or other special sections.
1543
def97fb9
AM
15442021-01-28 Alan Modra <amodra@gmail.com>
1545
1546 PR 27259
1547 * elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
1548 prevent endless looping of linked-to sections.
1549
4cb1265b
MS
15502020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
1551
1552 * bfd-elf.h (elfcore_write_file_note): New function.
1553 * elf.c (elfcore_write_file_note): New function.
1554
4287950e
AM
15552021-01-26 Alan Modra <amodra@gmail.com>
1556
1557 * elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
1558
940d0202
L
15592021-01-24 H.J. Lu <hongjiu.lu@intel.com>
1560
1561 PR binutils/27231
1562 * dwarf2.c (read_rnglists): Ignore empty range when parsing line
1563 number tables.
1564
18454c15
L
15652021-01-23 H.J. Lu <hongjiu.lu@intel.com>
1566
1567 PR binutils/27231
1568 * dwarf2.c (read_rnglists): Advance rngs_ptr after
1569 _bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
1570
4bd7c902
AM
15712021-01-20 Alan Modra <amodra@gmail.com>
1572
1573 * elf32-ppc.c: Delete outdated comment.
1574 (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
1575 * elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
1576
8bd10d6b
AM
15772021-01-20 Alan Modra <amodra@gmail.com>
1578
1579 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
1580 section symbols are present.
1581
30845f11
AM
15822021-01-19 Alan Modra <amodra@gmail.com>
1583
1584 * elf64-ppc.c (elf_hash_entry): New inline function. Use
1585 throughout to replace casts.
1586 (branch_reloc_hash_match): Remove const from params.
1587 (use_local_plt): New function.
1588 (allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
1589 (build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
1590 Use use_local_plt.
1591 * elf32-ppc.c (use_local_plt): New function.
1592 (allocate_dynrelocs, ppc_elf_relocate_section),
1593 (write_global_sym_plt): Use use_local_plt.
1594
994b2513
L
15952021-01-17 H.J. Lu <hongjiu.lu@intel.com>
1596
1597 PR ld/27193
1598 * elflink.c (elf_create_symbuf): Also ignore section symbols.
1599
75a933f3
L
16002021-01-16 H.J. Lu <hongjiu.lu@intel.com>
1601
1602 PR ld/23169
1603 * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
1604 check pointer_equality_needed.
1605
68b00778
L
16062021-01-15 H.J. Lu <hongjiu.lu@intel.com>
1607
1608 * elf-linker-x86.h (elf_linker_x86_params): Add
1609 report_relative_reloc.
1610 * elf32-i386.c (elf_i386_relocate_section): Call
1611 _bfd_x86_elf_link_report_relative_reloc to report relative
1612 relocations for -z report-relative-reloc.
1613 (elf_i386_finish_dynamic_symbol): Likewse.
1614 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
1615 (elf_x86_64_finish_dynamic_symbol): Likewse.
1616 * elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
1617 function.
1618 * elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
1619 prototype.
1620
ad92f33d
AM
16212021-01-16 Alan Modra <amodra@gmail.com>
1622
1623 * compress.c (decompress_contents): Tidy inflateEnd result test.
1624
eb6e6af8
AM
16252021-01-16 Alan Modra <amodra@gmail.com>
1626
1627 PR 26002
1628 * elflink.c (elf_link_output_extsym): Use version 1 in
1629 .gnu.version for undefined unversioned symbols.
1630
4bb5732e
NC
16312021-01-15 Nelson Chu <nelson.chu@sifive.com>
1632
1633 * elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
1634 caused the by previous commit accidentally.
1635
1942a048
NC
16362021-01-15 Nelson Chu <nelson.chu@sifive.com>
1637
1638 * elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
1639 also aligned the code.
1640
b800637e
NC
16412021-01-15 Nelson Chu <nelson.chu@sifive.com>
1642
1643 * elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
1644
dcd709e0
NC
16452021-01-15 Nelson Chu <nelson.chu@sifive.com>
1646
1647 * elfnn-riscv.c: Comments tidy and improvement.
1648 * elfxx-riscv.c: Likewise.
1649 * elfxx-riscv.h: Likewise.
1650
8ca9c7eb
L
16512021-01-14 H.J. Lu <hongjiu.lu@intel.com>
1652
1653 PR ld/26688
1654 * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
1655 section for R_BFIN_FUNCDESC.
1656
7e0d77ef
NC
16572021-01-14 Nick Clifton <nickc@redhat.com>
1658
1659 * elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
1660
5347ed60
AM
16612021-01-13 Alan Modra <amodra@gmail.com>
1662
1663 * Makefile.in: Regenerate.
1664 * doc/Makefile.in: Regenerate.
1665
b209b5a6
AM
16662021-01-13 Alan Modra <amodra@gmail.com>
1667
1668 PR 27160
1669 * section.c (struct bfd_section): Remove pattern field.
1670 (BFD_FAKE_SECTION): Adjust to suit.
1671 * bfd-in2.h: Regenerate.
1672 * elflink.c (compare_link_order, elf_fixup_link_order): Delete.
1673 (bfd_elf_final_link): Don't call elf_fixup_link_order.
1674
d546b610
L
16752021-01-12 H.J. Lu <hongjiu.lu@intel.com>
1676
1677 PR binutils/26792
1678 * configure.ac: Use GNU_MAKE_JOBSERVER.
1679 * aclocal.m4: Regenerated.
1680 * configure: Likewise.
1681
c2e9a4a3
L
16822021-01-12 H.J. Lu <hongjiu.lu@intel.com>
1683
1684 PR ld/27171
1685 * reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
1686 R_AMD64_DIR32 relocations for PE/x86-64 inputs.
1687
83b33c6c
L
16882021-01-11 H.J. Lu <hongjiu.lu@intel.com>
1689
1690 PR ld/27173
1691 * configure: Regenerated.
1692
a8aa72b9
NC
16932021-01-11 Nick Clifton <nickc@redhat.com>
1694
1695 * po/fr.po: Updated French translation.
1696 * po/pt.po: Updated Portuguese translation.
1697 * po/sr.po: Updated Serbian translation.
1698 * po/uk.po: Updated Ukranian translation.
1699
a4966cd9
L
17002021-01-09 H.J. Lu <hongjiu.lu@intel.com>
1701
1702 * configure: Regenerated.
1703
0a94990b
L
17042021-01-09 H.J. Lu <hongjiu.lu@intel.com>
1705
1706 PR ld/27166
1707 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
1708 -z lam-u48 and -z lam-u57.
1709
573fe3fb
NC
17102021-01-09 Nick Clifton <nickc@redhat.com>
1711
1712 * version.m4: Change to 2.36.50.
1713 * configure: Regenerate.
1714 * po/bfd.pot: Regenerate.
1715
055bc77a
NC
17162021-01-09 Nick Clifton <nickc@redhat.com>
1717
1718 * 2.36 release branch crated.
1719
ba9e922f
L
17202021-01-08 H.J. Lu <hongjiu.lu@intel.com>
1721
1722 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
1723 LAM_U57 when setting LAM_U48.
1724
b1b29aa5
L
17252021-01-08 H.J. Lu <hongjiu.lu@intel.com>
1726
1727 PR ld/26256
1728 PR ld/27160
1729 * elflink.c (elf_fixup_link_order): Verify that fixing up
1730 SHF_LINK_ORDER doesn't increase the output section size.
1731
64307045
AM
17322021-01-09 Alan Modra <amodra@gmail.com>
1733
1734 * configure: Regenerate.
1735
f4782128
ST
17362021-01-07 Samuel Thibault <samuel.thibault@gnu.org>
1737
1738 * configure: Regenerate.
1739
d1bcae83
L
17402021-01-07 H.J. Lu <hongjiu.lu@intel.com>
1741
1742 PR 27109
1743 * aix386-core.c (core_aix386_vec): Initialize
1744 keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
1745 * aout-target.h (MY (vec)): Likewise.
1746 * binary.c (binary_vec): Likewise.
1747 * cisco-core.c (core_cisco_be_vec): Likewise.
1748 (core_cisco_le_vec): Likewise.
1749 * coff-alpha.c (alpha_ecoff_le_vec): Likewise.
1750 * coff-i386.c (TARGET_SYM): Likewise.
1751 (TARGET_SYM_BIG): Likewise.
1752 * coff-ia64.c (TARGET_SYM): Likewise.
1753 * coff-mips.c (mips_ecoff_le_vec): Likewise.
1754 (mips_ecoff_be_vec): Likewise.
1755 (mips_ecoff_bele_vec): Likewise.
1756 * coff-rs6000.c (rs6000_xcoff_vec): Likewise.
1757 (powerpc_xcoff_vec): Likewise.
1758 * coff-sh.c (sh_coff_small_vec): Likewise.
1759 (sh_coff_small_le_vec): Likewise.
1760 * coff-tic30.c (tic30_coff_vec): Likewise.
1761 * coff-tic54x.c (tic54x_coff0_vec): Likewise.
1762 (tic54x_coff0_beh_vec): Likewise.
1763 (tic54x_coff1_vec): Likewise.
1764 (tic54x_coff1_beh_vec): Likewise.
1765 (tic54x_coff2_vec): Likewise.
1766 (tic54x_coff2_beh_vec): Likewise.
1767 * coff-x86_64.c (TARGET_SYM): Likewise.
1768 (TARGET_SYM_BIG): Likewise.
1769 * coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
1770 (rs6000_xcoff64_aix_vec): Likewise.
1771 * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
1772 (CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
1773 (CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
1774 * elfxx-target.h (TARGET_BIG_SYM): Likewise.
1775 (TARGET_LITTLE_SYM): Likewise.
1776 * hppabsd-core.c (core_hppabsd_vec): Likewise.
1777 * hpux-core.c (core_hpux_vec): Likewise.
1778 * i386msdos.c (i386_msdos_vec): Likewise.
1779 * ihex.c (ihex_vec): Likewise.
1780 * irix-core.c (core_irix_vec): Likewise.
1781 * mach-o-target.c (TARGET_NAME): Likewise.
1782 * mmo.c (mmix_mmo_vec): Likewise.
1783 * netbsd-core.c (core_netbsd_vec): Likewise.
1784 * osf-core.c (core_osf_vec): Likewise.
1785 * pdp11.c (MY (vec)): Likewise.
1786 * pef.c (pef_vec): Likewise.
1787 (pef_xlib_vec): Likewise.
1788 * plugin.c (plugin_vec): Likewise.
1789 * ppcboot.c (powerpc_boot_vec): Likewise.
1790 * ptrace-core.c (core_ptrace_vec): Likewise.
1791 * sco5-core.c (core_sco5_vec): Likewise.
1792 * som.c (hppa_som_vec): Likewise.
1793 * srec.c (srec_vec): Likewise.
1794 (symbolsrec_vec): Likewise.
1795 * tekhex.c (tekhex_vec): Likewise.
1796 * trad-core.c (core_trad_vec): Likewise.
1797 * verilog.c (verilog_vec): Likewise.
1798 * vms-alpha.c (alpha_vms_vec): Likewise.
1799 * vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
1800 * wasm-module.c (wasm_vec): Likewise.
1801 * xsym.c (sym_vec): Likewise.
1802 * elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
1803 isn't set.
1804 (elf_map_symbols): Don't include ignored section symbols.
1805 * elfcode.h (elf_slurp_symbol_table): Also set
1806 BSF_SECTION_SYM_USED on STT_SECTION symbols.
1807 * elflink.c (bfd_elf_final_link): Generated section symbols only
1808 when emitting relocations or reqired.
1809 * elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
1810 * syms.c (BSF_SECTION_SYM_USED): New.
1811 * targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
1812 (bfd_target): Add keep_unused_section_symbols.
1813 (bfd_keep_unused_section_symbols): New.
1814 * bfd-in2.h: Regenerated.
1815
17d60030
NC
18162021-01-07 Nick Clifton <nickc@redhat.com>
1817
1818 PR 25713
1819 * bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
1820 absolute paths and check to see if they are longer than MAX_PATH.
1821
aa881ecd
PT
18222021-01-07 Philipp Tomsich <prt@gnu.org>
1823
1824 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
1825
2652cfad
CXW
18262021-01-07 Claire Xenia Wolf <claire@symbioticeda.com>
1827 Jim Wilson <jimw@sifive.com>
1828 Andrew Waterman <andrew@sifive.com>
1829 Maxim Blinov <maxim.blinov@embecosm.com>
1830 Kito Cheng <kito.cheng@sifive.com>
1831 Nelson Chu <nelson.chu@sifive.com>
1832
1833 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
1834
d4e57b87
L
18352021-01-06 H.J. Lu <hongjiu.lu@intel.com>
1836
1837 * elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
1838 (bfinfdpic_check_relocs): Likewise.
1839
599c86c4
AM
18402021-01-06 Alan Modra <amodra@gmail.com>
1841
1842 * elf32-score.c (s3_bfd_score_info_to_howto): Report an error
1843 on unknown r_type.
1844 * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
1845
3677b729
AM
18462021-01-06 Alan Modra <amodra@gmail.com>
1847
1848 * config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
1849 (sparc64-*-solaris2*): Add sparc_elf64_vec and
1850 sparc_elf32_vec.
1851
fbc09e7a
MC
18522021-01-06 Marcus Comstedt <marcus@mc.pp.se>
1853
1854 * config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
1855 riscvbe*-*-*. Also added riscv_elf[32|64]_be_vec.
1856 * configure.ac: Handle riscv_elf[32|64]_be_vec.
1857 * configure: Regenerate.
1858 * elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
1859 riscv_is_insn_reloc.
1860 (riscv_get_insn): RISC-V instructions are always little endian, but
1861 bfd_get may be used for big-endian, so add new riscv_get_insn to handle
1862 the insturctions.
1863 (riscv_put_insn): Likewsie.
1864 (riscv_is_insn_reloc): Check if we are relocaing an instruction.
1865 (perform_relocation): Call riscv_is_insn_reloc to decide if we should
1866 use riscv_[get|put]_insn or bfd_[get|put].
1867 (riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
1868 or bfd_[get|put]l16 for code.
1869 (riscv_elf_relocate_section): Likewise.
1870 (riscv_elf_finish_dynamic_symbol): Likewise.
1871 (riscv_elf_finish_dynamic_sections): Likewise.
1872 (_bfd_riscv_relax_call): Likewise.
1873 (_bfd_riscv_relax_lui): Likewise.
1874 (_bfd_riscv_relax_align): Likewise.
1875 (_bfd_riscv_relax_pc): Likewise.
1876 (riscv_elf_object_p): Handled for big endian.
1877 (TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
1878 * targets.c: Add riscv_elf[32|64]_be_vec.
1879 (_bfd_target_vector): Likewise.
1880
c8bad65e
AM
18812021-01-05 Alan Modra <amodra@gmail.com>
1882
1883 * elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
1884 for relocatable executable.
1885
de6a7ee4
AM
18862021-01-05 Alan Modra <amodra@gmail.com>
1887
1888 * vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
1889
18b98722
NC
18902021-01-05 Nelson Chu <nelson.chu@sifive.com>
1891
1892 * elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
1893 make sure gp symbol is output as a dynamic symbol.
1894
cd6d537c
L
18952021-01-04 H.J. Lu <hongjiu.lu@intel.com>
1896
1897 PR ld/26256
1898 * elflink.c (compare_link_order): Place unordered sections before
1899 ordered sections.
1900 (elf_fixup_link_order): Add a link info argument. Allow mixed
1901 ordered and unordered input sections for non-relocatable link.
1902 Sort the consecutive bfd_indirect_link_order sections with the
1903 same pattern. Change the offsets of the bfd_indirect_link_order
1904 sections only.
1905 (bfd_elf_final_link): Pass info to elf_fixup_link_order.
1906 * section.c (bfd_section): Add pattern.
1907 (BFD_FAKE_SECTION): Initialize pattern to NULL.
1908 * bfd-in2.h: Regenerated.
1909
dbb078f6
AF
19102021-01-04 Alexander Fedotov <alfedotov@gmail.com>
1911
1912 * elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
1913 of private flags with 0x.
1914 * elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
1915
5b4293ba
AM
19162021-01-04 Alan Modra <amodra@gmail.com>
1917
1918 PR 26822
1919 * elflink.c (elf_link_input_bfd): Use the file base name in
1920 linker generated STT_FILE symbols.
1921
4c0e540e
NC
19222021-01-04 Nelson Chu <nelson.chu@sifive.com>
1923
1924 * elfxx-riscv.c (riscv_compare_subsets): Removed static.
1925 * elfxx-riscv.h: Add declaration.
1926 * elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
1927 riscv_compare_subsets to check the orders.
1928 (riscv_skip_prefix): Removed.
1929 (riscv_prefix_cmp): Removed.
1930
e9cf3691
AM
19312021-01-04 Alan Modra <amodra@gmail.com>
1932
1933 PR 26741
1934 * elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
1935 calculating subset version length.
1936
f9a6a8f0
AM
19372021-01-01 Nicolas Boulenguez <nicolas@debian.org>
1938
1939 * xcofflink.c: Correct spelling in comments.
1940
250d07de
AM
19412021-01-01 Alan Modra <amodra@gmail.com>
1942
1943 Update year range in copyright notice of all files.
1944
c2795844 1945For older changes see ChangeLog-2020
3499769a 1946\f
c2795844 1947Copyright (C) 2021 Free Software Foundation, Inc.
3499769a
AM
1948
1949Copying and distribution of this file, with or without modification,
1950are permitted in any medium without royalty provided the copyright
1951notice and this notice are preserved.
1952
1953Local Variables:
1954mode: change-log
1955left-margin: 8
1956fill-column: 74
1957version-control: never
1958End: