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