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