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