Automatic date update in version.in
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 57a07a5eca246186797f5eeb2262e95ae8ce7d50..a2b79d916e4345014ef6af6568ae891d5c893d5f 100644 (file)
@@ -1,3 +1,340 @@
+2017-07-03  Egeyar Bagcioglu  <egeyar.bagcioglu@oracle.com>
+
+        * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Remove the
+        abort statement that was put for symbols that are not dynamic.
+
+2017-07-03  Tristan Gingold  <gingold@adacore.com>
+
+       * po/bfd.pot: Regenerate
+
+2017-07-03  Alan Modra  <amodra@gmail.com>
+
+       * bfd.c (_doprnt): Rewrite "ll" and "L" modifiers to "I64" for
+       __MSVCRT__.  Support "L" modifier for bfd_vma.  Formatting.
+       * elf.c (setup_group): Use "Lx" to print sh_size.
+       (_bfd_elf_setup_sections): Remove unnecessary cast and print
+       unknown section type in hex.
+       (copy_special_section_fields): Style fix.
+       (bfd_section_from_shdr): Correct format for sh_link.  Use a
+       common error message for all the variants of unrecognized
+       section types.
+       (assign_file_positions_for_load_sections): Use "Lx" for lma
+       adjust error message.
+       (assign_file_positions_for_non_load_sections): Formatting.
+       (rewrite_elf_program_header): Formatting.  Use "Lx" for
+       bfd_vma values in error messages.
+       * elfcode.h (elf_slurp_reloc_table_from_section): Cast
+       ELF_R_SYM value to type expected by format.
+       * elflink.c (elf_link_read_relocs_from_section): Use "Lx"
+       in error messages.
+       (elf_link_add_object_symbols): Use "Lu" for symbol sizes.
+       (elf_link_input_bfd): Use "Lx" for r_info.
+       (bfd_elf_gc_record_vtinherit): Use "Lx" for offset.
+
+2017-07-03  Alan Modra  <amodra@gmail.com>
+
+       * bfd.c (bfd_scan_vma): Don't use long long unless HAVE_LONG_LONG.
+       * coff-rs6000.c (FMT20): Handle hosts with 64-bit long and
+       Microsoft C library variant of long long format specifier.
+       (PRINT20): Cast value to bfd_uint64_t not long long.
+       * coffcode.h (coff_print_aux): Use BFD_VMA_FMT.
+       * coff-x86_64.c (coff_amd64_reloc): Use bfd_uint64_t rather than
+       long long.  Don't cast to bfd_vma.
+       * elf32-score.c (score3_bfd_getl48): Likewise.
+       * vms-alpha.c (_bfd_vms_slurp_eisd): Likewise.
+
+2017-07-03  Alan Modra  <amodra@gmail.com>
+
+       * elf.c (_bfd_elf_print_private_bfd_data): Use BFD_VMA_FMT to
+       print d_tag.
+       (bfd_elf_print_symbol): Don't cast symbol->flags.
+       (_bfd_elf_symbol_from_bfd_symbol): Likewise.
+       * elf32-ppc.c (ppc_elf_begin_write_processing): Correct
+       _bfd_error_handler argument order.
+       (ppc_elf_merge_private_bfd_data): Don't cast flags.
+
+2017-07-03  Alan Modra  <amodra@gmail.com>
+
+       * configure.ac: Invoke AC_CHECK_TYPES for long long.  Invoke
+       AC_TYPE_LONG_DOUBLE.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+2017-06-29  Andrew Waterman  <andrew@sifive.com>
+
+       * elfnn-riscv.c (riscv_elf_adjust_dynamic_symbol): Fix TLS copy
+       relocs.
+
+2017-06-29  Egeyar Bagcioglu  <egeyar.bagcioglu@oracle.com>
+
+       * elfxx-sparc.c (allocate_dynrelocs): Don't make a symbol dynamic
+       unless it is undefined weak.
+       * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Set the flag
+       relative_reloc to direct non-dynamic symbols to R_SPARC_RELATIVE
+       relocation.
+       * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): If symbol
+        is not dynamic in PIC, abort.
+
+2017-06-29  Jiong Wang  <jiong.wang@arm.com>
+
+        PR ld/21402
+       * elfnn-aarch64.c (elfNN_aarch64_allocate_dynrelocs): Only make
+       undefined weak symbols into dynamic.
+       (elfNN_aarch64_final_link_relocate): Generate runtime RELATIVE
+       relocation for non-dynamic symbols.
+       (elfNN_aarch64_finish_dynamic_symbol): Add sanity check.
+
+2017-06-29  Jiong Wang  <jiong.wang@arm.com>
+
+       * elfnn-aarch64.c (aarch64_relocation_aginst_gp_p): New function.
+       (elfNN_aarch64_final_link_relocate): Delete duplicated code for
+       BFD_RELOC_AARCH64_LD64_GOTOFF_LO15, BFD_RELOC_AARCH64_MOVW_GOTOFF_G0_NC,
+       BFD_RELOC_AARCH64_MOVW_GOTOFF_G1.
+       * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Optimize the
+       support for them.
+
+2017-06-29  Andreas Arnez  <arnez@linux.vnet.ibm.com>
+
+       * elf-bfd.h (elfcore_write_s390_gs_cb): Add prototype.
+       (elfcore_write_s390_gs_bc): Likewise.
+       * elf.c (elfcore_grok_s390_gs_cb): New function.
+       (elfcore_grok_s390_gs_bc): New function.
+       (elfcore_grok_note): Call them.
+       (elfcore_write_s390_gs_cb): New function.
+       (elfcore_write_s390_gs_bc): New function.
+       (elfcore_write_register_note): Call them.
+
+2017-06-28  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * libbfd.c (_bfd_generic_get_section_contents): Don't call
+       bfd_get_file_size.  Check archive element size.
+       (_bfd_generic_get_section_contents_in_window): Likewise.
+
+2017-06-28  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * bfd-in2.h: Regenerated.
+       * bfdio.c (bfd_get_size): Change return type to ufile_ptr.
+       (bfd_get_file_size): Likewise.
+
+2017-06-28  Maciej W. Rozycki  <macro@imgtec.com>
+           Matthew Fortune  <matthew.fortune@imgtec.com>
+
+       * archures.c (bfd_mach_mips_interaptiv_mr2): New macro.
+       * cpu-mips.c (I_interaptiv_mr2): New enum value.
+       (arch_info_struct): Add "mips:interaptiv-mr2" entry.
+       * elfxx-mips.c (_bfd_elf_mips_mach) <E_MIPS_MACH_IAMR2>: New
+       case.
+       (mips_set_isa_flags) <bfd_mach_mips_interaptiv_mr2>: Likewise.
+       (bfd_mips_isa_ext) <bfd_mach_mips_interaptiv_mr2>: Likewise.
+       (print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
+       (mips_mach_extensions): Add `bfd_mach_mipsisa32r3' and
+       `bfd_mach_mips_interaptiv_mr2' entries.
+       * bfd-in2.h: Regenerate.
+
+2017-06-27  Nick Clifton  <nickc@redhat.com>
+
+       * tekhex.c (pass_over): Revert accidental conversion of a local
+       array to a static array.
+
+2017-06-27  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+
+       PR ld/13402
+       * elf32-avr.c (elf32_avr_adjust_diff_reloc_value): Adjust
+       reloc addend if necessary. Adjust diff only if
+       shrinked_insn_address < end_address.
+
+2017-06-27  Alan Modra  <amodra@gmail.com>
+
+       PR binutils/21665
+       * libbfd.c (_bfd_generic_get_section_contents): Warning fix.
+       (_bfd_generic_get_section_contents_in_window): Likewise.
+
+2017-06-26  Kuan-Lin Chen  <rufus@andestech.com>
+
+       * elfnn-riscv.c (perform_relocation): Support the new
+       R_RISCV_32_PCREL relocation.
+       (riscv_elf_relocate_section): Likewise.
+       * elfxx-riscv.c (howto_table): Likewise.
+       (riscv_reloc_map): Likewise.
+       * bfd-in2.h (BFD_RELOC_RISCV_32_PCREL): New relocation.
+       * libbfd.h: Regenerate.
+
+2017-06-27  Alan Modra  <amodra@gmail.com>
+
+       PR binutils/21665
+       * libbfd.c (_bfd_generic_get_section_contents): Delete abort.
+       Use unsigned file pointer type, and remove cast.
+       * libbfd.c (_bfd_generic_get_section_contents_in_window): Likewise.
+       Add "count", not "sz".
+
+2017-06-26  Pedro Alves  <palves@redhat.com>
+
+       PR binutils/21665
+       * libbfd.c (_bfd_generic_get_section_contents): Add "count", not
+       "sz".
+
+2017-06-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/21665
+       * libbfd.c (_bfd_generic_get_section_contents_in_window): Add
+       a missing line.
+
+2017-06-26  Maciej W. Rozycki  <macro@imgtec.com>
+
+       * cpu-mips.c (arch_info_struct): Mark the 4010 32-bit.
+       * elfxx-mips.c (mips_set_isa_flags) <bfd_mach_mips4010>: Set
+       E_MIPS_ARCH_2 rather than E_MIPS_ARCH_3 in `e_flags'.
+       (mips_mach_extensions): Mark `bfd_mach_mips4010' as extending
+       `bfd_mach_mips6000' rather than `bfd_mach_mips4000'.
+
+2017-06-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/21665
+       * compress.c (bfd_get_full_section_contents): Don't check the
+       file size here.
+       * libbfd.c (_bfd_generic_get_section_contents): Check for and
+       reject a section whose size + offset is greater than the size
+       of the entire file.
+       (_bfd_generic_get_section_contents_in_window): Likewise.
+
+2017-06-26  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/21670
+       * tekhex.c (getvalue): Check for the source pointer exceeding the
+       end pointer before the first byte is read.
+
+2017-06-26  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/21665
+       * opncls.c (get_build_id): Check that the section is big enough
+       to contain the whole note.
+       * compress.c (bfd_get_full_section_contents): Check for and reject
+       a section whose size is greater than the size of the entire file.
+       * elf32-v850.c (v850_elf_copy_notes): Allow for the ouput to not
+       contain a notes section.
+
+2017-06-26  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * elf64-s390.c (elf_s390_additional_program_headers): Add NULL
+       pointer checks.
+       (elf_s390_modify_segment_map): Likewise.
+       (bfd_elf_s390_set_options): Lisewise.
+
+2017-06-26  Alan Modra  <amodra@gmail.com>
+
+       * elflink.c (_bfd_elf_link_create_dynstrtab): Don't make dynobj
+       a --just-syms bfd.
+       (_bfd_elf_size_group_sections): Skip --just-syms bfds.
+       (bfd_elf_size_dynamic_sections): Ignore .note.GNU-stack and
+       .preinit_array on --just-syms bfds.
+       (_bfd_elf_gc_mark_extra_sections): Skip --just-syms bfds.
+       (elf_gc_sweep, bfd_elf_parse_eh_frame_entries): Likewise.
+       (bfd_elf_gc_sections, bfd_elf_discard_info): Likewise.
+
+2017-06-25  Sergei Trofimovich  <slyfox@gentoo.org>
+
+       * elf.c (find_link): Bounds check "hint".
+
+2017-06-24  Thomas Preud'homme  <thomas.preudhomme@arm.com>
+
+       * elf32-arm.c (using_thumb_only): Update list of architectures in
+       BFD_ASSERT for which the logic is valid.
+       (using_thumb2_bl): Likewise.
+       (using_thumb2): Likewise and return true for ARMv8-R.
+       (arch_has_arm_nop): Likewise.
+       (tag_cpu_arch_combine): New v8r table for ARMv8-R Tag_CPU_arch
+       merging logic.  Update commentis for value 15 of v8m_baseline,
+       v8m_mainline and v4t_plus_v6_m arrays.  Use v8r array to decide
+       merging of value 15 of Tag_CPU_arch.
+
+2017-06-23  Jiong Wang  <jiong.wang@arm.com>
+
+       * reloc.c (BFD_RELOC_AARCH64_ADR_GOTPAGE): Rename to
+       BFD_RELOC_AARCH64_ADR_GOT_PAGE
+       * bfd-in2.h: Regenerate.
+
+2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Move
+       the error_alignment label forward.  Properly align program
+       property note section.
+
+2017-06-22  Eric Christopher  <echristo@gmail.com>
+
+       * elf32-arm.c (elf32_arm_final_link_relocate): Use labs rather than
+       abs to fix a truncation warning.
+
+2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Resolve
+       local undefined weak symbol to 0.
+       * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Likewise.
+
+2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf_i386_merge_gnu_properties): If info->shstk
+       is set, turn on GNU_PROPERTY_X86_FEATURE_1_SHSTK.
+       (elf_i386_link_setup_gnu_properties): If info->shstk is set,
+       turn on GNU_PROPERTY_X86_FEATURE_1_IBT.
+       * elf64-x86-64.c (elf_x86_64_merge_gnu_properties): If
+       info->shstk is set, turn on GNU_PROPERTY_X86_FEATURE_1_SHSTK.
+       (elf_x86_64_link_setup_gnu_properties): If info->shstk is set,
+       turn on GNU_PROPERTY_X86_FEATURE_1_IBT.
+
+2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf_i386_lazy_ibt_plt0_entry): New.
+       (elf_i386_lazy_ibt_plt_entry): Likewise.
+       (elf_i386_pic_lazy_ibt_plt0_entry): Likewise.
+       (elf_i386_non_lazy_ibt_plt_entry): Likewise.
+       (elf_i386_pic_non_lazy_ibt_plt_entry): Likewise.
+       (elf_i386_eh_frame_lazy_ibt_plt): Likewise.
+       (elf_i386_lazy_plt_layout): Likewise.
+       (elf_i386_non_lazy_plt_layout): Likewise.
+       (elf_i386_link_hash_entry): Add plt_second.
+       (elf_i386_link_hash_table): Add plt_second and
+       plt_second_eh_frame.
+       (elf_i386_allocate_dynrelocs): Use the second PLT if needed.
+       (elf_i386_size_dynamic_sections): Use .plt.got unwind info for
+       the second PLT.  Check the second PLT.
+       (elf_i386_relocate_section): Use the second PLT to resolve
+       PLT reference if needed.
+       (elf_i386_finish_dynamic_symbol): Fill and use the second PLT if
+       needed.
+       (elf_i386_finish_dynamic_sections): Set sh_entsize on the
+       second PLT.  Generate unwind info for the second PLT.
+       (elf_i386_plt_type): Add plt_second.
+       (elf_i386_get_synthetic_symtab): Support the second PLT.
+       (elf_i386_parse_gnu_properties): Support
+       GNU_PROPERTY_X86_FEATURE_1_AND.
+       (elf_i386_merge_gnu_properties): Support
+       GNU_PROPERTY_X86_FEATURE_1_AND.  If info->ibt is set, turn
+       on GNU_PROPERTY_X86_FEATURE_1_IBT
+       (elf_i386_link_setup_gnu_properties): If info->ibt is set,
+       turn on GNU_PROPERTY_X86_FEATURE_1_IBT.  Use IBT-enabled PLT
+       for info->ibtplt, info->ibt or GNU_PROPERTY_X86_FEATURE_1_IBT
+       is set on all relocatable inputs.
+       * elf64-x86-64.c (elf_x86_64_lazy_ibt_plt_entry): New.
+       (elf_x32_lazy_ibt_plt_entry): Likewise.
+       (elf_x86_64_non_lazy_ibt_plt_entry): Likewise.
+       (elf_x32_non_lazy_ibt_plt_entry): Likewise.
+       (elf_x86_64_eh_frame_lazy_ibt_plt): Likewise.
+       (elf_x32_eh_frame_lazy_ibt_plt): Likewise.
+       (elf_x86_64_lazy_ibt_plt): Likewise.
+       (elf_x32_lazy_ibt_plt): Likewise.
+       (elf_x86_64_non_lazy_ibt_plt): Likewise.
+       (elf_x32_non_lazy_ibt_plt): Likewise.
+       (elf_x86_64_get_synthetic_symtab): Support the second PLT.
+       (elf_x86_64_parse_gnu_properties): Support
+       GNU_PROPERTY_X86_FEATURE_1_AND.
+       (elf_x86_64_merge_gnu_properties): Support
+       GNU_PROPERTY_X86_FEATURE_1_AND.  If info->ibt is set, turn
+       on GNU_PROPERTY_X86_FEATURE_1_IBT
+       (elf_x86_64_link_setup_gnu_properties): If info->ibt is set,
+       turn on GNU_PROPERTY_X86_FEATURE_1_IBT.  Use IBT-enabled PLT
+       for info->ibtplt, info->ibt or GNU_PROPERTY_X86_FEATURE_1_IBT
+       is set on all relocatable inputs.
+
 2017-06-22  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/21649
        allocation so that loops can be caught.  Check for NULL pointers
        when processing a group list.
 
+2017-06-20  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * elf-s390.h: New file.
+       * elf64-s390.c (struct elf_s390_link_hash_table): Add params
+       field.
+       (elf_s390_additional_program_headers): New function.
+       (elf_s390_modify_segment_map): New function.
+       (bfd_elf_s390_set_options): New function.
+       (elf_backend_additional_program_headers)
+       (elf_backend_modify_segment_map): Add macro definitions.
+
 2017-06-19  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/21626
This page took 0.02648 seconds and 4 git commands to generate.