[MIPS] Implement O32 FPXX, FP64 and FP64A ABI extensions
[platform/upstream/binutils.git] / bfd / ChangeLog
index a0402ad..abcd4ab 100644 (file)
@@ -1,3 +1,247 @@
+2014-07-29  Matthew Fortune  <matthew.fortune@imgtec.com>
+
+       * elfxx-mips.c (ABI_O32_P, MIPS_ELF_ABIFLAGS_SECTION_NAME_P): New macro.
+       (mips_elf_obj_tdata): Add abiflags and abiflags_valid fields.
+       (bfd_mips_elf_swap_abiflags_v0_in): New function.
+       (bfd_mips_elf_swap_abiflags_v0_out): Likewise.
+       (_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_ABIFLAGS.
+       (_bfd_mips_elf_fake_sections): Likewise.
+       (_bfd_mips_elf_always_size_sections): Handle .MIPS.abiflags.
+       (_bfd_mips_elf_additional_program_headers): Account for new
+       PT_MIPS_ABIFLAGS program header.
+       (_bfd_mips_elf_modify_segment_map): Create PT_MIPS_ABIFLAGS segment and
+       associate with .MIPS.abiflags.
+       (_bfd_mips_elf_gc_mark_extra_sections): New function.
+       (bfd_mips_isa_ext, update_mips_abiflags_isa): New static function.
+       (infer_mips_abiflags): Likewise.
+       (_bfd_mips_elf_final_link): Handle .MIPS.abiflags.
+       (mips_32bit_flags_p): Moved higher.
+       (mips_elf_merge_obj_attributes, _bfd_mips_fp_abi_string): Error
+       checking for FP ABIs.
+       (_bfd_mips_elf_merge_private_bfd_data): Restructure and add abiflags
+       checks.  Check EF_MIPS_FP64 flag consistency.
+       (print_mips_ases, print_mips_isa_ext): New static function.
+       (print_mips_fp_abi_value, get_mips_reg_size): Likewise.
+       (_bfd_mips_elf_print_private_bfd_data): Display abiflags data.
+       (_bfd_mips_post_process_headers): Set EI_ABIVERSION = 3 for
+       Val_GNU_MIPS_ABI_FP_64 or Val_GNU_MIPS_ABI_FP_64A.
+       * elfxx-mips.h (_bfd_mips_elf_gc_mark_extra_sections): New prototype.
+       * elf32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
+       * elfn32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
+       * elf64-mips.c (elf_backend_gc_mark_extra_sections): Implement.
+
+2014-07-28  Alan Modra  <amodra@gmail.com>
+
+       PR 13227
+       * archive.c (_bfd_compute_and_write_armap): Warn on adding
+       __gnu_lto_slim to armap.
+       * linker.c (_bfd_generic_link_add_one_symbol): Warn on adding
+       __gnu_lto_slim to linker hash table.
+
+2014-07-27  Anthony Green  <green@moxielogic.org>
+
+       * config.bfd: Add moxie-*-moxiebox*.
+
+2014-07-21  Joel Sherrill  <joel.sherrill@oarcorp.com>
+
+       Add or reactivate or1k-*-rtems*
+       * bfd/config.bfd (or1k-*-rtems*): Reactivate.
+
+2014-07-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf_i386_plt_sym_val): Match PLT entry only for
+       ELFOSABI_GNU input.
+       * elf64-x86-64.c (elf_x86_64_plt_sym_val): Likewise.
+       (elf_x86_64_plt_sym_val_offset_plt_bnd): Likewise.
+
+2014-07-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/17154
+       * elf32-i386.c (elf_i386_plt_sym_val): Only match R_*_JUMP_SLOT
+       and R_*_IRELATIVE relocation offset with PLT entry.
+       * elf64-x86-64.c (elf_x86_64_plt_sym_val): Likewise.
+       (elf_x86_64_plt_sym_val_offset_plt_bnd): New.
+       (elf_x86_64_get_synthetic_symtab): Use it.
+
+2014-07-15  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/17057
+       * elf32-i386.c (elf_i386_compute_jump_table_size): Replace
+       next_tls_desc_index with elf.srelplt->reloc_count.
+
+2014-07-15  Alan Modra  <amodra@gmail.com>
+
+       * cache.c (cache_bread_1): Don't return -1 when fread returns
+       a positive value.
+
+2014-07-15  Alan Modra  <amodra@gmail.com>
+
+       * elflink.c (elf_merge_st_other): Update comments.  Simplify
+       visibility handling.  Make isym const.  Move code modifying
+       isym->st_other for --exclude-libs to..
+       (elf_link_add_object_symbols): ..here.
+
+2014-07-11  Maks Naumov  <maksqwe1@ukr.net>
+
+       PR 17141
+       * elf.c (_bfd_elf_strtab_add): Check strtab name for failure.
+
+2014-07-08  Nick Clifton  <nickc@redhat.com>
+
+       PR ld/17110
+       * elf32-sh.c (sh_elf_osec_to_segment): Do not look for output
+       segments in input bfds.
+
+2014-07-08  Will Newton  <will.newton@linaro.org>
+
+       * elf32-arm.c (ELF_MAXPAGESIZE): Increase the default
+       value to 64kB and remove custom setting for NaCl.
+
+2014-07-08  Alan Modra  <amodra@gmail.com>
+
+       * elflink.c (_bfd_elf_copy_link_hash_symbol_type): Copy st_other
+       bits from source to dest.
+       * linker.c (_bfd_generic_copy_link_hash_symbol_type): Update comment.
+       * targets.c (struct bfd_target <_bfd_copy_link_hash_symbol_type>):
+       Likewise.
+       * bfd-in2.h: Regenerate.
+
+2014-07-08  Jiong Wang  <jiong.wang@arm.com>
+
+       * elfnn-aarch64.c (elf_backend_rela_normal): Set to 1.
+       (elfNN_aarch64_relocate_section): Remove duplicated addend adjustment
+       when info->relocatable be true.
+
+2014-07-07  Barney Stratford  <barney_stratford@fastmail.fm>
+
+       * elf32-avr.c: Handle R_AVR_PORT5 and R_AVR_PORT6.
+       * reloc.c: Add BFD_RELOC_AVR_PORT5 and BFD_RELOC_AVR_PORT6.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2014-07-04  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Update "configure.in" comments.
+       * PORTING: Likewise.
+       * aoutx.h: Likewise.
+       * configure.host: Likewise.
+       * doc/bfdint.texi: Likewise.
+       * targets.c: Likewise.
+       * warning.m4: Likewise.
+       * Makefile.in: Regenerate.
+
+2014-07-04  Alan Modra  <amodra@gmail.com>
+
+       * configure.ac: Rename from configure.in.
+       * Makefile.in: Regenerate.
+       * config.in: Regenerate.
+       * doc/Makefile.in: Regenerate.
+
+2014-07-04  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove configure.in.
+       * Makefile.in: Regenerate.
+
+2014-07-04  Alan Modra  <amodra@gmail.com>
+
+       * version.m4: New file.
+       * configure.in: Include version.m4.
+       (AC_INIT): Update.
+       * Makefile.am (RELEASE): Delete.
+       (bfdver.h): Depend on development.sh, use instead of RELEASE.
+       * Makefile.in: Regenerate.
+       * doc/Makefile.in: Regenerate.
+
+2014-07-02  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Clear
+       pointer_equality_needed when !readonly_dynrelocs.
+       * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
+
+2014-07-02  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_check_relocs): Set DF_STATIC_TLS for PIEs too.
+       * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
+
+2014-07-01  Alan Modra  <amodra@gmail.com>
+
+       * bfd.c (struct bfd): Reorganise for better packing.  Delete
+       "ifd" field.  Make "format", "direction" and "flags" bitfields.
+       (HAS_LOAD_PAGE): Delete, renumber following flags.
+       * bfd-in2.h: Regenerate.
+       * coff-tic4x.c: Remove HAS_LOAD_PAGE from extra flags in target vecs.
+
+2014-07-01  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc_stub_type): Add ppc_stub_global_entry.
+       (struct ppc_link_hash_table): Increase size of stub_count array.
+       (build_global_entry_stubs): Emit symbol on global entry stub.
+       (ppc64_elf_build_stubs): NULL check htab->brlt.  Add global entry
+       stub stats.
+
+2014-07-01  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (abiversion, set_abiversion): Move earlier.
+       (ppc64_elf_branch_reloc): Adjust addend for ELFv2 local offset.
+       (ppc64_elf_set_toc): Set ".TOC." symbol value when using
+       generic linker.
+       (ppc64_elf_relocate_section): Disable ELFv2 function entry
+       optimisation when --traditional-format.
+
+2014-07-01  Barney Stratford   <barney_stratford@fastmail.fm>
+            Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+            Pitchumani Sivanupandi  <pitchumani.s@atmel.com>
+            Soundararajan  <Sounderarajan.D@atmel.com>
+
+       * archures.c: Add avrtiny architecture for avr target.
+       * cpu-avr.c (arch_info_struct): Add avrtiny arch info.
+       * elf32-avr.c (elf_avr_howto_table): New relocation R_AVR_LDS_STS_16
+       added for 16 bit LDS/STS instruction of avrtiny arch.
+       (avr_reloc_map): Reloc R_AVR_LDS_STS_16 is mapped to
+       BFD_RELOC_AVR_LDS_STS_16.
+       (bfd_elf_avr_final_write_processing): Select machine number
+       avrtiny arch.
+       (elf32_avr_object_p): Set machine number for avrtiny arch.
+       * reloc.c: Add documentation for BFD_RELOC_AVR_LDS_STS_16 reloc.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2014-06-26  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/16949
+       * dwarf2.c (is_str_attr): New function.
+       (find_abstract_instance_name): Use it to determine when an
+       attribute has a string value.
+
+2014-06-24  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_size_dynamic_sections): Arrange to keep
+       .sdata/.sdata2 when _SDA_BASE_/_SDA2_BASE_ should be output
+       for --emit-relocs.
+
+2014-06-21  Philippe De Muyter  <phdm@macqel.be>
+
+       * targets.c (_bfd_target_vector): Add missing #ifdef BFD64 for
+       a number of targets.
+
+2014-06-20  Kyle McMartin <kyle@redhat.com>
+
+       * elf32-arm.c (elf32_arm_check_relocs): Set DF_STATIC_TLS when
+       emitting initial-exec relocs when not linking an executable.
+
+2014-06-16  Will Newton  <will.newton@linaro.org>
+
+       * elf32-arm.c (elf32_arm_allocate_plt_entry): Increment
+       htab->next_tls_desc_index in the non-IPLT case.
+       Calculate GOT offset correctly for the non-IPLT case.
+       (allocate_dynrelocs_for_symbol): Don't increment
+       htab->next_tls_desc_index here.
+
+2014-06-16  Alan Modra  <amodra@gmail.com>
+
+       * elf32-vax.c (elf_vax_size_dynamic_sections): Clear linker
+       created sections.
+
 2014-06-13  Omair Javaid  <omair.javaid@linaro.org>
 
        * elfxx-aarch64.c (stdarg.h): Include.
 
 2014-06-04  Will Newton  <will.newton@linaro.org>
 
-        * elfnn-aarch64.c (tpoff_base): Make test of tls_sec
+       * elfnn-aarch64.c (tpoff_base): Make test of tls_sec
        being non-NULL into an assert.
        (elfNN_aarch64_tls_relax): Remove unused code.
 
        (struct ppc_elf_relax_info): New.
        (ppc_elf_relax_section): Exclude linker created sections and
        those too small to hold one instruction.  Don't add another
-       branch  around trampolines on later relax passes.  Don't
+       branch around trampolines on later relax passes.  Don't
        generate trampolines for undefined symbols when !relocatable,
        nor for plugin symbols.  Allocate space for ppc476 workaround
        patch area.  Free fixups on error return path.