]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - bfd/ChangeLog
x86-64: Move PIC check for PC-relative relocations back
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
index 50027c63f3fbbdaec4892fbb5cd42752ca0637fe..962fc1f0375cd4b5633fc48abb19566b5b53be81 100644 (file)
@@ -1,3 +1,178 @@
+2019-08-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/24905
+       * elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
+       PC-relative relocations back to ...
+       (elf_x86_64_relocate_section): Here.
+
+2019-08-16  Martin Liska  <mliska@suse.cz>
+
+       PR ld/24912
+       * elflink.c: Report error only for not relocatable.
+       * linker.c (_bfd_generic_link_add_one_symbol): Do not handle
+       here lto_slim_object as it's handled in caller.
+
+2019-08-16  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.
+
+2019-08-15  Jim Wilson  <jimw@sifive.com>
+
+       * elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
+       RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
+       to c.li instruction, and use ENCODE_RVC_IMM to set value.
+
+2019-08-15  Tom Tromey  <tromey@adacore.com>
+
+       * dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
+       of section.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+       PR 24623
+       * dwarf2.c (stash_comp_unit): New function, extracted from..
+       (_bfd_dwarf2_find_nearest_line): ..here.
+       (find_abstract_instance): Parse comp units and decode line info
+       as needed.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+       * dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
+       (comp_unit_find_nearest_line): Use it here..
+       (_bfd_dwarf2_find_symbol_bias): ..and here.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+       * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
+       * libbfd-in.h  (_bfd_dwarf2_find_nearest_line): Update prototype.
+       * coffgen.c (coff_find_nearest_line_with_names): Adjust
+       _bfd_dwarf2_find_nearest_line calls.
+       * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
+       * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
+       * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
+       * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
+       * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
+       * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
+       * libbfd.h: Regenerate.
+
+2019-08-09  Mihailo Stojanovic  <mihailo.stojanovic@rt-rk.com>
+
+       * elf-bfd.h (struct elf_backend_data): New members.
+       * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
+       .gnu.hash section if necessary.
+       (struct collect_gnu_hash_codes): New member.
+       (elf_gnu_hash_process_symidx): New function name.
+       (elf_renumber_gnu_hash_syms): Ignore local and undefined
+       symbols. Record xlat location for every symbol which should have
+       a .MIPS.xhash entry.
+       (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
+       dynamic section if necessary.
+       (GNU_HASH_SECTION_NAME): New define.
+       (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
+       Update the section size info.
+       * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
+       (struct mips_elf_link_hash_entry): New member.
+       (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
+       table location.
+       (mips_elf_sort_hash_table): Initialize the pointer to the
+       .MIPS.xhash section.
+       (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
+       translation table entry with the symbol dynindx.
+       (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
+       (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
+       info.
+       (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
+       section.
+       (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
+       dynamic section.
+       (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
+       (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
+       sh_link info.
+       (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
+       (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
+       (_bfd_mips_post_process_headers): Mark the ABI version as
+       MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
+       but not a .hash section.
+       (_bfd_mips_elf_record_xhash_symbol): New function. Record a
+       position in the translation table, associated with the hash
+       entry.
+       * elfxx-mips.h (literal_reloc_p): Define
+       elf_backend_record_xhash_symbol backend hook.
+       * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
+       backend hook.
+
+2019-08-07  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * elf64-bpf.c (bpf_elf_relocate_section): New function.
+       (bpf_elf_insn_disp_reloc): Delete function.
+       (elf_backend_relocate_section): Define.
+
+2019-08-07  Alan Modra  <amodra@gmail.com>
+
+       PR 24644
+       * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
+       for overflow in expressions involving nsymz.
+
+2019-08-01  Ilia Diachkov  <ilia.diachkov@optimitech.com>
+
+       * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
+       two pages in relro presence.
+
+2019-08-01  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
+       (get_wsr_lbeg_opcode): New functions.
+       (check_loop_aligned): Detect relaxed loops and adjust loop_len
+       and insn_len for the first actual instruction of the loop.
+
+2019-07-30  Alan Modra  <amodra@gmail.com>
+
+       PR 24768
+       * bfd.c (struct bfd): Add lto_slim_object flag.
+       * bfd-in2.h: Regenerate.
+
+2019-07-29  Martin Liska  <mliska@suse.cz>
+
+       PR 24768
+       * archive.c (_bfd_compute_and_write_armap): Come up with
+       report_plugin_err variable.
+       * bfd-in2.h (struct bfd): Add lto_slim_object flag.
+       * elf.c (struct lto_section): New.
+       (_bfd_elf_make_section_from_shdr): Parse content of
+       .gnu_lto_.lto section.
+       * elflink.c: Report error for a missing LTO plugin.
+       * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
+
+2019-07-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24857
+       PR 24339
+       * elflink.c (elf_link_add_object_symbols): Report an informative
+       error on finding local symbols with index equal or greater than
+       symbol table sh_info.  Correct comment.  Allow such symbols in
+       dynamic objects.  Abort on NULL section for symbol.
+
+2019-07-26  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
+       (elf_linker): Don't define.
+       * elflink.c (bfd_elf_final_link): Don't set elf_linker.
+
+2019-07-25  YunQiang Su  <syq@debian.org>
+
+       PR 24832
+       * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
+       mips inputs.
+
+2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
+
+       * elf32-arc.c (bfd_get_32_me): Add a small description, fix
+       formating.
+       (reloc_type_to_name): Fix formating.
+       (arc_elf_object_p): Likewise.
+       (debug_arc_reloc): Likewise.
+       (arc_do_relocation): Likewise.
+
 2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
 
        * elf32-arc.c (bfd_get_32_me): New function.