Add R_386_GOT32X support to gas and ld
[external/binutils.git] / bfd / ChangeLog
index 162c801..a2e3034 100644 (file)
@@ -1,3 +1,172 @@
+2015-10-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c: Include opcode/i386.h.
+       (elf_howto_table): Add R_386_GOT32X.
+       (R_386_ext2): Replace R_386_IRELATIVE with R_386_GOT32X.
+       (elf_i386_reloc_type_lookup): Handle BFD_RELOC_386_GOT32X.
+       (need_convert_mov_to_lea): Renamed to ...
+       (need_convert_load): This.
+       (elf_i386_check_relocs): Handle R_386_GOT32X.  Replace
+       need_convert_mov_to_lea with need_convert_load.
+       (elf_i386_gc_sweep_hook): Handle R_386_GOT32X.
+       (elf_i386_size_dynamic_sections): Likewise.
+       (elf_i386_relocate_section): Likewise.
+       (elf_i386_convert_mov_to_lea): Renamed to ...
+       (elf_i386_convert_load): This.  Replace need_convert_mov_to_lea
+       with need_convert_load.  Support R_386_GOT32X transformations.
+       * reloc.c (BFD_RELOC_386_GOT32X): New.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Likewise.
+
+2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * elf32-s390.c (elf_s390_check_relocs): Set the non_got_ref marker
+       only when linking an executable.
+       (elf_s390_relocate_section): Redirect PC-relative relocs to a IPLT
+       slot.
+       * elf64-s390.c (elf_s390_check_relocs): Set the non_got_ref marker
+       only when linking an executable.
+       (elf_s390_relocate_section): Redirect PC-relative relocs to a IPLT
+       slot.
+
+2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Set the PLT
+       reference counters for local IFUNC calls.
+       * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
+
+2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * elf32-s390.c (elf_s390_check_relocs): Fallthrough to the PLT
+       slot allocating code for GOTOFF relocs on ifunc symbols.
+       (elf_s390_gc_sweep_hook): Decrement plt refcount for GOTOFF relocs
+       on ifunc symbols.
+       (elf_s390_relocate_section): Redirect a GOTOFF reloc to an iplt
+       slot.
+
+2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       PR ld/18841
+       * elf32-s390.c (elf_s390_reloc_type_class): Return
+       reloc_class_ifunc for ifunc symbols.
+       * elf64-s390.c (elf_s390_reloc_type_class): Likewise.
+
+2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * elf32-s390.c (elf_s390_finish_dynamic_symbol): Call
+       elf_s390_finish_ifunc_symbol only for actually defined symbols.
+       * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
+
+2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * elf-s390-common.c (s390_elf_allocate_ifunc_dyn_relocs): Remove
+       `head' parameter.
+       * elf32-s390.c (allocate_dynrelocs): Don't use last parameter.
+       * elf64-s390.c (allocate_dynrelocs): Don't use last parameter.
+
+2015-10-20  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * mmo.c (mmo_write_symbols_and_terminator): Correct printed value
+       of Main in error message.
+
+2015-10-18  Doug Evans  <xdje42@gmail.com>
+
+       * targets.c (bfd_flavour_name): "MMO" is spelled "mmo".
+
+2015-10-17  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_size_stubs): Correct __glink_PLTresolve
+       eh_frame FDE for ELFv1.
+
+2015-10-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf_i386_convert_mov_to_lea): Check if symbol
+       is defined.
+       * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
+
+2015-10-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf_i386_convert_mov_to_lea): Don't check
+       def_regular.
+       * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
+
+2015-10-15  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elflink.c (_bfd_elf_merge_symbol): Fix typos in comments
+
+2015-10-15  Alan Modra  <amodra@gmail.com>
+
+       * elf32-v850.c (v850_elf_copy_private_bfd_data): Remove assertion
+       that input and output .note.renesas sections are same size.
+       Instead, only copy input to output if they are.
+
+2015-10-15  Riku Voipio  <riku.voipio@iki.fi>
+
+       PR ld/19123
+       * elfcore.h (elf_core_file_p): Use the file_ptr type to hold the
+       offset for bfd_seek.
+       * elfcode.h (elf_object_p): Likewise.
+
+2015-10-14  Rich Felker  <dalias@libc.org>
+
+       PR ld/19091
+       * elf32-sh.c (sh_elf_size_dynamic_sections): Always emit
+       DT_PLTGOT for FDPIC output.
+
+2015-10-13  Alan Modra  <amodra@gmail.com>
+
+       * elf.c (_bfd_elf_map_sections_to_segments): Don't set
+       PT_GNU_RELRO p_flags.
+       (assign_file_positions_for_non_load_sections): Set PT_GNU_RELRO
+       flags to PF_R here.
+
+2015-10-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/19073
+       * elflink.c (_bfd_elf_add_default_symbol): Skip the unversioned
+       definition after the default version.
+
+2015-10-12  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       PR ld/19083
+       * elf32-s390.c (elf_s390_gc_sweep_hook): Do not reduce got
+       refcount for relocs not really requiring a got slot.
+       * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
+
+2015-10-11  John David Anglin  <danglin@gcc.gnu.org>
+
+       * elf-hppa.h (elf_hppa_action_discarded): Ignore relocations in
+       .data.rel.ro.local.
+
+2015-10-07  Cupertino Miranda  <cmiranda@synopsys.com>
+
+       * archures.c: Remove support for older ARC. Added support for new
+       ARC cpus (ARC600, ARC601, ARC700, ARCV2).
+       * bfd-in2.h: Likewise.
+       * config.bfd: Likewise.
+       * cpu-arc.c: Likewise.
+       * elf32-arc.c: Totally changed file with a refactored
+       inplementation of the ARC port.
+       * libbfd.h: Added ARC specific relocation types.
+       * reloc.c: Likewise.
+
+2015-10-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * bfd.c (bfd_update_compression_header): Clear the ch_reserved
+       field in 64-bit output.
+       (bfd_convert_section_contents): Likewise.
+
+2015-10-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/18914
+       * elflink.c (elf_link_add_object_symbols): Don't re-export a
+       symbol if it isn't undefined.
+
+2015-10-04  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config.bfd (targ_selvecs, targ64_selvecs): Add iamcu_elf32_vec,
+       i386_pei_vec and x86_64_pei_vec for Solaris2/x86.
+
 2015-10-02  Renlin Li  <renlin.li@arm.com>
 
        * elfnn-aarch64.c (IS_AARCH64_TLS_RELAX_RELOC): Add