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