bfd: xtensa: fix PR ld/25630
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 116b89397da610abcf8b7e9d7fd1ce2b9548a333..838b07faf1718261f37530bdd7c724e9bc8a814f 100644 (file)
@@ -1,3 +1,160 @@
+2020-03-05  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic
+       relocation sections for any removed reference to a dynamic symbol.
+
+2020-03-05  Nick Clifton  <nickc@redhat.com>
+
+       * elf-bfd.h (struct elf_backend_data): Add new fields:
+       init_secondary_reloc_section, slurp_secondary_reloc_section,
+       write_secondary_reloc_section.
+       (_bfd_elf_init_secondary_reloc_section): Prototype.
+       (_bfd_elf_slurp_secondary_reloc_section): Prototype.
+       (_bfd_elf_write_secondary_reloc_section): Prototype.
+       * elf.c ( bfd_section_from_shdr): Invoke the new
+       init_secondary_reloc_section backend function, if defined, when a
+       second reloc section is encountered.
+       (swap_out_syms): Invoke the new symbol_section_index function, if
+       defined, when computing the section index of an OS/PROC specific
+       symbol.
+       (_bfd_elf_init_secondary_reloc_section): New function.
+       (_bfd_elf_slurp_secondary_reloc_section): New function.
+       (_bfd_elf_write_secondary_reloc_section): New function.
+       (_bfd_elf_copy_special_section_fields): New function.
+       * elfcode.h (elf_write_relocs): Invoke the new
+       write_secondary_relocs function, if defined, in order to emit
+       secondary relocs.
+       (elf_slurp_reloc_table): Invoke the new slurp_secondary_relocs
+       function, if defined, in order to read in secondary relocs.
+       * elfxx-target.h (elf_backend_copy_special_section_fields):
+       Provide a non-NULL default definition.
+       (elf_backend_init_secondary_reloc_section): Likewise.
+       (elf_backend_slurp_secondary_reloc_section): Likewise.
+       (elf_backend_write_secondary_reloc_section): Likewise.
+       (struct elf_backend_data elfNN_bed): Add initialisers for the new
+       fields.
+        * configure.ac (score_elf32_[bl]e_vec): Add elf64.lo
+        * configure: Regenerate.
+
+2020-03-05  Alan Modra  <amodra@gmail.com>
+
+       * archive64.c (_bfd_archive_64_bit_slurp_armap): Check parsed_size
+       against file size before allocating memory.  Use bfd_alloc rather
+       than bfd_zalloc for carsym/strings memory.
+
+2020-03-04  Alan Modra  <amodra@gmail.com>
+
+       * elf.c (elf_fake_sections): Ensure sh_addralign is such that
+       sh_addr mod sh_addalign is zero.
+
+2020-03-04  Alan Modra  <amodra@gmail.com>
+
+       * format.c (bfd_check_format_matches): Call cleanup on error exit.
+
+2020-03-03  Alan Modra  <amodra@gmail.com>
+
+       * format.c (struct bfd_preserve): Add cleanup field.
+       (bfd_preserve_save): Add cleanup param and save.
+       (bfd_preserve_restore): Return cleanup.
+       (bfd_preserve_finish): Call the cleanup for the discarded match.
+       (bfd_check_format_matches): Pass cleanup to bfd_preserve_save,
+       and clear when preserving a match.  Restore cleanup too when
+       restoring that match.
+
+2020-03-02  Alan Modra  <amodra@gmail.com>
+
+       * cisco-core.c (cisco_core_file_p): Return bfd_cleanup.
+       * hpux-core.c (hpux_core_core_file_p): Update prototype.
+       * sco5-core.c (sco5_core_file_p): Return bfd_cleanup.
+       (core_sco5_vec): Correct initialisers.
+
+2020-03-02  Alan Modra  <amodra@gmail.com>
+
+       * aix386-core.c (aix386_core_file_p): Return bfd_cleanup.
+       * aix5ppc-core.c (xcoff64_core_p): Likewise.
+       * cisco-core.c (cisco_core_file_validate): Likewise.
+       * hppabsd-core.c (hppabsd_core_core_file_p): Likewise.
+       * hpux-core.c (hpux_core_core_file_p): Likewise.
+       * irix-core.c (irix_core_core_file_p): Likewise.
+       * lynx-core.c (lynx_core_file_p): Likewise.
+       * netbsd-core.c (netbsd_core_file_p): Likewise.
+       * osf-core.c (osf_core_core_file_p): Likewise.
+       * ptrace-core.c (ptrace_unix_core_file_p): Likewise.
+       * sco5-core.c (sco5_core_file_p): Likewise.
+
+2020-03-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * trad-core.c (trad_unix_core_file_p): Return bfd_cleanup.
+
+2020-03-02  Alan Modra  <amodra@gmail.com>
+
+       * targets.c (bfd_cleanup): New typedef.
+       (struct bfd <_bfd_check_format>): Return a bfd_cleanup.
+       * libbfd-in.h (_bfd_no_cleanup): Define.
+       * format.c (bfd_reinit): Add cleanup parameter, call it.
+       (bfd_check_format_matches): Set cleanup from _bfd_check_format
+       call and pass to bfd_reinit.  Delete temp, use abfd->xvec instead.
+       * aout-target.h (callback, object_p): Return bfd_cleanup.
+       * aout-tic30.c (tic30_aout_callback, tic30_aout_object_p): Likewise.
+       * archive.c (bfd_generic_archive_p): Likewise.
+       * binary.c (binary_object_p): Likewise.
+       * coff-alpha.c (alpha_ecoff_object_p): Likewise.
+       * coff-ia64.c (ia64coff_object_p): Likewise.
+       * coff-rs6000.c (_bfd_xcoff_archive_p, rs6000coff_core_p): Likewise.
+       * coff-sh.c (coff_small_object_p): Likewise.
+       * coff-stgo32.c (go32_check_format): Likewise.
+       * coff64-rs6000.c (xcoff64_archive_p, rs6000coff_core_p),
+       (xcoff64_core_p): Likewise.
+       * coffgen.c (coff_real_object_p, coff_object_p): Likewise.
+       * elf-bfd.h (bfd_elf32_object_p, bfd_elf32_core_file_p),
+       (bfd_elf64_object_p, bfd_elf64_core_file_p): Likewise.
+       * elfcode.h (elf_object_p): Likewise.
+       * elfcore.h (elf_core_file_p): Likewise.
+       * i386msdos.c (msdos_object_p): Likewise.
+       * ihex.c (ihex_object_p): Likewise.
+       * libaout.h (some_aout_object_p): Likewise.
+       * libbfd-in.h (bfd_generic_archive_p, _bfd_dummy_target),
+       (_bfd_vms_lib_alpha_archive_p, _bfd_vms_lib_ia64_archive_p): Likewise.
+       * libbfd.c (_bfd_dummy_target): Likewise.
+       * libcoff-in.h (coff_object_p): Likewise.
+       * mach-o-aarch64.c (bfd_mach_o_arm64_object_p),
+       (bfd_mach_o_arm64_core_p): Likewise.
+       * mach-o-arm.c (bfd_mach_o_arm_object_p),
+       (bfd_mach_o_arm_core_p): Likewise.
+       * mach-o-i386.c (bfd_mach_o_i386_object_p),
+       (bfd_mach_o_i386_core_p): Likewise.
+       * mach-o-x86-64.c (bfd_mach_o_x86_64_object_p),
+       (bfd_mach_o_x86_64_core_p): Likewise.
+       * mach-o.c (bfd_mach_o_header_p, bfd_mach_o_gen_object_p),
+       (bfd_mach_o_gen_core_p, bfd_mach_o_fat_archive_p): Likewise.
+       * mach-o.h (bfd_mach_o_object_p, bfd_mach_o_core_p),
+       (bfd_mach_o_fat_archive_p, bfd_mach_o_header_p): Likewise.
+       * mmo.c (mmo_object_p): Likewise.
+       * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
+       * peicode.h (coff_real_object_p, pe_ILF_object_p),
+       (pe_bfd_object_p): Likewise.
+       * plugin.c (ld_plugin_object_p, bfd_plugin_object_p): Likewise.
+       * ppcboot.c (ppcboot_object_p): Likewise.
+       * rs6000-core.c (rs6000coff_core_p): Likewise.
+       * som.c (som_object_setup, som_object_p): Likewise.
+       * srec.c (srec_object_p, symbolsrec_object_p): Likewise.
+       * tekhex.c (tekhex_object_p): Likewise.
+       * vms-alpha.c (alpha_vms_object_p): Likewise.
+       * vms-lib.c (_bfd_vms_lib_archive_p, _bfd_vms_lib_alpha_archive_p),
+       (_bfd_vms_lib_ia64_archive_p, _bfd_vms_lib_txt_archive_p): Likewise.
+       * wasm-module.c (wasm_object_p): Likewise.
+       * xsym.c (bfd_sym_object_p): Likewise.
+       * xsym.h (bfd_sym_object_p): Likewise.
+       * aoutx.h (some_aout_object_p): Likewise, and callback parameter
+       return type.
+       * pdp11.c (some_aout_object_p): Likewise.
+       * plugin.c (register_ld_plugin_object_p): Update object_p
+       parameter type.
+       * plugin.h (register_ld_plugin_object_p): Likewise.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+       * libcoff.h: Regenerate.
+
 2020-03-02  Alan Modra  <amodra@gmail.com>
 
        * coff-alpha.c (alpha_ecoff_le_vec): Add SEC_SMALL_DATA to
This page took 0.025133 seconds and 4 git commands to generate.