PR binutils/22875: MIPS/ELF: Also fail with relocation placeholders
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 42cc700ce7cf367e39a37124bd749ba50e3abe56..c5e0a91ab75845c06a395d848f9f2b3cd0cfb782 100644 (file)
@@ -1,3 +1,235 @@
+2018-04-04  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf32-mips.c (mips_elf32_rtype_to_howto): Also return
+       unsuccessfully for placeholder howtos.
+       * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
+       * elfn32-mips.c (mips_elf_n32_rtype_to_howto): Likewise.
+
+2018-03-29  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf32-mips.c (mips_info_to_howto_rel): Remove the calls to
+       `_bfd_error_handler' and to set the `bfd_error_bad_value' error.
+
+2018-03-28  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf-hppa.h (elf_hppa_info_to_howto_rel): Remove
+       ATTRIBUTE_UNUSED from `abfd'.
+
+2018-03-28  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf-hppa.h (elf_hppa_info_to_howto_rel): Correct
+       `_bfd_error_handler' call formatting.
+
+2018-03-28  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf32-mips.c (mips_info_to_howto_rel): Call
+       `mips_elf32_rtype_to_howto' directly rather than via
+       `->elf_backend_mips_rtype_to_howto'.
+
+2018-03-28  Renlin Li  <renlin.li@arm.com>
+
+       PR ld/22970
+       * elfnn-aarch64.c (IS_AARCH64_TLS_RELOC): Add cases for
+       BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
+       BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
+       BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
+       BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
+       (elfNN_aarch64_final_link_relocate): Support new relocations.
+       * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Support new
+       relocations.
+       (_bfd_aarch64_elf_resolve_relocation): Support new relocations.
+
+2018-03-28  Renlin Li  <renlin.li@arm.com>
+
+       PR ld/22970
+       * reloc.c: Add BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12
+       BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12_NC,
+       BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
+       BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
+       BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
+       BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
+       BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
+       * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add table entry for
+       TLSLE_LDST16_TPREL_LO12,
+       TLSLE_LDST16_TPREL_LO12_NC,
+       TLSLE_LDST32_TPREL_LO12,
+       TLSLE_LDST32_TPREL_LO12_NC,
+       TLSLE_LDST64_TPREL_LO12,
+       TLSLE_LDST64_TPREL_LO12_NC,
+       TLSLE_LDST8_TPREL_LO12,
+       TLSLE_LDST8_TPREL_LO12_NC.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Regenerated.
+
+2018-03-28  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR ld/22972
+       * elfxx-sparc.c (struct _bfd_sparc_elf_link_hash_entry): Add new flag
+       has_old_style_got_reloc.
+       (_bfd_sparc_elf_check_relocs) <GOT relocations>: Set it for old-style
+       relocations.  Fix a couple of long lines.
+       (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: Do not generate
+       a R_SPARC_NONE for the GOT slot if the symbol is also subject to old-style
+       GOT relocations.
+
+2018-03-25  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/23000
+       * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Add
+       ENDBR64 to the TLSDESC PLT entry.
+
+2018-03-21  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Trim uninteresting
+       symbols.  Use size_t counts.  Delete redundant opd test.
+
+2018-03-21  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_tls_optimize): Delete locsyms.
+
+2018-03-21  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (struct ppc_elf_link_hash_entry): Make tls_mask
+       field unsigned.
+       (update_local_sym_info): Likewise for local_got_tls_masks.
+       (ppc_elf_tls_optimize): Likewise for lgot_masks.
+
+2018-03-21  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc_size_one_stub): Fix comment typo.
+       (ppc64_elf_layout_multitoc): Allocate relocs for tprel as we
+       do in size_dynamic_sections.
+
+2018-03-21  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_relocate_section): Don't access rel[1]
+       without first checking array bounds.
+       * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+
+2018-03-20  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/22983
+       * elflink.c (bfd_elf_link_mark_dynamic_symbol): Set
+       non_ir_ref_dynamic if a symbol is made dynamic by --dynamic-list.
+
+2018-03-19  Nick Clifton  <nickc@redhat.com>
+
+       * po/es.po: Updated Spanish translation.
+
+2018-03-15  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * elf32-xtensa.c (xlate_map_entry): Change types of address
+       fields from 'unsigned' to 'bfd_vma'.
+       (xlate_offset_with_removed_text): Use struct xlate_map_entry as
+       the key argument to bsearch. Allow offsets past the end of a
+       section, use the last map entry for translation of such offsets.
+
+2018-03-15  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
+
+       * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Removed.
+       Not support the target feature.
+       (nds32_elf_ex9_itb_base): Likewise.
+       (nds32_elf_ex9_import_table): Likewise.
+       (nds32_elf_ex9_finish): Likewise.
+       (nds32_elf_ex9_reloc_jmp): Likewise.
+       (nds32_elf_get_insn_with_reg): Likewise.
+       (nds32_get_local_syms): Likewise.
+       (nds32_elf_ex9_replace_instruction): Likewise.
+       (nds32_elf_ifc_calc): Likewise.
+       (nds32_elf_ifc_finish): Likewise.
+       (nds32_elf_ifc_replace): Likewise.
+       (nds32_elf_ifc_reloc): Likewise.
+
+2018-03-14  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (sfpr_define): Adjust for stub_sec size having
+       sfpr size added before defining alias symbols.
+       (ppc64_elf_build_stubs): Add stub section padding before
+       copying sfpr contents and defining save/restore alias symbols.
+
+2018-03-14  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/20882
+       * elflink.c (elf_gc_mark_debug_section): Also check the local
+       debug definition section.
+
+2018-03-13  Nick Clifton  <nickc@redhat.com>
+
+       PR 22113
+       * pei-x86_64.c (pex64_get_unwind_info): Change to a boolean
+       function.  Add an end address parameter.  Check access of the data
+       pointer to make sure that they do not extend beyond the end
+       address.  Return FALSE if any check fails.  Add the end address
+       pointer to the ui structure.
+       (pex64_xdata_print_uwd_codes): Check accesses of the raw unwind
+       codes to make sure that they do not extend beyond the end address
+       pointer.  Print an error message and return immediately if any
+       check fails.
+
+2018-03-09  Nick Clifton  <nickc@redhat.com>
+
+       * elf64-s390.c (elf_s390_relocate_section): Move check for
+       relocations against non-allocated sections to before the code that
+       handles ifunc relocations.
+       * elf32-s390.c (elf_s390_relocate_section): Likewise.
+       * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Treat
+       relocs against IFUNC symbols in non-allocated sections as relocs
+       against FUNC symbols.
+       * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
+
+2018-03-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/22929
+       * elf32-i386.c (elf_i386_relocate_section): Treat relocation
+       against IFUNC symbol in SHT_NOTE section without SHF_ALLOC as
+       relocation against FUNC symbol.
+       * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
+
+2018-03-07  Renlin Li  <renlin.li@arm.com>
+
+       PR ld/20402
+       * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Check absolute
+       symbol, and don't emit relocation in specific case.
+
+2018-03-07  Alan Modra  <amodra@gmail.com>
+
+       * elf64-mips.c (mips_elf64_rtype_to_howto): Return NULL on error.
+       (mips_elf64_slurp_one_reloc_table): Pass on error.
+
+2018-03-03  James Cowgill  <james.cowgill@mips.com>
+           Maciej W. Rozycki  <macro@mips.com>
+
+       PR ld/21900
+       * elfxx-mips.c (mips_elf_calculate_relocation): Only return
+       after calling `undefined_symbol' hook if this is an error
+       condition.  Assume the value of 0 for the symbol requested
+       otherwise.
+
+2018-03-02  Jim Wilson  <jimw@sifive.com>
+
+       PR 22903
+       * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Add 8 bytes for branch
+       and nop instead of 4.
+       (elfNN_arch64_build_stubs): Add nop after branch.  Increase size by
+       8 instead of 4.
+
+2018-03-01  Jim Wilson  <jimw@sifive.com>
+
+       PR 22756
+       * elfnn-riscv.c (riscv_relax_delete_bytes): When adjust st_size, use
+       else if instead of if.
+
+2018-03-01  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ft32.c (ft32_info_to_howto_rela): Correct range test.
+
 2018-02-28  Alan Modra  <amodra@gmail.com>
 
        PR 22887
 
 2018-02-28  Nick Clifton  <nickc@redhat.com>
 
+       PR 22895
+       PR 22893
+       * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
+       pointer.  Drop unused abfd parameter.  Check the size of the block
+       before initialising the data field.  Return the end pointer if the
+       size is invalid.
+       (read_attribute_value): Adjust invocations of read_n_bytes.
+
        PR 22894
        * dwarf1.c (parse_die): Check the length of form blocks before
        advancing the data pointer.
This page took 0.02565 seconds and 4 git commands to generate.