PR23147, Heap buffer overflow in pe_print_idata
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 7534b192f693671f431bd170e0c578c2cbec4d02..f158067af5960b8c271882ce3b021c2a5a47259f 100644 (file)
+2018-05-09  Alan Modra  <amodra@gmail.com>
+
+       PR 23147
+       * peXXigen.c (pe_print_idata): Bound check hint_addr.
+
+2018-05-08  Nick Clifton  <nickc@redhat.com>
+
+       PR 22809
+       * elf.c (bfd_elf_get_str_section): Check for an excessively large
+       string section.
+       * elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the
+       attribute section is larger than the size of the file.
+
+2018-05-07  Alan Modra  <amodra@gmail.com>
+
+       * cofflink.c (_bfd_coff_link_input_bfd): Use memcmp rather than
+       strncmp when checking for ".bf" special symbol.
+       * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Make pe_required_section_flags
+       section name a char array, remove sentinal known_sections entry,
+       and adjust loop over known_sections to suit.  Use memcmp rather
+       than strncmp.
+
+2018-05-04  Alan Modra  <amodra@gmail.com>
+
+       * elf-linux-core.h (struct elf_external_linux_prpsinfo32_ugid32),
+       (struct elf_external_linux_prpsinfo32_ugid16),
+       (struct elf_external_linux_prpsinfo64_ugid32),
+       (struct elf_external_linux_prpsinfo64_ugid16): Add ATTRIBUTE_NONSTRING
+       to pr_fname and pr_psargs fields.  Remove GCC diagnostic pragmas.
+       Move comment to..
+       * elf.c (elfcore_write_prpsinfo): ..here.  Indent nested preprocessor
+       directives.
+       * elf32-arm.c (elf32_arm_nabi_write_core_note): Add ATTRIBUTE_NONSTRING
+       to data.
+       * elf32-ppc.c (ppc_elf_write_core_note): Likewise.
+       * elf32-s390.c (elf_s390_write_core_note): Likewise.
+       * elf64-s390.c (elf_s390_write_core_note): Likewise.
+       * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise.
+       * elf64-x86-64.c (elf_x86_64_write_core_note): Add GCC diagnostic
+       pragmas.
+       * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Use strnlen to avoid
+       false positive gcc-8 warning.
+       * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
+
+2018-05-04  Tulio Magno Quites Machado Filho  <tuliom@linux.ibm.com>
+
+       * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Fix the order
+       of arguments when warning about different long double types.
+
+2018-05-03  Simon Atanasyan  <simon@atanasyan.com>
+
+       * elf32-mips.c: (elf32_mips_fixup_symbol): New function.
+       (elf_backend_fixup_symbol): New macro.
+       * elfxx-mips.c: (mips_elf_output_extsym): Discard _gp_disp
+       handling.
+       (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
+
+2018-04-30  Francois H. Theron <francois.theron@netronome.com>
+
+       * Makefile.am: Added NFP files to build.
+       * archures.c: Added bfd_arch_nfp
+       * config.bfd: Added NFP support.
+       * configure.ac: Added NFP support.
+       * cpu-nfp.c: New, for NFP support.
+       * elf-bfd.h: Added elf_section_info()
+       * elf64-nfp.c: New, for NFP support.
+       * po/SRC-POTFILES.in: Added NFP source files.
+       * targets.c: Added nfp_elf64_vec
+       * bfd-in2.h: Regenerate.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+
+2018-04-27  Alan Modra  <amodra@gmail.com>
+
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2018-04-27  Alan Modra  <amodra@gmail.com>
+
+       PR 23123
+       PR 22374
+       * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't drop plt
+       relocs for ifuncs.
+       * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Comment fixes.
+
+2018-04-26  Pedro Alves  <palves@redhat.com>
+
+       * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't consider
+       ifunc and non-ifunc symbols duplicates.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * elf32-arm.c (elf32_arm_fdpic_thumb_plt_entry): New.
+       (elf32_arm_plt_needs_thumb_stub_p): Handle thumb-only case.
+       (elf32_arm_populate_plt_entry): Likewise.
+       (elf32_arm_output_plt_map_1): Likewise.
+       (elf32_arm_output_arch_local_syms): Likewise.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Handle
+       _GLOBAL_OFFSET_TABLE_ in FDPIC mode.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * elf32-arm.c (bfd_elf32_arm_set_target_params): Handle FDPIC case
+       for R_ARM_TARGET2.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * elf32-arm.c (DEFAULT_STACK_SIZE): New.
+       (elf32_arm_always_size_sections): Create stack segment.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * bfd-in2.h (BFD_RELOC_ARM_TLS_GD32_FDPIC)
+       (BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC): New
+       relocations.
+       * elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_TLS_GD32_FDPIC,
+       R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC relocations.
+       (elf32_arm_reloc_map): Add R_ARM_TLS_GD32_FDPIC,
+       R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC.
+       (struct elf32_arm_link_hash_table): Update comment.
+       (elf32_arm_final_link_relocate): Handle TLS FDPIC relocations.
+       (IS_ARM_TLS_RELOC): Likewise.
+       (elf32_arm_check_relocs): Likewise.
+       (allocate_dynrelocs_for_symbol): Likewise.
+       (elf32_arm_size_dynamic_sections): Update comment.
+       * reloc.c: Add BFD_RELOC_ARM_TLS_GD32_FDPIC,
+       BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * elf32-arm.c (elf32_arm_fdpic_plt_entry): New.
+       (elf32_arm_create_dynamic_sections): Handle FDPIC.
+       (elf32_arm_allocate_plt_entry): Likewise.
+       (elf32_arm_populate_plt_entry): Likewise.
+       (elf32_arm_output_plt_map_1): Likewise.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * elf32-arm.c (struct fdpic_local): New.
+       (elf_arm_obj_tdata): Add local_fdpic_cnts field.
+       (elf32_arm_local_fdpic_cnts): New.
+       (struct fdpic_global): New.
+       (elf32_arm_link_hash_entry): Add fdpic_cnts field.
+       (elf32_arm_link_hash_table): Add srofixup field.
+       (arm_elf_add_rofixup): New.
+       (arm_elf_fill_funcdesc): New.
+       (elf32_arm_link_hash_newfunc): Handle fdpic_cnts.
+       (elf32_arm_allocate_local_sym_info): Likewise.
+       (create_got_section): Create .rofixup section.
+       (elf32_arm_copy_indirect_symbol): Handle fdpic_cnts.
+       (bfd_elf32_arm_set_target_params): Handle FDPIC.
+       (elf32_arm_final_link_relocate): Likewise.
+       (elf32_arm_check_relocs): Likewise.
+       (allocate_dynrelocs_for_symbol): Likewise.
+       (elf32_arm_size_dynamic_sections): Likewise.
+       (elf32_arm_finish_dynamic_sections): Likewise.
+       (elf32_arm_output_arch_local_syms): Likewise.
+       (elf32_arm_fdpic_omit_section_dynsym): New.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * bfd-in2.c (BFD_RELOC_ARM_GOTFUNCDESC)
+       (BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC)
+       (BFD_RELOC_ARM_FUNCDESC_VALUE): New.
+       * elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_GOTFUNCDESC,
+       R_ARM_GOTOFFFUNCDESC, R_ARM_FUNCDESC, R_ARM_FUNCDESC_VALUE.
+       (elf32_arm_howto_from_type): Take new members of
+       elf32_arm_howto_table_2 into account.
+       (elf32_arm_reloc_map): Add BFD_RELOC_ARM_GOTFUNCDESC,
+       BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC,
+       BFD_RELOC_ARM_FUNCDESC_VALUE.
+       * reloc.c: Add BFD_RELOC_ARM_GOTFUNCDESC,
+       BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC,
+       BFD_RELOC_ARM_FUNCDESC_VALUE.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * elf32-arm.c (elf32_arm_print_private_bfd_data): Support
+       EF_ARM_PIC and ELFOSABI_ARM_FDPIC.
+       (elf32_arm_post_process_headers): Support ELFOSABI_ARM_FDPIC.
+       (ELF_OSABI): Define to ELFOSABI_ARM_FDPIC.
+
+2018-04-25  Christophe Lyon  <christophe.lyon@st.com>
+       Mickaël Guêné  <mickael.guene@st.com>
+
+       * config.bfd (arm*-*-linux-*): Add arm_elf32_fdpic_be_vec and
+       arm_elf32_fdpic_le_vec to targ_selvecs. Accept
+       arm*-*-uclinuxfdpiceabi.
+       * configure.ac: Add support for arm_elf32_fdpic_be_vec and
+       arm_elf32_fdpic_le_vec.
+       * configure: Regenerate.
+       * elf32-arm.c (struct elf32_arm_link_hash_table): Add fdpic_p.
+       (elf32_arm_link_hash_table_create): Initialize fdpic_p.
+       (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM)
+       (TARGET_BIG_NAME, elf_match_priority): Define for FDPIC targets.
+       (elf32_arm_fdpic_link_hash_table_create): New.
+       * targets.c (_bfd_target_vector): Add arm_elf32_fdpic_be_vec and
+       arm_elf32_fdpic_le_vec.
+
+2018-04-25  Alan Modra  <amodra@gmail.com>
+
+       * elf-linux-core.h: Disable gcc-8 string truncation warning.
+       * elf.c (elfcore_write_prpsinfo): Likewise.
+
+2018-04-25  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove arm-aout and arm-coff support.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * aout-arm.c: Delete.
+       * armnetbsd.c: Delete.
+       * riscix.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-24  Nick Clifton  <nickc@redhat.com>
+
+       PR 23113
+       * elf.c (ignore_section_sym): Check for the output_section pointer
+       being NULL before dereferencing it.
+
+       PR 23110
+       * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check for
+       a negative PE_DEBUG_DATA size before iterating over the debug data.
+
+2018-04-23  Alan Modra  <amodra@gmail.com>
+
+       * elf-linux-core.h: Revert last change.
+       * elf.c: Likewise.
+
+2018-04-23  Nick Clifton  <nickc@redhat.com>
+
+       PR 23056
+       * aoutx.h (aout_get_external_symbols): Allocate an extra byte at
+       the end of the string table, and zero it.
+
+2018-04-23  Alan Modra  <amodra@gmail.com>
+
+       * elf-linux-core.h (swap_linux_prpsinfo32_ugid32_out): Disable
+       gcc-8 string truncation warning.
+       (swap_linux_prpsinfo32_ugid16_out): Likewise.
+       (swap_linux_prpsinfo64_ugid32_out): Likewise.
+       (swap_linux_prpsinfo64_ugid16_out): Likewise.
+       * elf.c (elfcore_write_prpsinfo): Likewise.
+
+2018-04-23  Nick Clifton  <nickc@redhat.com>
+
+       PR 23056
+       * aoutx.h (aout_get_external_symbols): Allocate an extra byte at
+       the end of the string table, and zero it.
+
+2018-04-20  Alan Modra  <amodra@gmail.com>
+
+       PR 22978
+       * elf32-hppa.c (got_relocs_needed): Add extra param to special
+       case both dtprel and tprel relocs.
+       (allocate_dynrelocs): Adjust conditions for got relocs.
+       (elf32_hppa_relocate_section): Likewise for local sym got relocs.
+       Emit dynamic relocs on TLS GOT entries for shared libraries,
+       not when pic.  Omit dynamic reloc on dtprel entry when local,
+       and on tprel entry when local and executable.
+
+2018-04-19  Alan Modra  <amodra@gmail.com>
+
+       PR 22537
+       * elf32-hppa.c (elf32_hppa_size_stubs): Init "destination" to -1.
+       (hppa_type_of_stub): Don't return a long branch stub for
+       symbols other than those defined statically.
+
+2018-04-19  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Revert 2018-04-18 coff-mips changes.
+       * config.bfd: Add back mips_ecoff_le_vec and mips_ecoff_be_vec
+       to selvecs for mips targets change 2018-04-18.
+       * configure.ac: Reinstate mips_ecoff_le_vec, mips_ecoff_be_vec
+       and  mips_ecoff_bele_vec.
+       * targets.c: Likewise.
+       * coff-mips.c: Resurrect.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-18  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove mips aout and coff support.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * coff-mips.c: Delete
+       * mipsbsd.c: Delete
+       * pe-mips.c: Delete
+       * pei-mips.c: Delete
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-17  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf32_bed): Define before including
+       "elf32-target.h".
+       * elf64-x86-64.c (elf64_bed): Define before including
+       "elf64-target.h".
+       (elf32_bed): Define before including "elf32-target.h".
+
+2018-04-17  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/23055
+       * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Use a
+       normal input file with compatible relocation.
+
+2018-04-18  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove support for assorted i386 aout and coff targets.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * doc/bfdint.texi: Likewise.
+       * targets.c: Likewise.
+       * freebsd.h: Delete.
+       * i386dynix.c: Delete.
+       * i386freebsd.c: Delete.
+       * i386linux.c: Delete.
+       * i386mach3.c: Delete.
+       * i386netbsd.c: Delete.
+       * i386os9k.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-17 Andrew Sadek  <andrew.sadek.se@gmail.com>
+
+       Microblaze Target: PIC data text relative
+
+       * bfd/reloc.c (2 new BFD relocations):
+       BFD_RELOC_MICROBLAZE_64_TEXTPCREL &
+       BFD_RELOC_MICROBLAZE_64_TEXTPCREL
+       * bfd/bfd-in2.h: Regenerate
+       * bfd/libbfd.h: Regenerate
+       * bfd/elf32-microblaze.c (Handle new relocs): define 'HOWTO' of 3
+       new relocs and handle them in both relocate and relax functions.
+       (microblaze_elf_reloc_type_lookup): add mapping between for new
+       bfd relocs.
+       (microblaze_elf_relocate_section): Handle new relocs in case of
+       elf relocation.
+       (microblaze_elf_relax_section): Handle new relocs for elf relaxation.
+
+2018-04-17  Nick Clifton  <nickc@redhat.com>
+
+       PR 23055
+       * aoutx.h (find_nearest_line): Check that the symbol name exists
+       and is long enough, before attempting to see if it is for a .o
+       file.
+       * hash.c (bfd_hash_hash): Add an assertion that the string is not
+       NULL.
+       * linker.c (bfd_link_hash_lookup): Fail if the table or string are
+       NULL.
+       (_bfd_generic_link_add_archive_symbols): Fail if an archive entry
+       has no name.
+
+       PR 23065
+       * dwarf2.c (concat_filename): Check for a NULL table pointer.
+
+2018-04-16  Nick Clifton  <nickc@redhat.com>
+
+       PR 23061
+       * coffgen.c (coff_pointerize_aux): Check for an out of range
+       fixup.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove arm-epoc-pe support.
+       * coff-arm.c: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * epoc-pe-arm.c: Delete.
+       * epoc-pei-arm.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove sparc-aout and sparc-coff support.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * aout-sparcle.c: Delete.
+       * aoutf1.h: Delete.
+       * cf-sparclynx.c: Delete.
+       * coff-sparc.c: Delete.
+       * demo64.c: Delete.
+       * sparclinux.c: Delete.
+       * sparclynx.c: Delete.
+       * sparcnetbsd.c: Delete.
+       * sunos.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove m68k-aout and m68k-coff support.
+       * aoutf1.h: Likewise.
+       * aoutx.h: Likewise.
+       * archive.c: Likewise.
+       * bfd-in.h: Likewise.
+       * bfd.c: Likewise.
+       * coffcode.h: Likewise.
+       * coffswap.h: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * configure.host: Likewise.
+       * doc/bfd.texinfo: Likewise.
+       * doc/bfdint.texi: Likewise.
+       * freebsd.h: Likewise.
+       * gen-aout.c: Likewise.
+       * hpux-core.c: Likewise.
+       * libaout.h: Likewise.
+       * libbfd-in.h: Likewise.
+       * pdp11.c: Likewise.
+       * peicode.h: Likewise.
+       * riscix.c: Likewise.
+       * targets.c: Likewise.
+       * aout0.c: Delete.
+       * coff-apollo.c: Delete.
+       * coff-aux.c: Delete.
+       * coff-m68k.c: Delete.
+       * coff-svm68k.c: Delete.
+       * coff-u68k.c: Delete.
+       * hosts/delta68.h: Delete.
+       * hosts/hp300bsd.h: Delete.
+       * hosts/m68kaux.h: Delete.
+       * hosts/news.h: Delete.
+       * hp300bsd.c: Delete.
+       * hp300hpux.c: Delete.
+       * liboasys.h: Delete.
+       * m68k4knetbsd.c: Delete.
+       * m68klinux.c: Delete.
+       * m68knetbsd.c: Delete.
+       * oasys.c: Delete.
+       * versados.c: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * libbfd.h: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove sh5 and sh64 support.
+       * archures.c: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * cpu-sh.c: Likewise.
+       * elf32-sh-relocs.h: Likewise.
+       * elf32-sh.c: Likewise.
+       * targets.c: Likewise.
+       * elf32-sh64-com.c: Delete.
+       * elf32-sh64.c: Delete.
+       * elf32-sh64.h: Delete.
+       * elf64-sh64.c: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove sh-symbianelf support.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * elf32-sh-symbian.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove vax-bsd and vax-ultrix support.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * vaxbsd.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove w65 support.
+       * archures.c: Likewise.
+       * coffcode.h: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * coff-w65.c: Delete.
+       * cpu-w65.c: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove we32k support.
+       * archures.c: Likewise.
+       * coffcode.h: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * coff-we32k.c: Delete.
+       * cpu-we32k.c: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove m88k support.
+       * aoutx.h: Likewise.
+       * archures.c: Likewise.
+       * coffcode.h: Likewise.
+       * coffswap.h: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * cpu-ns32k.c: Likewise.
+       * elf32-nds32.c: Likewise.
+       * mach-o.c: Likewise.
+       * netbsd-core.c: Likewise.
+       * reloc.c: Likewise.
+       * targets.c: Likewise.
+       * coff-m88k.c: Delete.
+       * cpu-m88k.c: Delete.
+       * elf32-m88k.c: Delete.
+       * hosts/m88kmach3.h: Delete.
+       * m88kmach3.c: Delete.
+       * m88kopenbsd.c: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove i370 support.
+       * archures.c: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * cpu-i370.c: Delete.
+       * elf32-i370.c: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove h8500 support.
+       * archures.c: Likewise.
+       * coffcode.h: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * coff-h8500.c: Delete.
+       * cpu-h8500.c: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove h8300-coff support.
+       * coffcode.h: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * reloc16.c: Likewise.
+       * targets.c: Likewise.
+       * coff-h8300.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove IEEE 695 support.
+       * archures.c: Likewise.
+       * bfd.c: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * doc/bfd.texinfo: Likewise.
+       * doc/bfdint.texi: Likewise.
+       * doc/bfdsumm.texi: Likewise.
+       * section.c: Likewise.
+       * targets.c: Likewise.
+       * ieee.c: Delete.
+       * libieee.h: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * config.bfd: Remove tandem support.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove newsos3 support.
+       * aoutx.h: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * newsos3.c: Delete.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Remove netware support.
+       * bfd-in.h: Likewise.
+       * bfd.c: Likewise.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * doc/bfdint.texi: Likewise.
+       * ecoff.c: Likewise.
+       * targets.c: Likewise.
+       * libnlm.h: Delete.
+       * nlm-target.h: Delete.
+       * nlm.c: Delete.
+       * nlm32-alpha.c: Delete.
+       * nlm32-i386.c: Delete.
+       * nlm32-ppc.c: Delete.
+       * nlm32-sparc.c: Delete.
+       * nlm32.c: Delete.
+       * nlm64.c: Delete.
+       * nlmcode.h: Delete.
+       * nlmswap.h: Delete.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-16  Alan Modra  <amodra@gmail.com>
+
+       * archures.c: Remove tahoe support.
+       * config.bfd: Likewise.
+       * configure.ac: Likewise.
+       * hosts/tahoe.h: Delete.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+
+2018-04-14  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (struct elf_backend_data): Add relropagesize.
+       * elfxx-target.h (ELF_RELROPAGESIZE): Provide default and
+       sanity test.
+       (elfNN_bed): Init relropagesize.
+       * bfd.c (bfd_emul_get_commonpagesize): Add boolean param to
+       select relropagesize.
+       * elf32-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
+       (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
+       (ELF_MINPAGESIZE): Don't define.
+       * elf64-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
+       (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
+       * bfd-in2.h: Regenerate.
+
+2018-04-14  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Don't depend
+       on __QNXTARGET__ define.
+
+2018-04-14  Alan Modra  <amodra@gmail.com>
+
+       * config.bfd: Add powerpc-*-lynxos* and powerpc-*-windiss*
+       to obsolete list.
+
+2018-04-11  Alan Modra  <amodra@gmail.com>
+
+       * aout-adobe.c: Delete.
+       * bout.c: Delete.
+       * coff-i860.c: Delete.
+       * coff-i960.c: Delete.
+       * cpu-i860.c: Delete.
+       * cpu-i960.c: Delete.
+       * elf32-i860.c: Delete.
+       * elf32-i960.c: Delete.
+       * hosts/i860mach3.h: Delete.
+       * Makefile.am: Remove i860, i960, bout, and adobe support.
+       * archures.c: Remove i860 and i960 support.
+       * coffcode.h: Likewise.
+       * reloc.c: Likewise.
+       * aoutx.h: Comment updates.
+       * archive.c: Remove BOUT and i960 support.
+       * bfd.c: Remove BOUT support.
+       * coffswap.h: Remove i960 support.
+       * config.bfd: Remove i860, i960 and adobe targets.
+       * configure.ac: Remove adode, bout, i860, i960, icoff targets.
+       * targets.c: Likewise.
+       * ieee.c: Remove i960 support.
+       * mach-o.c: Remove i860 support.
+       * Makefile.in: Regenerate.
+       * bfd-in2.h: Regenerate.
+       * configure: Regenerate.
+       * libbfd.h: Regenerate.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2018-04-09  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf64-mips.c (mips_elf64_write_rel): Handle a NULL BFD pointer
+       in the BFD symbol referred by the relocation.
+       (mips_elf64_write_rela): Likewise.
+
+2018-04-09  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Issue an
+       error for out-of-range `r_sym' values.
+
+2018-04-09  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (struct _ppc64_elf_section_data): Add has_pltcall field.
+       (struct ppc_link_hash_table): Add can_convert_all_inline_plt.
+       (ppc64_elf_check_relocs): Set has_pltcall.
+       (ppc64_elf_adjust_dynamic_symbol): Discard some PLT entries.
+       (ppc64_elf_inline_plt): New function.
+       (ppc64_elf_size_dynamic_sections): Discard some PLT entries for locals.
+       * elf64-ppc.h (ppc64_elf_inline_plt): Declare.
+       * elf32-ppc.c (has_pltcall): Define.
+       (struct ppc_elf_link_hash_table): Add can_convert_all_inline_plt.
+       (ppc_elf_check_relocs): Set has_pltcall.
+       (ppc_elf_inline_plt): New function.
+       (ppc_elf_adjust_dynamic_symbol): Discard some PLT entries.
+       (ppc_elf_size_dynamic_sections): Likewise.
+       * elf32-ppc.h (ppc_elf_inline_plt): Declare.
+
+2018-04-09  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_howto_raw): Add PLTSEQ and PLTCALL howtos.
+       (is_plt_seq_reloc): New function.
+       (ppc_elf_check_relocs): Handle PLTSEQ and PLTCALL relocs.
+       (ppc_elf_tls_optimize): Handle inline plt call sequence.
+       (ppc_elf_relax_section): Handle PLTCALL reloc.
+       (ppc_elf_relocate_section): Nop out inline plt call sequence when
+       resolving locally.
+       * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_PLTSEQ and
+       R_PPC64_PLTCALL entries.  Comment R_PPC64_TOCSAVE.
+       (has_tls_get_addr_call): Correct comment.
+       (is_branch_reloc): Add PLTCALL.
+       (is_plt_seq_reloc): New function.
+       (ppc64_elf_check_relocs): Handle PLT16_LO_DS reloc.  Set
+       has_tls_reloc for R_PPC64_TLSGD and R_PPC64_TLSLD.  Create plt
+       entry for R_PPC64_PLTCALL.
+       (ppc64_elf_tls_optimize): Handle inline plt call sequence.
+       (ppc_type_of_stub): Handle PLTCALL reloc.
+       (toc_adjusting_stub_needed): Likewise.
+       (ppc64_elf_relocate_section): Set "can_plt_call" for PLTCALL
+       reloc insn.  Nop out inline plt call sequence when resolving
+       locally.  Handle __tls_get_addr inline plt call optimization.
+
+2018-04-09  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (LOCAL_PLT_ENTRY_SIZE): Define.
+       (struct ppc_stub_hash_entry): Add symtype field.
+       (PLT_KEEP): Define.
+       (struct ppc_link_hash_table): Add pltlocal and relpltlocal.
+       (create_linkage_sections): Create pltlocal and relpltlocal.
+       (ppc64_elf_check_relocs): Allow PLT relocs on local symbols.
+       Set PLT_KEEP.
+       (ppc64_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
+       (allocate_dynrelocs): Allocate pltlocal and relpltlocal.
+       (ppc64_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
+       Keep PLT entries for inline calls against locals.
+       (ppc_build_one_stub): Use pltlocal as appropriate.
+       (ppc_size_one_stub): Likewise.
+       (ppc64_elf_size_stubs): Set symtype.
+       (build_global_entry_stubs_and_plt): Init pltlocal and write
+       relpltlocal for globals.
+       (write_plt_relocs_for_local_syms): Likewise for local syms.
+       (ppc64_elf_relocate_section): Support PLT for local syms.
+       * elf32-ppc.c (PLT_KEEP): Define.
+       (struct ppc_elf_link_hash_table): Add pltlocal and relpltlocal.
+       (ppc_elf_create_glink): Create pltlocal and relpltlocal.
+       (ppc_elf_check_relocs): Allow PLT relocs on local symbols.
+       Set PLT_KEEP.  Adjust update_local_sym_info call.
+       (ppc_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
+       (allocate_dynrelocs): Allocate pltlocal and relpltlocal.
+       (ppc_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
+       (ppc_elf_relocate_section): Support PLT16 relocs for local syms.
+       (write_global_sym_plt): Init pltlocal and write relpltlocal.
+       (ppc_finish_symbols): Likewise for locals.
+
+2018-04-09  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc_build_one_stub): Move output of PLT relocs
+       for local symbols to..
+       (write_plt_relocs_for_local_syms): ..here.  New function.
+       (ppc64_elf_finish_dynamic_symbol): Move output of PLT relocs for
+       global symbols to..
+       (build_global_entry_stubs_and_plt): ..here.  Rename from
+       build_global_entry_stubs.
+       (ppc64_elf_build_stubs): Always call build_global_entry_stubs_and_plt.
+       Call write_plt_relocs_for_local_syms.
+       * elf32-ppc.c (get_sym_h): New function.
+       (ppc_elf_relax_section): Use get_sym_h.
+       (ppc_elf_relocate_section): Move output of PLT relocs and glink
+       stubs for local symbols to..
+       (ppc_finish_symbols): ..here.  New function.
+       (ppc_elf_finish_dynamic_symbol): Move output of PLT relocs for
+       global syms to..
+       (write_global_sym_plt): ..here.  New function.
+       * elf32-ppc.h (ppc_elf_modify_segment_map): Delete attribute.
+       (ppc_finish_symbols): Declare.
+
+2018-04-09  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_check_relocs): Handle PLT16 relocs.
+       (ppc_elf_relocate_section): Likewise.
+       * elf64-ppc.c (ppc64_elf_check_relocs): Handle PLT16_LO_DS.
+       (ppc64_elf_relocate_section): Likewise.  Correct PLT16
+       resolution to plt entry relative to toc pointer.
+
+2018-04-09  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
+       TLS_TPRELGD, TLS_EXPLICIT):  Renumber.  Test TLS_TLS throughout
+       file when other TLS flags are tested in a mask.
+       (TLS_MARK, NON_GOT): Define.
+       (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
+       (update_local_sym_info): Don't create got entry when NON_GOT.
+       (ppc64_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
+       Set TLS_MARK.
+       (get_tls_mask): Do toc lookup if tls_mask is just TLS_MARK.
+       (ppc64_elf_relocate_section): Likewise.
+       (ppc64_elf_tls_optimize): Don't attempt to optimize indirect
+       __tls_get_addr calls lacking a marker reloc.
+       * elf32-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
+       TLS_TPRELGD): Renumber.  Update comment.
+       (TLS_MARK, NON_GOT): Define.
+       (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
+       (update_local_sym_info): Don't create got entry when NON_GOT.
+       (ppc_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
+       Set TLS_MARK.
+       (ppc_elf_tls_optimize): Don't attempt to optimize indirect
+       __tls_get_addr calls lacking a marker reloc.
+
+2018-04-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_x86_64_info_to_howto): Don't mask out
+       R_X86_64_converted_reloc_bit.
+
+2018-04-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR gas/22318
+       * configure: Regenerated.
+
+2018-04-05  Alan Modra  <amodra@gmail.com>
+
+       * elf-hppa.h (elf_hppa_info_to_howto): Init howto to NULL.
+       (elf_hppa_info_to_howto_rel): Likewise.
+
+2018-04-04  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf-hppa.h (elf_hppa_info_to_howto): Also return
+       unsuccessfully for unimplemented relocations.
+       (elf_hppa_info_to_howto_rel): Likewise.
+
+2018-04-04  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf32-i860.c (lookup_howto): Add `abfd' parameter.  Set the
+       `bfd_error_bad_value' error and call `_bfd_error_handler' on a
+       howto lookup failure.
+       (elf32_i860_reloc_type_lookup): Adjust `lookup_howto' call
+       accordingly.
+       (elf32_i860_info_to_howto_rela): Likewise.
+       (elf32_i860_relocate_splitn): Likewise.
+       (elf32_i860_relocate_pc16): Likewise.
+       (elf32_i860_relocate_pc26): Likewise.
+       (elf32_i860_relocate_section): Likewise.
+
+2018-04-04  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf32-visium.c (visium_info_to_howto_rela): Correct the range
+       check for `visium_elf_howto_table' table access.
+
+2018-04-04  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf32-iq2000.c (iq2000_info_to_howto_rela): Correct the range
+       check for `iq2000_elf_howto_table' table access.
+
+2018-04-04  Maciej W. Rozycki  <macro@mips.com>
+
+       * elf32-frv.c (frv_info_to_howto_rela): Correct the range check
+       for `elf32_frv_howto_table' table access.
+
+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
This page took 0.038195 seconds and 4 git commands to generate.