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