Pass link_info to _bfd_merge_private_bfd_data
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index b54d0c938ea9ac99f8dde3a499254dd47e2cf246..9a4e71e46c47a77641ba65f0bb08f6155003007e 100644 (file)
@@ -1,3 +1,302 @@
+2016-10-07  Alan Modra  <amodra@gmail.com>
+
+       * targets.c (bfd_target <_bfd_merge_private_bfd_data>): Replace
+       obfd param with struct bfd_link_info param.  Update all callers.
+       * linker.c (bfd_merge_private_bfd_data): Likewise.
+       (_bfd_generic_verify_endian_match): Likewise.
+       * aoutf1.h (sunos_merge_private_bfd_data): Likewise.
+       * coff-arm.c (coff_arm_merge_private_bfd_data): Likewise.
+       * elf-attrs.c (_bfd_elf_merge_object_attributes): Likewise.
+       * elf-bfd.h (_bfd_elf_ppc_merge_fp_attributes): Likewise.
+       (_bfd_elf_merge_object_attributes): Likewise.
+       * elf-m10300.c (_bfd_mn10300_elf_merge_private_bfd_data): Likewise.
+       * elf-s390-common.c (elf_s390_merge_obj_attributes): Likewise.
+       * elf32-arc.c (arc_elf_merge_private_bfd_data): Likewise.
+       * elf32-arm.c (elf32_arm_merge_eabi_attributes): Likewise.
+       (elf32_arm_merge_private_bfd_data): Likewise.
+       * elf32-bfin.c (elf32_bfin_merge_private_bfd_data): Likewise.
+       * elf32-cr16.c (_bfd_cr16_elf_merge_private_bfd_data): Likewise.
+       * elf32-cris.c (cris_elf_merge_private_bfd_data): Likewise.
+       * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise.
+       * elf32-h8300.c (elf32_h8_merge_private_bfd_data): Likewise.
+       * elf32-i370.c (i370_elf_merge_private_bfd_data): Likewise.
+       * elf32-iq2000.c (iq2000_elf_merge_private_bfd_data): Likewise.
+       * elf32-m32c.c (m32c_elf_merge_private_bfd_data): Likewise.
+       * elf32-m32r.c (m32r_elf_merge_private_bfd_data): Likewise.
+       * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Likewise.
+       * elf32-m68hc1x.h (_bfd_m68hc11_elf_merge_private_bfd_data): Likewise.
+       * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Likewise.
+       * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise.
+       * elf32-mep.c (mep_elf_merge_private_bfd_data): Likewise.
+       * elf32-msp430.c (elf32_msp430_merge_mspabi_attributes): Likewise.
+       (elf32_msp430_merge_private_bfd_data): Likewise.
+       * elf32-mt.c (mt_elf_merge_private_bfd_data): Likewise.
+       * elf32-nds32.c (nds32_elf_merge_private_bfd_data): Likewise.
+       * elf32-nios2.c (nios2_elf32_merge_private_bfd_data): Likewise.
+       * elf32-or1k.c (elf32_or1k_merge_private_bfd_data): Likewise.
+       * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Likewise.
+       (ppc_elf_merge_obj_attributes): Likewise.
+       (ppc_elf_merge_private_bfd_data): Likewise.
+       * elf32-rl78.c (rl78_elf_merge_private_bfd_data): Likewise.
+       * elf32-rx.c (rx_elf_merge_private_bfd_data): Likewise.
+       * elf32-s390.c (elf32_s390_merge_private_bfd_data): Likewise.
+       * elf32-score.c (s3_elf32_score_merge_private_bfd_data): Likewise.
+       (elf32_score_merge_private_bfd_data): Likewise.
+       * elf32-score.h (s7_elf32_score_merge_private_bfd_data): Likewise.
+       * elf32-score7.c (s7_elf32_score_merge_private_bfd_data): Likewise.
+       * elf32-sh.c (sh_merge_bfd_arch, sh_elf_merge_private_data): Likewise.
+       * elf32-sh64.c (sh64_elf_merge_private_data): Likewise.
+       * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Likewise.
+       * elf32-tic6x.c (elf32_tic6x_merge_attributes): Likewise.
+       (elf32_tic6x_merge_private_bfd_data): Likewise.
+       * elf32-v850.c (v850_elf_merge_private_bfd_data): Likewise.
+       * elf32-vax.c (elf32_vax_merge_private_bfd_data): Likewise.
+       * elf32-visium.c (visium_elf_merge_private_bfd_data): Likewise.
+       * elf32-xtensa.c (elf_xtensa_merge_private_bfd_data): Likewise.
+       * elf64-ia64-vms.c (elf64_ia64_merge_private_bfd_data): Likewise.
+       * elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Likewise.
+       * elf64-s390.c (elf64_s390_merge_private_bfd_data): Likewise.
+       * elf64-sh64.c (sh_elf64_merge_private_data): Likewise.
+       * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise.
+       * elfnn-aarch64.c (elfNN_aarch64_merge_private_bfd_data): Likewise.
+       * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): Likewise.
+       * elfxx-mips.c (mips_elf_merge_obj_e_flags): Likewise.
+       (mips_elf_merge_obj_attributes): Likewise.
+       (_bfd_mips_elf_merge_private_bfd_data): Likewise.
+       * elfxx-mips.h (_bfd_mips_elf_merge_private_bfd_data): Likewise.
+       * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): Likewise.
+       * elfxx-sparc.h (_bfd_sparc_elf_merge_private_bfd_data): Likewise.
+       * elfxx-target.h (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
+       * elfxx-tilegx.c (_bfd_tilegx_elf_merge_private_bfd_data): Likewise.
+       * elfxx-tilegx.h (_bfd_tilegx_elf_merge_private_bfd_data): Likewise.
+       * libbfd-in.h (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2016-10-07  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am (LIBBFD_H_FILES): Update.
+       * doc/Makefile.am (LIBBFD_H_DEP): Likewise.
+       * cpu-sh.c (sh_merge_bfd_arch): Move to..
+       * elf32-sh.c: ..here, and make static.
+       * elf32-arc.c (arc_elf_merge_private_bfd_data): Delete extraneous
+       error.
+       * elf32-cris.c (cris_elf_merge_private_bfd_data): Don't call
+       _bfd_generic_verify_endian_match.
+       * elf32-microblaze.c (microblaze_elf_merge_private_bfd_data): Delete.
+       (bfd_elf32_bfd_merge_private_bfd_data): Define as
+       _bfd_generic_verify_endian_match.
+       * elf32-mt.c (mt_elf_merge_private_bfd_data): Don't test
+       boolean == FALSE.
+       * elf32-xgate.c (_bfd_xgate_elf_merge_private_bfd_data): Delete.
+       (bfd_elf32_bfd_merge_private_bfd_data): Don't define.
+       * elf32-xgate.h (_bfd_xgate_elf_merge_private_bfd_data): Delete.
+       * libbfd-in.h (_bfd_generic_verify_endian_match): Delete.
+       * libbfd.c (_bfd_generic_verify_endian_match): Move to..
+       * linker.c: ..here, and make internal.
+       * bfd.c (bfd_merge_private_bfd_data): Move to..
+       * linker.c: ..here.
+       * Makefile.in: Regenerate.
+       * doc/Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2016-10-06  Alan Modra  <amodra@gmail.com>
+
+       * coff-h8300.c: Spell fall through comments consistently.
+       * coffgen.c: Likewise.
+       * elf32-hppa.c: Likewise.
+       * elf32-ppc.c: Likewise.
+       * elf32-score.c: Likewise.
+       * elf32-score7.c: Likewise.
+       * elf64-ppc.c: Likewise.
+       * elfxx-aarch64.c: Likewise.
+       * elfxx-mips.c: Likewise.
+       * cpu-ns32k.c: Add missing fall through comments.
+       * elf-m10300.c: Likewise.
+       * elf32-arm.c: Likewise.
+       * elf32-avr.c: Likewise.
+       * elf32-bfin.c: Likewise.
+       * elf32-frv.c: Likewise.
+       * elf32-i386.c: Likewise.
+       * elf32-microblaze.c: Likewise.
+       * elf32-nds32.c: Likewise.
+       * elf32-ppc.c: Likewise.
+       * elf32-rl78.c: Likewise.
+       * elf32-rx.c: Likewise.
+       * elf32-s390.c: Likewise.
+       * elf32-sh.c: Likewise.
+       * elf32-tic6x.c: Likewise.
+       * elf64-ia64-vms.c: Likewise.
+       * elf64-ppc.c: Likewise.
+       * elf64-s390.c: Likewise.
+       * elf64-x86-64.c: Likewise.
+       * elflink.c: Likewise.
+       * elfnn-aarch64.c: Likewise.
+       * elfnn-ia64.c: Likewise.
+       * ieee.c: Likewise.
+       * oasys.c: Likewise.
+       * pdp11.c: Likewise.
+       * srec.c: Likewise.
+       * versados.c: Likewise.
+
+2016-10-06  Alan Modra  <amodra@gmail.com>
+
+       * coffcode.h (coff_slurp_symbol_table): Revert accidental commit
+       made 2015-01-08.
+       * elf32-nds32.c (nds32_elf_grok_psinfo): Add missing break.
+       * reloc.c (bfd_default_reloc_type_lookup): Add missing breaks.
+
+2016-10-06  Alan Modra  <amodra@gmail.com>
+
+       * elf32-epiphany.c (epiphany_final_link_relocate): Use bitwise
+       OR in arithmetic expression, not boolean OR.
+
+2016-09-30  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am (BFD_H_FILES): Add linker.c and simple.c.  Sort
+       as per comment at head of bfd-in2.h.
+       * Makefile.in: Regenerate.
+
+2016-09-30  Alan Modra  <amodra@gmail.com>
+
+       * aout-adobe.c: Replace (*_bfd_error_handler) (...) with
+       _bfd_error_handler (...) throughout.
+       * aout-cris.c, * aoutx.h, * archive.c, * bfd.c, * binary.c,
+       * cache.c, * coff-alpha.c, * coff-arm.c, * coff-h8300.c,
+       * coff-i860.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c,
+       * coff-sh.c, * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c,
+       * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c,
+       * coffswap.h, * cpu-arm.c, * cpu-m68k.c, * cpu-sh.c, * dwarf2.c,
+       * ecoff.c, * elf-eh-frame.c, * elf-m10300.c, * elf.c, * elf32-arc.c,
+       * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c,
+       * elf32-cris.c, * elf32-crx.c, * elf32-dlx.c, * elf32-frv.c,
+       * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c, * elf32-lm32.c,
+       * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c,
+       * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c,
+       * elf32-mips.c, * elf32-nds32.c, * elf32-nios2.c, * elf32-or1k.c,
+       * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-s390.c,
+       * elf32-score.c, * elf32-score7.c, * elf32-sh.c, * elf32-sh64.c,
+       * elf32-sparc.c, * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c,
+       * elf32-v850.c, * elf32-vax.c, * elf32-xtensa.c, * elf64-alpha.c,
+       * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c,
+       * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c, * elf64-sparc.c,
+       * elf64-x86-64.c, * elfcode.h, * elfcore.h, * elflink.c,
+       * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c, * elfxx-mips.c,
+       * elfxx-sparc.c, * elfxx-tilegx.c, * hpux-core.c, * i386linux.c,
+       * ieee.c, * ihex.c, * libbfd.c, * linker.c, * m68klinux.c,
+       * mach-o.c, * merge.c, * mmo.c, * oasys.c, * osf-core.c, * pdp11.c,
+       * pe-mips.c, * peXXigen.c, * pef.c, * plugin.c, * reloc.c,
+       * rs6000-core.c, * sco5-core.c, * som.c, * sparclinux.c, * srec.c,
+       * stabs.c, * syms.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c,
+       * xcofflink.c: Likewise.
+
+2016-09-30  Alan Modra  <amodra@gmail.com>
+
+       * bfd-in.h: Include stdarg.h.
+       * bfd.c (bfd_error_handler_type): Make like vprintf.
+       (_bfd_error_internal): Rename from _bfd_error_handler.  Make static.
+       (error_handler_internal): New function, split out from..
+       (_bfd_default_error_handler): ..here.  Rename to _bfd_error_handler.
+       (bfd_set_error_handler): Update.
+       (bfd_get_error_handler, bfd_get_assert_handler): Delete.
+       (_bfd_assert_handler): Make static.
+       * coffgen.c (null_error_handler): Update params.
+       * elf-bfd.h (struct elf_backend_data <link_order_error_handler>):
+       Don't use bfd_error_handler_type.
+       * elf64-mmix.c (mmix_dump_bpo_gregs): Likewise.
+       * elfxx-target.h (elf_backend_link_order_error_handler): Default
+       to _bfd_error_handler.
+       * libbfd-in.h (_bfd_default_error_handler): Don't declare.
+       (bfd_assert_handler_type): Likewise.
+       (_bfd_error_handler): Update.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2016-09-28  Akihiko Odaki  <akihiko.odaki.4i@stu.hosei.ac.jp>
+
+       PR ld/20636
+       * elf-bfd.h (struct elf_backend_data): Delete
+       elf_backend_count_output_relocs callback and add
+       elf_backend_update_relocs.
+       * elf32-arm.c (elf32_arm_count_output_relocs): Deleted.
+       (emit_relocs): Deleted.
+       (elf32_arm_emit_relocs): Deleted.
+       (elf_backend_emit_relocs): Updated not to use the old functions.
+       (elf32_arm_update_relocs): New function.
+       (elf_backend_update_relocs): New define.
+       * elflink.c (bfd_elf_final_link): Add additional_reloc_count to the
+       relocation count. Call elf_backend_emit_relocs.
+       (_bfd_elf_size_reloc_section): Do not call
+       elf_backend_count_output_relocs.
+       * elfxx-target.h (elf_backend_count_output_relocs): Deleted.
+       (elf_backend_update_relocs): New define.
+
+2016-09-28  Christophe Lyon  <christophe.lyon@linaro.org>
+
+       PR ld/20608
+       * elf32-arm.c (arm_type_of_stub): Handle the case when the pre-PLT
+       Thumb-ARM stub is too far.
+
+2016-09-27  Nick Clifton  <nickc@redhat.com>
+
+       PR ld/20634
+       * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Put 0 in the
+       timestamp field if real time values are not being stored.
+
+2016-09-26  Vlad Zakharov  <vzakhar@synopsys.com>
+
+       * warning.m4 (AC_EGREP_CPP_FOR_BUILD): Introduce macro
+       to verify CC_FOR_BUILD compiler.
+       (AM_BINUTILS_WARNINGS): Introduce ac_cpp_for_build variable
+       and add CC_FOR_BUILD compiler checks.
+       * Makefile.in: Regenerate.
+       * configure: Likewise.
+       * doc/Makefile.in: Likewise.
+
+2016-09-26  Awson  <kyrab@mail.ru>
+
+       PR ld/17955
+       * coff-x86_64.c (coff_amd64_rtype_to_howto): Use an 8 byte offset
+       for R_AMD64_PCRQUAD relocations.
+
+2016-09-26  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (_bfd_elf_ppc_merge_fp_attributes): Declare.
+       * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): New function.
+       (ppc_elf_merge_obj_attributes): Use it.  Don't copy first file
+       attributes, merge them.  Don't warn about undefined tag bits,
+       or copy unknown values to output.
+       * elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Call
+       _bfd_elf_ppc_merge_fp_attributes.
+
+2016-09-23  Akihiko Odaki  <akihiko.odaki.4i@stu.hosei.ac.jp>
+
+       PR ld/20595
+       * elf-bfd.h (struct elf_backend_data): Add
+       elf_backend_count_output_relocs callback to count relocations in
+       the final output.
+       * elf-arm.c (elf32_arm_add_relocation): Deleted.
+       (elf32_arm_write_section): Move additional relocation to emit_relocs.
+       (elf32_arm_count_output_relocs): New function.
+       (emit_relocs): New function.
+       (elf32_arm_emit_relocs): New function.
+       (elf32_arm_vxworks_emit_relocs): New function.
+       (elf_backend_emit_relocs): Updated to use the new functions.
+       (elf_backend_count_output_relocs): New define.
+       * bfd/elflink.c (bfd_elf_final_link): Do not add additional_reloc_count
+       to the relocation count.
+       (_bfd_elf_link_size_reloc_section): Use callback to count the
+       relocations which will be in output.
+       (_bfd_elf_default_count_output_relocs): New function.
+       * bfd/elfxx-target.h (elf_backend_count_output_relocs): New define.
+
+2016-09-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Allow
+       negative offsets to _GLOBAL_OFFSET_TABLE_ if the .got section is
+       bigger than 0x1000 bytes.
+
 2016-09-14  Thomas Preud'homme  <thomas.preudhomme@arm.com>
 
        * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Only mark section
This page took 0.029397 seconds and 4 git commands to generate.