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