Prevent the ASCII linker script directive from generating huge amounts of padding...
[binutils-gdb.git] / bfd / ChangeLog
blobcac222cd564dd6f8084cb42b198e3a941ce10c8a
1 2023-02-27  Felix Willgerodt  <felix.willgerodt@intel.com>
3         * elf64-x86-64.c (elf_x86_64_grok_psinfo): Check for
4         elf_external_linux_prpsinfo32_ugid32.
6 2023-02-23  Fangrui Song  <i@maskray.me>
8         * elfnn-riscv.c (struct riscv_elf_link_hash_table): Add params.
9         (riscv_elfNN_set_options): New.
10         (riscv_info_to_howto_rela): Check relax_gp.
11         (_bfd_riscv_relax_section): Likewise.
12         * elfxx-riscv.h (struct riscv_elf_params): New.
13         (riscv_elf32_set_options): New.
14         (riscv_elf64_set_options): New.
16 2023-02-23  Nick Clifton  <nickc@redhat.com>
17             Alan Modra  <amodra@gmail.com>
19         PR 30150
20         * dwarf2.c (comp_unit_contains_address): Renamed to ...
21         (comp_unit_may_contain_address): this, and added code to return
22         true if the CU's ranges have not yet been computed.
23         (_bfd_dwarf2_find_nearest_line_with_alt): Use the renamed
24         function, simplifying code in the process.
26 2023-02-21  Nick Clifton  <nickc@redhat.com>
28         * opncls.c (bfd_fill_in_gnu_debuglink_section): Update
29         description.
31 2023-02-17  Tom Tromey  <tom@tromey.com>
33         * doc/doc.str (FUNCTION): Call func.
35 2023-02-17  Tom Tromey  <tom@tromey.com>
37         * opncls.c: Hoist the SECTION comment.
39 2023-02-17  Tom Tromey  <tom@tromey.com>
41         * opncls.c (bfd_get_debug_link_info_1, separate_debug_file_exists)
42         (separate_alt_debug_file_exists, find_separate_debug_file)
43         (get_build_id, get_build_id_name, check_build_id_file): Don't use
44         chew comments.
46 2023-02-17  Tom Tromey  <tom@tromey.com>
48         * doc/doc.str (SYNOPSIS): Use collapse_whitespace.
49         * doc/chew.c (collapse_whitespace): New function.
50         (main): Register collapse_whitespace.
52 2023-02-07  Tom Tromey  <tom@tromey.com>
54         * bfd.c, cache.c, compress.c, opncls.c: Remove RETURNS from
55         documentation comments.
56         * doc/doc.str, doc/proto.str (RETURNS): Remove.
58 2023-02-07  Tom Tromey  <tom@tromey.com>
60         * syms.c (bfd_decode_symclass, bfd_is_undefined_symclass)
61         (bfd_symbol_info): Reorder documentation comment.
62         * doc/doc.str (synopsis_seen): New variable.
63         (SYNOPSIS): Set synopsis_seen.  Emit @deftypefn.
64         (DESCRIPTION): Use synopsis_seen.
65         * doc/chew.c (catstrif): New function.
66         (main): Add catstrif intrinsic.
67         (compile): Recognize "variable" command.
69 2023-02-07  Tom Tromey  <tom@tromey.com>
71         * doc/proto.str (external, internal, ifinternal, ENUMEQ, ENUMDOC):
72         Update.
73         * doc/chew.c (internalmode): Remove.
74         (add_intrinsic_variable): New function.
75         (main): Add internalmode as intrinsic.
76         (internal_mode): Remove global.
77         (maybecatstr): Update.
78         (free_words): Free variables.
80 2023-02-07  Tom Tromey  <tom@tromey.com>
82         * doc/chew.c (pcu) <l>: Now intptr_t.
83         (internal_mode, istack, isp): Likewise.
84         (bang, atsign): Use intptr_t.
86 2023-02-07  Tom Tromey  <tom@tromey.com>
88         * doc/proto.str (SYNOPSIS): Don't use paramstuff.
89         * doc/chew.c (paramstuff): Remove.
90         (main): Don't add paramstuff intrinsic.
92 2023-02-07  Tom Tromey  <tom@tromey.com>
94         * doc/doc.str, doc/proto.str: Add copyright header.
96 2023-02-07  Tom Tromey  <tom@tromey.com>
98         * doc/webassembly.texi (File layout): Remove second argument from
99         @node.
100         * doc/bfd.texi: Use single-argument @node everywhere.
102 2023-02-07  Tom Tromey  <tom@tromey.com>
104         * Makefile.in: Rebuild.
105         * doc/local.mk (%D%/chew.stamp): Don't use H_CFLAGS.
107 2023-01-24  Nick Clifton  <nickc@redhat.com>
109         PR 29998
110         * cofflink.c (_bfd_coff_generic_relocate_section): Add an
111         assertion that the output section is set for defined, global
112         symbols.
114 2023-01-17  Xianmiao Qu  <cooper.qu@linux.alibaba.com>
116         * elf32-csky.c (elf32_csky_merge_attributes): Don't save
117         and restore the ARCH attribute, it will actually clear
118         the ARCH attribute.
119         (csky_elf_merge_private_bfd_data): Store the machine flag
120         correctly.
122 2023-01-13  Nick Clifton  <nickc@redhat.com>
124         * po/ro.po: Updated Romainian translation.
126 2023-01-11  Nick Clifton  <nickc@redhat.com>
128         PR 29988
129         * dwarf2.c (read_indexed_address): Fix check for an out of range
130         offset.
132 2023-01-06  Nick Clifton  <nickc@redhat.com>
134         * po/ru.po: Updated Russian translation.
136 2023-01-03  Himal  <himalr@proton.me>
138         PR 29947
139         * bfdio.c (_bfd_real_fopen): Do not add a prefix to the Windows'
140         nul device filename.
142 2023-01-03  Nick Clifton  <nickc@redhat.com>
144         * po/fr.po: Updated French trabslation.
145         * po/uk.po: Updated Ukrainian trabslation.
147 2022-12-31  Nick Clifton  <nickc@redhat.com>
149         * 2.40 branch created.
151 2022-12-23  Nick Clifton  <nickc@redhat.com>
153         PR 29936
154         * dwarf2.c (concat_filename): Fix check for a directory index off
155         the end of the directory table.
157 2022-12-21  Nick Clifton  <nickc@redhat.com>
159         * po/ro.po: Updated Romanian translation.
161 2022-12-06  Nick Clifton  <nickc@redhat.com>
163         PR 29852
164         * elf32-arm.c (cmse_scan): Check for NULL entries in the
165         sym_hashes array.
166         (elf32_arm_gc_mark_extra_sections): Likewise.
168 2022-12-05  Nick Clifton  <nickc@redhat.com>
170         PR 29848
171         * vms-alpha.c (parse_module): Fix potential out of bounds memory
172         access.
174 2022-12-01  Nick Clifton  <nickc@redhat.com>
176         PR 25202
177         * bfd.c (VerilogDataEndianness): New variable.
178         (verilog_write_record): Use VerilogDataEndianness, if set, to
179         choose the endianness of the output.
180         (verilog_write_section): Adjust the address by the data width.
182 2022-11-21  Nick Clifton  <nickc@redhat.com>
184         PR 29764
185         * cpu-arm.c (scan): Accept machine names prefixed with "arm:".
186         * cpu-aarch64.c (scan): Accept machine names prefixed with "aarch64:".
188 2022-10-19  Nick Clifton  <nickc@redhat.com>
190         PR 29699
191         * elf.c (_bfd_elf_slurp_version_tables): Fail if the sh_info field
192         of the section header is zero.
194 2022-09-09  Nick Clifton  <nickc@redhat.com>
196         PR 29532
197         * elf.c (setup_group): Do not return false if there is no group
198         information available.
200 2022-09-02  Aaron Merey  <amerey@redhat.com>
202         * aout-target.h (MY_find_nearest_line_with_alt): New macro.
203         * bfd-in2.h: Regenerate.
204         * bfd.c (bfd_find_nearest_line_with_alt): New macro.
205         * binary.c (binary_find_nearest_line_with_alt): New macro.
206         * coff-rs6000.c (_bfd_xcoff_find_nearest_line_with_alt): New macro.
207         (rs6000_xcoff64_vec): Add coff_find_nearest_line_with_alt.
208         * dwarf2.c (_bfd_dwarf2_find_nearest_line): Calls
209         _bfd_dwarf2_find_nearest_line_with_alt.
210         (_bfd_dwarf2_find_nearest_line_with_alt): New function. Implements the
211         former _bfd_dwarf2_find_nearest_line. Adds parameter alt_filename.
212         Attempt to open alt_filename and use it as the .dwz file if not NULL.
213         * elf-bfd.h (_bfd_elf_find_nearest_line_with_alt): New declaration.
214         * elf.c (_bfd_elf_find_nearest_line): Calls
215         _bfd_elf_find_nearest_line_with_alt.
216         (_bfd_elf_find_nearest_line_with_alt): New function. Implements the
217         former _bfd_elf_find_nearest_line. Adds parameter alt_filename.
218         * elf32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro.
219         * elf64-mips.c (bfd_elf64_find_nearest_line_with_alt): New macro.
220         * elfn32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro.
221         * elfxx-mips.h (_bfd_mips_elf_find_nearest_line_with_alt): New macro.
222         * elfxx-target.h (bfd_elfNN_find_nearest_line_with_alt): New macro.
223         * i386mdos.c (msdos_find_nearest_line_with_alt): New macro.
224         * ihex.c (ihex_find_nearest_line_with_alt): New macro.
225         * libbfd-in.h (_bfd_nosymbols_find_nearest_line_with_alt): New
226         declaration.
227         (_bfd_dwarf2_find_nearest_line_with_alt): New declaration.
228         * libbfd.h: Regenerate.
229         * libcoff-in.h (coff_find_nearest_line_with_alt): New macro.
230         * libcoff.h: Regenerate.
231         * libecoff.h (_bfd_ecoff_find_nearest_line_with_alt): New macro.
232         * mach-o.h (bfd_mach_o_find_nearest_line_with_alt): New macro.
233         * mmo.c (mmo_find_nearest_line_with_alt): New macro.
234         * pef.c (bfd_pef_find_nearest_line_with_alt): New macro.
235         * plugin.c (bfd_plugin_find_nearest_line_with_alt): New macro.
236         * ppcboot.c (ppcboot_find_nearest_line_with_alt): New macro.
237         * som.h (som_find_nearest_line_with_alt): New macro.
238         * srec.c (srec_find_nearest_line_with_alt): New macro.
239         * syms.c (_bfd_nosymbols_find_nearest_line_with_alt): New function.
240         * targets.c (BFD_JUMP_TABLE_SYMBOLS): Add symbol for
241         NAME##_find_nearest_line_with_alt.
242         (_bfd_find_nearest_line_with_alt): Add declaration.
243         * tekhex.c (tekhex_find_nearest_line_with_alt): New macro.
244         * verilog.c (verilog_find_nearest_line_with_alt): New macro.
245         * vms-alpha.c (_bfd_vms_find_nearest_line_with_alt): New macro.
246         * wasm-module.c (wasm_find_nearest_line_with_alt): New macro.
247         * xsym.c (bfd_sym_find_nearest_line_with_alt): New macro.
249 2022-09-02  Frederic Cambus  <fred@statdns.com>
251         * config.bfd (arm-*-openbsd*): Restore target.
253 2022-08-30  Nick Clifton  <nickc@redhat.com>
255         PR 29529
256         * dwarf2.c (struct line_info_table): Add new field:
257         use_dir_and_file_0.
258         (concat_filename): Use new field to help select the correct table
259         slot.
260         (read_formatted_entries): Do not skip entry 0.
261         (decode_line_info): Set new field depending upon the version of
262         DWARF being parsed.  Initialise filename based upon the setting of
263         the new field.
265 2022-08-22  Frederic Cambus  <fred@statdns.com>
267         * config.bfd (aarch64-*-openbsd*): Add target.
269 2022-08-03  Nick Clifton  <nickc@redhat.com>
271         PR 29389
272         * bfd.c (BFD_CLOSED_BY_CACHE): New bfd flag.
273         * cache.c (bfd_cache_delete): Set BFD_CLOSED_BY_DELETE on the
274         closed bfd.
275         (bfd_cache_lookup_worker): Clear BFD_CLOSED_BY_DELETE on the newly
276         reopened bfd.
277         * opncls.c (bfd_set_filename): Refuse to change the name of a bfd
278         that has been closed by bfd_cache_delete.  Mark changed bfds as
279         uncacheable.
280         * bfd-in2.h: Regenerate.
282 2022-07-29  Nick Clifton  <nickc@redhat.com>
284         PR 29424
285         * dwarf2.c (read_attribute_value): Handle DW_FORM_rnglistx and
286         DW_FORM_loclistx.
288 2022-07-26  Nick Clifton  <nickc@redhat.com>
290         * elfnn-loongarch.c (loongarch_elf_relocate_section): Fix
291         indentation.
293 2022-07-08  Nick Clifton  <nickc@redhat.com>
295         * 2.39 branch created.
297 2022-05-19  Yvan Roux  <yvan.roux@foss.st.com>
299         PR 25713
300         * bfdio.c (_bfd_real_fopen): Delete ccs string.
302 2022-04-27  John Baldwin  <jhb@FreeBSD.org>
304         * elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_TLS notes.
306 2022-04-25  Nick Clifton  <nickc@redhat.com>
308         PR 29072
309         * elflink.c (bfd_elf_size_dynamic_sections): Display a note to the
310         user that the current ehaviour of creating an executable stack
311         because of a missing .note.GNU-stack section is deprecated and
312         will be changed in a future release.
314 2022-04-20  Clément Chigot  <clement.chigot@atos.net>
316         * coff-rs6000.c (xcoff_reloc_type_noop): Add info argument.
317         (xcoff_reloc_type_fail): Likewise.
318         (xcoff_reloc_type_pos): Likewise.
319         (xcoff_reloc_type_neg): Likewise.
320         (xcoff_reloc_type_rel): Likewise.
321         (xcoff_reloc_type_toc): Likewise.
322         (xcoff_reloc_type_ba): Likewise.
323         (xcoff_reloc_type_crel): Likewise.
324         (xcoff_reloc_type_tls): Likewise.
325         (xcoff_reloc_type_br): Add stub handler.
326         (xcoff_ppc_relocate_section): Add info to
327         xcoff_calculate_relocation.
328         (xcoff_stub_indirect_call_code): New constant.
329         (xcoff_stub_shared_call_code): Likewise.
330         (bfd_xcoff_backend_data): Add stub code fields.
331         (bfd_pmac_xcoff_backend_data): Likewise.
332         * coff64-rs6000.c (xcoff64_reloc_type_br): Add stub handler.
333         (xcoff64_ppc_relocate_section): Add info to
334         xcoff64_calculate_relocation.
335         (xcoff64_stub_indirect_call_code): New constant.
336         (xcoff64_stub_shared_call_code): Likewise.
337         (bfd_xcoff_backend_data): Add stub code fields.
338         (bfd_xcoff_aix5_backend_data): Likewise.
339         * libxcoff.h (struct xcoff_backend_data_rec): Add stub fields.
340         (bfd_xcoff_stub_indirect_call_code): New define.
341         (bfd_xcoff_stub_indirect_call_size): New define.
342         (bfd_xcoff_stub_shared_call_code): New define.
343         (bfd_xcoff_stub_shared_call_size): New define.
344         (xcoff_reloc_function): Add info argument.
345         (enum xcoff_stub_type): New enum.
346         (struct xcoff_stub_hash_entry): New structure.
347         * xcofflink.c (struct xcoff_link_hash_table): Add stub hash
348         table and params fields.
349         (xcoff_stub_hash_entry): New define.
350         (xcoff_stub_hash_lookup): New define.
351         (stub_hash_newfunc): New function.
352         (_bfd_xcoff_bfd_link_hash_table_free): Free the new stub hash
353         table.
354         (_bfd_xcoff_bfd_link_hash_table_create): Create the new stub
355         hash table.
356         (xcoff_link_add_symbols): Save rawsize for XTY_SD.
357         (bfd_xcoff_link_init): New function.
358         (xcoff_stub_csect_name): New function.
359         (xcoff_stub_get_csect_in_range): New function.
360         (xcoff_stub_name): New function.
361         (bfd_xcoff_get_stub_entry): New function.
362         (bfd_xcoff_type_of_stub): New function.
363         (xcoff_add_stub): New function.
364         (xcoff_build_one_stub): New function.
365         (bfd_xcoff_size_stubs): New function.
366         (bfd_xcoff_build_stubs): New function.
367         (xcoff_stub_create_relocations): New function.
368         (xcoff_link_input_bfd): Adapt relocations to stub.
369         (xcoff_write_global_symbol): Adapt to new TOC entries generated
370         for stubs.
371         (_bfd_xcoff_bfd_final_link): Handle stub file.
372         * xcofflink.h (struct bfd_xcoff_link_params): New structure.
374 2022-04-20  Clément Chigot  <clement.chigot@atos.net>
376         * coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Write len in
377         ldinfo->strings instead of directly in the output_bfd.
378         * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
379         * xcofflink.c (struct xcoff_link_hash_table): Remove ldrel_count
380         field. Add ldinfo field.
381         (xcoff_mark_symbol): Adjust to new ldinfo field.
382         (xcoff_mark): Likewise.
383         (bfd_xcoff_link_count_reloc): Likewise.
384         (xcoff_build_loader_section): Split into two functions: one that
385         build the loader section (this function) and one that only size
386         it...
387         (xcoff_size_loader_section): ... (this function).
388         (bfd_xcoff_size_dynamic_sections): Adapt to new ldinfo field.
389         Move the part where the dynamic sections are build to ...
390         (bfd_xcoff_build_dynamic_sections): ... this function.
391         * xcofflink.h: Add bfd_xcoff_build_dynamic_sections prototype.
393 2022-04-13  Alexander von Gluck IV  <kallisti5@unixzen.com>
395         * config.bfd (x86-haiku): Add i386_pei_vec as a selectable format.
397 2022-04-08  Nick Clifton  <nickc@redhat.com>
399         PR 29038
400         * coffgen.c (coff_find_nearest_line_with_names): Fix typo
401         retrieving saved bias.
403 2022-04-07  Mark Harmstone  <mark@harmstone.com>
405         * coff-i386.c (in_reloc_p): Add R_SECTION.
406         (howto_table): Add R_SECTION.
407         (coff_pe_i386_relocation_section): Add support for R_SECTION.
408         (coff_i386_reloc_type_lookup): Add support for
409         BFD_RELOC_16_SECCIDX.
410         * coff-x86_64.c (in_reloc_p): Add R_SECTION.
411         (howto_table): Add R_SECTION.
412         (coff_pe_amd64_relocation_section): Add support for R_SECTION.
413         (coff_amd64_reloc_type_lookup): Add support for
414         BFD_RELOC_16_SECCIDX.
415         * reloc.c: Add BFD_RELOC_16_SECIDX.
416         * bfd-in2.h: Regenerate.
417         * libbfd.h: Regenerate.
419 2022-04-01  John Baldwin  <jhb@FreeBSD.org>
421         * elf-bfd.h (elfcore_write_x86_segbases): New.
422         * elf.c (elfcore_grok_freebsd_note): Add pseudosections for
423         NT_FREEBSD_X86_SEGBASES register notes.
424         (elfcore_write_x86_segbases): New.
425         (elfcore_write_register_note): Write NT_FREEBSD_X86_SEGBASES
426         register notes.
428 2022-04-01  John Baldwin  <jhb@FreeBSD.org>
430         * elf.c (elfcore_grok_freebsd_note): Remove checks for namesz.
432 2022-03-22  Steiner H Gunderson  <steinar+sourceware@gunderson.no>
434         * dwarf2.c (_bfd_dwarf2_find_nearest_line): if a function name is
435         found, but no line number info, then return a result of 2.
437 2022-03-21  Steiner H Gunderson  <steinar+sourceware@gunderson.no>
439         PR 28978
440         * dwarf2.c (scan_unit_for_symbols): When performing second pass,
441         check to see if the function or variable being processed is the
442         same as the previous one.
444 2022-03-18  Viorel Preoteasa  <viorel.preoteasa@gmail.com>
446         PR 28924
447         * elf32-arm.c (THM_MAX_FWD_BRANCH_OFFSET): Fix definition.
448         (THM2_MAX_FWD_BRANCH_OFFSET): Likewise.
450 2022-03-16  Simon Marchi  <simon.marchi@efficios.com>
452         * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES):
453         Add cpu-amdgcn.c.
454         (BFD64_BACKENDS): Add elf64-amdgcn.lo.
455         (BFD64_BACKENDS_CFILES): Add elf64-amdgcn.c.
456         * Makefile.in: Re-generate.
457         * cpu-amdgcn.c: New.
458         * elf64-amdgcn.c: New.
459         * archures.c (bfd_architecture): Add bfd_arch_amdgcn and related
460         mach defines.
461         (bfd_amdgcn_arch): New.
462         (bfd_archures_list): Add bfd_amdgcn_arch.
463         * bfd-in2.h: Re-generate.
464         * config.bfd: Handle amdgcn* target.
465         * configure.ac: Handle amdgcn_elf64_le_vec.
466         * configure: Re-generate.
467         * elf-bfd.h (elf_target_id): Add AMDGCN_ELF_DATA.
468         * targets.c (amdgcn_elf64_le_vec): New.
469         (_bfd_target_vector): Add amdgcn_elf64_le_vec.
471 2022-03-01  Torbjörn Svensson  <torbjorn.svensson@st.com>
472             Fred Eisele  <fredrick.eisele@gmail.com>
474         PR 25713
475         * bfdio.c (_bfd_real_fopen): Fix typo.
477 2022-03-01  Nick Clifton  <nickc@redhat.com>
479         PR 28848
480         * elf32-arm.c (elf32_arm_merge_eabi_attributes): If the first
481         input bfd has a Tag_ABI_HardFP_use set to 3 but does not also have
482         TAG_FP_arch set then reset the TAG_ABI_HardFP_use.
484 2022-02-28  Torbjörn Svensson  <torbjorn.svensson@st.com>
485             Fred Eisele  <fredrick.eisele@gmail.com>
487         PR 25713
488         * bfdio.c (_bfd_real_fopen): Fix handling of paths longer than 260
489         characters on Windows hosts.
491 2022-02-28  Nick Clifton  <nickc@redhat.com>
493         PR 28886
494         * config.bfd: Update error message for obsolete configurations.
496 2022-02-17  Nick Clifton  <nickc@redhat.com>
498         * po/sr.po: Updated Serbian translation.
500 2022-02-16  Fangrui Song  <maskray@google.com>
501         Nick Clifton  <nickc@redhat.com>
503         PR ld/28841
504         * bfd-in2.h (struct bfd_section): Add type.
505         (discarded_section): Add field.
506         * elf.c (elf_fake_sections): Handle bfd_section::type.
507         * section.c (BFD_FAKE_SECTION): Add field.
508         * mri.c (mri_draw_tree): Update function call.
510 2022-02-11  Michael Forney  <mforney@mforney.org>
512         * bfd.c (bfd_set_gp_value): Remove return with expression
513         in void function.
515 2022-02-09  Nick Clifton  <nickc@redhat.com>
517         * config.bfd: Move pending obsolesence targets into the definitely
518         obsolete list.
520 2022-02-02  Nick Clifton  <nickc@redhat.com>
522         PR 28834
523         * dwarf2.c (read_section): Change the heuristic that checks for
524         overlarge dwarf debug info sections.
526 2022-02-02  Stafford Horne  <shorne@gmail.com>
528         PR 28735
529         * elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define.
530         (or1k_elf_relocate_section): Use new howto instead of trying to
531         mask out relocation bits.
533 2022-01-24  Roland McGrath  <mcgrathr@google.com>
535         * doc/local.mk (%D%/bfdver.texi): Add mkdir command.
537 2022-01-24  Nick Clifton  <nickc@redhat.com>
539         * po/fr.po: Updated French translation.
540         * po/ro.po: Updated Romanian translation.
541         * po/uk.po: Updated Ukranian translation.
543 2022-01-22  Nick Clifton  <nickc@redhat.com>
545         * version.m4: Change to 2.38.50.
546         * configure: Regenerate.
547         * po/bfd.pot: Regenerate.
549 2022-01-22  Nick Clifton  <nickc@redhat.com>
551         * 2.38 release branch created.
553 2022-01-17  Nick Clifton  <nickc@redhat.com>
555         * Makefile.in: Regenerate.
556         * configure: Regenerate.
557         * doc/Makefile.in: Regenerate.
558         * po/bfd.pot: Regenerate.
560 2021-12-15  Nikita Popov  <npv1310@gmail.com>
562         PR 28687
563         * dwarf1.c (parse_die): Fix undefined behaviour in range tests.
565 2021-11-17  Nick Clifton  <nickc@redhat.com>
567         PR 28452
568         * elf.c (assign_file_positions_for_non_load_sections): Replace
569         assertion with a warning message.
571 2021-10-19  Nick Clifton  <nickc@redhat.com>
573         * linker.c (_bfd_generic_link_add_one_symbol): Test for a NULL
574         name before checking to see if the symbol is __gnu_lto_slim.
575         * archive.c (_bfd_compute_and_write_armap): Likewise.
577 2021-09-27  Nick Alcock  <nick.alcock@oracle.com>
579         * configure: Regenerate.
581 2021-09-15  Andrew Burgess  <andrew.burgess@embecosm.com>
583         * archures.c (bfd_arch_list): Use 'char *' instead of 'char **'
584         when calculating space for a string list.
586 2021-09-014  Cupertino Miranda  <cmiranda@synopsys.com>
587            Claudiu Zissulescu  <claziss@synopsys.com>
589         * arc-got.h (arc_static_sym_data): New structure.
590         (get_static_sym_data): New function.
591         (relocate_fix_got_relocs_for_got_info): Move the computation fo
592         symbol value and section to above introduced function, and use
593         this new function.
595 2021-09-07  Luis Machado  <luis.machado@linaro.org>
597         Revert: [AArch64] MTE corefile support
599         2021-05-21  Luis Machado  <luis.machado@linaro.org>
601         * elf.c (elfcore_make_memtag_note_section): New function.
602         (elfcore_grok_note): Handle NT_MEMTAG note types.
604 2021-09-07  Nick Clifton  <nickc@redhat.com>
606         PR 28305
607         * elf32-xtensa.c (elf_xtensa_do_reloc): Add check for put of range
608         reloc.
610         PR 28303
611         * elfxx-riscv.c (riscv_elf_add_sub_reloc): Add check for out of
612         range relocs.
614 2021-08-10  Nick Clifton  <nickc@redhat.com>
616         * po/sr.po: Updated Serbian translation.
618 2021-07-18  Nick Clifton  <nickc@redhat.com>
620         * config.bfd: Move pending obsoletion targets to obsolete list.
622 2021-07-16  Giulio Benetti  <giulio.benetti@benettiengineering.com>
624         * elf32-or1k.c (or1k_elf_relocate_section): Use a separate entry
625         in switch case R_OR1K_INSN_REL_26 where we need to check for
626         !SYMBOL_CALLS_LOCAL() instead of !SYMBOL_REFERENCES_LOCAL().
628 2021-07-14  Clément Chigot  <clement.chigot@atos.net>
630         * libxcoff.h (struct xcoff_dwsect_name): Add DWARF name.
631         * coff-rs6000.c (xcoff_dwsect_names): Update.
632         * coffcode.h (sec_to_styp_flags): Likewise.
633         (coff_new_section_hook): Likewise.
635 2021-07-10  Alan Modra  <amodra@gmail.com>
637         * dwarf2.c (read_address): Remove accidental commit.
638         (read_ranges): Compare offset rather than pointers.
640 2021-07-08  Nick Clifton  <nickc@redhat.com>
642         * po/pt.po: Updated Portuguese translation.
644 2021-07-07  Nick Clifton  <nickc@redhat.com>
646         * elfcode.h (elf_swap_symbol_out): Revert accidental change that
647         removed an abort if the shndx pointer is NULL.
649 2021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
651         * sysdep.h [!ENABLE_NLS]: Prevent inclusion of <libintl.h> on
652         Solaris.
654 2021-07-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
656         * configure.ac: Check for strnlen declaration.
657         * configure, config.in: Regenerate.
659 2021-07-07  Nick Clifton  <nickc@redhat.com>
661         PR 28051
662         * coff-rs6000.c (xcoff_reloc_type_tls): Reformat error messages in
663         order to fix problems when translating.
664         * cofflink.c (_bfd_coff_write_global_sym): Likewise.
665         * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
666         Likewise.
667         * po/bfd.pot: Regenerate.
669 2021-07-06  Michael Matz  <matz@suse.de>
671         PR ld/28021
672         * elfnn-riscv.c (riscv_relax_delete_bytes): Check for any
673         versioning.
675 2021-07-06  Alan Modra  <amodra@gmail.com>
677         PR 28055
678         * elf64-bpf.c (bpf_elf_generic_reloc): Add missing ATTRIBUTE_UNUSED.
680 2021-07-05  Alan Modra  <amodra@gmail.com>
682         PR 28055
683         * elf64-bpf.c (bpf_elf_generic_reloc): Use correct bfd for bfd_put
684         and bfd_put_32 calls.  Correct section limit checks.
686 2021-07-03  Nick Clifton  <nickc@redhat.com>
688         * version.m4: Update version number.
689         * configure: Regenerate.
690         * po/opcodes.pot: Regenerate.
692 2021-07-03  Nick Clifton  <nickc@redhat.com>
694         * 2.37 release branch created.
696 2021-07-02  Nick Clifton  <nickc@redhat.com>
698         PR 28046
699         * dwarf2.c (read_ranges): Check that range_ptr does not exceed
700         range_end.
702 2021-06-30  YunQiang Su  <yunqiang.su@cipunited.com>
704         PR mips/28009
705         * bfd/elfxx-mips.c (_bfd_mips_elf_section_from_shdr,
706         _bfd_mips_elf_fake_sections): Mark LTO debug info as
707         SHT_MIPS_DWARF.
709 2021-06-29  Nick Clifton  <nickc@redhat.com>
711         * config.bfd (obsolete configurations): Add netbsdpe.
713 2021-06-22  Nelson Chu  <nelson.chu@sifive.com>
715         * elfnn-riscv.c (riscv_pcrel_hi_reloc): Added field to store
716         the original relocation type, in case the type is converted to
717         R_RISCV_HI20.
718         (riscv_pcrel_lo_reloc): Removed unused name field.
719         (riscv_pcrel_relocs): Added comments.
720         (riscv_zero_pcrel_hi_reloc): Removed unused input_bfd.
721         (riscv_record_pcrel_hi_reloc): Updated.
722         (riscv_record_pcrel_lo_reloc): Likewise.
723         (riscv_resolve_pcrel_lo_relocs): Likewise.  Check the original
724         type of auipc, to make sure the %pcrel_lo without any addends.
725         Otherwise, report dangerous relocation error.
726         (riscv_elf_relocate_section): Updated above functions are changed.
727         For R_RISCV_GOT_HI20, report dangerous relocation error when addend
728         isn't zero.
730 2021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
732         PR ld/27998
733         * elfxx-x86.c (elf_x86_allocate_dynrelocs): Count PLT for GOTOFF
734         relocation against IFUNC symbols.
735         (_bfd_x86_elf_adjust_dynamic_symbol): Likewise.
737 2021-06-19  H.J. Lu  <hongjiu.lu@intel.com>
739         * elflink.c (bfd_elf_final_link): Correct DT_TEXTREL warning in
740         PDE.
742 2021-06-18  H.J. Lu  <hongjiu.lu@intel.com>
744         * elf-properties.c (_bfd_elf_parse_gnu_properties): Handle
745         GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI,
746         GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI.
747         (elf_merge_gnu_properties): Likewise.
749 2021-06-11  Alan Modra  <amodra@gmail.com>
751         PR 27952
752         * elf-bfd.h (struct elf_obj_tdata): Add is_pie.
753         * elflink.c (elf_link_add_object_symbols): Set is_pie.
755 2021-06-09  Nick Clifton  <nickc@redhat.com>
757         PR 27666
758         * config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
759         vectors to Sparc Solaris2 targets.
761 2021-06-08  Michael Matz  <matz@suse.de>
763         * elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag.
764         (_bfd_elf_slurp_secondary_reloc_section): Use it for early-out.
766 2021-06-07  Jan Beulich  <jbeulich@suse.com>
768         * dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant.
770 2021-06-02  Alan Modra  <amodra@gmail.com>
772         * elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if
773         subsection length is too small to cover tag and length field.
775 2021-05-31  Nelson Chu  <nelson.chu@sifive.com>
776             Lifang Xia  <lifang_xia@c-sky.com>
778         PR 27566
779         * elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer
780         to monitor the data segment phase.
781         (bfd_elfNN_riscv_set_data_segment_info): New function called by
782         after_allocation, to set the data_segment_phase from expld.dataseg.
783         (_bfd_riscv_relax_section): Don't relax when data_segment_phase is
784         exp_seg_relro_adjust (0x4).
785         * elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern.
786         (bfd_elf64_riscv_set_data_segment_info): Likewise
788 2021-05-28  H.J. Lu  <hongjiu.lu@intel.com>
790         PR ld/27905
791         * elf32-i386.c: Don't include "libiberty.h".
792         (elf_howto_table): Revert commits a7664973b24 and 50c95a739c9.
793         (elf_i386_rtype_to_howto): Revert commit 50c95a739c9.
794         (elf_i386_info_to_howto_rel): Likewise.
795         (elf_i386_tls_transition): Likewise.
796         (elf_i386_relocate_section): Likewise.
797         * elf64-x86-64.c (x86_64_elf_howto_table): Revert commits
798         a7664973b24 and 50c95a739c9.
799         (elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9.
800         * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise.
801         * elfxx-x86.h (elf_x86_obj_tdata): Likewise.
802         (elf_x86_has_code16): Likewise.
804 2021-05-26  H.J. Lu  <hongjiu.lu@intel.com>
806         PR ld/27905
807         * elf32-i386.c: Include "libiberty.h".
808         (elf_howto_table): Add 16-bit R_386_PC16 entry.
809         (elf_i386_rtype_to_howto): Add a BFD argument.  Use 16-bit
810         R_386_PC16 if input has 16-bit mode instructions.
811         (elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto
812         call.
813         (elf_i386_tls_transition): Likewise.
814         (elf_i386_relocate_section): Likewise.
815         * elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit
816         R_X86_64_PC16 entry.
817         (elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input
818         has 16-bit mode instructions.
819         * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set
820         elf_x86_has_code16 if relocatable input is marked with
821         GNU_PROPERTY_X86_FEATURE_2_CODE16.
822         * elfxx-x86.h (elf_x86_obj_tdata): Add has_code16.
823         (elf_x86_has_code16): New.
825 2021-05-26  Nelson Chu  <nelson.chu@sifive.com>
827         * elfxx-riscv.h (check_unknown_prefixed_ext): New bool.
828         * elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the
829         prefixed extension name if check_unknown_prefixed_ext is false.
830         * elfnn-riscv.c (riscv_merge_arch_attr_info): Set
831         check_unknown_prefixed_ext to false for linker.
833 2021-05-25  Nick Clifton  <nickc@redhat.com>
835         * elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field.
836         (elf32_arm_num_entries): New macro.
837         (elf32_arm_allocate_local_sym_info): Initialise the new field.
838         Allocate arrays individually so that buffer overruns can be
839         detected by memory checkers.
840         (elf32_arm_create_local_iplt): Check num_entries.
841         (elf32_arm_get_plt_info): Likewise.
842         (elf32_arm_final_link_relocate): Likewise.
843         (elf32_arm_check_relocs): Likewise.
844         (elf32_arm_size_dynamic_sections): Likewise.
845         (elf32_arm_output_arch_local_syms): Likewise.
847 2021-05-25  Nick Clifton  <nickc@redhat.com>
849         * elf32-arm.c: Fix formatting.
851 2021-05-25  Alan Modra  <amodra@gmail.com>
853         * elf-attrs.c (elf_attr_strdup): New function.
854         (_bfd_elf_attr_strdup): Use it here.
855         (elf_add_obj_attr_string): New function, extracted from..
856         (bfd_elf_add_obj_attr_string): ..here.
857         (elf_add_obj_attr_int_string): New function, extracted from..
858         (bfd_elf_add_obj_attr_int_string): ..here.
859         (_bfd_elf_parse_attributes): Don't allocate an extra byte for a
860         string terminator.  Instead ensure parsing doesn't go past
861         end of sub-section.  Use size_t variables for lengths.
863 2021-05-22  Alan Modra  <amodra@gmail.com>
865         * libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter.
866         Replace data pointer with pointer to pointer.  Increment pointer
867         over bytes read.
868         * libbfd-in.h (_bfd_safe_read_leb128): Update prototype.
869         * elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit.  Be
870         careful not to increment data pointer past end.  Remove now
871         redundant pr17512 check.
872         * wasm-module.c (READ_LEB128): Adjust to suit changes to
873         _bfd_safe_read_leb128.
874         * dwarf2.c (read_n_bytes): New inline function, old one renamed to..
875         (read_blk): ..this.  Allocate and return block.  Increment bfd_byte**
876         arg.
877         (read_3_bytes): New function.
878         (read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes),
879         (read_8_bytes, read_string, read_indirect_string),
880         (read_indirect_line_string, read_alt_indirect_string): Take a
881         byte_byte** arg which is incremented over bytes read.  Remove any
882         bytes_read return.  Rewrite limit checks to compare lengths
883         rather than pointers.
884         (read_abbrevs, read_attribute_value, read_formatted_entries),
885         (decode_line_info, find_abstract_instance, read_ranges),
886         (read_rnglists, scan_unit_for_symbols, parse_comp_unit),
887         (stash_comp_unit): Adjust to suit.  Rewrite limit checks to
888         compare lengths rather than pointers.
889         * libbfd.h: Regenerate.
891 2021-05-21  Luis Machado  <luis.machado@linaro.org>
893         * elf.c (elfcore_make_memtag_note_section): New function.
894         (elfcore_grok_note): Handle NT_MEMTAG note types.
896 2021-05-20  Andrew Burgess  <andrew.burgess@embecosm.com>
898         * section.c (bfd_get_section_by_name): Return NULL if name is
899         NULL.
900         (bfd_get_section_by_name_if): Likewise.
901         * dwarf2.c (read_section): Remove unneeded NULL check.
902         (find_debug_info): Likewise.
904 2021-05-19  Nick Clifton  <nickc@redhat.com>
906         * plugin.c (bfd_plugin_open_input): Inform the user if the limit
907         on the number of open files is reached.  If possible, try to
908         increase this limit before failing.
910 2021-05-14  Nelson Chu  <nelson.chu@sifive.com>
912         * elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values
913         of %pcrel_hi, before and after adding the addend.  Make sure the
914         value won't be changed, otherwise, report dangerous error.
916 2021-05-13  Nelson Chu  <nelson.chu@sifive.com>
918         * elfxx-riscv.c (check_implicit_always): The check_func, always add
919         the implicit subset without checking.
920         (check_implicit_for_i): The check_func for i, only add zicsr and
921         zifencei when the version of i less than 2.1.
922         (struct riscv_implicit_subset): Record the subsets and their
923         corresponding implicit subsets.
924         (riscv_implicit_subsets): Table records all implicit informations.
925         (riscv_parse_add_implicit_subsets): Updated and add implicit subsets
926         according to riscv_implicit_subsets.  Remove the redundant codes.
928 2021-05-13  Alan Modra  <amodra@gmail.com>
930         PR 27858
931         * elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid
932         reloc howto.
934 2021-05-12  Luis Machado  <luis.machado@linaro.org>
936         * elf-bfd.h (elfcore_write_aarch_mte): New prototype.
937         * elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New
938         functions.
939         (elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL.
940         (elfcore_write_register_note): Handle MTE notes.
942 2021-05-11  Alan Modra  <amodra@gmail.com>
944         PR 27844
945         * pdp11.c (aout_get_external_symbols): Clear first four bytes of
946         strings array, not just the first byte.
947         * aoutx.h (aout_get_external_symbols): Likewise.
949 2021-05-10  H.J. Lu  <hongjiu.lu@intel.com>
951         PR binutils/27839
952         * simple.c (bfd_simple_get_relocated_section_contents): Remove
953         strayed fprintf.
955 2021-05-10  Nick Clifton  <nickc@redhat.com>
957         PR 27839
958         * simple.c (simple_dummy_add_to_set): New function.
959         (simple_dummy_constructor): New function.
960         (simple_dummy_multiple_common): New function.
961         (bfd_simple_get_relocated_section_contents): Zero out the
962         callbacks structure, and then set the add_to_set, constructor and
963         multiple_common fields.
965 2021-05-10  Dimitar Dimitrov  <dimitar@dinux.eu>
967         * elf32-pru.c (elf_backend_can_gc_sections): Define as 1.
969 2021-05-08  Mike Frysinger  <vapier@gentoo.org>
971         * doc/Makefile.am (html-local, bfd/index.html): New targets.
972         * doc/Makefile.in: Regenerate.
974 2021-05-08  Mike Frysinger  <vapier@gentoo.org>
976         * doc/Makefile.am (AM_MAKEINFOFLAGS): Define.
977         * doc/Makefile.in: Regenerate.
979 2021-05-07  Clément Chigot  <clement.chigot@atos.net>
981         * coff-rs6000.c (xcoff_dwsect_names): Add new DWARF
982         sections.
983         * coffgen.c (coff_pointerize_aux): Handle C_DWARF.
984         (coff_print_symbol): Likewise.
985         * libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update.
987 2021-05-07  Jan Beulich  <jbeulich@suse.com>
989         * elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields
990         to zero.
992 2021-05-07  Alan Modra  <amodra@gmail.com>
994         * bfd-in2.h: Regenerate.
995         * libbfd.h: Regenerate.
997 2021-05-06  Stafford Horne  <shorne@gmail.com>
999         PR 27746
1000         * elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT,
1001         OR1K_ADD, OR1K_ORI): New macros to help with plt creation.
1002         (elf_or1k_link_hash_table): New field plt_count.
1003         (elf_or1k_link_hash_entry): New field plt_index.
1004         (elf_or1k_plt_entry_size): New function.
1005         (or1k_write_plt_entry): Update to support variable size PLTs.
1006         (or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry
1007         API.
1008         (or1k_elf_finish_dynamic_symbol): Update to write large PLTs
1009         when needed.
1010         (allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for
1011         PLT size.
1013 2021-05-06  Stafford Horne  <shorne@gmail.com>
1015         PR 21464
1016         * elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16
1017         overflow check if we have R_OR1K_GOT_AHI16 followed by
1018         R_OR1K_GOT16.
1020 2021-05-06  Stafford Horne  <shorne@gmail.com>
1022         PR 21464
1023         * bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation.
1024         * elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise.
1025         (or1k_final_link_relocate, or1k_elf_relocate_section,
1026         or1k_elf_check_relocs): Likewise.
1027         * libbfd.h (bfd_reloc_code_real_names): Likewise.
1028         * reloc.c: Likewise.
1030 2021-05-06  Stafford Horne  <shorne@gmail.com>
1032         PR 27624
1033         * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change
1034         condition used to cleanup plt entries to cleanup forced local
1035         entries.
1037 2021-05-05  H.J. Lu  <hongjiu.lu@intel.com>
1039         PR ld/27825
1040         * elflink.c (elf_link_output_symstrtab): Always append ".COUNT"
1041         to local symbols.
1043 2021-05-05  Alan Modra  <amodra@gmail.com>
1045         * vms-lib.c (vms_traverse_index): Account for vms_kbn size when
1046         sanity checking keylen.
1048 2021-05-04  Nick Clifton  <nickc@redhat.com>
1050         * libbfd.c (bfd_malloc): Provide some documenation.  Treat a size
1051         of 0 as 1.
1052         (bfd_realloc): Likewise.
1053         (bfd_zmalloc): Likewise.
1054         (bfd_realloc_or_free): Provide some documentation.  Treat a size
1055         of 0 as a request to free.
1056         * libbfd-in.h (bfd_realloc): Remove prototype.
1057         (bfd_realloc_or_free): Remove prototype.
1058         (bfd_zmalloc): Remove prototype.
1059         * libbfd.h: Regenerate.
1061 2021-05-03  Jan Beulich  <jbeulich@suse.com>
1063         * elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to
1064         complain_overflow_dont.
1065         * elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit
1066         relocs to complain_overflow_dont.
1068 2021-05-03  Alan Modra  <amodra@gmail.com>
1070         * elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak
1071         symbols when -z dynamic-undefined-weak or when there are no
1072         dynamic relocs in read-only sections and -z nodynamic-undefined-weak
1073         is not given.
1074         * elf64-ppc.c (allocate_dynrelocs): Likewise.
1076 2021-05-03  Alan Modra  <amodra@gmail.com>
1078         * elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for
1079         weak undefined symols that only appear on PLT relocs.
1080         * elf64-ppc.c (allocate_dynrelocs): Likewise.
1082 2021-05-03  Alan Modra  <amodra@gmail.com>
1084         PR 27755
1085         * elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop.
1087 2021-05-03  Alan Modra  <amodra@gmail.com>
1089         * elf32-csky.c (is_mapping_symbol_name): New function.
1090         (csky_elf_is_target_special_symbol): Likewise.
1091         (csky_elf_maybe_function_sym): Likewise.
1092         (bfd_elf32_bfd_is_target_special_symbol): Define.
1093         (elf_backend_maybe_function_sym): Define.
1095 2021-04-30  Nick Clifton  <nickc@redhat.com>
1097         PR 27801
1098         * mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to
1099         read 32-bit value.
1101 2021-04-30  Nick Clifton  <nickc@redhat.com>
1103         PR 27799
1104         * elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes
1105         that are too small.
1107 2021-04-30  Nick Clifton  <nickc@redhat.com>
1109         PR 27797
1110         * libbfd.c (bfd_realloc_or_free): Do not free a pointer than has
1111         been realloc'ed to size 0.
1113 2021-04-30  Nick Clifton  <nickc@redhat.com>
1115         PR 27795
1116         * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name
1117         lengths.
1119 2021-04-29  Nick Clifton  <nickc@redhat.com>
1121         PR 27793
1122         * som.c (som_slurp_symbol_table): Assign symbols without any scope
1123         to the undefined section.
1124         (som_decode_symclass): Check for a missing symbol section.
1125         * syms.c (bfd_decode_symclass): Likewise.
1127 2021-04-29  Nick Clifton  <nickc@redhat.com>
1129         PR 27792
1130         * som.c (som_slurp_string_table): Place a terminating NUL byte at
1131         the end of the table.
1132         (som_slurp_symbol_table): Check for an over-large offset into the
1133         string string table.
1135 2021-04-28  Nick Clifton  <nickc@redhat.com>
1137         * elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin
1138         symbols as potential function symbols.
1139         * elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise.
1140         * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
1141         * elf32-arm.c (elf32_arm_maybe_function_sym): Likewise.
1143 2021-04-26  Mike Frysinger  <vapier@gentoo.org>
1145         * elf-bfd.h: Include stdlib.h.
1147 2021-04-26  Jan Beulich  <jbeulich@suse.com>
1149         * elf32-i386.c (elf_howto_table): Switch R_386_PC16 to
1150         complain_overflow_signed.
1151         * elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16
1152         to complain_overflow_signed.
1154 2021-04-23  Eric Botcazou  <ebotcazou@adacore.com>
1156         * elf.c (special_sections_p): Add .persistent.bss.
1158 2021-04-23  Jan Beulich  <jbeulich@suse.com>
1160         * elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero
1161         size field.
1162         * elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL
1163         has zero size field.
1165 2021-04-22  Clément Chigot  <clement.chigot@atos.net>
1167         * hash.c (struct bfd_strtab_hash): Remove xcoff field.
1168         Add length_field_size field.
1169         (_bfd_stringtab_init): Change prototype.
1170         Adapt to new length_field_size.
1171         (_bfd_xcoff_stringtab_init): Likewise.
1172         (_bfd_stringtab_add): Likewise.
1173         (_bfd_stringtab_emit): Likewise.
1174         * libbfd-in.h (_bfd_xcoff_stringtab_init):
1175         Change prototype.
1176         * libbfd.h: Regenerate.
1177         * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create):
1178         Call _bfd_xcoff_stringtab_init with isxcoff64 value.
1180 2021-04-22  Clément Chigot  <clement.chigot@atos.net>
1182         * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for
1183         unsupported storage class or auxialiry entries.
1184         Improve and adapt to new aux structures.
1185         Add C_DWARF support.
1186         (_bfd_xcoff_swap_aux_out): Likewise.
1187         * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise.
1188         (_bfd_xcoff64_swap_aux_out): Likewise.
1190 2021-04-21  Eli Zaretskii  <eliz@gnu.org>
1192         PR 27760
1193         * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display
1194         of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP,
1195         IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags.
1196         Decode the contents of the DllCharacteristics field.
1198 2021-04-21  Nick Clifton  <nickc@redhat.com>
1200         PR 27759
1201         * srec.c (srec_read_section): Replace assertions with error
1202         returns.
1204 2021-04-20  Clément Chigot  <clement.chigot@atos.net>
1206         PR binutils/21700
1207         * reloc.c (BFD_RELOC_PPC_NEG): New relocation.
1208         * bfd-in2.h: Regenerate.
1209         * libbfd.h: Regenerate.
1210         * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add
1211         BFD_RELOC_PPC_NEG handler.
1212         (xcoff_reloc_type_neg): Correctly substract addend.
1213         * coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32
1214         howto.
1215         (xcoff64_rtype2howto): Add handler for R_NEG_32.
1216         (xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler.
1217         * xcofflink.c (xcoff_need_ldrel_p): Check output section
1218         for R_POS-like relocations. New argument added.
1219         (xcoff_mark): Adapt to new xcoff_need_ldrel_p argument.
1220         (xcoff_link_input_bfd): Likewise.
1222 2021-04-16  Alan Modra  <amodra@gmail.com>
1224         PR 27567
1225         * coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags.
1226         (coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT,
1227         ignore alignment checks when return is false.  Formatting.
1229 2021-04-15  Nelson Chu  <nelson.chu@sifive.com>
1231         PR27584
1232         * elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to
1233         omit local and empty symbols since they usually generated to
1234         mark the auipc instructions.
1236 2021-04-15  Lifang Xia<lifang_xia@c-sky.com>
1238         * elf32-csky.c (csky_elf_howto_table)
1239         <R_CKCORE_PCREL_IMM16BY2>: Set special_function to
1240         bfd_elf_generic_reloc.
1241         <R_CKCORE_PCREL_IMM16BY4>: Likewise.
1242         <R_CKCORE_PCREL_IMM10BY4>: Likewise.
1243         <R_CKCORE_PCREL_IMM18BY2>: Likewise.
1244         <R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise.
1246 2021-04-14  H.J. Lu  <hongjiu.lu@intel.com>
1248         PR binutils/27708
1249         * elf.c (assign_file_positions_for_non_load_sections): Set
1250         p_memsz to p_filesz for the loadable PT_NOTE segment.
1252 2021-04-14  Frederic Cambus  <fred@statdns.com>
1254         * elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef
1255         checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
1257 2021-04-14  Alan Modra  <amodra@gmail.com>
1259         PR 27631
1260         * elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf
1261         when hh might be NULL, test for NULL first.
1263 2021-04-14  Alan Modra  <amodra@gmail.com>
1265         PR 27630
1266         * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
1267         hash might be NULL, cast instead.
1269 2021-04-13  Clément Chigot  <clement.chigot@atos.net>
1271         * xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
1273 2021-04-13  Nelson Chu  <nelson.chu@sifive.com>
1275         * elfnn-riscv.c (riscv_version_mismatch): Do not report the warning
1276         when the version of input or output is RISCV_UNKNOWN_VERSION, since
1277         the extension is added implicitly.
1278         * elfxx-riscv.c: Updated the obsolete comments.
1279         (RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h.
1280         * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added.
1282 2021-04-12  Alan Modra  <amodra@gmail.com>
1284         * elf-bfd.h (ENABLE_CHECKING): Define.
1285         (elf_link_hash_lookup): Abort if wrong type of hash table.
1286         * configure.ac (--enable-checking): Add support.
1287         * config.in: Regenerate.
1288         * configure: Regenerate.
1290 2021-04-12  Alan Modra  <amodra@gmail.com>
1292         * elf-bfd.h (is_elf_hash_table): Convert macro to inline function.
1293         (elf_link_hash_lookup, elf_link_hash_traverse): Likewise.
1294         (elf_hash_table, elf_hash_table_id): Likewise.
1295         * elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant
1296         is_elf_hash_table check.
1297         * elf32-csky.c (elf32_csky_setup_section_lists): Likewise.
1298         * elf32-hppa.c (clobber_millicode_symbols): Correct param types.
1299         * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
1300         * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise.
1301         (elfNN_ia64_global_dyn_sym_thunk: Likewise.
1302         * elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise.
1303         (elf64_ia64_global_dyn_sym_thunk): Likewise.
1304         (elf64_vms_link_add_object_symbols): Pass base type of hash table
1305         to is_elf_hash_table.
1306         * elflink.c (_bfd_elf_dynamic_symbol_p): Likewise.
1307         (_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise.
1308         (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise.
1309         (_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise.
1310         (bfd_elf_final_link): Likewise.
1311         * elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise.
1312         * elf64-ppc.c (ppc64_elf_set_toc): Likewise.  Use bfd_link_hash_lookup.
1314 2021-04-12  Alan Modra  <amodra@gmail.com>
1316         * elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry*
1317         from elf_backend_archive_symbol_lookup.
1318         (_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*.
1319         * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise.  Check
1320         we have a ppc_hash_table before accessing ppc_link_hash_entry
1321         fields.
1322         * elflink.c (_bfd_elf_archive_symbol_lookup): Return
1323         bfd_link_hash_entry*.
1324         (elf_link_add_archive_symbols): Adjust to suit.
1326 2021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1328         * elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of
1329         i-ext when expanding g-ext.
1331 2021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1333         * elfxx-riscv.c (riscv_ext_dont_care_version): Removed.
1334         (riscv_parse_add_subset): Always add the implicit extensions, even if
1335         their versions are RISCV_UNKNOWN_VERSION.
1336         (riscv_parse_std_ext): Delay to add i-ext as the implicit extension
1337         in the riscv_parse_add_implicit_subsets.  Besides, add g-ext as the
1338         implicit extension after it has been expanded.
1339         (riscv_parse_add_implicit_subsets): Updated.
1341 2021-04-12  Nelson Chu  <nelson.chu@sifive.com>
1343         * elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward.
1344         (riscv_std_s_ext_strtab): Likewise.
1345         (riscv_std_h_ext_strtab): Likewise.
1346         (riscv_std_zxm_ext_strtab): Added for the zxm prefix.
1347         (enum riscv_prefix_ext_class): Moved forward and renamed from
1348         riscv_isa_ext_class.  Reorder them according to the parsing order,
1349         since the enum values are used to check the orders in the
1350         riscv_compare_subsets.
1351         (struct riscv_parse_prefix_config): Moved forward and renamed from
1352         riscv_parse_config_t.  Also removed the ext_valid_p field, the
1353         related functions are replaced by riscv_valid_prefixed_ext.
1354         (parse_config): Moved forward and updated.  The more letters of the
1355         prefix string, the more forward it must be defined.  Otherwise, we
1356         will get the wrong mapping when using strncmp in riscv_get_prefix_class.
1357         (riscv_get_prefix_class): Moved forward.  Support to parse the
1358         multi-letter prefix, like zxm.
1359         (riscv_known_prefixed_ext): New function, check if the prefixed
1360         extension is supported according to the right riscv_std_*_ext_strtab.
1361         (riscv_valid_prefixed_ext): New function, used to replace the
1362         riscv_ext_*_valid_p functions.
1363         (riscv_init_ext_order): Do not set the values for prefix keywords
1364         since they may have multiple letters for now.
1365         (riscv_compare_subsets): Set the order values of prefix keywords
1366         to negative numbers according to the riscv_prefix_ext_class.
1367         (riscv_parse_std_ext): Call riscv_get_prefix_class to see if we
1368         have parsed the prefixed extensions.
1369         (riscv_parse_prefixed_ext): Updated and removed the parameter config.
1370         Report error when the prefix is unknown.
1371         (riscv_parse_subset): Do not parse the prefixed extensions according
1372         to the orders in the parse_config.  Remove the confused message and
1373         let riscv_parse_prefixed_ext to report the details.
1374         * elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c.
1375         (riscv_get_prefix_class): Removed to static.
1377 2021-04-08  Mike Frysinger  <vapier@gentoo.org>
1379         * configure.ac (ACX_BUGURL): Use https://.
1380         * configure.com (COPY_TEXT): Likewise.
1381         * configure: Regenerate.
1383 2021-04-05  Alan Modra  <amodra@gmail.com>
1385         * configure.ac: Don't check for long long or long double type.
1386         Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
1387         strings.h, time.h, wchar.h, wctype.h or sys/time.h.  Don't check
1388         for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
1389         vsnprintf, strlen or setitimer.  Sort AC_CHECK_DECLS.
1390         (AC_ISC_POSIX): Don't invoke.
1391         (AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
1392         * sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
1393         Do test HAVE_SYS_TYPES_H.  Don't include sys/time.h.  Reorder
1394         header order as per automake AC_INCLUDES_DEFAULT.
1395         * bfd-in.h: Include inttypes.h unconditionally.
1396         * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
1397         long double are available.
1398         (bfd_scan_vma): Assume long long and strtoull are available.
1399         * elflink.c: Include limits.h unconditionally.
1400         * elfnn-riscv.c: Likewise.
1401         * wasm-module.c: Likewise.
1402         * hpux-core.c: Include dirent.h unconditionally.
1403         * trad-core.c: Likewise.
1404         * hosts/x86-64linux.h: Include stdlib.h unconditionally.
1405         * peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
1406         * elf32-m68hc1x.c: Don't include alloca-conf.h.
1407         * elf64-hppa.c: Likewise.
1408         * som.c: Likewise.
1409         * wasm-module.c: Likewise.
1410         * xsym.c: Likewise.
1411         * bfd-in2.h: Regenerate.
1412         * config.in: Regenerate.
1413         * configure: Regenerate.
1415 2021-04-01  Tamar Christina  <tamar.christina@arm.com>
1417         PR ld/26659
1418         * cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow.
1420 2021-04-01  Martin Liska  <mliska@suse.cz>
1422         * ecoff.c (strneq): Remove strneq and use startswith.
1423         (_bfd_ecoff_slurp_armap): Likewise.
1425 2021-04-01  Martin Liska  <mliska@suse.cz>
1427         * elf-bfd.h (bfd_section_is_ctf): Use startswith function.
1428         * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1429         (elf_get_reloc_section): Likewise.
1430         * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
1431         * elf32-m32r.c (m32r_elf_section_flags): Likewise.
1432         * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise.
1433         * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
1434         (nds32_elf_relocate_section): Likewise.
1435         (nds32_elf_action_discarded): Likewise.
1436         (nds32_elf_check_relocs): Likewise.
1437         (nds32_elf_section_flags): Likewise.
1438         * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1439         * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
1440         * elf32-rx.c (rx_table_find): Likewise.
1441         (rx_table_map): Likewise.
1442         * elf32-spu.c (spu_elf_backend_symbol_processing): Likewise.
1443         (spu_elf_find_overlays): Likewise.
1444         (needs_ovl_stub): Likewise.
1445         (allocate_spuear_stubs): Likewise.
1446         (build_spuear_stubs): Likewise.
1447         (mark_overlay_section): Likewise.
1448         (spu_elf_auto_overlay): Likewise.
1449         (spu_elf_output_symbol_hook): Likewise.
1450         * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
1451         * elf32-xtensa.c (xtensa_property_section_name): Likewise.
1452         * elf64-ppc.c (ppc64_elf_section_flags): Likewise.
1453         (ppc64_elf_relocate_section): Likewise.
1454         * elflink.c (resolve_section): Likewise.
1455         (UNARY_OP): Likewise.
1456         (BINARY_OP_HEAD): Likewise.
1457         (elf_link_input_bfd): Likewise.
1458         * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise.
1459         * elfxx-riscv.c (riscv_parse_subset): Likewise.
1460         * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
1461         * opncls.c (get_build_id): Likewise.
1463 2021-03-31  Alan Modra  <amodra@gmail.com>
1465         PR 27671
1466         * bfd-in.h: Don't poison FALSE or TRUE.
1467         * bfd-in2.h: Regenerate.
1469 2021-03-31  Alan Modra  <amodra@gmail.com>
1471         * sysdep.h: POISON_BFD_BOOLEAN: Define.
1472         * aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h,
1473         * aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c,
1474         * bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c,
1475         * coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c,
1476         * coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c,
1477         * coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c,
1478         * coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
1479         * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
1480         * coffcode.h, * coffgen.c, * cofflink.c, * compress.c,
1481         * corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c,
1482         * cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c,
1483         * cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c,
1484         * cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c,
1485         * cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c,
1486         * cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c,
1487         * cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c,
1488         * cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c,
1489         * cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c,
1490         * cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c,
1491         * cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c,
1492         * cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c,
1493         * cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c,
1494         * cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c,
1495         * cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c,
1496         * cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c,
1497         * cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c,
1498         * cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c,
1499         * cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c,
1500         * cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c,
1501         * cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c,
1502         * dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c,
1503         * elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h,
1504         * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c,
1505         * elf-nacl.h, * elf-properties.c, * elf-s390-common.c,
1506         * elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h,
1507         * elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c,
1508         * elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c,
1509         * elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c,
1510         * elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c,
1511         * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1512         * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
1513         * elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c,
1514         * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
1515         * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1516         * elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c,
1517         * elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
1518         * elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c,
1519         * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
1520         * elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c,
1521         * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c,
1522         * elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c,
1523         * elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h,
1524         * elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h,
1525         * elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c,
1526         * elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h,
1527         * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
1528         * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
1529         * elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c,
1530         * elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1531         * elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
1532         * elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c,
1533         * elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h,
1534         * elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c,
1535         * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c,
1536         * elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h,
1537         * elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h,
1538         * elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h,
1539         * elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h,
1540         * format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c,
1541         * i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h,
1542         * libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h,
1543         * libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c,
1544         * mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h,
1545         * merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c,
1546         * pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c,
1547         * pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c,
1548         * pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c,
1549         * peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c,
1550         * reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c,
1551         * som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c,
1552         * verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h,
1553         * wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c,
1554         * xsym.h: Replace bfd_boolean with bool, FALSE with false, and
1555         TRUE with true throughout.
1556         * bfd-in2.h: Regenerate.
1557         * libbfd.h: Regenerate.
1558         * libcoff.h: Regenerate.
1560 2021-03-31  Alan Modra  <amodra@gmail.com>
1562         * bfd-in.h: Include stdbool.h.
1563         (bfd_boolean): Define as bool
1564         * bfd-in2.h: Regenerate.
1566 2021-03-31  Alan Modra  <amodra@gmail.com>
1568         * .gitignore: Delete bfd_stdint.h entry.
1569         * Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h.
1570         (BUILD_HFILES, LOCAL_H_DEPS): Likewise.
1571         * bfd-in.h: Include stdint.h in place of bfd_stdint.h.
1572         * configure.ac: Don't invoke GCC_HEADER_STDINT.
1573         * configure.com: Don't create bfd_stdint.h.
1574         * Makefile.in: Regenerate.
1575         * aclocal.m4: Regenerate.
1576         * bfd-in2.h: Regenerate.
1577         * config.in: Regenerate.
1578         * configure: Regenerate.
1579         * doc/Makefile.in: Regenerate.
1580         * po/BLD-POTFILES.in: Regenerate.
1582 2021-03-31  Alan Modra  <amodra@gmail.com>
1584         * bfd-in.h: Include string.h.
1585         (LITMEMCPY, LITSTRCPY): Delete.
1586         * bfd-in2.h: Regenerate.
1588 2021-03-30  Alan Modra  <amodra@gmail.com>
1590         * elflink.c (elf_link_add_object_symbols): Don't set h->indx
1591         unless is_elf_hash_table.
1593 2021-03-29  Alan Modra  <amodra@gmail.com>
1595         * aoutx.h (aout_link_write_symbols): Don't cast boolean expression
1596         to bfd_boolean.
1597         * elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans
1598         against FALSE.
1599         * elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE.
1600         (is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE".
1601         (is_reloc_SDA_relative, is_reloc_for_GOT): Likewise.
1602         (is_reloc_for_PLT, is_reloc_for_TLS): Likewise.
1603         * elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise.
1604         * elf32-nds32.c (insert_nds32_elf_blank): Likewise.
1605         * elf32-rx.c (rx_set_section_contents): Likewise.
1606         * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
1607         * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise.
1608         * mach-o.c (bfd_mach_o_read_command): Likewise.
1609         * targets.c (bfd_get_target_info): Likewise.
1611 2021-03-29  Alan Modra  <amodra@gmail.com>
1613         * coff-z80.c (z80_is_local_label_name): Return bfd_boolean.
1614         * elf32-z80.c (z80_is_local_label_name): Likewise.
1615         * elf32-spu.c (spu_elf_modify_headers): Likewise.
1616         * elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>):
1617         Change type to int.
1618         * vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test
1619         for error return from vms_write_data_block.
1621 2021-03-29  Alan Modra  <amodra@gmail.com>
1623         * elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
1624         * elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
1625         (elf64_ia64_local_dyn_sym_thunk): Likewise.
1626         * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
1627         * elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
1628         (elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
1629         * elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
1630         (elfNN_ia64_local_dyn_sym_thunk): Likewise.
1631         * elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
1632         (riscv_pcrel_reloc_eq): Likewise.
1633         (riscv_elf_finish_local_dynamic_symbol): Likewise.
1634         * elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
1635         (finish_local_dynamic_symbol): Likewise.
1636         * elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
1637         * elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
1638         (mips_elf_count_got_symbols): Change return type to bfd_boolean.
1640 2021-03-29  Alan Modra  <amodra@gmail.com>
1642         * elflink.c (elf_link_output_symstrtab): Make flinfo parameter
1643         a void pointer.
1644         (bfd_elf_final_link): Delete out_sym_func typedef and don't cast
1645         elf_link_output_symstrtab when calling output_arch_syms and
1646         output_arch_local_syms.
1647         * elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms,
1648         elf_backend_output_arch_local_syms>): Change return type of func
1649         arg to match elf_link_output_symstrtab.
1650         * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct
1651         return type.
1652         * elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type.
1653         (nds32_elf_output_arch_syms): Correct func return type.
1655 2021-03-29  Alan Modra  <amodra@gmail.com>
1657         * elf-m10200.c (mn10200_elf_relocate_section): Return int.
1658         * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1659         * elf32-arc.c (elf_arc_relocate_section): Likewise.
1660         * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1661         * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1662         * elf32-bfin.c (bfin_relocate_section): Likewise.
1663         (bfinfdpic_relocate_section): Likewise.
1664         * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
1665         * elf32-cris.c (cris_elf_relocate_section): Likewise.
1666         * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1667         * elf32-csky.c (csky_elf_relocate_section): Likewise.
1668         * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1669         * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
1670         * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1671         * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1672         * elf32-ft32.c (ft32_elf_relocate_section): Likewise.
1673         * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1674         * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1675         * elf32-i386.c (elf_i386_relocate_section): Likewise.
1676         * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1677         * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1678         * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1679         * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1680         * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1681         * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1682         * elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise.
1683         * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1684         * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1685         * elf32-mep.c (mep_elf_relocate_section): Likewise.
1686         * elf32-metag.c (elf_metag_relocate_section): Likewise.
1687         * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1688         * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
1689         * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1690         * elf32-mt.c (mt_elf_relocate_section): Likewise.
1691         * elf32-nds32.c (nds32_elf_relocate_section): Likewise.
1692         * elf32-nios2.c (nios2_elf32_relocate_section): Likewise.
1693         * elf32-or1k.c (or1k_elf_relocate_section): Likewise.
1694         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1695         * elf32-pru.c (pru_elf32_relocate_section): Likewise.
1696         * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
1697         * elf32-rx.c (rx_elf_relocate_section): Likewise.
1698         * elf32-s390.c (elf_s390_relocate_section): Likewise.
1699         * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1700         (_bfd_score_elf_relocate_section): Likewise.
1701         * elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise.
1702         * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1703         * elf32-sh.c (sh_elf_relocate_section): Likewise.
1704         * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1705         * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
1706         * elf32-v850.c (v850_elf_relocate_section): Likewise.
1707         * elf32-vax.c (elf_vax_relocate_section): Likewise.
1708         * elf32-visium.c (visium_elf_relocate_section): Likewise.
1709         * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1710         * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1711         * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1712         * elf32-z80.c (z80_elf_relocate_section): Likewise.
1713         * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1714         (elf64_alpha_relocate_section): Likewise.
1715         * elf64-bpf.c (bpf_elf_relocate_section): Likewise.
1716         * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1717         * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
1718         * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1719         * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1720         * elf64-s390.c (elf_s390_relocate_section): Likewise.
1721         * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1722         * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise.
1723         * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1724         * elfnn-riscv.c (riscv_elf_relocate_section): Likewise.
1725         * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1726         * elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise.
1727         * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1728         * elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise.
1729         * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
1730         * elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise.
1732 2021-03-26  Keith Seitz  <keiths@redhat.com>
1734         * elfcore.h (_bfd_elf_core_find_build_id): Seek file
1735         offset of program headers after calling elf_read_notes.
1737 2021-03-23  Jan Beulich  <jbeulich@suse.com>
1739         * dwarf2.c (read_indexed_string): Rename index to idx.
1741 2021-03-22  Martin Liska  <mliska@suse.cz>
1743         * bfd-in.h (startswith): Add startswith function.
1744         (CONST_STRNEQ): Remove.
1745         * bfd-in2.h (startswith): Regenerate with make headers.
1746         * archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
1747         (_bfd_slurp_extended_name_table): Likewise.
1748         * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
1749         * bfd.c (bfd_get_sign_extend_vma): Likewise.
1750         (bfd_convert_section_size): Likewise.
1751         (bfd_convert_section_contents): Likewise.
1752         * coff-stgo32.c (go32exe_create_stub): Likewise.
1753         (go32exe_check_format): Likewise.
1754         * coffcode.h (styp_to_sec_flags): Likewise.
1755         (GNU_DEBUGALTLINK): Likewise.
1756         * coffgen.c (_bfd_coff_section_already_linked): Likewise.
1757         (coff_gc_sweep): Likewise.
1758         (bfd_coff_gc_sections): Likewise.
1759         * cofflink.c (coff_link_add_symbols): Likewise.
1760         (process_embedded_commands): Likewise.
1761         * compress.c (bfd_is_section_compressed_with_header): Likewise.
1762         (bfd_init_section_decompress_status): Likewise.
1763         * dwarf2.c (find_debug_info): Likewise.
1764         (place_sections): Likewise.
1765         * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
1766         * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
1767         * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1768         (assign_section_numbers): Likewise.
1769         (elfcore_grok_win32pstatus): Likewise.
1770         * elf32-arm.c (cmse_scan): Likewise.
1771         (elf32_arm_gc_mark_extra_sections): Likewise.
1772         (elf32_arm_size_dynamic_sections): Likewise.
1773         (is_arm_elf_unwind_section_name): Likewise.
1774         * elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
1775         * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
1776         * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
1777         * elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
1778         * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
1779         * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1780         * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
1781         * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
1782         * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
1783         * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
1784         * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
1785         * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
1786         * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
1787         * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1788         * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
1789         * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
1790         * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
1791         * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1792         * elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
1793         (elf32_tic6x_size_dynamic_sections): Likewise.
1794         * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
1795         * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
1796         (xtensa_is_insntable_section): Likewise.
1797         (xtensa_is_littable_section): Likewise.
1798         (xtensa_is_proptable_section): Likewise.
1799         (xtensa_property_section_name): Likewise.
1800         (xtensa_callback_required_dependence): Likewise.
1801         * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
1802         * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
1803         * elf64-ia64-vms.c (is_unwind_section_name): Likewise.
1804         (get_reloc_section): Likewise.
1805         (elf64_ia64_size_dynamic_sections): Likewise.
1806         (elf64_ia64_object_p): Likewise.
1807         * elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
1808         * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
1809         * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
1810         * elflink.c (elf_link_add_object_symbols): Likewise.
1811         (_bfd_elf_gc_mark_extra_sections): Likewise.
1812         (bfd_elf_parse_eh_frame_entries): Likewise.
1813         (_bfd_elf_section_already_linked): Likewise.
1814         * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
1815         * elfnn-ia64.c (is_unwind_section_name): Likewise.
1816         (elfNN_ia64_size_dynamic_sections): Likewise.
1817         (elfNN_ia64_object_p): Likewise.
1818         * elfxx-mips.c (FN_STUB_P): Likewise.
1819         (CALL_STUB_P): Likewise.
1820         (CALL_FP_STUB_P): Likewise.
1821         (_bfd_mips_elf_section_from_shdr): Likewise.
1822         (_bfd_mips_elf_fake_sections): Likewise.
1823         (_bfd_mips_elf_size_dynamic_sections): Likewise.
1824         (_bfd_mips_final_write_processing): Likewise.
1825         (_bfd_mips_elf_final_link): Likewise.
1826         * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
1827         * elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
1828         (elf_x86_64_is_reloc_section): Likewise.
1829         * hpux-core.c (thread_section_p): Likewise.
1830         * libcoff.h (bfd_pei_p): Likewise.
1831         * linker.c (REAL): Likewise.
1832         (unwrap_hash_lookup): Likewise.
1833         (_bfd_generic_link_add_one_symbol): Likewise.
1834         * mmo.c (mmo_internal_write_section): Likewise.
1835         * osf-core.c (osf_core_core_file_p): Likewise.
1836         * pef.c (bfd_pef_print_symbol): Likewise.
1837         * pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
1838         * som.c (som_slurp_symbol_table): Likewise.
1839         (som_slurp_armap): Likewise.
1840         * wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
1842 2021-03-22  Jan Beulich  <jbeulich@suse.com>
1844         * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
1845         language translation wrapping to _bfd_error_handler()
1846         invocations.
1848 2021-03-21  Alan Modra  <amodra@gmail.com>
1850         * bfd-in.h (startswith): New inline.
1851         (CONST_STRNEQ): Use startswith.
1852         * bfd-in2.h: Regenerate.
1854 2021-03-20  Alan Modra  <amodra@gmail.com>
1856         PR 27590
1857         * elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE
1858         test for .gnu.debuglto*.
1860 2021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1862         PR ld/27590
1863         * elf.c (_bfd_elf_make_section_from_shdr): Treat
1864         .gnu.debuglto_.debug_ section as debugging section unless it is
1865         marked with SHF_EXCLUDE.
1866         * elflink.c (elf_create_symbuf): Revert commit 994b2513281.
1867         (bfd_elf_match_symbols_in_sections): Ignore section symbols when
1868         matching non-debugging sections or linkonce section with comdat
1869         section.
1871 2021-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1873         PR ld/27587
1874         * dwarf2.c (read_attribute_value): Check version >= 3 for
1875         DW_FORM_ref_addr.
1877 2021-03-16  Nick Clifton  <nickc@redhat.com>
1879         * peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer
1880         overrun by using sizeof of the destination x_fname field as the
1881         limit for a memcpy.
1883 2021-03-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
1885         * elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc.
1887 2021-03-12  Clément Chigot  <clement.chigot@atos.net>
1889         * reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE,
1890         BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD,
1891         BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE,
1892         BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M,
1893         BFD_RELOC_PPC64_TLS_ML): New relocations.
1894         * bfd-in2.h: Regenerate.
1895         * libbfd.h: Regenerate.
1896         * coff-rs6000.c (xcoff_calculate_relocation): Call
1897         xcoff_reloc_type_tls for TLS relocations.
1898         (xcoff_howto_table): Implement TLS relocations.
1899         (_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations.
1900         (xcoff_reloc_type_tls): New function.
1901         * coff64-rs6000.c (xcoff_calculate_relocation): Likewise.
1902         (xcoff_howto_table): Likewise.
1903         (_bfd_xcoff_reloc_type_lookup): Likewise.
1904         * coffcode.h (sec_to_styp_flags): Handle TLS sections.
1905         (styp_to_sec_flags): Likewise.
1906         (coff_compute_section_file_positions): Avoid file offset
1907         optimisation for .data when the previous section is .tdata.
1908         (coff_write_object_contents): Handle TLS sections.
1909         * coffswap.h (coff_swap_aouthdr_out): Add support for
1910         new fields in aouthdr.
1911         * libxcoff.h (xcoff_reloc_type_tls): Add prototype.
1912         * xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL.
1913         (xcoff_need_ldrel_p): Add cases for TLS relocations.
1914         (xcoff_create_ldrel): Add l_symndx for TLS sections.
1916 2021-03-12  Clément Chigot  <clement.chigot@atos.net>
1918         * reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO):
1919         New relocations.
1920         * bfd-in2.h: Regenerate.
1921         * libbfd.h: Regenerate.
1922         * coff-rs6000.c (xcoff_calculate_relocation): Call
1923         xcoff_reloc_type_toc for R_TOCU and R_TOCL.
1924         (xcoff_howto_table): Remove src_mask for TOC relocations.
1925         Add R_TOCU and R_TOCL howtos.
1926         (_bfd_xcoff_reloc_type_lookup): Add cases for
1927         BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO.
1928         (xcoff_reloc_type_toc): Compute the whole offset.
1929         Implement R_TOCU and R_TOCL.
1930         * coff64-rs6000.c (xcoff64_calculate_relocation):
1931         Likewise.
1932         (xcoff64_howto_table): Likewise.
1933         (xcoff64_reloc_type_lookup): Likewise.
1935 2021-03-12  Clément Chigot  <clement.chigot@atos.net>
1937         * coff-rs6000.c (xcoff_calculate_relocation): Correct and
1938         add new relocations.
1939         (xcoff_howto_table): Likewise.
1940         (xcoff_rtype2howto): Increase r_type maximum value.
1941         (xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead
1942         of create a new one from scratch.  Enable only some relocations
1943         to have a changing r_size.
1944         * coff64-rs6000.c (xcoff64_calculate_relocation): Likewise.
1945         (xcoff64_howto_table): Likewise.
1946         (xcoff64_rtype2howto): Likewise.
1947         (xcoff64_ppc_relocate_section): Likewise.
1948         * libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value.
1950 2021-03-12  Clément Chigot  <clement.chigot@atos.net>
1952         * coff64-rs6000.c (xcoff64_ppc_relocate_section): Move.
1954 2021-03-12  Clément Chigot  <clement.chigot@atos.net>
1956         * coff64-rs6000.c (xcoff64_write_object_contents): Remove.
1957         * coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620
1958         support for o_cputype field.  Avoid creating an empty a.out header
1959         for XCOFF64.
1961 2021-03-12  Clément Chigot  <clement.chigot@atos.net>
1963         * coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add
1964         missing smclass.
1966 2021-03-11  Nelson Chu  <nelson.chu@sifive.com>
1968         * elfnn-riscv.c (riscv_elf_link_hash_table): New boolean
1969         restart_relax, used to check if we need to run the whole
1970         relaxations from relax pass 0 to 2 again.
1971         (riscv_elf_link_hash_table_create): Init restart_relax to FALSE.
1972         (_bfd_riscv_relax_align): Remove obsolete sec_flg0 set.
1973         (_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code.
1974         (bfd_elfNN_riscv_restart_relax_sections): New function.  Called by
1975         after_allocation to check if we need to run the whole relaxations again.
1976         (_bfd_riscv_relax_section): We will only enter into the relax pass 3
1977         when the restart_relax is FALSE; At last set restart_relax to TRUE if
1978         again is TRUE, too.
1979         * elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration.
1980         (bfd_elf64_riscv_restart_relax_sections): Likewise.
1982 2021-03-10  Jan Beulich  <jbeulich@suse.com>
1984         * cofflink.c (_bfd_coff_write_global_sym): Range-check symbol
1985         offset.
1987 2021-03-10  Alan Modra  <amodra@gmail.com>
1988             Jan Beulich  <jbeulich@suse.com>
1990         * elf.c (bfd_elf_generic_reloc): Make references between debug
1991         sections use section relative values.
1993 2021-03-09  Jan Beulich  <jbeulich@suse.com>
1995         * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA.
1997 2021-03-05  H.J. Lu  <hongjiu.lu@intel.com>
1999         PR ld/27425
2000         PR ld/27432
2001         * bfd.c (_bfd_get_link_info): New function.
2002         * elf-bfd.h (output_elf_obj_tdata): Add link_info.
2003         (elf_link_info): New.
2004         * libbfd-in.h (_bfd_get_link_info): New prototype.
2005         * coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for
2006         R_AMD64_IMAGEBASE when generating x86-64 ELF executable.
2007         * pe-x86_64.c: Include "coff/internal.h" and "libcoff.h".
2008         (pex64_link_add_symbols): New function.
2009         (coff_bfd_link_add_symbols): New macro.
2010         * libbfd.h: Regenerated.
2012 2021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
2013             Andrew Burgess  <andrew.burgess@embecosm.com>
2015         * elf-bfd.h (elfcore_write_riscv_csr): Declare.
2016         * elf.c (elfcore_grok_riscv_csr): New function.
2017         (elfcore_grok_note): Handle NT_RISCV_CSR.
2018         (elfcore_write_riscv_csr): New function.
2019         (elfcore_write_register_note): Handle '.reg-riscv-csr'.
2021 2021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
2022             Andrew Burgess  <andrew.burgess@embecosm.com>
2024         * elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define.
2025         (PRPSINFO_PR_PSARGS_LENGTH): Define.
2026         (riscv_write_core_note): New function.
2027         (riscv_elf_grok_psinfo): Make use of two new length defines.
2028         (elf_backend_write_core_note): Define.
2030 2021-03-05  Craig Blackmore  <craig.blackmore@embecosm.com>
2031             Andrew Burgess  <andrew.burgess@embecosm.com>
2033         * elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
2034         * elf.c (elfcore_grok_gdb_tdesc): New function.
2035         (elfcore_grok_note): Handle NT_GDB_TDESC.
2036         (elfcore_write_gdb_tdesc): New function.
2037         (elfcore_write_register_note): Handle NT_GDB_TDESC.
2039 2021-03-05  Nick Clifton  <nickc@redhat.com>
2041         PR 27521
2042         * dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
2043         (read_indexed_string): Placeholder function.
2044         (read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
2045         forms.
2047 2021-03-05  Alan Modra  <amodra@gmail.com>
2049         * reloc.c (bfd_perform_relocation): Revert 2021-01-12 and
2050         2020-09-16 changes.
2051         * coff-x86_64.c (coff_amd64_reloc): Do more or less the same
2052         adjustments here instead.  Separate pc-relative adjustments
2053         from symbol related adjustments.  Tidy comments and formatting.
2055 2021-03-04  Jan Beulich  <jbeulich@suse.com>
2057         * coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in
2058         final PE images.
2060 2021-03-04  Alan Modra  <amodra@gmail.com>
2062         * rs6000-core.c (rs6000coff_core_p): Correct prototype.
2064 2021-03-03  Alan Modra  <amodra@gmail.com>
2066         PR 27500
2067         * elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop
2068         processing not when start/stop symbol section is unmarked but
2069         on first time a start/stop symbol is processed.
2071 2021-03-03  Alan Modra  <amodra@gmail.com>
2073         * reloc.c: Include x86_64.h rather than internal.h.
2075 2021-03-02  Nick Clifton  <nickc@redhat.com>
2077         PR 27484
2078         * dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate
2079         function and variable tags and a second time to resolve their
2080         attributes.
2082 2021-03-02  Nick Alcock  <nick.alcock@oracle.com>
2084         * elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount.
2086 2021-03-02  Alan Modra  <amodra@gmail.com>
2088         PR 27451
2089         * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized
2090         linker defined start/stop symbols when start_stop_gc.
2092 2021-03-02  Alan Modra  <amodra@gmail.com>
2094         * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got
2095         indirect to pc-relative or toc-relative for undefined symbols.
2097 2021-03-01  Alan Modra  <amodra@gmail.com>
2098             Fangrui Song <maskray@google.com>
2100         * elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker
2101         defined start/stop symbols when start_stop_gc.
2102         (bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
2103         (bfd_elf_define_start_stop): Don't modify ldscript_def syms.
2104         * linker.c (bfd_generic_define_start_stop): Likewise.
2106 2021-02-25  Alan Modra  <amodra@gmail.com>
2108         PR 27441
2109         * elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak.
2110         * elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and
2111         use when deciding an as-needed library should be loaded instead
2112         of using the binding of the library definition.
2114 2021-02-24  Alan Modra  <amodra@gmail.com>
2116         PR 27459
2117         * coff-stgo32.c (go32exe_check_format): Sanity check size of
2118         header to avoid a buffer overflow.
2120 2021-02-22  Alan Modra  <amodra@gmail.com>
2122         * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
2123         * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
2125 2021-02-19  Nelson Chu  <nelson.chu@sifive.com>
2127         PR 27158
2128         * elfnn-riscv.c (perform_relocation): Updated encoding macros.
2129         (_bfd_riscv_relax_call): Likewise.
2130         (_bfd_riscv_relax_lui): Likewise.
2131         * elfxx-riscv.c (howto_table): Likewise.
2133 2021-02-18  Nelson Chu  <nelson.chu@sifive.com>
2135         * Makefile.am: Added cpu-riscv.h.
2136         * Makefile.in: Regenerated.
2137         * po/SRC-POTFILES.in: Regenerated.
2138         * cpu-riscv.h: Added to support spec versions controlling.
2139         Also added extern arrays and functions for cpu-riscv.c.
2140         (enum riscv_spec_class): Define all spec classes here uniformly.
2141         (struct riscv_spec): Added for all specs.
2142         (RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
2143         (RISCV_GET_SPEC_NAME): Likewise.
2144         (RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
2145         (RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
2146         (RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
2147         * cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
2148         (riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
2149         (riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
2150         (riscv_priv_specs): Moved below.
2151         (riscv_get_priv_spec_class_from_numbers): Likewise, updated.
2152         (riscv_isa_specs): Moved from include/opcode/riscv.h.
2153         * elfnn-riscv.c: Included cpu-riscv.h.
2154         (riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
2155         * elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
2156         (RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
2157         * elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
2159 2021-02-17  Alan Modra  <amodra@gmail.com>
2161         * wasm-module.c: Guard include of limits.h.
2162         (CHAR_BIT): Provide backup define.
2163         (wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
2164         Correct signed overflow checking.
2166 2021-02-17  Nelson Chu  <nelson.chu@sifive.com>
2168         PR 27200
2169         * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
2170         copying the elf flags from input BFD to output BFD, until we have
2171         checked if the input BFD has no code section or not.  Also fix the
2172         problem that we only check the first section rather than the entire
2173         sections for input BFD.
2175 2021-02-16  Alan Modra  <amodra@gmail.com>
2177         * libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
2178         (_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
2180 2021-02-15  Jan Beulich  <jbeulich@suse.com>
2182         * doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
2183         * doc/Makefile.in: Re-generate.
2185 2021-02-15  Alan Modra  <amodra@gmail.com>
2187         * elf32-nds32.c (nds32_get_section_contents): Replace
2188         bfd_malloc_and_get_section with bfd_get_full_section_contents.
2189         (nds32_elf_relax_delete_blanks): Init contents.
2190         (nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
2192 2021-02-15  Alan Modra  <amodra@gmail.com>
2194         * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
2195         bfd_get_full_section_contents.
2197 2021-02-14  Alan Modra  <amodra@gmail.com>
2199         * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
2200         all fixes to bfd_generic_get_relocated_section_contents since this
2201         function was split out.
2203 2021-02-11  Alan Modra  <amodra@gmail.com>
2205         * config.bfd: Remove ia64 from obsolete list.
2207 2021-02-11  Alan Modra  <amodra@gmail.com>
2209         PR ld/22269
2210         * elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
2212 2021-02-11  Alan Modra  <amodra@gmail.com>
2214         PR 27294
2215         * elf32-avr.c (avr_elf32_load_records_from_section): Use
2216         bfd_malloc_and_get_section.  Use bfd_byte* vars and remove then
2217         unnecessary casts.
2219 2021-02-11  Alan Modra  <amodra@gmail.com>
2221         PR 27291
2222         * section.c (bfd_get_section_contents): Avoid possible overflow
2223         when range checking offset and count.
2224         (bfd_set_section_contents): Likewise.
2226 2021-02-03  Nick Alcock  <nick.alcock@oracle.com>
2228         * configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
2229         favour of LIBINTL.
2230         * configure: Regenerated.
2232 2021-02-09  Alan Modra  <amodra@gmail.com>
2234         * config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
2235         * configure.ac: Delete symbian entries.
2236         * elf-bfd.h (enum elf_target_os): Delete is_symbian.
2237         * elf32-arm.c: Remove symbian support.  Formatting.
2238         * targets.c: Delete symbian entries.
2239         * configure: Regenerate.
2241 2021-02-04  H.J. Lu  <hongjiu.lu@intel.com>
2243         PR ld/19609
2244         * elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
2245         info when failed to convert GOTPCREL relocation.
2247 2021-02-04  Nelson Chu  <nelson.chu@sifive.com>
2249         * elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
2251 2021-02-04  Alan Modra  <amodra@gmail.com>
2253         PR 27311
2254         * elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
2255         libraries for IR references on pass over libraries after LTO
2256         recompilation.
2258 2021-02-03  Alan Modra  <amodra@gmail.com>
2260         PR 27311
2261         * elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
2262         (elf_link_add_object_symbols): Here too.  Don't pull in as-needed
2263         libraries when H is an indirect symbol after calling
2264         _bfd_elf_add_default_symbol.
2266 2021-02-03  Alan Modra  <amodra@gmail.com>
2268         PR 27311
2269         * elflink.c (_bfd_elf_add_default_symbol): Clear override when
2270         undecorated symbol will have a different version.
2272 2021-02-02  Alan Modra  <amodra@gmail.com>
2274         PR 27311
2275         * elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
2276         Use when handling default versioned symbol.  Rename existing
2277         override variable to nondef_override and use for non-default
2278         versioned symbol.
2279         (elf_link_add_object_symbols): Adjust call to suit.  Don't
2280         pull in as-needed libraries when override is set.
2282 2021-02-01  Emery Hemingway  <ehmry@posteo.net>
2284         * config.bfd: Add *-*-genode* as a target for AArch64 and x86.
2286 2021-02-01  Egor Vishnyakov  <lenvampir@yandex.ru>
2288         PR 27254
2289         * elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
2290         offset for the R_RL78_RH_SADDR relocation.
2292 2021-01-29  Alan Modra  <amodra@gmail.com>
2294         PR 27271
2295         * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
2296         on symbols defined in absolute or other special sections.
2298 2021-01-28  Alan Modra  <amodra@gmail.com>
2300         PR 27259
2301         * elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
2302         prevent endless looping of linked-to sections.
2304 2020-12-17  Mihails Strasuns  <mihails.strasuns@intel.com>
2306         * bfd-elf.h (elfcore_write_file_note): New function.
2307         * elf.c (elfcore_write_file_note): New function.
2309 2021-01-26  Alan Modra  <amodra@gmail.com>
2311         * elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
2313 2021-01-24  H.J. Lu  <hongjiu.lu@intel.com>
2315         PR binutils/27231
2316         * dwarf2.c (read_rnglists): Ignore empty range when parsing line
2317         number tables.
2319 2021-01-23  H.J. Lu  <hongjiu.lu@intel.com>
2321         PR binutils/27231
2322         * dwarf2.c (read_rnglists): Advance rngs_ptr after
2323         _bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
2325 2021-01-20  Alan Modra  <amodra@gmail.com>
2327         * elf32-ppc.c: Delete outdated comment.
2328         (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2329         * elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2331 2021-01-20  Alan Modra  <amodra@gmail.com>
2333         * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
2334         section symbols are present.
2336 2021-01-19  Alan Modra  <amodra@gmail.com>
2338         * elf64-ppc.c (elf_hash_entry): New inline function.  Use
2339         throughout to replace casts.
2340         (branch_reloc_hash_match): Remove const from params.
2341         (use_local_plt): New function.
2342         (allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
2343         (build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
2344         Use use_local_plt.
2345         * elf32-ppc.c (use_local_plt): New function.
2346         (allocate_dynrelocs, ppc_elf_relocate_section),
2347         (write_global_sym_plt): Use use_local_plt.
2349 2021-01-17  H.J. Lu  <hongjiu.lu@intel.com>
2351         PR ld/27193
2352         * elflink.c (elf_create_symbuf): Also ignore section symbols.
2354 2021-01-16  H.J. Lu  <hongjiu.lu@intel.com>
2356         PR ld/23169
2357         * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
2358         check pointer_equality_needed.
2360 2021-01-15  H.J. Lu  <hongjiu.lu@intel.com>
2362         * elf-linker-x86.h (elf_linker_x86_params): Add
2363         report_relative_reloc.
2364         * elf32-i386.c (elf_i386_relocate_section): Call
2365         _bfd_x86_elf_link_report_relative_reloc to report relative
2366         relocations for -z report-relative-reloc.
2367         (elf_i386_finish_dynamic_symbol): Likewse.
2368         * elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
2369         (elf_x86_64_finish_dynamic_symbol): Likewse.
2370         * elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
2371         function.
2372         * elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
2373         prototype.
2375 2021-01-16  Alan Modra  <amodra@gmail.com>
2377         * compress.c (decompress_contents): Tidy inflateEnd result test.
2379 2021-01-16  Alan Modra  <amodra@gmail.com>
2381         PR 26002
2382         * elflink.c (elf_link_output_extsym): Use version 1 in
2383         .gnu.version for undefined unversioned symbols.
2385 2021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2387         * elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
2388         caused the by previous commit accidentally.
2390 2021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2392         * elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
2393         also aligned the code.
2395 2021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2397         * elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
2399 2021-01-15  Nelson Chu  <nelson.chu@sifive.com>
2401         * elfnn-riscv.c: Comments tidy and improvement.
2402         * elfxx-riscv.c: Likewise.
2403         * elfxx-riscv.h: Likewise.
2405 2021-01-14  H.J. Lu  <hongjiu.lu@intel.com>
2407         PR ld/26688
2408         * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
2409         section for R_BFIN_FUNCDESC.
2411 2021-01-14  Nick Clifton  <nickc@redhat.com>
2413         * elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
2415 2021-01-13  Alan Modra  <amodra@gmail.com>
2417         * Makefile.in: Regenerate.
2418         * doc/Makefile.in: Regenerate.
2420 2021-01-13  Alan Modra  <amodra@gmail.com>
2422         PR 27160
2423         * section.c (struct bfd_section): Remove pattern field.
2424         (BFD_FAKE_SECTION): Adjust to suit.
2425         * bfd-in2.h: Regenerate.
2426         * elflink.c (compare_link_order, elf_fixup_link_order): Delete.
2427         (bfd_elf_final_link): Don't call elf_fixup_link_order.
2429 2021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
2431         PR binutils/26792
2432         * configure.ac: Use GNU_MAKE_JOBSERVER.
2433         * aclocal.m4: Regenerated.
2434         * configure: Likewise.
2436 2021-01-12  H.J. Lu  <hongjiu.lu@intel.com>
2438         PR ld/27171
2439         * reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
2440         R_AMD64_DIR32 relocations for PE/x86-64 inputs.
2442 2021-01-11  H.J. Lu  <hongjiu.lu@intel.com>
2444         PR ld/27173
2445         * configure: Regenerated.
2447 2021-01-11  Nick Clifton  <nickc@redhat.com>
2449         * po/fr.po: Updated French translation.
2450         * po/pt.po: Updated Portuguese translation.
2451         * po/sr.po: Updated Serbian translation.
2452         * po/uk.po: Updated Ukranian translation.
2454 2021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
2456         * configure: Regenerated.
2458 2021-01-09  H.J. Lu  <hongjiu.lu@intel.com>
2460         PR ld/27166
2461         * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
2462         -z lam-u48 and -z lam-u57.
2464 2021-01-09  Nick Clifton  <nickc@redhat.com>
2466         * version.m4: Change to 2.36.50.
2467         * configure: Regenerate.
2468         * po/bfd.pot: Regenerate.
2470 2021-01-09  Nick Clifton  <nickc@redhat.com>
2472         * 2.36 release branch crated.
2474 2021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2476         * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
2477         LAM_U57 when setting LAM_U48.
2479 2021-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2481         PR ld/26256
2482         PR ld/27160
2483         * elflink.c (elf_fixup_link_order): Verify that fixing up
2484         SHF_LINK_ORDER doesn't increase the output section size.
2486 2021-01-09  Alan Modra  <amodra@gmail.com>
2488         * configure: Regenerate.
2490 2021-01-07  Samuel Thibault  <samuel.thibault@gnu.org>
2492         * configure: Regenerate.
2494 2021-01-07  H.J. Lu  <hongjiu.lu@intel.com>
2496         PR 27109
2497         * aix386-core.c (core_aix386_vec): Initialize
2498         keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
2499         * aout-target.h (MY (vec)): Likewise.
2500         * binary.c (binary_vec): Likewise.
2501         * cisco-core.c (core_cisco_be_vec): Likewise.
2502         (core_cisco_le_vec): Likewise.
2503         * coff-alpha.c (alpha_ecoff_le_vec): Likewise.
2504         * coff-i386.c (TARGET_SYM): Likewise.
2505         (TARGET_SYM_BIG): Likewise.
2506         * coff-ia64.c (TARGET_SYM): Likewise.
2507         * coff-mips.c (mips_ecoff_le_vec): Likewise.
2508         (mips_ecoff_be_vec): Likewise.
2509         (mips_ecoff_bele_vec): Likewise.
2510         * coff-rs6000.c (rs6000_xcoff_vec): Likewise.
2511         (powerpc_xcoff_vec): Likewise.
2512         * coff-sh.c (sh_coff_small_vec): Likewise.
2513         (sh_coff_small_le_vec): Likewise.
2514         * coff-tic30.c (tic30_coff_vec): Likewise.
2515         * coff-tic54x.c (tic54x_coff0_vec): Likewise.
2516         (tic54x_coff0_beh_vec): Likewise.
2517         (tic54x_coff1_vec): Likewise.
2518         (tic54x_coff1_beh_vec): Likewise.
2519         (tic54x_coff2_vec): Likewise.
2520         (tic54x_coff2_beh_vec): Likewise.
2521         * coff-x86_64.c (TARGET_SYM): Likewise.
2522         (TARGET_SYM_BIG): Likewise.
2523         * coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
2524         (rs6000_xcoff64_aix_vec): Likewise.
2525         * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
2526         (CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
2527         (CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
2528         * elfxx-target.h (TARGET_BIG_SYM): Likewise.
2529         (TARGET_LITTLE_SYM): Likewise.
2530         * hppabsd-core.c (core_hppabsd_vec): Likewise.
2531         * hpux-core.c (core_hpux_vec): Likewise.
2532         * i386msdos.c (i386_msdos_vec): Likewise.
2533         * ihex.c (ihex_vec): Likewise.
2534         * irix-core.c (core_irix_vec): Likewise.
2535         * mach-o-target.c (TARGET_NAME): Likewise.
2536         * mmo.c (mmix_mmo_vec): Likewise.
2537         * netbsd-core.c (core_netbsd_vec): Likewise.
2538         * osf-core.c (core_osf_vec): Likewise.
2539         * pdp11.c (MY (vec)): Likewise.
2540         * pef.c (pef_vec): Likewise.
2541         (pef_xlib_vec): Likewise.
2542         * plugin.c (plugin_vec): Likewise.
2543         * ppcboot.c (powerpc_boot_vec): Likewise.
2544         * ptrace-core.c (core_ptrace_vec): Likewise.
2545         * sco5-core.c (core_sco5_vec): Likewise.
2546         * som.c (hppa_som_vec): Likewise.
2547         * srec.c (srec_vec): Likewise.
2548         (symbolsrec_vec): Likewise.
2549         * tekhex.c (tekhex_vec): Likewise.
2550         * trad-core.c (core_trad_vec): Likewise.
2551         * verilog.c (verilog_vec): Likewise.
2552         * vms-alpha.c (alpha_vms_vec): Likewise.
2553         * vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
2554         * wasm-module.c (wasm_vec): Likewise.
2555         * xsym.c (sym_vec): Likewise.
2556         * elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
2557         isn't set.
2558         (elf_map_symbols): Don't include ignored section symbols.
2559         * elfcode.h (elf_slurp_symbol_table): Also set
2560         BSF_SECTION_SYM_USED on STT_SECTION symbols.
2561         * elflink.c (bfd_elf_final_link): Generated section symbols only
2562         when emitting relocations or reqired.
2563         * elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2564         * syms.c (BSF_SECTION_SYM_USED): New.
2565         * targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2566         (bfd_target): Add keep_unused_section_symbols.
2567         (bfd_keep_unused_section_symbols): New.
2568         * bfd-in2.h: Regenerated.
2570 2021-01-07  Nick Clifton  <nickc@redhat.com>
2572         PR 25713
2573         * bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
2574         absolute paths and check to see if they are longer than MAX_PATH.
2576 2021-01-07  Philipp Tomsich  <prt@gnu.org>
2578         * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
2580 2021-01-07  Claire Xenia Wolf  <claire@symbioticeda.com>
2581             Jim Wilson  <jimw@sifive.com>
2582             Andrew Waterman  <andrew@sifive.com>
2583             Maxim Blinov  <maxim.blinov@embecosm.com>
2584             Kito Cheng  <kito.cheng@sifive.com>
2585             Nelson Chu  <nelson.chu@sifive.com>
2587         * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
2589 2021-01-06  H.J. Lu  <hongjiu.lu@intel.com>
2591         * elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
2592         (bfinfdpic_check_relocs): Likewise.
2594 2021-01-06  Alan Modra  <amodra@gmail.com>
2596         * elf32-score.c (s3_bfd_score_info_to_howto): Report an error
2597         on unknown r_type.
2598         * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
2600 2021-01-06  Alan Modra  <amodra@gmail.com>
2602         * config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
2603         (sparc64-*-solaris2*): Add sparc_elf64_vec and
2604         sparc_elf32_vec.
2606 2021-01-06  Marcus Comstedt  <marcus@mc.pp.se>
2608         * config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
2609         riscvbe*-*-*.  Also added riscv_elf[32|64]_be_vec.
2610         * configure.ac: Handle riscv_elf[32|64]_be_vec.
2611         * configure: Regenerate.
2612         * elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
2613         riscv_is_insn_reloc.
2614         (riscv_get_insn): RISC-V instructions are always little endian, but
2615         bfd_get may be used for big-endian, so add new riscv_get_insn to handle
2616         the insturctions.
2617         (riscv_put_insn): Likewsie.
2618         (riscv_is_insn_reloc): Check if we are relocaing an instruction.
2619         (perform_relocation): Call riscv_is_insn_reloc to decide if we should
2620         use riscv_[get|put]_insn or bfd_[get|put].
2621         (riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
2622         or bfd_[get|put]l16 for code.
2623         (riscv_elf_relocate_section): Likewise.
2624         (riscv_elf_finish_dynamic_symbol): Likewise.
2625         (riscv_elf_finish_dynamic_sections): Likewise.
2626         (_bfd_riscv_relax_call): Likewise.
2627         (_bfd_riscv_relax_lui): Likewise.
2628         (_bfd_riscv_relax_align): Likewise.
2629         (_bfd_riscv_relax_pc): Likewise.
2630         (riscv_elf_object_p): Handled for big endian.
2631         (TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
2632         * targets.c: Add riscv_elf[32|64]_be_vec.
2633         (_bfd_target_vector): Likewise.
2635 2021-01-05  Alan Modra  <amodra@gmail.com>
2637         * elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
2638         for relocatable executable.
2640 2021-01-05  Alan Modra  <amodra@gmail.com>
2642         * vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
2644 2021-01-05  Nelson Chu  <nelson.chu@sifive.com>
2646         * elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
2647         make sure gp symbol is output as a dynamic symbol.
2649 2021-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2651         PR ld/26256
2652         * elflink.c (compare_link_order): Place unordered sections before
2653         ordered sections.
2654         (elf_fixup_link_order): Add a link info argument.  Allow mixed
2655         ordered and unordered input sections for non-relocatable link.
2656         Sort the consecutive bfd_indirect_link_order sections with the
2657         same pattern.  Change the offsets of the bfd_indirect_link_order
2658         sections only.
2659         (bfd_elf_final_link): Pass info to elf_fixup_link_order.
2660         * section.c (bfd_section): Add pattern.
2661         (BFD_FAKE_SECTION): Initialize pattern to NULL.
2662         * bfd-in2.h: Regenerated.
2664 2021-01-04  Alexander Fedotov  <alfedotov@gmail.com>
2666         * elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
2667         of private flags with 0x.
2668         * elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
2670 2021-01-04  Alan Modra  <amodra@gmail.com>
2672         PR 26822
2673         * elflink.c (elf_link_input_bfd): Use the file base name in
2674         linker generated STT_FILE symbols.
2676 2021-01-04  Nelson Chu  <nelson.chu@sifive.com>
2678         * elfxx-riscv.c (riscv_compare_subsets): Removed static.
2679         * elfxx-riscv.h: Add declaration.
2680         * elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
2681         riscv_compare_subsets to check the orders.
2682         (riscv_skip_prefix): Removed.
2683         (riscv_prefix_cmp): Removed.
2685 2021-01-04  Alan Modra  <amodra@gmail.com>
2687         PR 26741
2688         * elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
2689         calculating subset version length.
2691 2021-01-01  Nicolas Boulenguez  <nicolas@debian.org>
2693         * xcofflink.c: Correct spelling in comments.
2695 2021-01-01  Alan Modra  <amodra@gmail.com>
2697         Update year range in copyright notice of all files.
2699 For older changes see ChangeLog-2020
2701 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2703 Copying and distribution of this file, with or without modification,
2704 are permitted in any medium without royalty provided the copyright
2705 notice and this notice are preserved.
2707 Local Variables:
2708 mode: change-log
2709 left-margin: 8
2710 fill-column: 74
2711 version-control: never
2712 End: