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