From 1e563868718a69231c80a1d86698cee0cf847e72 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Wed, 3 Jan 2018 15:45:17 +1030 Subject: [PATCH] ChangeLog rotation --- bfd/ChangeLog | 5717 +------------------------------------- bfd/ChangeLog-2017 | 5727 +++++++++++++++++++++++++++++++++++++++ binutils/ChangeLog | 1876 +------------ binutils/ChangeLog-2017 | 1886 +++++++++++++ elfcpp/ChangeLog | 39 +- elfcpp/ChangeLog-2017 | 49 + gas/ChangeLog | 4409 +----------------------------- gas/ChangeLog-2017 | 4419 ++++++++++++++++++++++++++++++ gold/ChangeLog | 838 +----- gold/ChangeLog-2017 | 848 ++++++ gprof/ChangeLog | 59 +- gprof/ChangeLog-2017 | 69 + include/ChangeLog | 861 +----- include/ChangeLog-2017 | 871 ++++++ ld/ChangeLog | 4028 +-------------------------- ld/ChangeLog-2017 | 4038 +++++++++++++++++++++++++++ opcodes/ChangeLog | 1967 +------------- opcodes/ChangeLog-2017 | 1977 ++++++++++++++ 18 files changed, 19902 insertions(+), 19776 deletions(-) create mode 100644 bfd/ChangeLog-2017 create mode 100644 binutils/ChangeLog-2017 create mode 100644 elfcpp/ChangeLog-2017 create mode 100644 gas/ChangeLog-2017 create mode 100644 gold/ChangeLog-2017 create mode 100644 gprof/ChangeLog-2017 create mode 100644 include/ChangeLog-2017 create mode 100644 ld/ChangeLog-2017 create mode 100644 opcodes/ChangeLog-2017 diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e994da3ed6d..8debaf0d0fc 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5719 +1,6 @@ -2017-12-19 Alan Modra - - PR 22626 - * elflink.c (_bfd_elf_link_renumber_dynsyms): Don't set section - dynindx when section_sym_count is NULL. - (bfd_elf_size_dynamic_sections): Pass NULL section_sym_count to - preliminary _bfd_elf_link_renumber_dynsyms call. - -2017-12-15 Nick Clifton - - PR 22571 - * archive.c (bfd_openr_next_archived_file): Extend the - documentation to note that it is necessary to call - bfd_check_format on the rrturned bfd before using it. - -2017-12-14 Nick Clifton - - * cpu-mt.c: Update address of FSF in copyright notice. - * elf32-m32c.c: Likewise. - * elf32-mt.c: Likewise. - * elf32-rl78.c: Likewise. - * elf32-rx.c: Likewise. - * elf32-rx.h: Likewise. - * elf32-spu.h: Likewise. - * hosts/x86-64linux.h: Likewise. - -2017-12-13 Renlin Li - - * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Disallow - BFD_RELOC_AARCH64_16 in shared object const section. Disallow - BFD_RELOC_AARCH64_32 in shared object const section under LP64. - -2017-12-11 Sangamesh Mallayya - - * bfd.c (bfd_get_sign_extend_vma): Correct typo. - -2017-12-09 Alan Modra - - * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): When emitting - dynamic R_SPARC_RELATIVE for GOT entries, ensure the section - contents are zeroed. - -2017-12-08 Nick Clifton - - * elfcode.h (elf_write_relocs): Check for an empty howto field. - -2017-12-08 Sangamesh Mallayya - - * bfd.c (bfd_get_sign_extend_vma): Handle aix5coff64-rs6000. - -2017-12-06 Alan Modra - - * doc/header.sed: Trim trailing space when splitting lines. - * aix386-core.c, * aout-adobe.c, * aout-arm.c, * aout-cris.c, - * aout-ns32k.c, * aout-target.h, * aout-tic30.c, * aoutf1.h, * aoutx.h, - * arc-got.h, * arc-plt.def, * arc-plt.h, * archive.c, * archive64.c, - * archures.c, * armnetbsd.c, * bfd-in.h, * bfd.c, * bfdio.c, * binary.c, - * bout.c, * cache.c, * cisco-core.c, * coff-alpha.c, * coff-apollo.c, - * coff-arm.c, * coff-h8300.c, * coff-i386.c, * coff-i860.c, - * coff-i960.c, * coff-m68k.c, * coff-m88k.c, * coff-mcore.c, - * coff-mips.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c, - * coff-stgo32.c, * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, - * coff-we32k.c, * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, - * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c, - * coffswap.h, * compress.c, * corefile.c, * cpu-alpha.c, * cpu-arm.c, - * cpu-avr.c, * cpu-bfin.c, * cpu-cr16.c, * cpu-cr16c.c, * cpu-crx.c, - * cpu-d10v.c, * cpu-frv.c, * cpu-ft32.c, * cpu-i370.c, * cpu-i960.c, - * cpu-ia64-opc.c, * cpu-ip2k.c, * cpu-lm32.c, * cpu-m32r.c, - * cpu-mcore.c, * cpu-microblaze.c, * cpu-mips.c, * cpu-moxie.c, - * cpu-mt.c, * cpu-nios2.c, * cpu-ns32k.c, * cpu-or1k.c, * cpu-powerpc.c, - * cpu-pru.c, * cpu-sh.c, * cpu-spu.c, * cpu-v850.c, * cpu-v850_rh850.c, - * cpu-xgate.c, * cpu-z80.c, * dwarf1.c, * dwarf2.c, * ecoff.c, - * ecofflink.c, * ecoffswap.h, * elf-bfd.h, * elf-eh-frame.c, - * elf-hppa.h, * elf-m10200.c, * elf-m10300.c, * elf-s390-common.c, - * elf-strtab.c, * elf-vxworks.c, * elf.c, * elf32-am33lin.c, - * elf32-arc.c, * elf32-arm.c, * elf32-avr.c, * elf32-avr.h, - * elf32-bfin.c, * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, - * elf32-crx.c, * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, - * elf32-epiphany.c, * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, - * elf32-h8300.c, * elf32-hppa.c, * elf32-i386.c, * elf32-i860.c, - * elf32-i960.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32c.c, - * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c, * elf32-m68hc1x.c, - * elf32-m68hc1x.h, * elf32-m68k.c, * elf32-m88k.c, * elf32-mcore.c, - * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c, * elf32-mips.c, - * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, - * elf32-nds32.h, * elf32-nios2.c, * elf32-or1k.c, * elf32-pj.c, - * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c, - * elf32-rx.c, * elf32-s390.c, * elf32-score.c, * elf32-score.h, - * elf32-score7.c, * elf32-sh-symbian.c, * elf32-sh.c, * elf32-sh64.c, - * elf32-sparc.c, * elf32-spu.c, * elf32-tic6x.c, * elf32-tilegx.c, - * elf32-tilegx.h, * elf32-tilepro.c, * elf32-tilepro.h, * elf32-v850.c, - * elf32-vax.c, * elf32-wasm32.c, * elf32-xc16x.c, * elf32-xgate.c, - * elf32-xgate.h, * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c, - * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c, - * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c, * elf64-sparc.c, - * elf64-tilegx.c, * elf64-tilegx.h, * elf64-x86-64.c, * elfcore.h, - * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c, - * elfnn-riscv.c, * elfxx-aarch64.c, * elfxx-aarch64.h, * elfxx-ia64.c, - * elfxx-ia64.h, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-sparc.c, - * elfxx-tilegx.c, * elfxx-x86.c, * elfxx-x86.h, * freebsd.h, * hash.c, - * host-aout.c, * hp300hpux.c, * hppabsd-core.c, * hpux-core.c, - * i386aout.c, * i386linux.c, * i386lynx.c, * i386mach3.c, * i386msdos.c, - * i386netbsd.c, * ieee.c, * ihex.c, * irix-core.c, * libaout.h, - * libbfd-in.h, * libbfd.c, * libcoff-in.h, * libnlm.h, * libpei.h, - * libxcoff.h, * linker.c, * lynx-core.c, * m68k4knetbsd.c, - * m68klinux.c, * m68knetbsd.c, * m88kmach3.c, * mach-o-aarch64.c, - * mach-o-arm.c, * mach-o-i386.c, * mach-o-target.c, * mach-o-x86-64.c, - * mach-o.c, * mach-o.h, * merge.c, * mipsbsd.c, * mmo.c, * netbsd.h, - * netbsd-core.c, * newsos3.c, * nlm-target.h, * nlm32-ppc.c, - * nlm32-sparc.c, * nlmcode.h, * ns32k.h, * ns32knetbsd.c, * oasys.c, - * opncls.c, * pc532-mach.c, * pdp11.c, * pe-arm.c, * pe-i386.c, - * pe-mcore.c, * pe-mips.c, * pe-x86_64.c, * peXXigen.c, * pef.c, - * pef.h, * pei-arm.c, * pei-i386.c, * pei-mcore.c, * pei-x86_64.c, - * peicode.h, * plugin.c, * ppcboot.c, * ptrace-core.c, * reloc.c, - * riscix.c, * rs6000-core.c, * section.c, * som.c, * som.h, - * sparclinux.c, * sparcnetbsd.c, * srec.c, * stabs.c, * sunos.c, - * syms.c, * targets.c, * tekhex.c, * trad-core.c, * vax1knetbsd.c, - * vaxnetbsd.c, * verilog.c, * versados.c, * vms-alpha.c, * vms-lib.c, - * vms-misc.c, * wasm-module.c, * wasm-module.h, * xcofflink.c, - * xsym.c, * xsym.h: Whitespace fixes. - * bfd-in2.h, * libbfd.h, * libcoff.h: Regenerate. - -2017-12-06 Alan Modra - - * elf32-lm32.c (lm32_elf_check_relocs): Skip non-ALLOC sections. - * elf32-m32r.c (m32r_elf_check_relocs): Likewise. - * elf32-nds32.c (nds32_elf_check_relocs): Likewise. - * elf32-or1k.c (or1k_elf_check_relocs): Likewise. - * elf32-sh.c (sh_elf_check_relocs): Likewise. - -2017-12-06 Alan Modra - - * elf32-hppa.c (struct elf32_hppa_dyn_reloc_entry): Delete. Use - struct elf_dyn_relocs throughout file instead. - (elf32_hppa_adjust_dynamic_symbol): Comment tidy. - * elf32-lm32.c (struct elf_lm32_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (lm32_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elf32-m32r.c (struct elf_m32r_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (m32r_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. - Disable -z no-copyreloc too. - * elf32-metag.c (struct elf_metag_dyn_reloc_entry): Delete. Use - struct elf_dyn_relocs throughout file instead. - (elf_metag_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elf32-microblaze.c (struct elf32_mb_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (readonly_dynrelocs): New function. - (microblaze_elf_adjust_dynamic_symbol): Use it. - * elf32-nds32.c (struct elf_nds32_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (nds32_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. - Disable -z no-copyreloc too. - * elf32-nios2.c (struct elf32_nios2_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - * elf32-or1k.c (struct elf_or1k_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (or1k_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elf32-sh.c (struct elf_sh_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (sh_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. - Disable -z no-copyreloc too. - * elf32-tilepro.c (struct tilepro_elf_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (tilepro_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elfnn-riscv.c (struct riscv_elf_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (riscv_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elfxx-sparc.c (struct _bfd_sparc_elf_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (_bfd_sparc_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elfxx-tilegx.c (struct tilegx_elf_dyn_relocs): Delete. Use - struct elf_dyn_relocs throughout file instead. - (tilegx_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Use readonly_dynrelocs. - * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Use readonly_dynrelocs. - -2017-12-06 Alan Modra - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Comment tidy. - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_adjust_dynamic_symbol): Likewise. - -2017-12-04 Alan Modra - - * elfxx-x86.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function. Always prints via minfo and - correct "readonly" to "read-only" in warning message., replacing.. - (_bfd_x86_elf_readonly_dynrelocs): ..this. - (_bfd_x86_elf_size_dynamic_sections): Correct "readonly" to - "read-only" in warning message. Formatting. - (_bfd_x86_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. - * linker.c (bfd_link_hash_traverse): Comment typo fix. - -2017-12-01 H.J. Lu - - * elfxx-x86.c (_bfd_x86_elf_readonly_dynrelocs): Print symbol - for map file output. - -2017-12-01 Alan Modra - - * elf32-hppa.c (maybe_set_textrel): Print symbol for map file output. - * elf32-ppc.c (maybe_set_textrel): Likewise. - * elf64-ppc.c (maybe_set_textrel): Likewise. - * elf32-arm.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing.. - (elf32_arm_readonly_dynrelocs): ..this. - * elf32-lm32.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf32-m32r.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf32-metag.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf32-nds32.c: Delete unnecessary forward declarations. - (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf32-or1k.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf32-s390.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf32-sh.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf32-tic6x.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing.. - (elf32_tic6x_readonly_dynrelocs): ..this. - * elf32-tilepro.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elf64-s390.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elfnn-aarch64.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing.. - (aarch64_readonly_readonly_dynrelocs): ..this. - * elfnn-riscv.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elfxx-sparc.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - * elfxx-tilegx.c (readonly_dynrelocs): New function. - (maybe_set_textrel): New function, replacing old version of.. - (readonly_dynrelocs): ..this. - -2017-12-01 Alan Modra - - PR 22533 - * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Don't do anything - special with non_got_ref for weak aliases. - (elf32_hppa_check_relocs): Tweak setting of non_got_ref. - (elf32_hppa_adjust_dynamic_symbol): When initialising weak aliases, - don't uselessly copy non_got_ref. Clear dyn_relocs instead if - strong symbol is allocated in dynbss. Tidy comments. - (elf32_hppa_relocate_section): Comment fix. - * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't do anything - special with non_got_ref for weak aliases. - (ppc_elf_adjust_dynamic_symbol): When initialising weak aliases, - don't uselessly copy non_got_ref. Clear dyn_relocs instead if - strong symbol is allocated in dynbss. Tidy comments. - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't do anything - special with non_got_ref for weak aliases. - (ppc64_elf_adjust_dynamic_symbol): When initialising weak aliases, - don't uselessly copy non_got_ref. Clear dyn_relocs instead if - strong symbol is allocated in dynbss. Tidy comments. - -2017-11-29 Nick Clifton - - PR 22509 - * coffcode.h (coff_slurp_reloc_table): Check for a NULL symbol - pointer when processing relocs. - -2017-11-29 Stefan Stroe - - * po/Make-in (datadir): Define as @datadir@. - (localedir): Define as @localedir@. - (gnulocaledir, gettextsrcdir): Use @datarootdir@. - -2017-11-28 Nick Clifton - - PR 22507 - * coffgen.c (_bfd_coff_read_string_table): Check for an excessive - size of the external string table. - -2017-11-28 Nick Clifton - - PR 22506 - * reloc.c (reloc_offset_in_range): Rename to - bfd_reloc_offset_in_range and export. - (bfd_perform_relocation): Rename function invocation. - (bfd_install_relocation): Likewise. - (bfd_final_link_relocate): Likewise. - * bfd-in2.h: Regenerate. - * coff-arm.c (coff_arm_reloc): Use bfd_reloc_offset_in_range. - * coff-i386.c (coff_i386_reloc): Likewise. - * coff-i860.c (coff_i860_reloc): Likewise. - * coff-m68k.c (mk68kcoff_common_addend_special_fn): Likewise. - * coff-m88k.c (m88k_special_reloc): Likewise. - * coff-mips.c (mips_reflo_reloc): Likewise. - * coff-x86_64.c (coff_amd64_reloc): Likewise. - -2017-11-28 H.J. Lu - - * elf-m10300.c (mn10300_elf_check_relocs): Don't set - non_ir_ref_regular. - * elf32-arm.c (elf32_arm_check_relocs): Likewise. - * elf32-bfin.c (bfin_check_relocs): Likewise. - * elf32-cr16.c (cr16_elf_check_relocs): Likewise. - * elf32-cris.c (cris_elf_check_relocs): Likewise. - * elf32-d10v.c (elf32_d10v_check_relocs): Likewise. - * elf32-dlx.c (elf32_dlx_check_relocs): Likewise. - * elf32-fr30.c (fr30_elf_check_relocs): Likewise. - * elf32-frv.c (elf32_frv_check_relocs): Likewise. - * elf32-hppa.c (elf32_hppa_check_relocs): Likewise. - * elf32-i370.c (i370_elf_check_relocs): Likewise. - * elf32-i386.c (elf_i386_check_relocs): Likewise. - * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise. - * elf32-lm32.c (lm32_elf_check_relocs): Likewise. - * elf32-m32c.c (m32c_elf_check_relocs): Likewise. - * elf32-m32r.c (m32r_elf_check_relocs): Likewise. - * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise. - * elf32-m68k.c (elf_m68k_check_relocs): Likewise. - * elf32-mcore.c (mcore_elf_check_relocs): Likewise. - * elf32-metag.c (elf_metag_check_relocs): Likewise. - * elf32-microblaze.c (microblaze_elf_check_relocs): Likewise. - * elf32-moxie.c (moxie_elf_check_relocs): Likewise. - * elf32-msp430.c (elf32_msp430_check_relocs): Likewise. - * elf32-mt.c (mt_elf_check_relocs): Likewise. - * elf32-nios2.c (nios2_elf32_check_relocs): Likewise. - * elf32-or1k.c (or1k_elf_check_relocs): Likewise. - * elf32-ppc.c (ppc_elf_check_relocs): Likewise. - * elf32-rl78.c (rl78_elf_check_relocs): Likewise. - * elf32-s390.c (elf_s390_check_relocs): Likewise. - * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise. - * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise. - * elf32-sh.c (sh_elf_check_relocs): Likewise. - * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise. - * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise. - * elf32-v850.c (v850_elf_check_relocs): Likewise. - * elf32-vax.c (elf_vax_check_relocs): Likewise. - * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise. - * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. - * elf64-aarch64.c (elf64_aarch64_check_relocs): Likewise. - * elf64-alpha.c (elf64_alpha_check_relocs): Likewise. - * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. - * elf64-ia64-vms.c (elf64_ia64_check_relocs): Likewise. - * elf64-mmix.c (mmix_elf_check_relocs): Likewise. - * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. - * elf64-s390.c (elf_s390_check_relocs): Likewise. - * elf64-sh64.c (sh_elf64_check_relocs): Likewise. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Likewise. - * elfnn-ia64.c (elfNN_ia64_check_relocs): Likewise. - * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. - * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. - * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise. - -2017-11-28 Alan Modra - - PR 22471 - * elflink.c (_bfd_elf_merge_symbol): Allow weak symbols to override - early passes over linker script symbols. - * linker.c (_bfd_generic_link_add_one_symbol): Allow symbols to - override early passes over linker script symbols. Clear ldscript_def - on symbol definitions. - -2017-11-28 Alan Modra - - * elf64-mmix.c (bfd_elf64_bfd_copy_link_hash_symbol_type): Define. - -2017-11-28 H.J. Lu - - PR ld/22502 - * elflink.c (_bfd_elf_merge_symbol): Also skip definition from - an IR object. - (elf_link_add_object_symbols): If linker plugin is enabled, set - non_ir_ref_regular on symbols referenced in regular objects so - that linker plugin will get the correct symbol resolution. - -2017-11-27 Szabolcs Nagy - - PR ld/22263 - * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Use - bfd_link_executable instead of bfd_link_pic for TLS. - (elfNN_aarch64_allocate_dynrelocs): Likewise. - (aarch64_can_relax_tls): Likewise. - -2017-11-27 Szabolcs Nagy - - PR ld/22269 - * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Use - UNDEFWEAK_NO_DYNAMIC_RELOC to avoid dynamic GOT relocs. - (elfNN_aarch64_allocate_dynrelocs): Likewise. - -2017-11-24 H.J. Lu - - PR binutils/22444 - * elf.c (elf_read_notes): Add an argument for note aligment. - (elf_parse_notes): Likewise. - (_bfd_elf_make_section_from_shdr): Pass section aligment to - elf_parse_notes. - (bfd_section_from_phdr): Pass segment aligment to elf_read_notes. - (elf_parse_notes): Add an argument for note aligment. Use - ELF_NOTE_DESC_OFFSET to get the offset of the note descriptor. - Use ELF_NOTE_NEXT_OFFSET to get the offset of the next note - entry. - (elf_read_notes): Add an argument for note aligment and pass it - to elf_parse_notes. - -2017-11-23 Alan Modra - - * elf32-hppa.c (pc_dynrelocs): Define. - (elf32_hppa_copy_indirect_symbol): Don't copy dyn_relocs to weakdefs. - (alias_readonly_dynrelocs): New function. - (elf32_hppa_adjust_dynamic_symbol): Don't clear non_got_ref to - indicate dyn_relocs should be discarded, discard them here. - Use alias_readonly_dynrelocs. - (allocate_dynrelocs): Don't test or clear non_got_ref. - (elf32_hppa_relocate_section): Simplify test for dynamic relocs. - * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't copy dyn_relocs - to weakdefs. - (alias_readonly_dynrelocs, pc_dynrelocs): New functions. - (ppc_elf_adjust_dynamic_symbol): Don't clear non_got_ref to - indicate dyn_relocs should be discarded, discard them here. - Use alias_readonly_dynrelocs. - (allocate_dynrelocs): Don't test or clear non_got_ref. - (ppc_elf_relocate_section): Simplify test for dynamic relocs. - -2017-11-23 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_entry): Delete weakref field. - (ppc64_elf_copy_indirect_symbol): Don't set weakref. - (alias_readonly_dynrelocs): Use u.alias rather than weakref. - (ppc64_elf_adjust_dynamic_symbol): Don't use - alias_readonly_dynrelocs for function symbols. - -2017-11-23 Alan Modra - - * elf-bfd.h (struct elf_link_hash_entry): Add is_weakalias. - Rename u.weakdef to u.alias and update comment. - (weakdef): New static inline function. - * elflink.c (bfd_elf_record_link_assignment) Test is_weakalias - rather than u.weakdef != NULL, and use weakdef function. - (_bfd_elf_adjust_dynamic_symbol): Likewise. - (_bfd_elf_fix_symbol_flags): Likewise. Clear is_weakalias on - all aliases if def has been overridden in a regular object, not - u.weakdef. - (elf_link_add_object_symbols): Delete new_weakdef flag. Test - is_weakalias and use weakdef. Set is_weakalias and circular - u.alias. Update comments. - (_bfd_elf_gc_mark_rsec): Test is_weakalias rather than - u.weakdef != NULL and use weakdef function. - * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Test - is_weakalias rather than u.weakdef != NULL and use weakdef - function. Assert that def is strong defined. - * elf32-arc.c (elf_arc_adjust_dynamic_symbol): Likewise. - * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. - * elf32-bfin.c (elf32_bfinfdpic_adjust_dynamic_symbol): Likewise. - (bfin_adjust_dynamic_symbol): Likewise. - * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise. - * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. - * elf32-frv.c (elf32_frvfdpic_adjust_dynamic_symbol): Likewise. - * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. - * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. - * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise. - * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. - * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. - * elf32-metag.c (elf_metag_adjust_dynamic_symbol): Likewise. - * elf32-microblaze.c (microblaze_elf_adjust_dynamic_symbol): Likewise. - * elf32-nds32.c (nds32_elf_adjust_dynamic_symbol): Likewise. - * elf32-nios2.c (nios2_elf32_adjust_dynamic_symbol): Likewise. - * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Likewise. - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. - * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. - * elf32-score.c (s3_bfd_score_elf_adjust_dynamic_symbol): Likewise. - * elf32-score7.c (s7_bfd_score_elf_adjust_dynamic_symbol): Likewise. - * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. - * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise. - * elf32-tilepro.c (tilepro_elf_gc_mark_hook): Likewise. - (tilepro_elf_adjust_dynamic_symbol): Likewise. - * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. - * elf32-xtensa.c (elf_xtensa_adjust_dynamic_symbol): Likewise. - * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Likewise. - * elf64-hppa.c (elf64_hppa_adjust_dynamic_symbol): Likewise. - * elf64-ia64-vms.c (elf64_ia64_adjust_dynamic_symbol): Likewise. - * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise. - (ppc64_elf_adjust_dynamic_symbol): Likewise. - * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. - * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_adjust_dynamic_symbol): Likewise. - * elfnn-ia64.c (elfNN_ia64_adjust_dynamic_symbol): Likewise. - * elfnn-riscv.c (riscv_elf_adjust_dynamic_symbol): Likewise. - * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Likewise. - (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. - * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): Likewise. - (tilegx_elf_adjust_dynamic_symbol): Likewise. - * elfxx-x86.c (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. - -2017-11-21 Alan Modra - - * elf-bfd.h (elf_symbol_from): Check for NULL symbol bfd. - * elfcode.h (elf_slurp_reloc_table_from_section): Add FIXME comment. - -2017-11-20 Nick Clifton - - PR 22450 - * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Skip - objects without a GNU_PROPERTY note section when looking for a bfd - onto which notes can be accumulated. - -2017-11-20 Alan Modra - - PR 22451 - PR 22460 - * elf.c (_bfd_elf_init_reloc_shdr): Delete "sec_hdr" parameter - and leave rel_hdr->sh_flags zero. Update calls. - (bfd_elf_set_group_contents): Check input rel/rela SHF_GROUP - flag when !gas before adding rel/rela section to group. Set - output rel/rela SHF_GROUP flags. - -2017-11-18 Jim Wilson - - * elfnn-riscv.c (_bfd_riscv_relax_align): Add space between alignment - and to in error message. - -2017-11-17 H.J. Lu - - * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Pass - "%F%P:", instead of "%F:", to linker callback in case of error. - -2017-11-16 Nick Clifton - - PR 22421 - * elf.c (elfcore_grok_netbsd_procinfo): Check that the note is big enough. - (elfcore_grok_openbsd_procinfo): Likewise. - (elfcore_grok_nto_status): Likewise. - -2017-11-16 Nick Clifton - - * merge.c (sec_merge_emit): Always create padding buffer. Add - asserts to make sure that the buffer is long enough. - -2017-11-15 Alan Modra - - * bfd.c (union _bfd_doprnt_args): Add "Bad". - (_bfd_doprnt): Handle more flags. - (_bfd_doprnt_scan): Likewise. Tidy setting of args array. - (error_handler_internal): Init args type to Bad. - -2017-11-14 Alan Modra - - PR 22431 - * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Warn on discarding - non-empty dynamic section. - (ppc_build_one_stub): Take elf_gp from output bfd, not output - section owner. - (ppc_size_one_stub, ppc64_elf_next_toc_section): Likewise. - -2017-11-14 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for user - .eh_frame info. - -2017-11-13 Jan Beulich - - * coff-tic80.c (COFF_ENCODE_ALIGNMENT, COFF_DECODE_ALIGNMENT): - Define. - * coffcode.h (coff_set_alignment_hook): Drop tic80 special case. - (coff_write_object_contents): Likewise. Issue diagnostic for too - large alignment. - -2017-11-12 H.J. Lu - - PR ld/22423 - * elf.c (_bfd_elf_map_sections_to_segments): Remove PF_X from - PT_PHDR segment. - -2017-11-12 Alan Modra - - * elflink.c (elf_link_add_object_symbols): Ignore anything but - defined and defweak symbols when setting up weakdefs. - -2017-11-12 Alan Modra - - * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Set non_got_ref - to keep dyn_relocs, clear to discard. Comment. - (allocate_dynrelocs): Always clear non_got_ref when clearing - dyn_relocs in non-pic case. Invert non_got_ref test. Also test - dynamic_adjusted and ELF_COMMON_DEF_P. Move code deleting - dyn_relocs on undefined syms to handle for non-pic too. - (elf32_hppa_relocate_section): Simplify test for non-pic dyn relocs. - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Set non_got_ref - to keep dyn_relocs, clear to discard. Comment. - (allocate_dynrelocs): Always clear non_got_ref when clearing - dyn_relocs in non-pic case. Invert non_got_ref test. Also test - dynamic_adjusted and ELF_COMMON_DEF_P. Move code deleting - dyn_relocs on undefined syms to handle for non-pic too. - (ppc_elf_relocate_section): Simplify test for non-pic dyn relocs. - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Discard - dyn_relocs here. Don't bother setting non_got_ref. Comment. - (allocate_dynrelocs): Delete special handling of non-pic ELFv2 - ifuncs. Move code deleting dyn_relocs on undefined symbols to - handle for non-pic too. Don't test non_got_ref. Do test - dynamic_adjusted and ELF_COMMON_DEF_P. - -2017-11-08 Djordje Todorovic - - * elf32-mips.c (elf32_mips_grok_psinfo): Extract core->pid. - * elf64-mips.c (elf64_mips_grok_psinfo): Likewise. - * elfn32-mips.c (elf32_mips_grok_psinfo): Likewise. - -2017-11-08 Djordje Todorovic - - * elf32-mips.c (elf32_mips_write_core_note): New function. - (elf_backend_write_core_note): New macro. - * elf64-mips.c (elf64_mips_write_core_note): New function. - (elf_backend_write_core_note): New macro. - * elfn32-mips.c (elf32_mips_write_core_note): New function. - (elf_backend_write_core_note): New macro. - -2017-11-07 Alan Modra - - * elf64-ppc.c (ppc64_elf_build_stubs): Correct pluralization in - statistics message. - -2017-11-07 Alan Modra - - * sysdep.h: Formatting, comment fixes. - (gettext, ngettext): Redefine when ENABLE_NLS. - (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. - (_): Define using gettext. - (textdomain, bindtextdomain): Use safer "do nothing". - * hosts/alphavms.h (textdomain, bindtextdomain): Likewise. - (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. - -2017-11-05 Alan Modra - - PR 22397 - * bfd.c (_bfd_doprnt_scan): Check args index before storing, not - after. - -2017-11-05 Alan Modra - - PR 22397 - * bfd.c (union _bfd_doprnt_args): New. - (PRINT_TYPE): Add FIELD arg. Take value from args. - (_bfd_doprnt): Replace ap parameter with args. Adjust all - PRINT_TYPE invocations and reading of format args to suit. - Move "%%" handling out of switch handling args. Support - positional parameters. - (_bfd_doprnt_scan): New function. - (error_handler_internal): Call _bfd_doprnt_scan and read args. - -2017-11-04 Alan Modra - - * elf32-ppc.c (got_entries_needed, got_relocs_needed): New functions. - (allocate_dynrelocs, ppc_elf_size_dynamic_sections): Use them here. - (ppc_elf_relocate_section): Don't output a dynamic relocation - for IE GOT entries in an executable. - * elf64-ppc.c (allocate_got): Trim unnecessary TPREL relocs. - (ppc64_elf_size_dynamic_sections): Likewise. - (ppc64_elf_relocate_section): Likewise. - -2017-11-04 Alan Modra - - * elf32-ppc.c (readonly_dynrelocs): Delete info param. Update all - callers. Don't bother with SEC_ALLOC test. Return section pointer. - Move minfo call to.. - (maybe_set_textrel): ..here. - * elf64-ppc.c (readonly_dynrelocs): Return section pointer. - (maybe_set_textrel): Call minfo to print textrel warning to map file. - -2017-11-04 Alan Modra - - * elf32-hppa.c (enum _tls_type): Move. - (struct elf32_hppa_link_hash_entry): Make tls_type a bitfield. - (elf32_hppa_check_relocs): Set DF_STATIC_TLS only for shared libraries. - Tidy tls_type handling. Set symbol tls_type for GOT_TLS_LDM too. - (got_entries_needed, got_relocs_needed): New functions. - (allocate_dynrelocs): Use them. - (elf32_hppa_size_dynamic_sections): Likewise. - (elf32_hppa_relocate_section): Delete bogus FIXME. Formatting. - Correct code emitting relocs on GD/IE got entries. Report an - error when a symbol has both normal and TLS GOT relocs. - -2017-11-04 Alan Modra - - PR 22394 - * elf32-hppa.c (elf32_hppa_check_relocs): Don't create dyn_relocs - for plabels when non-pic. - (maybe_set_textrel): New function. - (readonly_dynrelocs): Move and rewrite. - (elf32_hppa_adjust_dynamic_symbol): Use it. Don't create copy - relocs when def_regular or -z nocopyreloc. Handle non_got_ref - for functions. Expand non_got_ref comments. - (elf32_hppa_size_dynamic_sections): Use maybe_set_textrel. - -2017-11-03 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Set plt.refcount to 1. - Don't use func_pointer_refcount. Don't set plt.refcount nor - non_got_ref for function pointer reference. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Don't use - func_pointer_refcount. - (_bfd_x86_elf_copy_indirect_symbol): Don't copy - func_pointer_refcount. - (_bfd_x86_elf_hide_symbol): Don't use func_pointer_refcount. - * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Likewise. - (elf_x86_link_hash_entry): Remove func_pointer_refcount. - -2017-11-03 Mingi Cho - Nick Clifton - - PR 22385 - * coffgen.c (_bfd_coff_get_external_symbols): Check for an - overlarge raw syment count. - (coff_get_normalized_symtab): Likewise. - -2017-11-01 James Bowman - - * archures.c: Add bfd_mach_ft32b. - * cpu-ft32.c: Add arch_info_struct. - * elf32-ft32.c: Add R_FT32_RELAX, SC0, SC1, - DIFF32. - (ft32_elf_relocate_section): Add clauses for R_FT32_SC0, SC1, - DIFF32. - (ft32_reloc_shortable, elf32_ft32_is_diff_reloc) - (elf32_ft32_adjust_diff_reloc_value) - (elf32_ft32_adjust_reloc_if_spans_insn) - (elf32_ft32_relax_delete_bytes, elf32_ft32_relax_is_branch_target) - (ft32_elf_relax_section): New function. - * reloc.c: Add BFD_RELOC_FT32_RELAX, SC0, SC1, DIFF32. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -2017-11-01 Nick Clifton - - PR 22376 - * coffcode.h (coff_slurp_line_table): Check for an excessively - large line number count. - -2017-11-01 Nick Clifton - - PR 22373 - * peicode.h (pe_bfd_read_buildid): Revise check for invalid size - and offset in light of further possible bogus values. - -2017-11-01 Alan Modra - - PR 22374 - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't create a plt - entry when just a dynamic reloc can serve. Ensure no dynamic - relocations when UNDEFWEAK_NO_DYNAMIC_RELOC by setting non_got_ref. - Expand and move the non_got_ref comment. - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. - -2017-11-01 Nick Clifton - - PR 22369 - * coffgen.c (_bfd_coff_free_symbols): Fail if called on a non-COFF - file. - * cofflink.c (coff_link_check_archive_element): Skip non-COFF - members of an archive. - -2017-10-31 Nick Clifton - - PR 22373 - * peicode.h (pe_bfd_read_buildid): Check for invalid size and data - offset values. - -2017-10-30 Alan Modra - - * elf32-frv.c (ELF_TARGET_ID): Don't define for generic - elf target. - - * elflink.c (elf_gc_sweep): Test elf_object_id in addition to - relocs_compatible. - (bfd_elf_gc_sections): Likewise. - -2017-10-30 Alan Modra - - PR 22269 - * elf32-hppa.c (elf32_hppa_check_relocs): Move SEC_ALLOC test to - ensure non_got_ref is not set due to debug references. - (elf32_hppa_adjust_dynamic_symbol): Tidy plabel handling. Use - SYMBOL_CALLS_LOCAL and UNDEFWEAK_NO_DYNAMIC_RELOC when determining - need for a plt entry. - (allocate_dynrelocs): Similarly for got entries. Tidy code discarding - dynamic relocs when pic. Remove bogus code attempting to handle - commons. - (elf32_hppa_relocate_section): Similarly. Delete resolved_to_zero - and simplify. - (elf32_hppa_finish_dynamic_symbol): Use UNDEFWEAK_NO_DYNAMIC_RELOC - and SYMBOL_REFERENCES_LOCAL in GOT handling. - -2017-10-28 Alan Modra - - PR 22300 - * elflink.c (_bfd_elf_merge_symbol): Remove relocs_compatible check. - * elf32-hppa.c (elf_backend_relocs_compatible): Define. - * elf32-ppc.c (elf_backend_relocs_compatible): Define. - * elf64-ppc.c (elf_backend_relocs_compatible): Define. - -2017-10-25 Alan Modra - - * archive.c (_bfd_compute_and_write_armap): Match "__gnu_lto_slim" - optionally prefixed with "_". - * linker.c (_bfd_generic_link_add_one_symbol): Likewise. - -2017-10-24 Andrew Waterman - - * elfnn-riscv.c (_bfd_riscv_relax_lui): Don't relax to c.lui - when rd is x0. - -2017-10-24 Renlin Li - - PR ld/21703 - * elflink.c (_bfd_elf_merge_symbol): Handle multiple definition case. - -2017-10-23 Nick Clifton - - PR 22319 - * elflink.c (elf_link_output_extsym): Keep global undefined - symbols if they have been marked as needed. - -2017-10-23 Maciej W. Rozycki - - * elfn32-mips.c (mips_elf_n32_mkobject): New prototype and - function. - (bfd_elf32_mkobject): Use `mips_elf_n32_mkobject' rather than - `_bfd_mips_elf_mkobject'. - -2017-10-22 Hans-Peter Nilsson - - PR gas/22304 - * config.bfd (cris-*-* | crisv32-*-*): Require a 64-bit BFD. - -2017-10-19 Palmer Dabbelt - - * elfnn-riscv.c (riscv_pcgp_hi_reloc): New structure. - (riscv_pcgp_lo_reloc): Likewise. - (riscv_pcgp_relocs): Likewise. - (riscv_init_pcgp_relocs): New function. - (riscv_free_pcgp_relocs): Likewise. - (riscv_record_pcgp_hi_reloc): Likewise. - (riscv_record_pcgp_lo_reloc): Likewise. - (riscv_delete_pcgp_hi_reloc): Likewise. - (riscv_use_pcgp_hi_reloc): Likewise. - (riscv_record_pcgp_lo_reloc): Likewise. - (riscv_find_pcgp_lo_reloc): Likewise. - (riscv_delete_pcgp_lo_reloc): Likewise. - (_bfd_riscv_relax_pc): Likewise. - (_bfd_riscv_relax_section): Handle R_RISCV_PCREL_* relocations - via the new functions above. - -2017-10-19 Palmer Dabbelt - - * elfnn-riscv.c (R_RISCV_DELETE): New define. - (_bfd_riscv_relax_delete): New function. - (perform_relocation): Handle R_RISCV_DELETE. - (_bfd_riscv_relax_section): Likewise. - -2017-10-19 H.J. Lu - - PR ld/22263 - * elfxx-tilegx.c (tilegx_elf_tls_transition): Replace - bfd_link_pic with !bfd_link_executable, !bfd_link_pic with - bfd_link_executable for TLS check. - (tilegx_elf_check_relocs): Likewise. - (allocate_dynrelocs): Likewise. - (tilegx_elf_relocate_section): Likewise. - -2017-10-19 H.J. Lu - - PR ld/22263 - * elf32-tilepro.c (tilepro_elf_tls_transition): Replace - bfd_link_pic with !bfd_link_executable, !bfd_link_pic with - bfd_link_executable for TLS check. - (tilepro_elf_check_relocs): Likewise. - (allocate_dynrelocs): Likewise. - (tilepro_elf_relocate_section): Likewise. - -2017-10-19 H.J. Lu - - PR ld/22263 - * elfxx-sparc.c (sparc_elf_tls_transition): Replace - bfd_link_pic with !bfd_link_executable, !bfd_link_pic with - bfd_link_executable for TLS check. - (_bfd_sparc_elf_check_relocs): Likewise. - (allocate_dynrelocs): Likewise. - (_bfd_sparc_elf_relocate_section): Likewise. - -2017-10-18 H.J. Lu - - * elf32-tilepro.c (tilepro_elf_gc_mark_hook): Call - _bfd_generic_link_add_one_symbol to mark __tls_get_addr. - * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): Likewise. - -2017-10-17 H.J. Lu - - * elf32-microblaze.c (microblaze_elf_check_relocs): Check for - indirect and warning symbols. - -2017-10-17 Alan Modra - - PR 22307 - * elf-properties.c (_bfd_elf_parse_gnu_properties): Compare datasz - against size left rather than comparing pointers. Reorganise loop. - -2017-10-17 Alan Modra - - PR 22306 - * aoutx.h (aout_get_external_symbols): Handle stringsize of zero, - and error for any other size that doesn't cover the header word. - -2017-10-16 H.J. Lu - - * elf-bfd.h (elf_backend_data): Remove gc_sweep_hook. - * elf32-arm.c (elf32_arm_gc_sweep_hook): Removed. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-bfin.c (bfin_gc_sweep_hook): Likewise. - (bfinfdpic_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-cr16.c (elf32_cr16_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-lm32.c (lm32_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-m68k.c (elf_m68k_got_entry): Remove elf_m68k_gc_sweep_hook - from comments. - (elf_m68k_remove_got_entry_type): Removed. - (elf_m68k_find_got_entry_ptr): Likewise. - (elf_m68k_remove_got_entry): Likewise. - (elf_m68k_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-mcore.c (mcore_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-metag.c (elf_metag_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-microblaze.c (elf_backend_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-mips.c (elf_backend_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-nds32.c (nds32_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-nios2.c (nios2_elf32_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-or1k.c (or1k_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-ppc.c (ppc_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-sparc.c (elf_backend_gc_sweep_hook): Likewise. - * elf32-tic6x.c (elf32_tic6x_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-tilegx.c (elf_backend_gc_sweep_hook): Likewise. - * elf32-tilepro.c (tilepro_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf64-alpha.c (elf64_alpha_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf64-mips.c (elf_backend_gc_sweep_hook): Likewise. - * elf64-mmix.c (mmix_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf64-ppc.c (elf_backend_gc_sweep_hook): Likewise. - (ppc64_elf_gc_sweep_hook): Likewise. - * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elf64-sparc.c (elf_backend_gc_sweep_hook): Likewise. - * elf64-tilegx.c (elf_backend_gc_sweep_hook): Likewise. - * elflink.c (elf_link_add_object_symbols): Don't call - _bfd_elf_link_check_relocs here. - (gc_sweep_hook_fn): Removed. - (elf_gc_sweep): Remove gc_sweep_hook. - * elfnn-aarch64.c (elfNN_aarch64_gc_sweep_hook): Removed. - (elf_backend_gc_sweep_hook): Likewise. - * elfnn-riscv.c (riscv_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elfxx-mips.c (_bfd_mips_elf_gc_sweep_hook): Likewise. - * elfxx-mips.h (_bfd_mips_elf_gc_sweep_hook): Likewise. - (elf_backend_gc_sweep_hook): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_gc_sweep_hook): Likewise. - * elfxx-sparc.h (_bfd_sparc_elf_gc_sweep_hook): Likewise. - * elfxx-target.h (elf_backend_gc_sweep_hook): Likewise. - (elfNN_bed): Remove elf_backend_gc_sweep_hook. - * elfxx-tilegx.c (tilegx_elf_gc_sweep_hook): Removed. - * elfxx-tilegx.h (tilegx_elf_gc_sweep_hook): Likewise. - -2017-10-14 H.J. Lu - - * elf32-i386.c (elf_i386_backend_data): Removed. - (get_elf_i386_backend_data): Likewise. - (elf_i386_arch_bed): Replace elf_i386_backend_data with - elf_x86_backend_data. - (elf_i386_get_synthetic_symtab): Likewise. - (elf_i386_nacl_arch_bed): Likewise. - (elf_i386_vxworks_arch_bed): Likewise. - (elf_i386_relocate_section): Check target_os instead of - is_vxworks. - (elf_i386_finish_dynamic_symbol): Likewise. - (elf_i386_finish_dynamic_sections): Use htab->plt0_pad_byte. - Check target_os instead of is_vxworks. - (elf_i386_link_setup_gnu_properties): Remove normal_target and - is_vxworks. Initialize plt0_pad_byte. - * elf64-x86-64.c (elf_x86_64_backend_data); Removed. - (get_elf_x86_64_arch_data): Likewise. - (get_elf_x86_64_backend_data): Likewise. - (elf_x86_64_arch_bed): Replace elf_x86_64_backend_data with - elf_x86_backend_data. - (elf_x86_64_get_synthetic_symtab): Likewise. - (elf_x86_64_nacl_arch_bed): Likewise. - (elf_x86_64_link_setup_gnu_properties): Remove is_vxworks and - normal_target. Initialize plt0_pad_byte. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check target_os - instead of is_vxworks. - (_bfd_x86_elf_size_dynamic_sections): Likewise. - (_bfd_x86_elf_finish_dynamic_sections): Likewise. - (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. - (_bfd_x86_elf_link_hash_table_create): Initialize target_os. - (_bfd_x86_elf_link_setup_gnu_properties): Remove is_vxworks. - Update normal_target. Set up plt0_pad_byte. Check target_os - instead of is_vxworks. - * elfxx-x86.h (elf_x86_target_os): New. - (elf_x86_backend_data): Likewise. - (get_elf_x86_backend_data): Likewise. - (elf_x86_link_hash_table): Remove is_vxworks. Add plt0_pad_byte - and target_os. - (elf_x86_init_table): Remove normal_target and is_vxworks. Add - plt0_pad_byte. - -2017-10-14 H.J. Lu - - * elf32-i386.c (elf_i386_finish_dynamic_sections): Call - _bfd_x86_elf_finish_dynamic_sections. - * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Likewise. - * elfxx-x86.c (_bfd_x86_elf_finish_dynamic_sections): New - function. - * elfxx-x86.h (_bfd_x86_elf_finish_dynamic_sections): New - prototype. - -2017-10-14 H.J. Lu - - PR ld/21384 - * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't - hide symbol which was forced to be dynamic. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-cris.c (cris_elf_relocate_section): Don't generate - dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (cris_elf_check_relocs): Don't allocate dynamic relocation - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-sh.c (allocate_dynrelocs): Discard dynamic relocations - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (sh_elf_relocate_section): Don't generate dynamic relocation if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-s390.c (allocate_dynrelocs): Discard dynamic - relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (elf_s390_relocate_section): Don't generate dynamic relocation - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - * elf64-s390.c (allocate_dynrelocs): Discard dynamic - relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (elf_s390_relocate_section): Don't generate dynamic relocation - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-nios2.c (nios2_elf32_relocate_section): Don't generate - dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (allocate_dynrelocs): Discard dynamic relocations if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-microblaze.c (microblaze_elf_relocate_section): Don't - generate dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is - true. - (allocate_dynrelocs): Discard dynamic relocations if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-m68k.c (elf_m68k_check_relocs): Don't allocate dynamic - relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (elf_m68k_adjust_dynamic_symbol): Don't make symbol dynamic if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (elf_m68k_relocate_section): Don't generate dynamic relocation - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-hppa.c (ensure_undef_dynamic): Don't make undefined - symbol dynamic if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (allocate_dynrelocs): Discard dynamic relocations if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (elf32_hppa_relocate_section): Don't generate dynamic - relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elfnn-ia64.c (elfNN_ia64_check_relocs): Don't allocate - dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (allocate_fptr): Don't allocate function pointer if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (allocate_dynrel_entries): Don't allocate dynamic relocation - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (set_got_entry): Don't set GOT entry if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (set_pltoff_entry): Don't set PLTOFF entry if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (elfNN_ia64_relocate_section): Don't install dynamic relocation - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elfxx-mips.c (mips_elf_calculate_relocation): Don't generate - dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (allocate_dynrelocs): Don't allocate dynamic relocations if - UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-arm.c (elf32_arm_final_link_relocate): Don't generate - dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (allocate_dynrelocs_for_symbol): Discard dynamic relocations - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elf32-tilepro.c (allocate_dynrelocs): Discard dynamic - relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (tilepro_elf_relocate_section): Don't generate dynamic - relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - * elfxx-tilegx.c (allocate_dynrelocs): Discard dynamic - relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - (tilegx_elf_relocate_section): Don't generate dynamic - relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - PR ld/22269 - * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Don't - generate dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is - true. - (elfNN_aarch64_allocate_dynrelocs): Discard dynamic relocations - if UNDEFWEAK_NO_DYNAMIC_RELOC is true. - -2017-10-14 H.J. Lu - - * elf32-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Moved to ... - * elf-bfd.h (UNDEFWEAK_NO_DYNAMIC_RELOC): Here. - * elf64-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Removed. - -2017-10-12 James Bowman - - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * elf32-ft32.c: Add HOWTO R_FT32_15. - * reloc.c: Add BFD_RELOC_FT32_15. - -2017-10-12 Nick Clifton - - * reloc.c (enum bfd_reloc_status): Start values at 2. - * bfd-in2.h: Regenerate. - * elfnn-aarch64.c (aarch64_relocate): Invert sense of function, so - that a TRUE return indicates success. Compare the result of - calling _bfd_aarch64_elf_put_addend against bfd_reloc_ok. - (build_one_stub): Change sense of tests against aarch64_relocate - return value. - (elfNN_aarch64_tls_relax): Return bfd_reloc_notsupported, rather - than FALSE, when an error is detected. - (elfNN_aarch64_final_link_relocate): Likewise. - -2017-10-12 H.J. Lu - - * elf32-i386.c (elf_backend_hide_symbol): New. - * elf64-x86-64.c (elf_backend_hide_symbol): Likewise. - * elfxx-x86.c (_bfd_x86_elf_hide_symbol): Likewise. - * elfxx-x86.h (_bfd_x86_elf_hide_symbol): Likewise. - -2017-10-12 Alan Modra - - * elflink.c (_bfd_elf_adjust_dynamic_symbol): Call - elf_backend_hide_symbol, not _bfd_elf_link_hash_hide_symbol. - (bfd_elf_define_start_stop): Likewise. - -2017-10-12 Alan Modra - - * elf32-nds32.c (nds32_elf_size_dynamic_sections): Set .interp - when executable rather than non-PIC. - * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise. - * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise. - -2017-10-11 Maciej W. Rozycki - - * elf-bfd.h (elf_backend_data): Add `linux_prpsinfo64_ugid16' - member. - * elf-linux-core.h (elf_external_linux_prpsinfo64): Rename to... - (elf_external_linux_prpsinfo64_ugid32): ... this. - (swap_linux_prpsinfo32_out): Rename to... - (swap_linux_prpsinfo32_ugid32_out): ... this. - (elf_external_linux_prpsinfo64_ugid16): New structure. - (swap_linux_prpsinfo64_ugid16_out): New function. - * elfxx-target.h [!elf_backend_linux_prpsinfo64_ugid16] - (elf_backend_linux_prpsinfo64_ugid16): Define. - (elfNN_bed): Initialize `linux_prpsinfo64_ugid16' member. - * elf.c (elfcore_write_linux_prpsinfo64): Handle both variants - of the 64-bit Linux core PRPSINFO note. - * elf64-sh64.c (elf_backend_linux_prpsinfo64_ugid16): Define. - -2017-10-11 Maciej W. Rozycki - - * elf-bfd.h (elf_backend_data): Add `linux_prpsinfo32_ugid16' - member. - (elfcore_write_ppc_linux_prpsinfo32): Remove prototype. - * elf32-ppc.c (elfcore_write_ppc_linux_prpsinfo32): Remove. - (elf_external_ppc_linux_prpsinfo32) - (swap_ppc_linux_prpsinfo32_out): Move to... - * elf-linux-core.h (elf_external_linux_prpsinfo32_ugid32) - (swap_linux_prpsinfo32_ugid32_out): ... these. - (elf_external_linux_prpsinfo32): Rename to... - (elf_external_linux_prpsinfo32_ugid16): ... this. - (swap_linux_prpsinfo32_out): Rename to... - (swap_linux_prpsinfo32_ugid16_out): ... this. - * elfxx-target.h [!elf_backend_linux_prpsinfo32_ugid16] - (elf_backend_linux_prpsinfo32_ugid16): Define. - (elfNN_bed): Initialize `linux_prpsinfo32_ugid16' member. - * elf.c (elfcore_write_linux_prpsinfo32): Handle both variants - of the 32-bit Linux core PRPSINFO note. - * elf32-am33lin.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-arm.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-cris.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-frv.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-i386.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-m32r.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-m68k.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-s390.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-sh.c (elf_backend_linux_prpsinfo32_ugid16): Define. - * elf32-sparc.c (elf_backend_linux_prpsinfo32_ugid16): Define. - -2017-10-11 Maciej W. Rozycki - - * elf-linux-core.h (elf_external_linux_prpsinfo64): Move the - `gap' member ahead of `pr_flag'. - -2017-10-11 Pedro Alves - - * bfd.c (_doprnt): Rename to ... - (_bfd_doprnt): ... this. - (error_handler_internal): Adjust. - -2017-10-10 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Set GOT refcount to 1 - instead of incrementing it. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - -2017-10-10 Renlin Li - - PR ld/21402 - * elf32-arm.c (allocate_dynrelocs_for_symbol): Only make undefined weak - symbols into dynamic. - -2017-10-09 H.J. Lu - - PR ld/22274 - * elfnn-riscv.c (riscv_elf_link_hash_table): Add max_alignment. - (riscv_elf_link_hash_table_create): Initialize max_alignment to - (bfd_vma) -1. - (_bfd_riscv_relax_section): Cache the max alignment of output - sections if possible. - -2017-10-10 Alan Modra - - * elf64-ppc.c (ppc64_elf_before_check_relocs): Set sec_type for - .opd whenever .opd is present and non-zero size. Move code - setting abiversion to/from output file earlier. Only set - u.opd.func_sec when --gc-sections. Read relocs and set up - u.opd.func_sec values here.. - (ppc64_elf_check_relocs): ..rather than here. Simplify opd - section tests. - (ppc64_elf_edit_opd): Don't set sec_type for .opd here. - -2017-10-09 H.J. Lu - - * elf-m10300.c (mn10300_elf_check_relocs): Don't free cached - isymbuf. - -2017-10-09 H.J. Lu - - * elf32-bfin.c (bfin_size_dynamic_sections): Don't create the - .interp section with "ld --no-dynamic-linker". - -2017-10-09 Alan Modra - - PR 22212 - * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free - funcinfo_hash_table and varinfo_hash_table. - -2017-10-08 H.J. Lu - - * elf32-sh.c (readonly_dynrelocs): Dump dynamic relocation - in read-only section with minfo. - (sh_elf_size_dynamic_sections): Likewise. - -2017-10-08 H.J. Lu - - * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Remove - a strayed comment. - -2017-10-08 H.J. Lu - - * elfxx-tilegx.c (tilegx_elf_finish_dynamic_sections): Set - this_hdr.sh_entsize only if section size > 0. - -2017-10-08 H.J. Lu - - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Reformat. - -2017-10-07 H.J. Lu - - * elfxx-sparc.c (readonly_dynrelocs): Dump dynamic relocation - in read-only section with minfo. - (_bfd_sparc_elf_size_dynamic_sections): Likewise. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Update - comments. - -2017-10-06 John Baldwin - - * elf-bfd.h (struct elf_backend_data): Add - `elf_backend_grok_freebsd_prstatus'. - * elf.c (elfcore_grok_freebsd_note): Call - `elf_backend_grok_freebsd_prstatus' to handle NT_PRSTATUS if - present. - * elfn32-mips.c (elf_n32_mips_grok_freebsd_prstatus): New - function. - (elf_backend_grok_freebsd_prstatus): Define. - * elfxx-target.h (elf_backend_grok_freebsd_prstatus): Define. - (elfNN_bed): Initialize `elf_backend_grok_freebsd_prstatus'. - -2017-10-06 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Replace has_got_reloc - and has_non_got_reloc with zero_undefweak. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_hash_newfunc): Initialize - zero_undefweak to 1. - (_bfd_x86_elf_copy_indirect_symbol): Replace has_got_reloc and - has_non_got_reloc with zero_undefweak. - * elfxx-x86.h (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Replace - has_got_reloc and has_non_got_reloc with zero_undefweak. - (elf_x86_link_hash_entry): Likewise. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (COPY_INPUT_RELOC_P): Add "do/while(0);". - (VERIFY_COPY_RELOC): Likewise. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (VERIFY_COPY_RELOC): New. - * elf32-i386.c (elf_i386_finish_dynamic_symbol): Use it. - * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (VERIFY_PLT_ENTRY): New. - * elf32-i386.c (elf_i386_finish_dynamic_symbol): Use it. - * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (COPY_INPUT_RELOC_P): New. - * elf32-i386.c (elf_i386_relocate_section): Use it. - * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. - -2017-10-06 H.J. Lu - - * elf32-i386.c (X86_SIZE_TYPE_P): New. - (elf_i386_relocate_section): Use GENERATE_DYNAMIC_RELOCATION_P. - * elf64-x86-64.c (X86_SIZE_TYPE_P): New. - (elf_x86_64_relocate_section): Use GENERATE_DYNAMIC_RELOCATION_P. - * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): New. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (POINTER_LOCAL_IFUNC_P): New. - (PLT_LOCAL_IFUNC_P): Likewise. - * elf32-i386.c (elf_i386_relocate_section): Use them. - * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (GENERATE_RELATIVE_RELOC_P): New. - * elf32-i386.c (elf_i386_relocate_section): Use it. - * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (RESOLVED_LOCALLY_P): New. - * elf32-i386.c (elf_i386_relocate_section): Use it. - * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. - -2017-10-06 H.J. Lu - - * elf32-i386.c (X86_PCREL_TYPE_P): New. - (elf_i386_check_relocs): Use NEED_DYNAMIC_RELOCATION_P. - * elf64-x86-64.c (IS_X86_64_PCREL_TYPE): Renamed to ... - (X86_PCREL_TYPE_P): This. - (elf_x86_64_check_relocs): Use NEED_DYNAMIC_RELOCATION_P. - Replace IS_X86_64_PCREL_TYPE with X86_PCREL_TYPE_P. - (elf_x86_64_relocate_section): Replace IS_X86_64_PCREL_TYPE with - X86_PCREL_TYPE_P. - * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): New. - -2017-10-06 H.J. Lu - - * elfxx-x86.h (TLS_TRANSITION_IE_TO_LE_P): New. - * elf32-i386.c (elf_i386_tls_transition): Use it. - * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. - -2017-10-05 H.J. Lu - - * elf32-ppc.c (readonly_dynrelocs): Add a link_info argument. - Dump dynamic relocation in read-only section with minfo if - needed. - (ppc_elf_adjust_dynamic_symbol): Pass NULL to readonly_dynrelocs. - (maybe_set_textrel): Likewise. - (ppc_elf_size_dynamic_sections): Dump dynamic relocation in - read-only section with minfo. - -2017-10-05 John Baldwin - - * elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_VFP. - -2017-10-05 H.J. Lu - - * elf32-tilepro.c (readonly_dynrelocs): Dump dynamic relocation - in read-only section with minfo. - (tilepro_elf_size_dynamic_sections): Likewise. - * elfxx-tilegx.c (readonly_dynrelocs): Likewise. - (tilegx_elf_size_dynamic_sections): Likewise. - -2017-10-05 Pedro Alves - - PR 22245 - * bfd.c (bfd_set_error): Revert 2017-10-04 change. Remove - ellipsis parameter. Split out bfd_error_on_input code to.. - (bfd_set_input_error): .. New function. - * archive.c (_bfd_write_archive_contents): Use bfd_set_input_error. - * vms-lib.c (_bfd_vms_lib_write_archive_contents): Likewise. - * bfd-in2.h: Regenerate. - -2017-10-05 Alan Modra - - * elflink.c (elf_link_input_bfd): Correct ctor/dtor in init_array/ - fini_array error value. - -2017-10-05 Alan Modra - - PR 21167 - * elf.c (_bfd_elf_setup_sections): Don't trim reloc sections from - groups. - (_bfd_elf_init_reloc_shdr): Pass sec_hdr, use it to copy SHF_GROUP - flag from section. - (elf_fake_sections): Adjust calls. Exit immediately on failure. - (bfd_elf_set_group_contents): Add associated reloc section indices - to group contents. - -2017-10-04 Alan Modra - - * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't sort or - classify symbols for ELFv2. - -2017-10-04 Pavel I. Kryukov - - PR 22245 - * bfd.c (bfd_set_error): Avoid UB on passing arg to va_start that - undergoes default promotion. - * bfd-in2.h: Regenerate. - -2017-10-02 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Fix comment typo. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - -2017-10-01 Alan Modra - - PR 21957 - * dwarf2.c (new_line_sorts_after): Remove end_sequence comparison. - (add_line_info): Always put end_sequence last. - -2017-10-01 Alan Modra - - PR 22047 - * dwarf2.c (read_section): Allocate buffer with extra byte for - bfd_simple_get_relocated_section_contents rather than copying - afterwards. - -2017-09-29 Alan Modra - - * merge.c (merge_strings): Return FALSE on malloc failure. - (_bfd_merge_sections): Return failures from record_section and - merge_strings. - -2017-09-28 Alan Modra - - PR 22220 - * elflink.c (_bfd_elf_merge_symbol): Set non_ir_ref_dynamic in - a case where plugin_notice isn't called. - -2017-09-27 Kuan-Lin Chen - - * elf32-nds32.c (nds32_elf_relax_section): Fix a tautological - comparison. - -2017-09-26 H.J. Lu - - PR ld/22199 - * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't pass - output_bfd to info->callbacks->minfo. - -2017-09-26 Nick Clifton - - PR 22172 - * elf64-x86-64.c (elf_x86_64_info_to_howto): Do not trigger an - assertion failure if elf_x86_64_rtype_to_howto has already issued - an error message. - -2017-09-26 Alan Modra - - PR 22210 - * dwarf2.c (read_formatted_entries): Use read_attribute_value to - read data. - -2017-09-26 Nick Clifton - - PR 22210 - * dwarf2.c (read_formatted_entries): Fail early if we know that - the loop parsing data entries will overflow the end of the - section. - -2017-09-26 Alan Modra - - PR 22209 - * dwarf2.c (struct comp_unit): Delete sec_info_ptr field. - (find_abstract_instance_name): Calculate DW_FORM_ref_addr relative - to stash->info_ptr_memory, and check die_ref is within that memory. - Set info_ptr_end correctly when another CU is refd. Check die_ref - for DW_FORM_ref4 etc. is within CU. - -2017-09-26 Alan Modra - - PR 22205 - * dwarf2.c (concat_filename): Return "" on NULL filename. - (read_formatted_entries): Init "fe". - (decode_line_info ): Use line_info_add_file_name. - -2017-09-26 Alan Modra - - PR 22204 - * dwarf2.c (decode_line_info): Ensure line_ptr stays within - bounds in inner loop. - -2017-09-25 Alan Modra - - PR 22202 - * dwarf1.c (parse_die): Sanity check pointer against section limit - before dereferencing. - (parse_line_table): Likewise. - -2017-09-25 Alan Modra - - PR 22201 - * dwarf2.c (scan_unit_for_symbols): Ignore DW_AT_name unless it - has string form. - (parse_comp_unit): Likewise. - -2017-09-25 Alan Modra - - PR 22200 - * dwarf2.c (read_formatted_entries): Error on format_count zero. - -2017-09-24 Alan Modra - - PR 22197 - * opncls.c (bfd_get_debug_link_info_1): Properly check that crc is - within section bounds. - -2017-09-24 Alan Modra - - PR 22191 - * dwarf2.c (decode_line_info): Properly free line sequences on error. - -2017-09-24 Alan Modra - - PR 22187 - * dwarf2.c (find_abstract_instance_name): Add orig_info_ptr and - pname param. Return status. Make name const. Don't abort, - return an error. Formatting. Exit if current info_ptr matches - orig_info_ptr. Update callers. - (scan_unit_for_symbols): Start at nesting_level of zero. Make - nested_funcs an array of structs for extensibility. Formatting. - -2017-09-24 Alan Modra - - PR 22186 - * dwarf2.c (decode_line_info): Fail on lh.line_range of zero - rather than dividing by zero. - -2017-09-24 Alan Modra - - PR 22169 - * dwarf2.c (decode_line_info): Correct .debug_line unit_length check. - -2017-09-24 Alan Modra - - PR 22167 - * dwarf2.c (scan_unit_for_symbols): Check u.blk->data is non-NULL. - -2017-09-24 Alan Modra - - PR 22166 - * elf.c (_bfd_elf_slurp_version_tables): Test sh_info on - SHT_GNU_verneed section for sanity. Don't zalloc memory for - verref. - -2017-09-22 H.J. Lu - - PR binutils/22170 - * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Guard against - corrupted PLT. - -2017-09-22 H.J. Lu - - PR binutils/22163 - * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Also return - -1 if bfd_canonicalize_dynamic_reloc returns 0. - -2017-09-22 Pedro Alves - Alan Modra - - * version.h: Add comment. - -2017-09-21 Andreas Arnez - - * elf.c (elfcore_grok_note): For the cases NT_S390_GS_CB and - NT_S390_GS_BC, correct the previously swapped invocations of - elfcore_grok_s390_gs_bc and elfcore_grok_s390_gs_cb. - -2017-09-19 Alan Modra - - PR 21441 - * elf64-ppc.c (ppc64_elf_build_stubs): Don't check glink_eh_frame - size. - -2017-09-19 Alan Modra - - PR 22150 - * elflink.c (bfd_elf_size_dynamic_sections): Garbage collect - symbols before calculating verrefs. Don't renumber dynsyms - after gc. Exclude .gnu.version when zero or one dynsym. - Localize some vars and reindent. - -2017-09-18 H.J. Lu - - PR ld/22148 - * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Check error - return from bfd_canonicalize_dynamic_reloc. - -2017-09-15 Alan Modra - - PR 22116 - * archive.c (bfd_ar_hdr_from_filesystem): Detect when status.st_size - overflows bfd_size_type. - -2017-09-14 H.J. Lu - - PR ld/22135 - * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument - to indicate if conversion is performed. - (elf_i386_check_relocs): Cache section contents and relocations - if conversion is performed. - * elf64-x86-64.c (elf_x86_64_check_relocs): Cache section - contents and relocations if conversion is performed. - -2017-09-14 Nick Clifton - - PR binutils/22113 - * peXXigen.c (pe_print_idata): Extend check for HintName vector - entries. - -2017-09-13 H.J. Lu - - * elfxx-x86.h: Fix a typo in comments. - -2017-09-09 Kamil Rytarowski - - * elf32-nds32.c: Rename __BIT() to N32_BIT(). - -2017-09-09 Alan Modra - - * elf64-ppp.c (plt_stub_pad): Handle positive and negative - plt_stub_align. - -2017-09-09 H.J. Lu - - * elf32-i386.c (elf_i386_relocate_section): Update usage of - UNDEFINED_WEAK_RESOLVED_TO_ZERO. - (elf_i386_finish_dynamic_symbol): Likewise. - * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. - (elf_x86_64_finish_dynamic_symbol): Likewise. - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. - (_bfd_x86_elf_fixup_symbol): Likewise. - -2017-09-09 H.J. Lu - - * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't - check has_non_got_reloc. - -2017-09-09 H.J. Lu - - PR ld/22115 - * elf32-i386.c (elf_i386_convert_load_reloc): Check linker_def. - Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. - * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Check - linker_def. Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. - * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Set local_ref - and linker_def on __ehdr_start if it is referenced and not - defined. - (_bfd_x86_elf_link_symbol_references_local): Also set local_ref - and return TRUE when building executable, if a symbol has - non-GOT/non-PLT relocations in text section or there is no - dynamic linker. - * elfxx-x86.h (elf_x86_link_hash_entry): Add linker_def. - -2017-09-08 H.J. Lu - - * elfxx-x86.h: Update comments. - -2017-09-08 H.J. Lu - - * elf32-i386.c (elf_i386_link_setup_gnu_properties): Replace - elf_x86_plt_layout_table with elf_x86_init_table. - * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): - Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): - Likewise. - * elfxx-x86.h (elf_x86_plt_layout_table): Renamed to ... - (elf_x86_init_table): This. - (_bfd_x86_elf_link_setup_gnu_properties): Replace - elf_x86_plt_layout_table with elf_x86_init_table. - -2017-09-07 H.J. Lu - - * configure.ac (bfd_backends): Don't add elf64-x86-64.lo nor - elf64.lo together with elfxx-x86.lo for 64-bit BFD. - * configure: Regenerated. - * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set r_info - and r_sym fields of plt_layout. - * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): - Likewise. - * elfxx-x86.c (elf_x86_64_is_reloc_section): Remove BFD64 check. - (_bfd_x86_elf_link_hash_table_create): Likewise. Don't set - r_info nor r_sym fields. - (_bfd_x86_elf_link_setup_gnu_properties): Set r_info and r_sym - fields of htab. - * elfxx-x86.h (elf_x86_plt_layout_table): Add r_info and r_sym. - -2017-09-07 Palmer Dabbelt - - * (_bfd_riscv_relax_align): Call bfd_set_error and - print an error message when unable to relax a .align directive. - -2017-09-07 Palmer Dabbelt - - * elfnn-riscv.c (riscv_zero_pcrel_hi_reloc): New function. - (riscv_record_pcrel_hi_reloc): Add absolute argument. - (riscv_elf_relocate_section): Call riscv_zero_pcrel_hi_reloc for - R_RISCV_PCREL_HI20 relocs, and pass the result to - riscv_record_pcrel_hi_reloc. - -2017-09-07 H.J. Lu - - * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument, - r_type_p. Remove the converted argument. Replace - SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. Return - the new relocation type via r_type_p. - (elf_i386_relocate_section): Likewise. - (elf_i386_finish_dynamic_symbol): Likewise. - (need_convert_load): Removed. - (check_relocs_failed): Updated. - (elf_i386_check_relocs): Call elf_i386_convert_load_reloc, - instead of setting need_convert_load. - (_bfd_i386_elf_convert_load): Removed. - * elf64-x86-64.c (need_convert_load): Removed. - (check_relocs_failed): Updated. - (elf_x86_64_convert_load_reloc): Add an argument, r_type_p. - Replace SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. - Return the new relocation type via r_type_p. - (elf_x86_64_check_relocs): Call elf_x86_64_convert_load_reloc, - instead of setting need_convert_load. - (elf_x86_64_check_relocs): Don't check PIC if relocation has - been converted. - (_bfd_x86_64_elf_convert_load): Removed. - (elf_x86_64_relocate_section): Replace SYMBOL_REFERENCES_LOCAL - with SYMBOL_REFERENCES_LOCAL_P. - (elf_x86_64_finish_dynamic_symbol): Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Don't - set convert_load. - (_bfd_x86_elf_size_dynamic_sections): Don't call convert_load. - (_bfd_x86_elf_link_symbol_references_local): New function. - * elfxx-x86.h (SYMBOL_REFERENCES_LOCAL_P): New. - (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Replace elf.forced_local with - SYMBOL_REFERENCES_LOCAL_P. - (elf_x86_link_hash_entry): Add local_ref. - (elf_x86_link_hash_table): Remove convert_load. - (_bfd_i386_elf_convert_load): Removed. - (_bfd_x86_64_elf_convert_load): Likewise. - (_bfd_x86_elf_link_symbol_references_local): New. - -2017-09-06 H.J. Lu - - * elf64-x86-64.c (R_X86_64_converted_reloc_bit): New. - (elf_x86_64_info_to_howto): Get the real relocation type by - masking out R_X86_64_converted_reloc_bit. - (elf_x86_64_check_tls_transition): Get the real relocation type - by masking out R_X86_64_converted_reloc_bit. - (elf_x86_64_convert_load_reloc): Set R_X86_64_converted_reloc_bit - instead of setting converted_reloc. - (elf_x86_64_relocate_section): Check R_X86_64_converted_reloc_bit - instead of converted_reloc. Get the real relocation type by - masking out R_X86_64_converted_reloc_bit. - (elf_x86_64_link_setup_gnu_properties): Verify that the value of - R_X86_64_converted_reloc_bit is valid. - * elfxx-x86.h (converted_reloc): Removed. - -2017-09-06 H.J. Lu - - * elf32-i386.c (elf_i386_relocate_section): Don't change r_type - when calling elf_i386_tls_transition. Don't use ELF32_R_TYPE - to get the relocation type again. - * elf64-x86-64.c (elf_x86_64_relocate_section): Don't change - r_type when calling elf_x86_64_tls_transition. Don't use - ELF32_R_TYPE to get the relocation type again. - -2017-09-05 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Properly set - converted_reloc. - -2017-09-05 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Remove the sec - argument. Don't check relocation overflow. Avoid relocation - overflow if --no-relax is used. Set converted_reloc on symbol - if a GOTPCREL relocation is converted. - (elf_x86_64_relocate_section): Issue a fatal error and suggest - --no-relax if GOTPCREL relocation conversion leads to relocation - overflow. - * elfxx-x86.h (elf_x86_link_hash_entry): Add converted_reloc. - -2017-09-05 Alexander Fedotov - Edmar Wienskoski - - PR ld/22071 - * elfxx-x86.c (elf_x86_allocate_dynrelocs): Set tlsdesc_plt - for x86-64 if GOT_TLS_GDESC_P is true. - -2017-09-03 Alan Modra - - PR 22067 - * elfxx-x86.h (elf_x86_hash_table): Check is_elf_hash_table first. - -2017-09-02 H.J. Lu - - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize - tls_get_addr for x86-64 in one place. - -2017-09-02 H.J. Lu - - * configure.ac (bfd_backends): Add elf64-x86-64.lo together - with elfxx-x86.lo for 64-bit BFD. - * configure: Regenerated. - -2017-09-02 H.J. Lu - - * elf32-i386.c (elf_i386_convert_load): Renamed to ... - (_bfd_i386_elf_convert_load): This. Remove static. - (elf_i386_size_dynamic_sections): Removed. - (elf_backend_size_dynamic_sections): Likewise. - * elf64-x86-64.c (elf_x86_64_convert_load): Renamed to ... - (_bfd_x86_64_elf_convert_load): This. Remove static. - (elf_x86_64_size_dynamic_sections): Removed. - (elf_backend_size_dynamic_sections): Likewise. - * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): Renamed to ... - (elf_x86_allocate_dynrelocs): This. Make it static. - (_bfd_x86_elf_allocate_local_dynrelocs): Renamed to ... - (elf_x86_allocate_local_dynreloc): This. Make it static. - (elf_i386_is_reloc_section): New function. - (elf_x86_64_is_reloc_section): Likewise. - (_bfd_x86_elf_link_hash_table_create): Initialize convert_load, - is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. - Rearrange got_entry_size initialization. - (_bfd_x86_elf_size_dynamic_sections): New function. - * elfxx-x86.h (elf_x86_link_hash_table): Add convert_load, - is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. - (_bfd_i386_elf_convert_load): New. - (_bfd_x86_64_elf_convert_load): Likewise. - (_bfd_x86_elf_size_dynamic_sections): Likewise. - (elf_backend_size_dynamic_sections): Likewise. - (_bfd_x86_elf_allocate_dynrelocs): Removed. - (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. - -2017-09-02 H.J. Lu - - * elfxx-x86.h (elf_x86_link_hash_table): Rearrange fields and - update comments. - -2017-09-02 H.J. Lu - - * elf32-i386.c (elf_i386_size_dynamic_sections): Set - sgotplt_jump_table_size with elf_x86_compute_jump_table_size. - -2017-09-02 H.J. Lu - - * elf32-i386.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, - PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Moved to ... - * elfxx-x86.h (PLT_CIE_LENGTH, PLT_FDE_LENGTH, - PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Here. - * elf64-x86-64.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, - PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Removed. - -2017-09-02 H.J. Lu - - * elf32-i386.c (elf_i386_allocate_dynrelocs): Removed. - (elf_i386_allocate_local_dynrelocs): Likewise. - (elf_i386_size_dynamic_sections): Replace - elf_i386_allocate_dynrelocs/elf_i386_allocate_local_dynrelocs - with _bfd_x86_elf_allocate_dynrelocs and - _bfd_x86_elf_allocate_local_dynrelocs. - * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Removed. - (elf_x86_64_allocate_local_dynrelocs): Likewise. - (elf_x86_64_size_dynamic_sections): Replace - elf_x86_64_allocate_dynrelocs/elf_x86_64_allocate_local_dynrelocs - with _bfd_x86_elf_allocate_dynrelocs and - _bfd_x86_elf_allocate_local_dynrelocs. - * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): New function. - (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. - * elfxx-x86.h (_bfd_x86_elf_allocate_dynrelocs): New prototype. - (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. - -2017-09-02 H.J. Lu - - * elf32-i386.c (is_i386_elf): Removed. - (elf_i386_check_relocs): Replace is_i386_elf with is_x86_elf. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_relocate_section): Likewise. - * elf64-x86-64.c (is_x86_64_elf): Removed. - (elf_x86_64_check_relocs): Replace is_x86_64_elf with - is_x86_elf. - (elf_x86_64_size_dynamic_sections): Likewise. - (elf_x86_64_relocate_section): Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize - target_id. - * elfxx-x86.h (elf_x86_link_hash_table): Add target_id. - (is_x86_elf): New. - -2017-09-02 H.J. Lu - - * elf32-i386.c (elf_i386_compute_jump_table_size): Removed. - (elf_i386_allocate_dynrelocs): Replace - elf_i386_compute_jump_table_size with - elf_x86_compute_jump_table_size. - (elf_i386_size_dynamic_sections): Likewise. - * elf64-x86-64.c (elf_x86_64_compute_jump_table_size): Removed. - (elf_x86_64_allocate_dynrelocs): Replace - elf_x86_64_compute_jump_table_size with - elf_x86_compute_jump_table_size. - (elf_x86_64_size_dynamic_sections): Likewise. - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize - got_entry_size. - * elfxx-x86.h (elf_x86_link_hash_table): Add got_entry_size. - (elf_x86_compute_jump_table_size): New. - -2017-09-02 H.J. Lu - - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize - sizeof_reloc. - (_bfd_x86_elf_adjust_dynamic_symbol): Use sizeof_reloc. - * elfxx-x86.h (elf_x86_link_hash_table): Add sizeof_reloc. - -2017-09-02 H.J. Lu - - * elf32-i386.c (elf_i386_allocate_dynrelocs): Check VxWorks - with htab->is_vxworks. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_relocate_section): Likewise. - (elf_i386_finish_dynamic_symbol): Likewise. - (elf_i386_finish_dynamic_sections): Likewise. - -2017-09-02 H.J. Lu - - * elf32-i386.c (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, - GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, - GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Moved to ... - * elfxx-x86.h (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, - GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, - GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Here. - * elf64-x86-64.c (GOT_TLS_IE, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, - GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Removed. - -2017-09-01 H.J. Lu - - PR ld/22064 - * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Check - ELF_COMMON_DEF_P for common symbols. - -2017-09-02 Alan Modra - - * elf-eh-frame.c (offset_adjust): Avoid false positive gcc warning. - * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. - -2017-09-01 H.J. Lu - - * elf32-i386.c (elf_i386_gc_mark_hook): Removed. - (elf_backend_gc_mark_hook): Likewise. - * elf64-x86-64.c (elf_x86_64_gc_mark_hook): Likewise. - (elf_backend_gc_mark_hook): Likewise. - * elfxx-x86.c (_bfd_x86_elf_gc_mark_hook): New function. - * elfxx-x86.h (_bfd_x86_elf_gc_mark_hook): New. - (elf_backend_gc_mark_hook): Likewise. - -2017-09-01 H.J. Lu - - * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Removed. - (elf_backend_adjust_dynamic_symbol): Likewise. - * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. - (elf_backend_adjust_dynamic_symbol): Likewise. - * elfxx-x86.c (_bfd_x86_elf_adjust_dynamic_symbol): New function. - (_bfd_x86_elf_link_setup_gnu_properties): Copy is_vxworks. - * elfxx-x86.h (elf_x86_link_hash_table): Add is_vxworks. - (_bfd_x86_elf_adjust_dynamic_symbol): New. - (elf_backend_adjust_dynamic_symbol): Likewise. - -2017-09-01 H.J. Lu - - * elfxx-x86.h (elf_x86_plt_layout_table): Fix a typo in - comments. - -2017-09-01 H.J. Lu - - * elf32-i386.c (elf_i386_mkobject): Removed. - (bfd_elf32_mkobject): Likewise. - * elf64-x86-64.c (elf_x86_64_mkobject): Likewise. - (bfd_elf64_mkobject): Likewise. - (bfd_elf32_mkobject): Likewise. - * elfxx-x86.c (_bfd_x86_elf_mkobject): New function. - * elfxx-x86.h (_bfd_x86_elf_mkobject): New. - (bfd_elf64_mkobject): Likewise. - (bfd_elf32_mkobject): Likewise. - -2017-09-01 H.J. Lu - - * elf32-i386.c (elf_i386_link_setup_gnu_properties): Updated. - Call _bfd_x86_elf_link_setup_gnu_properties. - * elf64-x86-64.c (elf_x86_lazy_plt_layout): Initialize - pic_plt0_entry and pic_plt_entry fields with the non-PIC PLT - entries. - (elf_x86_64_non_lazy_plt): Likewise. - (elf_x86_64_lazy_bnd_plt): Likewise. - (elf_x86_64_non_lazy_bnd_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_nacl_plt): Likewise. - (elf_x86_64_link_setup_gnu_properties): Updated. Call - _bfd_x86_elf_link_setup_gnu_properties. - * elfxx-x86.c: Include elf-vxworks.h". - (_bfd_x86_elf_link_setup_gnu_properties): New function. - * elfxx-x86.h (elf_x86_lazy_plt_layout): Remove "for i386 only" - comments for pic_plt0_entry and pic_plt_entry. - (elf_x86_non_lazy_plt_layout): Likewise. - (elf_x86_plt_layout_table): New. - (_bfd_x86_elf_link_setup_gnu_properties): Likewise. - -2017-09-01 H.J. Lu - - PR ld/22061 - * elf32-i386.c (elf_i386_link_setup_gnu_properties): Create - .eh_frame section for the second PLT. - * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Correct - alignment of .eh_frame section for the second PLT. - -2017-09-01 Nick Clifton - - PR 22059 - * dwarf2.c (decode_line_info): Fix test for an overlong line info - structure. - -2017-09-01 Nick Clifton - - PR 22058 - * elf-attrs.c (_bfd_elf_parse_attributes): Ensure that the - attribute buffer is NUL terminated. - -2017-08-31 Nick Clifton - - PR 22047 - * dwarf2.c (read_section): If necessary add a terminating NUL byte - to dwarf string sections. - -2017-08-31 Alan Modra - - * po/SRC-POTFILES.in: Regenerate. - -2017-08-31 Alan Modra - - * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Don't exit early - for a section containing just a terminator. Allow multiple - terminators at end of section. - * elflink.c (bfd_elf_discard_info): Iterate over .eh_frame - sections when not adding alignment. Assert on terminator in - the middle of FDEs. - -2017-08-31 Alan Modra - - PR 21441 - PR 22048 - * elflink.c (bfd_elf_discard_info): Don't pad embedded zero - terminators. - -2017-08-30 H.J. Lu - - * configure.ac (bfd_backends): Add elf64.lo together with - elfxx-x86.lo for 64-bit BFD. - * configure: Regenerated. - -2017-08-31 James Bowman - - * elf32-ft32.c (ft32_elf_howto_table): Use complain_overflow_dont - for R_FT32_18. - -2017-08-31 Alan Modra - - PR binutils/22032 - * opncls.c (bfd_close_all_done): Don't call bfd_cache_close - before _close_and_cleanup. Call iovec->bclose after. - (bfd_close): Remove code common to, and call, bfd_close_all_done. - -2017-08-30 H.J. Lu - - * elf32-i386.c (elf_i386_plt_type): Removed. - (elf_i386_plt): Likewise. - (elf_i386_get_synthetic_symtab): Updated. Call - _bfd_x86_elf_get_synthetic_symtab. - * elf64-x86-64.c (elf_x86_64_plt_type): Removed. - (elf_x86_64_plt): Likewise. - (elf_x86_64_get_synthetic_symtab): Updated. Call - _bfd_x86_elf_get_synthetic_symtab. - * elfxx-x86.c (elf_i386_get_plt_got_vma): New function. - (elf_x86_64_get_plt_got_vma): Likewise. - (elf_i386_valid_plt_reloc_p): Likewise. - (elf_x86_64_valid_plt_reloc_p): Likewise. - (_bfd_x86_elf_get_synthetic_symtab): Likewise. - * elfxx-x86.h (elf_x86_plt_type): New. - (elf_x86_plt): Likewise. - (_bfd_x86_elf_get_synthetic_symtab): Likewise. - -2017-08-30 H.J. Lu - - * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Check - target_id instead of elf_machine_code. - -2017-08-30 H.J. Lu - - * elf32-i386.c (ELF_DYNAMIC_INTERPRETER): Removed. - (elf_i386_lazy_plt_layout): Likewise. - (elf_i386_non_lazy_plt_layout): Likewise. - (elf_i386_plt_layout): Likewise. - (elf_i386_link_hash_table): Likewise. - (elf_i386_next_tls_desc_index): Likewise. - (elf_i386_srelplt2): Likewise. - (elf_i386_plt): Likewise. - (elf_i386_lazy_plt): Likewise. - (elf_i386_non_lazy_plt): Likewise. - (elf_i386_link_hash_table_create): Likewise. - (bfd_elf32_bfd_link_hash_table_create): Likewise. - (elf_i386_lazy_plt): Updated. - (elf_i386_non_lazy_plt): Likewise. - (elf_i386_lazy_ibt_plt): Likewise. - (elf_i386_non_lazy_ibt_plt): Likewise. - (elf_i386_allocate_dynrelocs): Likewise. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_relocate_section): Likewise. - (elf_i386_finish_dynamic_symbol): Likewise. - (elf_i386_finish_dynamic_sections): Likewise. - (elf_i386_get_synthetic_symtab): Likewise. - (elf_i386_link_setup_gnu_properties): Likewise. - (elf_i386_nacl_plt): Likewise. - * elf64-x86-64.c (ABI_64_P): Removed. - (ELF64_DYNAMIC_INTERPRETER): Likewise. - (ELF32_DYNAMIC_INTERPRETER): Likewise. - (elf_x86_64_lazy_plt_layout): Likewise. - (elf_x86_64_non_lazy_plt_layout): Likewise. - (elf_x86_64_plt_layout): Likewise. - (elf_x86_64_link_hash_table): Likewise. - (elf_x86_64_plt): Likewise. - (elf_x86_64_lazy_plt): Likewise. - (elf_x86_64_non_lazy_plt): Likewise. - (elf_x86_64_link_hash_table_create): Likewise. - (bfd_elf64_bfd_link_hash_table_create): Likewise. - (bfd_elf32_bfd_link_hash_table_create): Likewise. - (elf_x86_64_lazy_plt): Updated. - (elf_x86_64_non_lazy_plt): Likewise. - (elf_x86_64_lazy_bnd_plt): Likewise. - (elf_x86_64_non_lazy_bnd_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_allocate_dynrelocs): Likewise. - (elf_x86_64_size_dynamic_sections): Likewise. - (elf_x86_64_relocate_section): Likewise. - (elf_x86_64_finish_dynamic_symbol): Likewise. - (elf_x86_64_finish_dynamic_sections): Likewise. - (elf_x86_64_get_synthetic_symtab): Likewise. - (elf_x86_64_link_setup_gnu_properties): Likewise. - (elf_x86_64_nacl_plt): Likewise. - * elfxx-x86.c: Include "objalloc.h", "elf/i386.h" and - "elf/x86-64.h". - (ELF32_DYNAMIC_INTERPRETER): New. - (ELF64_DYNAMIC_INTERPRETER): Likewise. - (ELFX32_DYNAMIC_INTERPRETER): Likewise. - (_bfd_x86_elf_link_hash_table_create): Likewise. - (_bfd_x86_elf_link_hash_table_free): Renamed to ... - (elf_x86_link_hash_table_free): This. Make it static. - * elfxx-x86.h: Don't include "objalloc.h". - (ABI_64_P): New. - (elf_x86_lazy_plt_layout): Likewise. - (elf_x86_non_lazy_plt_layout): Likewise. - (elf_x86_plt_layout): Likewise. - (_bfd_x86_elf_link_hash_table_create): Likewise. - (bfd_elf64_bfd_link_hash_table_create): Likewise. - (bfd_elf32_bfd_link_hash_table_create): Likewise. - (elf_x86_link_hash_table): Add plt, lazy_plt, non_lazy_plt, - srelplt2 and next_tls_desc_index. - (_bfd_x86_elf_link_hash_table_free): Removed. - -2017-08-30 Maciej W. Rozycki - - * elfxx-mips.c (mips_elf_perform_relocation): Correct microMIPS - branch offset interpretation. - -2017-08-30 H.J. Lu - - PR binutils/22032 - * opncls.c (bfd_close_all_done): Call _close_and_cleanup. - -2017-08-30 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_next_tls_desc_index): Removed. - (elf_x86_64_srelplt2): Likewise. - -2017-08-30 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Add do_tls_opt. - (ppc64_elf_tls_optimize): Set it. - (ppc64_elf_relocate_section): Nop addis on TPREL16_HA, and convert - insn on TPREL16_LO and TPREL16_LO_DS relocs to use r13 when - addis would add zero. - * elf32-ppc.c (struct ppc_elf_link_hash_table): Add do_tls_opt. - (ppc_elf_tls_optimize): Set it. - (ppc_elf_relocate_section): Nop addis on TPREL16_HA, and convert - insn on TPREL16_LO relocs to use r2 when addis would add zero. - -2017-08-30 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): When optimizing - __tls_get_addr call sequences to LE, don't move the addi down - to the nop. Replace the bl with addi and leave the nop alone. - -2017-08-29 H.J. Lu - - * elf32-i386.c (elf_i386_pie_finish_undefweak_symbol): - Re-indent. - * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): - Likewise. - (elf_x86_64_pie_finish_undefweak_symbol): Likewise. - -2017-08-29 H.J. Lu - - * Makefile.am (BFD32_BACKENDS): Add elfxx-x86.lo. - (BFD64_BACKENDS): Likewise. - (BFD32_BACKENDS_CFILES): Add elfxx-x86.c. - (BFD64_BACKENDS_CFILES): Likewise. - * Makefile.in: Regenerated. - * configure.ac (bfd_backends): Add elfxx-x86.lo together with - elf32-i386.lo and elf64-x86-64.lo. - * configure: Regenerated. - * elf32-i386.c: Include "elfxx-x86.h" instead of "sysdep.h", - "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", - "objalloc.h" and "hashtab.h". - (ELIMINATE_COPY_RELOCS): Removed. - (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. - (SYMBOL_NO_COPYRELOC): Likewise. - (elf_i386_link_hash_entry): Likewise. - (GOT_UNKNOWN): Likewise. - (GOT_NORMAL): Likewise. - (GOT_TLS_GD): Likewise. - (elf_i386_hash_entry): Likewise. - (elf_i386_obj_tdata): Likewise. - (elf_i386_tdata): Likewise. - (elf_i386_local_got_tls_type): Likewise. - (elf_i386_local_tlsdesc_gotent): Likewise. - (elf_i386_hash_table): Likewise. - (elf_i386_link_hash_newfunc): Likewise. - (elf_i386_local_htab_hash): Likewise. - (elf_i386_local_htab_eq): Likewise. - (elf_i386_get_local_sym_hash): Likewise. - (elf_i386_link_hash_table_free): Likewise. - (elf_i386_copy_indirect_symbol): Likewise. - (elf_i386_fixup_symbol): Likewise. - (elf_i386_readonly_dynrelocs): Likewise. - (elf_i386_always_size_sections): Likewise. - (elf_i386_set_tls_module_base): Likewise. - (elf_i386_dtpoff_base): Likewise. - (compare_relocs): Likewise. - (elf_i386_hash_symbol): Likewise. - (elf_i386_parse_gnu_properties): Likewise. - (elf_i386_merge_gnu_properties): Likewise. - (elf_i386_link_check_relocs): Likewise. - (elf_i386_merge_symbol_attribute): Likewise. - (bfd_elf32_bfd_link_check_relocs): Likewise. - (elf_backend_copy_indirect_symbol): Likewise. - (elf_backend_always_size_sections): Likewise. - (elf_backend_omit_section_dynsym): Likewise. - (elf_backend_hash_symbol): Likewise. - (elf_backend_fixup_symbol): Likewise. - (elf_backend_parse_gnu_properties): Likewise. - (elf_backend_merge_gnu_properties): Likewise. - (elf_backend_merge_symbol_attribute): Likewise. - (elf_i386_mkobject): Updated. - (elf_i386_link_hash_table_create): Likewise. - (elf_i386_check_tls_transition): Likewise. - (elf_i386_tls_transition): Likewise. - (elf_i386_convert_load_reloc): Likewise. - (elf_i386_check_relocs): Likewise. - (elf_i386_adjust_dynamic_symbol): Likewise. - (elf_i386_allocate_dynrelocs): Likewise. - (elf_i386_convert_load): Likewise. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_relocate_section): Likewise. - (elf_i386_finish_dynamic_symbol ): Likewise. - (elf_i386_finish_dynamic_sections): Likewise. - (elf_i386_output_arch_local_syms): Likewise. - (elf_i386_get_synthetic_symtab): Likewise. - (elf_i386_link_setup_gnu_properties): Likewise. - (elf_i386_link_hash_table): Use elf_x86_link_hash_table, instead - of elf_link_hash_table, as base. - (elf_i386_next_tls_desc_index): New. - (elf_i386_srelplt2): Likewise. - (elf_i386_plt): Likewise. - (elf_i386_lazy_plt): Likewise. - (elf_i386_non_lazy_plt): Likewise. - * elf32-x86-64.c: Include "elfxx-x86.h" instead of "sysdep.h", - "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", - "objalloc.h" and "hashtab.h". - (ELIMINATE_COPY_RELOCS): Removed. - (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. - (SYMBOL_NO_COPYRELOC): Likewise. - (elf_x86_64_link_hash_entry): Likewise. - (GOT_UNKNOWN): Likewise. - (GOT_NORMAL): Likewise. - (GOT_TLS_GD): Likewise. - (elf_x86_64_hash_entry): Likewise. - (elf_x86_64_obj_tdata): Likewise. - (elf_x86_64_tdata): Likewise. - (elf_x86_64_local_got_tls_type): Likewise. - (elf_x86_64_local_tlsdesc_gotent): Likewise. - (elf_x86_64_hash_table): Likewise. - (elf_x86_64_link_hash_newfunc): Likewise. - (elf_x86_64_local_htab_hash): Likewise. - (elf_x86_64_local_htab_eq): Likewise. - (elf_x86_64_get_local_sym_hash): Likewise. - (elf_x86_64_link_hash_table_free): Likewise. - (elf_x86_64_copy_indirect_symbol): Likewise. - (elf_x86_64_fixup_symbol): Likewise. - (elf_x86_64_readonly_dynrelocs): Likewise. - (elf_x86_64_always_size_sections): Likewise. - (elf_x86_64_set_tls_module_base): Likewise. - (elf_x86_64_dtpoff_base): Likewise. - (compare_relocs): Likewise. - (elf_x86_64_merge_symbol_attribute): Likewise. - (elf_x86_64_hash_symbol): Likewise. - (elf_x86_64_parse_gnu_properties): Likewise. - (elf_x86_64_merge_gnu_properties): Likewise. - (elf_x86_64_link_check_relocs): Likewise. - (elf_backend_copy_indirect_symbol): Likewise. - (elf_backend_always_size_sections): Likewise. - (bfd_elf64_bfd_link_check_relocs): Likewise. - (elf_backend_merge_symbol_attribute): Likewise. - (elf_backend_hash_symbol): Likewise. - (elf_backend_omit_section_dynsym): Likewise. - (elf_backend_fixup_symbol): Likewise. - (elf_backend_parse_gnu_properties): Likewise. - (elf_backend_merge_gnu_properties): Likewise. - (bfd_elf32_bfd_link_check_relocs): Likewise. - (elf_x86_64_mkobject): Updated. - (elf_x86_64_link_hash_table_create): Likewise. - (elf_x86_64_check_tls_transition): Likewise. - (elf_x86_64_tls_transition): Likewise. - (elf_x86_64_convert_load_reloc): Likewise. - (elf_x86_64_check_relocs): Likewise. - (elf_x86_64_adjust_dynamic_symbol): Likewise. - (elf_x86_64_allocate_dynrelocs): Likewise. - (elf_x86_64_convert_load): Likewise. - (elf_x86_64_size_dynamic_sections): Likewise. - (elf_x86_64_relocate_section): Likewise. - (elf_x86_64_finish_dynamic_symbol ): Likewise. - (elf_x86_64_finish_dynamic_sections): Likewise. - (elf_x86_64_output_arch_local_syms): Likewise. - (elf_x86_64_get_synthetic_symtab): Likewise. - (elf_x86_64_link_setup_gnu_properties): Likewise. - (elf_x86_64_link_hash_table): Use elf_x86_link_hash_table, - instead of elf_link_hash_table, as base. - (elf_x86_64_next_tls_desc_index): New. - (elf_x86_64_srelplt2): Likewise. - (elf_x86_64_plt): Likewise. - (elf_x86_64_lazy_plt): Likewise. - (elf_x86_64_non_lazy_plt): Likewise. - * elfxx-x86.c: New file. - * elfxx-x86.h: Likewise. - -2017-08-29 H.J. Lu - - * elf32-i386.c (elf_i386_get_synthetic_symtab): Simplify bad - return. - * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. - -2017-08-29 H.J. Lu - - * elf32-i386.c (elf_i386_get_synthetic_symtab): Check valid PLT - sections before checking dynamic relocations and free invalid - PLT section contents. - * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. - -2017-08-28 H.J. Lu - - * elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): Removed. - * elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): Likewise. - -2017-08-28 H.J. Lu - - PR binutils/22018 - * elf32-i386.c (elf_i386_get_synthetic_symtab): Check for valid - PLT section size. - * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. - -2017-08-27 H.J. Lu - - * elf32-i386.c (elf_i386_link_hash_newfunc): Initialize - def_protected. - * elf64-x86-64.c (elf_x86_64_link_hash_newfunc): Likewise. - -2017-08-26 H.J. Lu - - PR ld/21997 - * elf-bfd.h (elf_obj_tdata): Use ENUM_BITFIELD on object_id, - dyn_lib_class and has_gnu_symbols. Change bad_symtab to bitfield. - Add a has_no_copy_on_protected bitfield. - (elf_has_no_copy_on_protected): New. - * elf-properties.c (_bfd_elf_parse_gnu_properties): Set - elf_has_no_copy_on_protected for GNU_PROPERTY_NO_COPY_ON_PROTECTED. - (elf_merge_gnu_property_list): Likewise. - (_bfd_elf_link_setup_gnu_properties): Set extern_protected_data - to FALSE for elf_has_no_copy_on_protected. - * elf32-i386.c (SYMBOL_NO_COPYRELOC): New. - (elf_i386_link_hash_entry): Add def_protected. - (elf_i386_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC - when checking info->nocopyreloc. - (elf_i386_link_setup_gnu_properties): Don't set - extern_protected_data here. - (elf_i386_merge_symbol_attribute): New function. - (elf_backend_merge_symbol_attribute): New. - * elf64-x86-64.c (SYMBOL_NO_COPYRELOC): New. - (elf_x86_64_link_hash_entry): Add def_protected. - (elf_x86_64_need_pic): Report protected symbol for def_protected. - (elf_x86_64_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC - when checking info->nocopyreloc. - (elf_x86_64_relocate_section): Also check for R_X86_64_PC32 - relocation run-time overflow and unresolvable R_X86_64_32S - relocation against protected data symbol defined in shared object - with GNU_PROPERTY_NO_COPY_ON_PROTECTED. - (elf_x86_64_link_setup_gnu_properties): Don't set - extern_protected_data here. - (elf_x86_64_merge_symbol_attribute): New function. - (elf_backend_merge_symbol_attribute): New. - -2017-08-26 Alan Modra - - * elf32-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. - (ppc_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. - (ppc_elf_relocate_section): Comment fix. - * elf64-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. - (ppc64_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. - Support dynamic relocs for TPREL16 when non-pic too. - (dec_dynrel_count): Adjust TPREL16 handling as per check_relocs. - (ppc64_elf_relocate_section): Support dynamic relocs for TPREL16 - when non-pic too. - -2017-08-25 H.J. Lu - - * elf32-i386.c (elf_i386_link_hash_entry): Remove redundant - "symbol" in comments. - * elf64-x86-64.c (elf_x86_64_link_hash_entry): Likewise. - -2017-08-24 H.J. Lu - - PR ld/22001 - * elf64-x86-64.c (elf_x86_64_relocate_section): Check for - R_X86_64_PC32 relocation run-time overflow and unresolvable - R_X86_64_32S relocation with -z nocopyreloc. - -2017-08-24 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Revert the last change. - Undefined symbols may not have a type. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - -2017-08-23 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_need_pic): Add an argument for - bfd_link_info. Report shared, PIE or PDE object based on - bfd_link_info. - (elf_x86_64_check_relocs): Update elf_x86_64_need_pic call. - (elf_x86_64_relocate_section): Likewise. - -2017-08-23 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Increment PLT count only - for function symbols. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - -2017-08-23 H.J. Lu - - * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set - extern_protected_data to FALSE if GNU_PROPERTY_NO_COPY_ON_PROTECTED - is set on any input relocatable file. - * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise. - -2017-08-23 Alan Modra - - PR 21988 - * elf64-ppc.c (ensure_undef_dynamic): Rename from - ensure_undefweak_dynamic. Handle undefined too. - * elf32-ppc.c (ensure_undef_dynamic): Likewise. - * elf32-hppa.c (ensure_undef_dynamic): Likewise. - (allocate_dynrelocs): Discard undefined non-default visibility - relocs first. Make undefined syms dynamic. Tidy goto. - -2017-08-21 Alan Modra - H.J. Lu - - PR ld/21964 - * elf-bfd.h (SYMBOLIC_BIND): Return TRUE for __start/__stop symbols. - * elflink.c (bfd_elf_define_start_stop): Rewrite. - -2017-08-21 Hans-Peter Nilsson - - PR ld/20125 - * elf64-mmix.c (mmix_elf_relax_section): Correct handling of - undefined weak symbols. - -2017-08-18 Nick Clifton - - PR binutils/21962 - * tekhex.c (getsym): Fix check for source pointer walking off the - end of the input buffer. - -2017-08-17 Szabolcs Nagy - - PR ld/18808 - * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Skip IFUNC - relocations in debug sections, change abort to _bfd_error_handler. - -2017-08-14 Nick Clifton - - PR 21957 - * elf.c (setup_group): Check for an empty or very small group - section. - * po/bfd.pot: Regenerate. - -2017-08-14 Alan Modra - - PR 21441 - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't add - alignment padding here. - * elflink.c (bfd_elf_discard_info): Add .eh_frame padding here - in a reverse pass over sections. - -2017-08-11 H.J. Lu - - PR binutils/21943 - * elf32-i386.c (elf_i386_get_synthetic_symtab): Allocate space - for @plt suffixes first. - * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. - -2017-08-08 Nick Clifton - - PR 21916 - * elf-attrs.c (_bfd_elf_parse_attributes): Complain about very - small section lengths. - * elf.c (_bfd_elf_setup_sections): Skip empty entries in the group - table. - (elfcore_grok_freebsd_prstatus): Add checks to make sure that - there is enough data present in the note. - -2017-08-08 Alan Modra - - PR 21017 - * elf32-microblaze.c (microblaze_elf_check_relocs): Don't bump - got.refcount for GOTOFF relocs, just create .got section. - -2017-08-07 H.J. Lu - - * elflink.c (elf_link_add_object_symbols): Move common symbol - check after bed->common_definition. - -2017-08-07 Alan Modra - - PR 21910 - * elflink.c (bfd_elf_final_link): Don't segfault when sections - needed to define various dynamic tags have been discarded. - -2017-08-07 Nick Clifton - - PR 21884 - * elf32-i386.c (elf_i386_link_setup_gnu_properties): If the dynobj - has not been set then use the bfd returned by - _bfd_elf_link_setup_gnu_properties. If that is null then search - through all the input bfds selecting the first normal, ELF format - one. - * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise. - -2017-08-06 H.J. Lu - - * elf32-i386.c (elf_i386_link_hash_entry): Change tls_get_addr - to 1 bit. - (elf_i386_link_hash_newfunc): Initialize tls_get_addr to 0. - (elf_i386_check_tls_transition): Check tls_get_addr directly. - (elf_i386_convert_load_reloc): Update tls_get_addr check. - (elf_i386_link_check_relocs): New function. - (bfd_elf32_bfd_link_check_relocs): New. - * elf64-x86-64.c (elf_x86_64_link_hash_entry): Change tls_get_addr - to 1 bit. - (elf_x86_64_link_hash_newfunc): Initialize tls_get_addr to 0. - (elf_x86_64_check_tls_transition): Check tls_get_addr directly. - (elf_x86_64_convert_load_reloc): Update tls_get_addr check. - (elf_x86_64_link_check_relocs): New function. - (bfd_elf64_bfd_link_check_relocs): New. - (bfd_elf32_bfd_link_check_relocs): Likewise. - -2017-08-06 H.J. Lu - - PR ld/21903: - * elflink.c (elf_link_add_object_symbols): Treat common symbol - as undefined for --no-define-common. - -2017-08-05 Alan Modra - - * elf32-hppa.c (elf32_hppa_set_gp): Don't require an - hppa_link_hash_table. - -2017-08-02 Max Filippov - - * xtensa-isa.c (xtensa_isa_init): Don't update lookup table - entries for sysregs with negative indices. - -2017-08-01 Andreas Krebbel - - * elf32-s390.c (elf_s390_finish_dynamic_sections): Skip if it - isn't the S/390 specific elf data. - * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. - -2017-07-31 Kuan-Lin Chen - - * elfxx-riscv.c (riscv_elf_add_sub_reloc): New function. - * (howto_table) [R_RISCV_ADD8]: Use riscv_elf_add_sub_reloc. - [R_RISCV_ADD16]: Likewise. - [R_RISCV_ADD32]: Likewise. - [R_RISCV_ADD64]: Likewise. - [R_RISCV_SUB6]: Likewise. - [R_RISCV_SUB8]: Likewise. - [R_RISCV_SUB16]: Likewise. - [R_RISCV_SUB32]: Likewise. - [R_RISCV_SUB64]: Likewise. - -2017-07-31 Alan Modra - - * elf64-ppc.c (ppc64_elf_tls_setup): Warn on --plt-localentry - without ld.so checks. - -2017-07-29 Alan Modra - - PR 21847 - * elf64-ppc.c (struct ppc_link_hash_entry): Add non_zero_localentry. - (ppc64_elf_merge_symbol): Set non_zero_localentry. - (is_elfv2_localentry0): Test non_zero_localentry. - (ppc64_elf_tls_setup): Default to --no-plt-localentry. - -2017-07-28 Andreas Krebbel - - * elf32-s390.c (elf_s390_finish_dynamic_sections): Add NULL - pointer check for htab->elf.irelplt. - * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. - -2017-07-27 Nick Clifton - - PR 21840 - * mach-o.c (bfd_mach_o_read_symtab_strtab): Fail if the symtab - size is -1. - * nlmcode.h (nlm_swap_auxiliary_headers_in): Replace assertion - with error return. - * section.c (bfd_make_section_with_flags): Fail if the name or bfd - are NULL. - * vms-alpha.c (bfd_make_section_with_flags): Correct computation - of end pointer. - (evax_bfd_print_emh): Check for invalid string lengths. - -2017-07-25 Nick Clifton - - * po/fr.po: Updated French translation. - -2017-07-25 Benjamin Green - - PR 21824 - * elf32-msp430.c (msp430_elf_relax_section): Allow conversion of - 16-bit absolute branches into 10-bit pc-relative branches on the - MSP430 as well as the MSP430X. - -2017-07-25 Alan Modra - - * elf64-ppc.c (struct map_stub): Add tls_get_addr_opt_bctrl. - (stub_eh_frame_size): New function. - (ppc_size_one_stub): Set group tls_get_addr_opt_bctrl. - (group_sections): Init group tls_get_addr_opt_bctrl. - (ppc64_elf_size_stubs): Update sizing and initialization of - .eh_frame. Iteration over stubs via group list. - (ppc64_elf_build_stubs): Iterate over stubs via group list. - (ppc64_elf_finish_dynamic_sections): Update finalization of - .eh_frame. - -2017-07-24 Nick Clifton - - PR 21813 - * mach-o.c (bfd_mach_o_canonicalize_relocs): Pass the base address - of the relocs to the canonicalize_one_reloc routine. - * mach-o.h (struct bfd_mach_o_backend_data): Update the prototype - for the _bfd_mach_o_canonicalize_one_reloc field. - * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add - res_base parameter. Use to check for corrupt pair relocs. - * mach-o-aarch64.c (bfd_mach_o_arm64_canonicalize_one_reloc): - Likewise. - * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): - Likewise. - * mach-o-x86-64.c (bfd_mach_o_x86_64_canonicalize_one_reloc): - Likewise. - - * vms-alpha.c (_bfd_vms_slurp_eihd): Make sure that there is - enough data in the record before attempting to parse it. - (_bfd_vms_slurp_eeom): Likewise. - - (_bfd_vms_slurp_egsd): Check for an invalid section index. - (image_set_ptr): Likewise. - (alpha_vms_slurp_relocs): Likewise. - - (alpha_vms_object_p): Check for a truncated record. - -2017-07-24 Nick Clifton - - PR 21803 - * reloc.c (_bfd_unrecognized_reloc): New function. Reports - an unrecognized reloc and sets the bfd_error value. - * libbfd.h: Regenerate. - * elf32-arm.c (elf32_arm_final_link_relocate): Use the new - function. - * elf32-i386.c (elf_i386_relocate_section): Likewise. - * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. - * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise. - * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. - -2017-07-23 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_stubs): Correct advance to - restore of LR. - -2017-07-19 Szabolcs Nagy - - PR ld/18841 - * elfnn-aarch64.c (elfNN_aarch64_reloc_type_class): Return - reloc_class_ifunc for ifunc symbols. - -2017-07-19 Nick Clifton - - PR 21787 - * archive.c (bfd_generic_archive_p): If the bfd does not have the - correct magic bytes at the start, set the error to wrong format - and clear the format selector before returning NULL. - -2017-07-19 Nick Clifton - - PR 21786 - * coff-rs6000.c (_bfd_strntol): New function. - (_bfd_strntoll): New function. - (GET_VALUE_IN_FIELD): New macro. - (EQ_VALUE_IN_FIELD): new macro. - (_bfd_xcoff_slurp_armap): Use new macros. - (_bfd_xcoff_archive_p): Likewise. - (_bfd_xcoff_read_ar_hdr): Likewise. - (_bfd_xcoff_openr_next_archived_file): Likewise. - (_bfd_xcoff_stat_arch_elt): Likewise. - * coff64-rs6000.c (_bfd_strntol): New function. - (_bfd_strntoll): New function. - (GET_VALUE_IN_FIELD): New macro. - (xcoff64_slurp_armap): Use new macros. - -2017-07-19 Claudiu Zissulescu - John Eric Martin - - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * elf32-arc.c (JLI): Define. - * reloc.c: Add JLI relocations. - -2017-07-18 Nick Clifton - - PR 21775 - * coff-sh.c: Fix spelling typos. - * compress.c: Likewise. - * cpu-pdp11.c: Likewise. - * ecofflink.c: Likewise. - * elf-m10300.c: Likewise. - * elf.c: Likewise. - * elf32-arm.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-nds32.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-v850.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-x86-64.c: Likewise. - * elflink.c: Likewise. - * elfnn-aarch64.c: Likewise. - * elfxx-mips.c: Likewise. - * som.c: Likewise. - * sunos.c: Likewise. - * vms-alpha.c: Likewise. - * xcofflink.c: Likewise. - -2017-07-18 Nick Clifton - - PR binutils/21781 - * coffcode.h (handle_COMDAT): Replace abort with an error message - and return. - -2017-07-17 H.J. Lu - - PR ld/21782 - * elf64-x86-64.c (elf_x86_64_relocate_section): Limit PIC check - to shared library. - -2017-07-17 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent. - -2017-07-16 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimize - __tls_index GOT entries when using __tls_get_addr_opt stub. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - -2017-07-12 Alan Modra - - * po/es.po: Update from translationproject.org/latest/bfd/. - * po/fi.po: Likewise. - * po/fr.po: Likewise. - * po/id.po: Likewise. - * po/ja.po: Likewise. - * po/ro.po: Likewise. - * po/ru.po: Likewise. - * po/sr.po: Likewise. - * po/sv.po: Likewise. - * po/tr.po: Likewise. - * po/uk.po: Likewise. - * po/vi.po: Likewise. - * po/zh_CN.po: Likewise. - * po/hr.po: New file from translationproject.org. - * configure.ac (ALL_LINGUAS): Add hr. Sort. - * configure: Regenerate. - -2017-07-12 Nick Clifton - - Fix compile time warnings using gcc 7.1.1. - * elf32-xtensa.c (elf_xtensa_get_plt_section): Increase length of - plt_name buffer. - (elf_xtensa_get_gotplt_section): Increase length of got_name - buffer. - * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add a - default return of FALSE. - * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): Add a - default return of FALSE. - -2017-07-12 Alan Modra - - * binary.c (binary_set_section_contents): Don't print filepos in - error message. - (coff_write_object_contents): Cast size_t for error message. - (coff_slurp_line_table): Don't use bfd_vma symndx. - (coff_slurp_reloc_table): Remove unneeded cast. - * dwarf2.c (read_section): Cast bfd_int64_t to long long for - error message. - (find_abstract_instance_name): Likewise. - * elf32-arm.c (arm_type_of_stub): Correct error arg order. - (bfd_elf32_arm_stm32l4xx_erratum_scan): Don't cast error arg. - (elf32_arm_check_relocs): Make r_symndx an int. - * elf32-cris.c (cris_elf_check_relocs): Delete extraneous %s in - format string. - * elf32-metag.c (elf_metag_relocate_section): Delete extra error - message arg. - * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Rewrite bogus - error message. - * elf32-i386.c (elf_i386_check_relocs): Make r_symndx an int. - * elf32-s390.c (elf_s390_check_relocs): Likewise. - * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise. - * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise. - * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. - * elf64-s390.c (elf_s390_check_relocs): Likewise. - * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Likewise. - * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. - * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise. - * elf64-mmix.c (_bfd_mmix_after_linker_allocation): Cast size_t args - and use %lu for error message. - * elflink.c (elf_link_adjust_relocs): Delete extra error message arg. - * mmo.c (mmo_scan): Make stab_loc a file_ptr. Cast expression for - error message. - - * elf32-arm.c (elf32_arm_tls_relax): Correct format string and args - in error message. - (elf32_arm_final_link_relocate): Likewise. - * coff-arm.c (bfd_arm_process_before_allocation): Likewise. - * coffcode.h (styp_to_sec_flags): Likewise. - * cofflink.c (_bfd_coff_write_global_sym): Likewise. - * ecoff.c (_bfd_ecoff_slurp_symbol_table): Likewise. - * elf32-arc.c (arc_elf_merge_private_bfd_data): Likewise. - * elf32-bfin.c (bfinfdpic_check_relocs): Likewise. - (elf32_bfin_merge_private_bfd_data): Likewise. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise. - * elf32-i370.c (i370_elf_merge_private_bfd_data): Likewise. - (i370_elf_relocate_section): Likewise. - * elf32-iq2000.c (iq2000_elf_merge_private_bfd_data): Likewise. - * elf32-m32c.c (m32c_elf_merge_private_bfd_data): Likewise. - * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Likewise. - * elf32-mcore.c (mcore_elf_relocate_section): Likewise. - * elf32-mep.c (mep_elf_merge_private_bfd_data): Likewise. - * elf32-mt.c (mt_elf_merge_private_bfd_data): Likewise. - * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise. - * elfxx-mips.c (mips_elf_merge_obj_e_flags): Likewise. - (_bfd_mips_elf_merge_private_bfd_data): Likewise. - * ieee.c (ieee_write_id, read_id): Likewise. - * mach-o.c (bfd_mach_o_write_contents): Likewise. - (bfd_mach_o_layout_commands, bfd_mach_o_read_section_32): Likewise. - (bfd_mach_o_read_section_64, bfd_mach_o_read_symtab_symbol): Likewise. - (bfd_mach_o_read_command, bfd_mach_o_header_p): Likewise. - * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Likewise. - * stabs.c (_bfd_link_section_stabs): Likewise. - - * coff-arm.c (coff_arm_relocate_section): Use L modifier in error - format. - * coff-mcore.c (coff_mcore_relocate_section): Likewise. - * coff-ppc.c (coff_ppc_relocate_section): Likewise. - * coff-rs6000.c (xcoff_reloc_type_toc): Likewise. - * coff-sh.c (sh_relax_section): Likewise. - (sh_relax_delete_bytes, sh_swap_insns): Likewise. - * coff-tic80.c (coff_tic80_relocate_section): Likewise. - * coffcode.h (coff_slurp_reloc_table): Likewise. - * coffgen.c (_bfd_coff_get_external_symbols): Likewise. - (_bfd_coff_read_string_table): Likewise. - * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. - * compress.c (bfd_get_full_section_contents): Likewise. - * dwarf2.c (read_formatted_entries, decode_line_info): Likewise. - * elf-m10300.c (mn10300_elf_relocate_section): Likewise. - * elf.c (bfd_elf_string_from_elf_section): Likewise. - * elf32-arc.c (arc_special_overflow_checks): Likewise. - * elf32-arm.c (elf32_arm_tls_relax): Likewise. - (elf32_arm_final_link_relocate, elf32_arm_relocate_section): Likewise. - (elf32_arm_write_section): Likewise. - * elf32-bfin.c (bfin_relocate_section): Likewise. - (bfinfdpic_relocate_section): Likewise. - * elf32-hppa.c (hppa_build_one_stub): Likewise. - (final_link_relocate, elf32_hppa_relocate_section): Likewise. - * elf32-i386.c (elf_i386_tls_transition): Likewise. - (elf_i386_relocate_section): Likewise. - * elf32-ip2k.c (ip2k_final_link_relocate): Likewise. - * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise. - * elf32-m32r.c (m32r_elf_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-metag.c (elf_metag_relocate_section): Likewise. - * elf32-nds32.c (unrecognized_reloc_msg): Likewise. - (nds32_elf_relax_longcall1, nds32_elf_relax_longcall2): Likewise. - (nds32_elf_relax_longcall3, nds32_elf_relax_longjump1): Likewise. - (nds32_elf_relax_longjump2, nds32_elf_relax_longjump3): Likewise. - (nds32_elf_relax_longcall4, nds32_elf_relax_longcall5): Likewise. - (nds32_elf_relax_longcall6, nds32_elf_relax_longjump4): Likewise. - (nds32_elf_relax_longjump5, nds32_elf_relax_longjump6): Likewise. - (nds32_elf_relax_longjump7, nds32_elf_relax_loadstore): Likewise. - (nds32_elf_relax_ptr, nds32_elf_ex9_build_hash_table): Likewise. - * elf32-nios2.c (nios2_elf32_relocate_section): Likewise. - * elf32-rx.c (UNSAFE_FOR_PID): Likewise. - * elf32-s390.c (invalid_tls_insn, elf_s390_relocate_section): Likewise. - * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise. - * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise. - * elf32-sh.c (sh_elf_relax_section): Likewise. - (sh_elf_relax_delete_bytes, sh_elf_swap_insns): Likewise. - (sh_elf_relocate_section): Likewise. - * elf32-sh64.c (shmedia_prepare_reloc): Likewise. - * elf32-spu.c (spu_elf_relocate_section): Likewise. - * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. - * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. - * elf32-v850.c (v850_elf_relax_section): Likewise. - * elf32-vax.c (elf_vax_check_relocs): Likewise. - (elf_vax_relocate_section): Likewise. - * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. - (extend_ebb_bounds_forward, extend_ebb_bounds_backward): Likewise. - (compute_text_actions, compute_ebb_proposed_actions): Likewise. - (do_fix_for_relocatable_link): Likewise. - * elf64-alpha.c (elf64_alpha_relax_got_load): Likewise. - (elf64_alpha_relax_with_lituse): Likewise. - * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Likewise. - (elf_hppa_final_link_relocate): Likewise. - * elf64-ia64-vms.c (elf64_ia64_relax_section): Likewise. - (elf64_ia64_choose_gp, elf64_ia64_relocate_section): Likewise. - (elf64_vms_link_add_object_symbols): Likewise. - * elf64-mmix.c (mmix_elf_perform_relocation): Likewise. - (mmix_final_link_relocate): Likewise. - * elf64-s390.c (invalid_tls_insn): Likewise. - (elf_s390_relocate_section): Likewise. - * elf64-sh64.c (sh_elf64_relocate_section): Likewise. - * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. - (elf_x86_64_relocate_section): Likewise. - * elfcode.h (elf_slurp_symbol_table): Likewise. - * elfcore.h (elf_core_file_p): Likewise. - * elflink.c (elf_link_read_relocs_from_section): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. - (elfNN_aarch64_relocate_section): Likewise. - * elfnn-ia64.c (elfNN_ia64_relax_section): Likewise. - (elfNN_ia64_choose_gp, elfNN_ia64_relocate_section): Likewise. - * elfnn-riscv.c (riscv_elf_relocate_section): Likewise. - * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. - (_bfd_mips_elf_relocate_section): Likewise. - (_bfd_mips_elf_finish_dynamic_symbol, mips_finish_exec_plt): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. - * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. - * ieee.c (ieee_slurp_external_symbols): Likewise. - * ihex.c (ihex_write_object_content): Likewise. - * mach-o.c (bfd_mach_o_build_exec_seg_command): Likewise. - * merge.c (_bfd_merged_section_offset): Likewise. - * mmo.c (mmo_write_loc_chunk): Likewise. - (mmo_write_object_contents): Likewise. - * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Likewise. - * stabs.c (_bfd_link_section_stabs): Likewise. - * xcofflink.c (xcoff_link_add_symbols, xcoff_find_tc0): Likewise. - -2017-07-11 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Fix typo. - -2017-07-11 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Emit "unexpected - instruction" error using _bfd_error_handler, not einfo. - -2017-07-10 Nick Clifton - - * coffcode.h (coff_slurp_symbol_table): Do not include an entry - for C_AIX_WEAKEXT if it has the same value as C_WEAKEXT. - -2017-07-07 John Baldwin - - * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PTLWPINFO. - -2017-07-07 Alan Modra - - * coffcode.h (coff_slurp_symbol_table): Handle C_AIX_WEAKEXT. - -2017-07-07 Alan Modra - - * bfd.c (_doprnt): Replace "L" with "ll" when printing bfd_vma - as long long. Move code replacing "ll" with "I64", and simplify. - -2017-07-06 H.J. Lu - - * bfd.c (_doprnt): Convert 'L' to 'l' when setting wide_width - to 1. - -2017-07-05 H.J. Lu - - * dwarf2.c (line_info_add_include_dir_stub): Replace time with - xtime. - (line_info_add_file_name): Likewise. - (decode_line_info): Likewise. - -2017-07-04 Tristan Gingold - - * version.m4: Bump version to 2.29.51 - * configure: Regenerate. - -2017-07-04 Jiong Wang - - * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Remove the - sanity check at the head of this function. - -2017-07-04 Jan Kratochvil - - * dwarf2.c (struct dwarf2_debug): Add fields dwarf_line_str_buffer and - dwarf_line_str_size. - (struct attr_abbrev): Add field implicit_const. - (dwarf_debug_sections): Add .debug_line_str. - (enum dwarf_debug_section_enum): Add debug_line_str and debug_max. - (dwarf_debug_section_assert): Add static assertion. - (read_indirect_line_string): New. - (read_abbrevs): Support DW_FORM_implicit_const. - (is_str_attr): Support DW_FORM_line_strp. - (read_attribute_value): Support DW_FORM_line_strp and - DW_FORM_implicit_const. - (read_attribute): Support DW_FORM_implicit_const. - (line_info_add_include_dir, line_info_add_include_dir_stub): - (line_info_add_file_name, read_formatted_entries): New. - (decode_line_info, parse_comp_unit): Support DWARF 5. - (_bfd_dwarf2_cleanup_debug_info): Free dwarf_line_str_buffer. - -2017-07-03 Egeyar Bagcioglu - - * 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 - - * po/bfd.pot: Regenerate - -2017-07-03 Alan Modra - - * 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 - - * 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 - - * 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 - - * configure.ac: Invoke AC_CHECK_TYPES for long long. Invoke - AC_TYPE_LONG_DOUBLE. - * configure: Regenerate. - * config.in: Regenerate. - -2017-06-29 Andrew Waterman - - * elfnn-riscv.c (riscv_elf_adjust_dynamic_symbol): Fix TLS copy - relocs. - -2017-06-29 Egeyar Bagcioglu - - * 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 - - 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 - - * 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 - - * 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 - - * 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 - - * 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 - Matthew Fortune - - * 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) : New - case. - (mips_set_isa_flags) : Likewise. - (bfd_mips_isa_ext) : Likewise. - (print_mips_isa_ext) : Likewise. - (mips_mach_extensions): Add `bfd_mach_mipsisa32r3' and - `bfd_mach_mips_interaptiv_mr2' entries. - * bfd-in2.h: Regenerate. - -2017-06-27 Nick Clifton - - * tekhex.c (pass_over): Revert accidental conversion of a local - array to a static array. - -2017-06-27 Senthil Kumar Selvaraj - - 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 - - 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 - - * 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 - - 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 - - PR binutils/21665 - * libbfd.c (_bfd_generic_get_section_contents): Add "count", not - "sz". - -2017-06-26 H.J. Lu - - PR binutils/21665 - * libbfd.c (_bfd_generic_get_section_contents_in_window): Add - a missing line. - -2017-06-26 Maciej W. Rozycki - - * cpu-mips.c (arch_info_struct): Mark the 4010 32-bit. - * elfxx-mips.c (mips_set_isa_flags) : 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 - - 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 - - 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 - - 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 - - * 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 - - * 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 - - * elf.c (find_link): Bounds check "hint". - -2017-06-24 Thomas Preud'homme - - * 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 - - * 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 - - * 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 - - * elf32-arm.c (elf32_arm_final_link_relocate): Use labs rather than - abs to fix a truncation warning. - -2017-06-22 H.J. Lu - - * 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 - - * 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 - - * 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 - - PR binutils/21649 - * som.c (setup_sections): NUL terminate the space_strings buffer. - Check that the space.name field does not index beyond the end of - the space_strings buffer. - -2017-06-21 Nick Clifton - - PR binutils/21646 - * coff-sh.c (sh_reloc): Check for an out of range reloc. - -2017-06-21 Nick Clifton - - PR binutils/21639 - * vms-misc.c (_bfd_vms_save_sized_string): Use unsigned int as - type of the size parameter. - (_bfd_vms_save_counted_string): Add second parameter - the maximum - length of the counted string. - * vms.h (_bfd_vms_save_sized_string): Update prototype. - (_bfd_vms_save_counted_string): Likewise. - * vms-alpha.c (_bfd_vms_slurp_eisd): Update calls to - _bfd_vms_save_counted_string. - (_bfd_vms_slurp_ehdr): Likewise. - (_bfd_vms_slurp_egsd): Likewise. - (Parse_module): Likewise. - -2017-06-21 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_stubs): Test for localentry:0 plt - calls before tocsave calls. - (ppc64_elf_relocate_section): Allow localentry:0 plt calls without - following nop. - -2017-06-21 Nick Clifton - - PR binutils/21645 - * reloc.c (bfd_generic_get_relocated_section_contents): Fail if - bfd_get_full_section_contents returns no contents. - -2017-06-21 Nick Clifton - - PR binutils/21638 - * vms-alpha.c (_bfd_vms_slurp_egsd): Check for an undersized - record. - -2017-06-21 Nick Clifton - - PR binutils/21637 - * vms-alpha.c (_bfd_vms_slurp_egsd): Check for an empty section - list. - (image_set_ptr): Likewise. - (alpha_vms_fix_sec_rel): Likewise. - (alpha_vms_slurp_relocs): Likewise. - -2017-06-21 Nick Clifton - - PR binutils/21633 - * ieee.c (ieee_slurp_sections): Check for a NULL return from - read_id. - (ieee_archive_p): Likewise. - (ieee_object_p): Likewise. - -2017-06-21 Nick Clifton - - PR binutils/21640 - * elf.c (setup_group): Zero the group section pointer list after - allocation so that loops can be caught. Check for NULL pointers - when processing a group list. - -2017-06-20 Andreas Krebbel - - * 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 - - PR ld/21626 - * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Check - the DYNAMIC bit instead of bfd_count_sections. - -2017-06-19 Nick Clifton - - PR binutils/21618 - * vms-alpha.c (evax_bfd_print_emh): Check for insufficient record - length. - (evax_bfd_print_eeom): Likewise. - (evax_bfd_print_egsd): Check for an overlarge record length. - (evax_bfd_print_etir): Likewise. - -2017-06-19 Nick Clifton - - PR binutils/21612 - * libieee.h (struct common_header_type): Add end_p field. - * ieee.c (this_byte_and_next): Do not advance input_p beyond - end_p. - (read_id): Check for a length that exceeds the remaining bytes in - the input buffer. - (ieee_seek): Initialise end_p. - (ieee_archive_p): Likewise. - (ieee_object_p): Likewise. - -2017-06-19 Nick Clifton - - PR binutils/21611 - * vms-alpha.c (_bfd_vms_slurp_eihs): Check for invalid offset - before reading the EIHS structure entries. - -2017-06-19 Nick Clifton - - PR binutils/21615 - * vms-alpha.c (_bfd_vms_slurp_egsd): Use unsigned int for - gsd_size. Check that there are enough bytes remaining to read the - type and size of the next egsd. Check that the size of the egsd - does not exceed the size of the record. - -2017-06-19 Alan Modra - - * config.bfd: Correct targ_underscore for cris. - -2017-06-18 Alan Modra - - * config.bfd: Correct targ_underscore for epiphany, ip2k, - m32c, mn10200, pru, rl78, rx, crisv32 and v850. - -2017-06-16 Nick Clifton - - * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Do not fail if the - bucketlist is empty because there are no symbols to add to the - list. - -2017-06-16 Alan Modra - - PR ld/20022 - PR ld/21557 - PR ld/21562 - PR ld/21571 - * targets.c (struct bfd_target): Add _bfd_define_start_stop. - (BFD_JUMP_TABLE_LINK): Likewise. - * elf-bfd.h (bfd_elf_define_start_stop): Declare. - * elflink.c (_bfd_elf_gc_mark_rsec): Update comment. - (bfd_elf_define_start_stop): New function. - * linker.c (bfd_generic_define_start_stop): New function. - * coff64-rs6000.c (rs6000_xcoff64_vec, rs6000_xcoff64_aix_vec): Init - new field. - * aout-adobe.c (aout_32_bfd_define_start_stop): Define. - * aout-target.h (MY_bfd_define_start_stop): Define. - * aout-tic30.c (MY_bfd_define_start_stop): Define. - * binary.c (binary_bfd_define_start_stop): Define. - * bout.c (b_out_bfd_define_start_stop): Define. - * coff-alpha.c (_bfd_ecoff_bfd_define_start_stop): Define. - * coff-mips.c (_bfd_ecoff_bfd_define_start_stop): Define. - * coff-rs6000.c (_bfd_xcoff_bfd_define_start_stop): Define. - * coffcode.h (coff_bfd_define_start_stop): Define. - * elfxx-target.h (bfd_elfNN_bfd_define_start_stop): Define. - * i386msdos.c (msdos_bfd_define_start_stop): Define. - * i386os9k.c (os9k_bfd_define_start_stop): Define. - * ieee.c (ieee_bfd_define_start_stop): Define. - * ihex.c (ihex_bfd_define_start_stop): Define. - * libbfd-in.h (_bfd_nolink_bfd_define_start_stop): Define. - * mach-o-target.c (bfd_mach_o_bfd_define_start_stop): Define. - * mmo.c (mmo_bfd_define_start_stop): Define. - * nlm-target.h (nlm_bfd_define_start_stop): Define. - * oasys.c (oasys_bfd_define_start_stop): Define. - * pef.c (bfd_pef_bfd_define_start_stop): Define. - * plugin.c (bfd_plugin_bfd_define_start_stop): Define. - * ppcboot.c (ppcboot_bfd_define_start_stop): Define. - * som.c (som_bfd_define_start_stop): Define. - * srec.c (srec_bfd_define_start_stop): Define. - * tekhex.c (tekhex_bfd_define_start_stop): Define. - * versados.c (versados_bfd_define_start_stop): Define. - * vms-alpha.c (vms_bfd_define_start_stop): Define. - (alpha_vms_bfd_define_start_stop): Define. - * xsym.c (bfd_sym_bfd_define_start_stop): Define. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -2017-06-16 Jiong Wang - - * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use - SYMBOL_REFERENCES_LOCAL. - -2017-06-15 Jiong Wang - - PR ld/21532 - * elfnn-aarch64.c (ELIMINATE_COPY_RELOCS): Set to 1. - (elfNN_aarch64_final_link_relocate): Also propagate relocations to - runtime for if there needs copy relocation elimination. - (need_copy_relocation_p): New function. Return true for symbol with - pc-relative references and if it's against read-only sections. - (elfNN_aarch64_adjust_dynamic_symbol): Use need_copy_relocation_p. - (elfNN_aarch64_check_relocs): Allocate dynrelocs for relocation types - that are related with accessing external objects. - (elfNN_aarch64_gc_sweep_hook): Sync the relocation types with the change - in elfNN_aarch64_check_relocs. - -2017-06-15 Nick Clifton - - PR binutils/21582 - * ieee.c (ieee_object_p): Use a static buffer to avoid compiler - bugs. - PR binutils/21581 - (ieee_archive_p): Likewise. - -2017-06-15 Nick Clifton - - PR binutils/21579 - * vms-alpha.c (_bfd_vms_slurp_etir): Extend check of cmd_length. - -2017-06-14 Max Filippov - - * elf32-xtensa.c (elf_xtensa_be_plt_entry, - elf_xtensa_le_plt_entry): Add dimension for the ABI to arrays, - keep both windowed and call0 ABI PLT definitions. - (elf_xtensa_create_plt_entry): Use selected ABI to choose upper - elf_xtensa_*_plt_entry endex. - (ELF_MAXPAGESIZE): Fix at minimal supported MMU page size. - -2017-06-14 Nick Clifton - - PR binutils/21578 - * elf32-sh.c (sh_elf_set_mach_from_flags): Fix check for invalid - flag value. - -2017-06-14 Nick Clifton - - PR binutils/21589 - * vms-alpha.c (_bfd_vms_get_value): Add an extra parameter - the - maximum value for the ascic pointer. Check that name processing - does not read beyond this value. - (_bfd_vms_slurp_etir): Add checks for attempts to read beyond the - end of etir record. - -2017-06-14 Nick Clifton - - PR binutils/21591 - * versados.c (versados_mkobject): Zero the allocated tdata structure. - (process_otr): Check for an invalid offset in the otr structure. - -2017-06-14 Sebastian Huber - - * config.bfd (epiphany-*-elf): Accept epiphany-*-*. - -2017-06-13 H.J. Lu - - PR ld/20022 - PR ld/21557 - PR ld/21562 - PR ld/21571 - * elf-bfd.h (elf_link_hash_entry): Add start_stop. Change the - vtable field to a union. - (_bfd_elf_is_start_stop): Removed. - * elf32-i386.c (elf_i386_convert_load_reloc): Also check for - __start_SECNAME and __stop_SECNAME symbols. - * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise. - * elflink.c (_bfd_elf_is_start_stop): Removed. - (_bfd_elf_gc_mark_rsec): Check start_stop instead of calling - _bfd_elf_is_start_stop. - (elf_gc_propagate_vtable_entries_used): Skip __start_SECNAME and - __stop_SECNAME symbols. Updated. - (elf_gc_smash_unused_vtentry_relocs): Likewise. - (bfd_elf_gc_record_vtinherit): Likewise. - (bfd_elf_gc_record_vtentry): Likewise. - -2017-06-13 Nick Clifton - - PR ld/21524 - * elflink.c (elf_link_adjust_relocs): Generate an error when - encountering a reloc against a symbol removed by garbage - collection. - -2017-06-12 H.J. Lu - - * elf-bfd.h (elf_backend_data): Add struct bfd_link_info * - to merge_gnu_properties. - * elf-properties.c (elf_merge_gnu_properties): Add struct - bfd_link_info * and pass it to merge_gnu_properties. - (elf_merge_gnu_property_list): Add struct bfd_link_info * - and pass it to elf_merge_gnu_properties. - (_bfd_elf_link_setup_gnu_properties): Pass info to - elf_merge_gnu_property_list. - * elf32-i386.c (elf_i386_merge_gnu_properties): Add struct - bfd_link_info *. - * elf64-x86-64.c (elf_x86_64_merge_gnu_properties): Likewise. - -2017-06-11 Joe Zbiciak - - PR 21564 - * binary.c (binary_set_section_contents): Scale lma by octets - per byte to set filepos. - -2017-06-08 Cupertino Miranda - - * elf32-arc.c (elf_arc_check_relocs): Fixed conditions to generate - dynamic sections. - -2017-06-08 Cupertino Miranda - - * elf32-arc.c (elf_arc_size_dynamic_sections): Changed condition to - require TEXTREL. - -2017-06-08 Cupertino Miranda - - * arc-got.h (relocate_fix_got_relocs_for_got_info): Added TCB_SIZE to - patched section contents for TLS IE reloc. - * elf32-arc.c: Remove TCB_SIZE preprocessor macro. - -2017-06-08 Cupertino Miranda - - * elf32-arc.c (elf_arc_relocate_section): Added "call" to - RELOC_FOR_GLOBAL_SYMBOL macro. - -2018-06-08 Cupertino Miranda - - * elf32-arc.c (elf_arc_relocate_section): Small refactor and condition - changes. - -2017-06-08 Cupertino Miranda - - * config/tc-arc.c (md_undefined_symbol): Changed. - * config/tc-arc.h (DYNAMIC_STRUCT_NAME): Removed. - -2017-06-08 Cupertino Miranda - - * elf32-arc.c (elf_arc_relocate_section): Fixed reassign of indirect - symbols. - -2017-06-08 Cupertino Miranda - - * elf32-arc.c (elf_arc_check_relocs): Added condition to disable - warning and "Bad value" for local symbols ARC_32 or ARC_32_ME relocs. - -2017-06-08 Cupertino Miranda - - * elf32-arc.c (ADD_RELA): Changed to only work when dynamic - object is created. - -2017-06-08 Richard Earnshaw - - * elf32-arm.c (elf32_arm_merge_eabi_attributes): Remove assertion - that the input bfd has Tag_FP_ARCH non-zero if Tag_ABI_HardFP_use - is non-zero. Add clarifying comments. - -2017-06-08 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Set local IFUNC symbol - name. Use local IFUNC symbol name string to report unsupported - non-PIC call to IFUNC function. - (elf_i386_relocate_section): Dump local IFUNC name with minfo - when generating R_386_IRELATIVE relocation. - (elf_i386_finish_dynamic_symbol): Likewise. - * elf_x86_64_check_relocs (elf_x86_64_check_relocs): Set local - IFUNC symbol name. - (elf_x86_64_relocate_section): Dump local IFUNC name with minfo - when generating R_X86_64_IRELATIVE relocation. - (elf_x86_64_finish_dynamic_symbol): Likewise. - -2017-06-06 Jose E. Marchesi - - * elf.c (setup_group): Make sure BFD sections are created for all - group sections in the input file when processing SHF_GROUP - sections. - (bfd_section_from_shdr): Avoid duplicating logic already - implemented in `setup_group'. - -2017-06-06 Daniel Bonniot de Ruisselet - - PR binutils/21546 - * peXXigen.c (pe_print_idata): Use the address of the first thunk - if the hint address is zero. - -2017-06-06 James Clarke - - PR ld/19579 - * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Check - ELF_COMMON_DEF_P for common symbols. - -2017-06-06 Andrew Burgess - - * elf.c (_bfd_elf_make_section_from_shdr): Don't initially mark - SEC_GROUP sections as SEC_EXCLUDE. - (bfd_elf_set_group_contents): Replace use of abort with an assert. - (assign_section_numbers): Use resolve_section_groups flag instead - of relocatable link type. - (_bfd_elf_init_private_section_data): Use resolve_section_groups - flag instead of checking the final_link flag for part of the - checks in here. Fix white space as a result. - * elflink.c (elf_link_input_bfd): Use resolve_section_groups flag - instead of relocatable link type. - (bfd_elf_final_link): Likewise. - -2017-06-06 Jose E. Marchesi - - * elfxx-mips.c (_bfd_mips_elf_relocate_section): Remove unused - variable `bed'. - * elf32-score.c (score_elf_final_link_relocate): Likewise. - (s3_bfd_score_elf_check_relocs): Likewise. - * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. - (score_elf_final_link_relocate): Likewise. - (s7_bfd_score_elf_check_relocs): Likewise. - -2017-06-06 Jose E. Marchesi - - * elflink.c (init_reloc_cookie_rels): Remove unused variable - `bed'. - -2017-06-06 Maciej W. Rozycki - - * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Subtract `count' - from `reloc_count' rather than decrementing it. - * elf.c (bfd_section_from_shdr): Multiply the adjustment to - `reloc_count' by `int_rels_per_ext_rel'. - * elf32-score.c (score_elf_final_link_relocate): Do not multiply - `reloc_count' by `int_rels_per_ext_rel' for last relocation - entry determination. - (s3_bfd_score_elf_check_relocs): Likewise. - * elf32-score7.c (score_elf_final_link_relocate): Likewise. - (s7_bfd_score_elf_relocate_section): Likewise. - (s7_bfd_score_elf_check_relocs): Likewise. - * elf64-mips.c (mips_elf64_get_reloc_upper_bound): Remove - prototype and function. - (mips_elf64_slurp_one_reloc_table): Do not update `reloc_count'. - (mips_elf64_slurp_reloc_table): Assert that `reloc_count' is - triple rather than once the sum of REL and RELA relocation entry - counts. - (bfd_elf64_get_reloc_upper_bound): Remove macro. - * elflink.c (_bfd_elf_link_read_relocs): Do not multiply - `reloc_count' by `int_rels_per_ext_rel' for internal relocation - storage allocation size determination. - (elf_link_input_bfd): Multiply `.ctors' and `.dtors' section's - size by `int_rels_per_ext_rel'. Do not multiply `reloc_count' - by `int_rels_per_ext_rel' for last relocation entry - determination. - (bfd_elf_final_link): Do not multiply `reloc_count' by - `int_rels_per_ext_rel' for internal relocation storage - allocation size determination. - (init_reloc_cookie_rels): Do not multiply `reloc_count' by - `int_rels_per_ext_rel' for last relocation entry determination. - (elf_gc_smash_unused_vtentry_relocs): Likewise. - * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. - (_bfd_mips_elf_relocate_section): Likewise. - -2017-06-05 Alan Modra - - PR 21529 - * linker.c (_bfd_generic_link_output_symbols): Handle BSF_GNU_UNIQUE. - -2017-06-01 John Baldwin - - * elf.c (elfcore_grok_freebsd_psinfo): Use ELF header class to - determine structure sizes. - (elfcore_grok_freebsd_prstatus): Likewise. - -2017-06-01 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Add has_plt_localentry0. - (ppc64_elf_merge_symbol_attribute): Merge localentry bits from - dynamic objects. - (is_elfv2_localentry0): New function. - (ppc64_elf_tls_setup): Default params->plt_localentry0. - (plt_stub_size): Adjust size for tls_get_addr_opt stub. - (build_tls_get_addr_stub): Use a simpler stub when r2 is not saved. - (ppc64_elf_size_stubs): Leave stub_type as ppc_stub_plt_call for - optimized localentry:0 stubs. - (ppc64_elf_build_stubs): Save r2 in ELFv2 __glink_PLTresolve. - (ppc64_elf_relocate_section): Leave nop unchanged for optimized - localentry:0 stubs. - (ppc64_elf_finish_dynamic_sections): Set PPC64_OPT_LOCALENTRY in - DT_PPC64_OPT. - * elf64-ppc.h (struct ppc64_elf_params): Add plt_localentry0. - -2017-05-30 Casey Smith - - PR ld/21523 - * elf32-arm.c (elf32_arm_final_link_relocate): Install an absolute - value when processing the R_ARM_THM_ALU_PREL_11_0 reloc. - -2017-05-30 Anton Kolesov Anton.Kolesov@synopsys.com - - * cpu-arc.c (arc_compatible): New function. - -2017-05-30 Anton Kolesov - - * cpu-arc.c (arch_info_struct): Remove duplicate ARC600 entry. - -2017-05-30 H.J. Lu - - PR binutils/21519 - * bfdio.c (bfd_get_file_size): New function. - * bfd-in2.h: Regenerated. - -2017-05-23 Dilian Palauzov - - * elf32-arc.c (arc_elf_merge_attributes): Add fall through - comments. - -2017-05-22 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Use - dynobj instead of htab->elf.dynobj. - -2017-05-19 Maciej W. Rozycki - - * elf64-mips.c (mips_elf64_canonicalize_reloc): Remove prototype - and function. - (mips_elf64_canonicalize_dynamic_reloc): Likewise. - (mips_elf64_slurp_one_reloc_table): Set `reloc_count' to the - actual number of internal relocations retrieved. Adjust - function description. - (bfd_elf64_canonicalize_reloc): Remove macro. - (bfd_elf64_canonicalize_dynamic_reloc): Likewise. - -2017-05-19 Jose E. Marchesi - - * archures.c (bfd_mach_sparc_v9m8): Define. - (bfd_mach_sparc_v8plusm8): Likewise. - (bfd_mach_sparc_v9_p): Adjust to M8. - (bfd_mach_sparc_64bit_p): Likewise. - * aoutx.h (machine_type): Handle bfd_mach_sparc_v9m8 and - bfd_mach_sparc_v8plusm8. - * bfd-in2.h: Regenerated. - * cpu-sparc.c (arch_info_struct): Entries for sparc:v9m8 and - sparc:v8plusm8. - * elfxx-sparc.c (_bfd_sparc_elf_object_p): Handle - bfd_mach_sparc_v8plusm8 and bfd_mach_sparc_v9m8 using the new hw - capabilities ONADDSUB, ONMUL, ONDIV, DICTUNP, FPCPSHL, RLE and - SHA3. - * elf32-sparc.c (elf32_sparc_final_write_processing): Handle - bfd_mach_sparc_v8plusm8. - -2017-05-19 Alan Modra - - * elflink.c (_bfd_elf_gc_mark_extra_sections): Don't keep - debug and special sections when no non-note alloc sections in an - object are kept. - -2017-05-18 Alan Modra - - * arc-got.h: Don't compare boolean values against TRUE or FALSE. - * elf-m10300.c: Likewise. - * elf.c: Likewise. - * elf32-arc.c: Likewise. - * elf32-bfin.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-nds32.c: Likewise. - * elf32-tilepro.c: Likewise. - * elflink.c: Likewise. - * elfnn-aarch64.c: Likewise. - * elfnn-riscv.c: Likewise. - * elfxx-tilegx.c: Likewise. - * mach-o.c: Likewise. - * peXXigen.c: Likewise. - * vms-alpha.c: Likewise. - * vms-lib.c: Likewise. - -2017-05-17 H.J. Lu - - PR ld/20882 - * elflink.c (elf_gc_mark_debug_section): New function. - (_bfd_elf_gc_mark_extra_sections): Mark any debug sections - referenced by kept debug sections. - -2017-05-16 Alan Modra - - * elf-m10300.c: Rename occurrences of non_ir_ref. - * elf32-arm.c: Likewise. - * elf32-bfin.c: Likewise. - * elf32-cr16.c: Likewise. - * elf32-cris.c: Likewise. - * elf32-d10v.c: Likewise. - * elf32-dlx.c: Likewise. - * elf32-fr30.c: Likewise. - * elf32-frv.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-i370.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-iq2000.c: Likewise. - * elf32-lm32.c: Likewise. - * elf32-m32c.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-m68hc1x.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-metag.c: Likewise. - * elf32-microblaze.c: Likewise. - * elf32-moxie.c: Likewise. - * elf32-msp430.c: Likewise. - * elf32-mt.c: Likewise. - * elf32-nios2.c: Likewise. - * elf32-or1k.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-rl78.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-score.c: Likewise. - * elf32-score7.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-tic6x.c: Likewise. - * elf32-tilepro.c: Likewise. - * elf32-v850.c: Likewise. - * elf32-vax.c: Likewise. - * elf32-xstormy16.c: Likewise. - * elf32-xtensa.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-ia64-vms.c: Likewise. - * elf64-mmix.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-sh64.c: Likewise. - * elf64-x86-64.c: Likewise. - * elflink.c: Likewise. - * elfnn-aarch64.c: Likewise. - * elfnn-ia64.c: Likewise. - * elfnn-riscv.c: Likewise. - * elfxx-mips.c: Likewise. - * elfxx-sparc.c: Likewise. - * elfxx-tilegx.c: Likewise. - * linker.c: Likewise. - -2017-05-16 Alan Modra - - * elf64-ppc.c (add_symbol_adjust): Transfer non_ir_ref_dynamic. - * elflink.c (elf_link_add_object_symbols): Update to use - non_ir_ref_dynamic. - (elf_link_input_bfd): Test non_ir_ref_dynamic in addition to - non_ir_ref. - * linker.c (_bfd_generic_link_add_one_symbol): Likewise. - -2017-05-15 Maciej W. Rozycki - - * elfxx-mips.c (print_mips_ases): Handle MIPS16e2 ASE. - -2017-05-12 H.J. Lu - - * elf32-i386.c (elf_i386_parse_gnu_properties): Merge - GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED - properties. - * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. - -2017-05-11 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_link_hash_entry): Rename plt_bnd - to plt_second. - (elf_x86_64_link_hash_table): Rename plt_bnd/plt_bnd_eh_frame - to plt_second/plt_second_eh_frame. - (elf_x86_64_link_hash_newfunc): Updated. - (elf_x86_64_allocate_dynrelocs): Likewise. - (elf_x86_64_size_dynamic_sections): Likewise. - (elf_x86_64_relocate_section): Likewise. - (elf_x86_64_finish_dynamic_symbol): Likewise. - (elf_x86_64_finish_dynamic_sections): Likewise. - (elf_x86_64_plt_type): Rename plt_bnd to plt_second. - (elf_x86_64_get_synthetic_symtab): Updated. Also scan the - .plt.sec section. - (elf_backend_setup_gnu_properties): Updated. Create the - .plt.sec section instead of the .plt.sec section. - -2017-05-11 H.J. Lu - - * elf32-i386.c (elf_i386_allocate_dynrelocs): Partially revert - commit 25070364b0ce33eed46aa5d78ebebbec6accec7e. - * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewse. - -2017-05-10 Jose E. Marchesi - - * elf64-sparc.c (elf64_sparc_set_reloc): New function. - (bfd_elf64_set_reloc): Define. - (elf64_sparc_write_relocs): Use `canon_reloc_count'. - -2017-05-10 Jose E. Marchesi - - * targets.c (BFD_JUMP_TABLE_RELOCS): Add NAME##_set_reloc. - (struct bfd_target): New field _bfd_set_reloc. - * bfd.c (bfd_set_reloc): Call backend _set_bfd. - * reloc.c (_bfd_generic_set_reloc): New function. - * coffcode.h (coff_set_reloc): Define to _bfd_generic_set_reloc. - * nlm-target.h (nlm_set_reloc): Likewise. - * coff-rs6000.c (_bfd_xcoff_set_reloc): Likewise. - * aout-tic30.c (MY_set_reloc): Likewise. - * aout-target.h (MY_set_reloc): Likewise. - * elfxx-target.h (bfd_elfNN_set_reloc): Likewise. - * coff-alpha.c (_bfd_ecoff_set_reloc): Likewise. - * mach-o-target.c (bfd_mach_o_set_reloc): Likewise. - * vms-alpha.c (alpha_vms_set_reloc): Likewise. - * aout-adobe.c (aout_32_set_reloc): Likewise. - * bout.c (b_out_set_reloc): Likewise. - * coff-mips.c (_bfd_ecoff_set_reloc): Likewise. - * i386os9k.c (aout_32_set_reloc): Likewise. - * ieee.c (ieee_set_reloc): Likewise. - * oasys.c (oasys_set_reloc): Likewise. - * som.c (som_set_reloc): Likewise. - * versados.c (versados_set_reloc): Likewise. - * coff64-rs6000.c (rs6000_xcoff64_vec): Add - _bfd_generic_set_reloc. - (rs6000_xcoff64_aix_vec): LIkewise. - * libbfd.c (_bfd_norelocs_set_reloc): New function. - * libbfd-in.h: Prototype for _bfd_norelocs_set_reloc. - * i386msdos.c (msdos_set_reloc): Define to - _bfd_norelocs_set_reloc. - * elfcode.h (elf_set_reloc): Define. - * bfd-in2.h: Regenerated. - -2017-05-10 H.J. Lu - - PR ld/21481 - * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Use .plt.bnd - for IFUNC function address. - -2017-05-10 Claudiu Zissulescu - - * elf32-arc.c (FEATURE_LIST_NAME): Define. - (CONFLICT_LIST): Likewise. - (opcode/arc-attrs.h): Include. - (arc_elf_print_private_bfd_data): Print OSABI v4 flag. - (arc_extract_features): New file. - (arc_stralloc): Likewise. - (arc_elf_merge_attributes): Likewise. - (arc_elf_merge_private_bfd_data): Use object attributes. - (bfd_arc_get_mach_from_attributes): New function. - (arc_elf_object_p): Use object attributes. - (arc_elf_final_write_processing): Likewise. - (elf32_arc_obj_attrs_arg_type): New function. - (elf32_arc_obj_attrs_handle_unknown): Likewise. - (elf32_arc_section_from_shdr): Likewise. - (elf_backend_obj_attrs_vendor): Define. - (elf_backend_obj_attrs_section): Likewise. - (elf_backend_obj_attrs_arg_type): Likewise. - (elf_backend_obj_attrs_section_type): Likewise. - (elf_backend_obj_attrs_handle_unknown): Likewise. - (elf_backend_section_from_shdr): Likewise. - -2017-05-09 Andrew Goedhart - - PR ld/21458 - * elf32-arm.c (elf32_arm_final_link_relocate): Set the bottom bit - of the value when resolving a R_ARM_THM_ALU_PREL_11_0 relocation - and the destination is a Thumb symbol. - -2017-05-08 H.J. Lu - - * elf32-i386.c (elf_i386_get_synthetic_symtab): Add missing - initializer to silence GCC 4.2. - * lf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. - -2017-05-08 H.J. Lu - - * elf64-x86-64.c (PLT_ENTRY_SIZE): Renamed to ... - (LAZY_PLT_ENTRY_SIZE): This. - (NON_LAZY_PLT_ENTRY_SIZE): New. - (elf_x86_64_plt0_entry): Renamed to ... - (elf_x86_64_lazy_plt0_entry): This. - (elf_x86_64_plt_entry): Renamed to ... - (elf_x86_64_lazy_plt_entry): This. - (elf_x86_64_bnd_plt0_entry): Renamed to ... - (elf_x86_64_lazy_bnd_plt0_entry): This. - (elf_x86_64_legacy_plt_entry): Removed. - (elf_x86_64_bnd_plt_entry): Renamed to ... - (elf_x86_64_lazy_bnd_plt_entry): This. - (elf_x86_64_legacy_plt2_entry): Renamed to ... - (elf_x86_64_non_lazy_plt_entry): This. - (elf_x86_64_bnd_plt2_entry): Renamed to ... - (elf_x86_64_non_lazy_bnd_plt_entry): This. - (elf_x86_64_eh_frame_plt): Renamed to ... - (elf_x86_64_eh_frame_lazy_plt): This. - (elf_x86_64_eh_frame_bnd_plt): Renamed to ... - (elf_x86_64_eh_frame_lazy_bnd_plt): This. - (elf_x86_64_eh_frame_plt_got): Renamed to ... - (elf_x86_64_eh_frame_non_lazy_plt): This. - (elf_x86_64_lazy_plt_layout): New. - (elf_x86_64_non_lazy_plt_layout): Likewise. - (elf_x86_64_plt_layout): Likewise. - (elf_x86_64_backend_data): Remove PLT layout information. Add - os for target system. - (GET_PLT_ENTRY_SIZE): Removed. - (elf_x86_64_lazy_plt): New. - (elf_x86_64_non_lazy_plt): Likewise. - (elf_x86_64_lazy_bnd_plt): Likewise. - (elf_x86_64_non_lazy_bnd_plt): Likewise. - (elf_x86-64_arch_bed): Updated. - (elf_x86_64_link_hash_table): Add plt, lazy_plt and non_lazy_plt. - (elf_x86_64_create_dynamic_sections): Removed. - (elf_x86_64_check_relocs): Don't check elf.dynobj. Don't call - _bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section. - (elf_x86-64_adjust_dynamic_symbol): Updated. - (elf_x86_64_allocate_dynrelocs): Updated. Pass 0 as PLT header - size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate - size for PLT0 if there is no PLT0. Get plt_entry_size from - non_lazy_plt for non-lazy PLT entries. - (elf_x86_64_size_dynamic_sections): Updated. Get plt_entry_size - from non_lazy_plt for non-lazy PLT entries. - (elf_x86-64_relocate_section): Updated. Properly get PLT index - if there is no PLT0. - (elf_x86_64_finish_dynamic_symbol): Updated. Fill the first slot - in the PLT entry with generic PLT layout. Fill the non-lazy PLT - entries with non-lazy PLT layout. Don't fill the second and third - slots in the PLT entry if there is no PLT0. - (elf_x86_64_finish_dynamic_sections): Updated. Don't fill PLT0 - if there is no PLT0. Set sh_entsize on the .plt.got section. - (compare_relocs): New. - (elf_x86_64_plt_type): Likewise. - (elf_x86_64_plt): Likewise. - (elf_x86_64_nacl_plt): New. Forward declaration. - (elf_x86_64_get_plt_sym_val): Removed. - (elf_x86_64_get_synthetic_symtab): Rewrite to check PLT sections - against all dynamic relocations. - (elf_x86_64_link_setup_gnu_properties): New function. - (elf_backend_create_dynamic_sections): Updated. - (elf_backend_setup_gnu_properties): New. - (elf_x86_64_nacl_plt): New. - (elf_x86_64_nacl_arch_bed): Updated. - -2017-05-08 H.J. Lu - - * elf32-i386.c (PLT_ENTRY_SIZE): Renamed to ... - (LAZY_PLT_ENTRY_SIZE): This. - (NON_LAZY_PLT_ENTRY_SIZE): New. - (elf_i386_plt0_entry): Renamed to ... - (elf_i386_lazy_plt0_entry): This. - (elf_i386_plt_entry): Renamed to ... - (elf_i386_lazy_plt_entry): This. - (elf_i386_pic_plt0_entry): Renamed to ... - (elf_i386_pic_lazy_plt0_entry): This. - (elf_i386_pic_plt_entry): Renamed to ... - (elf_i386_pic_lazy_plt_entry): This. - (elf_i386_got_plt_entry): Renamed to ... - (elf_i386_non_lazy_plt_entry): This. - (elf_i386_pic_got_plt_entry): Renamed to ... - (elf_i386_pic_non_lazy_plt_entry): This. - (elf_i386_eh_frame_plt): Renamed to ... - (elf_i386_eh_frame_lazy_plt): This. - (elf_i386_eh_frame_plt_got): Renamed to ... - (elf_i386_eh_frame_non_lazy_plt): This. - (elf_i386_plt_layout): Renamed to ... - (elf_i386_lazy_plt_layout): This. Remove eh_frame_plt_got and - eh_frame_plt_got_size. - (elf_i386_non_lazy_plt_layout): New. - (elf_i386_plt_layout): Likewise. - (elf_i386_non_lazy_plt): Likewise. - (GET_PLT_ENTRY_SIZE): Removed. - (elf_i386_plt): Renamed to ... - (elf_i386_lazy_plt): This. - (elf_i386_backend_data): Remove plt. Rename is_vxworks to os. - (elf_i386_arch_bed): Updated. - (elf_i386_link_hash_table): Add plt, lazy_plt and non_lazy_plt. - (elf_i386_create_dynamic_sections): Removed. - (elf_i386_check_relocs): Don't check elf.dynobj. Don't call - _bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section. - (elf_i386_adjust_dynamic_symbol): Updated. - (elf_i386_allocate_dynrelocs): Updated. Pass 0 as PLT header - size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate - size for PLT0 if there is no PLT0. - (elf_i386_size_dynamic_sections): Updated. Check whether GOT - output section is discarded only if GOT isn't empty. - (elf_i386_relocate_section): Updated. Properly get PLT index - if there is no PLT0. - (elf_i386_finish_dynamic_symbol): Updated. Don't fill the - second and third slots in the PLT entry if there is no PLT0. - (elf_i386_finish_dynamic_sections): Updated. Don't fill PLT0 - if there is no PLT0. Set sh_entsize on the .plt.got section. - (elf_i386_nacl_plt): Forward declaration. - (elf_i386_get_plt_sym_val): Removed. - (elf_i386_get_synthetic_symtab): Rewrite to check PLT sections - against all dynamic relocations. - (elf_i386_link_setup_gnu_properties): New function. - (elf_backend_create_dynamic_sections): Updated. - (elf_backend_setup_gnu_properties): New. - (elf_i386_nacl_plt): Updated. - (elf_i386_nacl_arch_bed): Likewise. - (elf_i386_vxworks_arch_bed): Likewise. - -2017-05-08 Thomas Preud'homme - - * elflink.c (elf_output_implib): Remove executable flag from import - library bfd. - * elf32-arm.c (elf32_arm_filter_implib_symbols): Assert that the import - library is a relocatable object file. - -2017-05-01 Senthil Kumar Selvaraj - - PR ld/21404 - * elf32-avr.c (avr_should_move_sym): New function. - (avr_should_reduce_sym_size): Likewise. - (avr_should_increase_sym_size): Likewise. - (elf32_avr_relax_delete_bytes): Adjust symbol values - and sizes by calling new functions. - -2017-05-01 Palmer Dabbelt - - * config.bfd (riscv32-*): Enable rv64. - -2017-05-02 Alan Modra - - PR 21384 - * elflink.c (bfd_elf_link_mark_dynamic_symbol): Test h->non_elf - rather than h->root.type == bfd_link_hash_new. - (bfd_elf_record_link_assignment): Similarly, call - bfd_elf_link_mark_dynamic_symbol when h->non_elf. - -2017-04-29 Alan Modra - - PR 21432 - * reloc.c (reloc_offset_in_range): New function. - (bfd_perform_relocation, bfd_install_relocation): Use it. - (_bfd_final_link_relocate): Likewise. - -2017-04-28 H.J. Lu - - * elf32-i386.c (elf_i386_allocate_dynrelocs): Check plt_got - before using .plt.got. - * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise. - -2017-04-27 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Use "=" - instead of "+=" to update 0. - -2017-04-27 H.J. Lu - - * elf32-i386.c (elf_i386_create_dynamic_sections): Create the - .plt.got section here. - (elf_i386_check_relocs): Don't create the .plt.got section. - * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Create - the .plt.got and .plt.bnd sections here. - (elf_x86_64_check_relocs): Don't create the .plt.got nor - .plt.bnd sections. - -2017-04-27 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_link_hash_entry): Remove - has_bnd_reloc. - (elf_x86_64_link_hash_newfunc): Don't clear has_bnd_reloc. - (elf_x86_64_copy_indirect_symbol): Don't copy has_bnd_reloc. - (elf_x86_64_check_relocs): Don't set has_bnd_reloc. - (elf_x86_64_finish_dynamic_symbol): Check bndplt instead of - has_bnd_reloc. - -2017-04-27 H.J. Lu - - * elf-bfd.h (elf_backend_data): Change setup_gnu_properties - to return bfd *. - (_bfd_elf_link_setup_gnu_properties): Return bfd *. - * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Return - the first relocatable ELF input with GNU properties. - -2017-04-27 H.J. Lu - - * elf32-i386.c (elf_i386_finish_dynamic_sections): Simplify - VxWorks for non-PIC. - -2017-04-27 Alan Modra - - * elf-bfd.h (struct elf_backend_data): Make asection param of - elf_backend_eh_frame_address_size const. - (_bfd_elf_eh_frame_address_size): Likewise. - * elf32-m32c.c (_bfd_m32c_elf_eh_frame_address_size): Likewise. - * elf32-msp430.c (elf32_msp430_eh_frame_address_size): Likewise. - * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): Likewise. - * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Likewise. - * elf-eh-frame.c (_bfd_elf_eh_frame_address_size): Likewise. - (next_cie_fde_offset): Constify params. - (offset_adjust, adjust_eh_frame_local_symbols): Likewise. - -2017-04-27 Alan Modra - - * elf-bfd.h (struct eh_cie_fde): Add aug_str_len and aug_data_len. - (_bfd_elf_adjust_eh_frame_global_symbol): Declare. - * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Set aug_str_len and - aug_data_len. - (offset_adjust): New function. - (_bfd_elf_adjust_eh_frame_global_symbol): Likewise. - (adjust_eh_frame_local_symbols): Likewise. - (_bfd_elf_discard_section_eh_frame): Call adjust_eh_frame_local_symbols - after changing anything. Return true if anything changed. - * elflink.c (bfd_elf_discard_info): If .eh_frame changed, call - _bfd_elf_adjust_eh_frame_global_symbol for globals. - -2017-04-27 Alan Modra - - * elflink.c (_bfd_elf_link_hash_hide_symbol): Clear dynstr_index - when force_local. - -2017-04-27 Alan Modra - - * elf32-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Define. - (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Use it. - (ppc_elf_adjust_dynamic_symbol, allocate_dynrelocs): Likewise. - (ppc_elf_relocate_section): Likewise. Delete silly optimisation - for undef and undefweak dyn_relocs. - * elf64-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Define. - (ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup): Use it. - (allocate_got, allocate_dynrelocs): Likewise. - (ppc64_elf_relocate_section): Likewise. - -2017-04-26 H.J. Lu - - * elf32-i386.c (elf_i386_size_dynamic_sections): Alwasys add - DT_PLTRELSZ, DT_PLTREL and DT_JMPREL for .rel.plt section. - * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Alwasys - add DT_PLTRELSZ, DT_PLTREL and DT_JMPREL for .rela.plt section. - -2017-04-26 Nick Clifton - - PR binutils/21434 - * reloc.c (bfd_perform_relocation): Check for a negative address - in the reloc. - -2017-04-26 Maciej W. Rozycki - - PR ld/21334 - * elf-bfd.h (elf_backend_data): Add `always_renumber_dynsyms' - member. - * elfxx-target.h [!elf_backend_always_renumber_dynsyms] - (elf_backend_always_renumber_dynsyms): Define. - (elfNN_bed): Initialize `always_renumber_dynsyms' member. - * elfxx-mips.h (elf_backend_always_renumber_dynsyms): Define. - * elflink.c (bfd_elf_size_dynamic_sections): Also call - `_bfd_elf_link_renumber_dynsyms' if the backend has requested - it. - (bfd_elf_size_dynsym_hash_dynstr): Likewise. - -2017-04-26 Maciej W. Rozycki - - * elflink.c (bfd_elf_size_dynamic_sections): Only call - `_bfd_elf_link_renumber_dynsyms' after section GC if dynamic - sections have been created. - -2017-04-26 Nick Clifton - - PR binutils/21431 - * compress.c (bfd_init_section_compress_status): Check the return - value from bfd_malloc. - -2017-04-24 H.J. Lu - - * elf64-x86-64.c (elf_x86_64_link_hash_entry): Add - no_finish_dynamic_symbol. - (elf_x86_64_link_hash_newfunc): Set no_finish_dynamic_symbol to - 0. - (elf_x86_64_allocate_dynrelocs): If a symbol isn't undefined - weak symbol, don't make it dynamic. - (elf_x86_64_relocate_section): If a symbol isn't dynamic in PIC, - set no_finish_dynamic_symbol and generate R_X86_64_RELATIVE - relocation for GOT reference. - (elf_x86_64_finish_dynamic_symbol): Abort if - no_finish_dynamic_symbol isn't 0. - -2017-04-24 H.J. Lu - - PR ld/21402 - * elf32-i386.c (elf_i386_allocate_dynrelocs): If a symbol isn't - undefined weak symbol, don't make it dynamic. - (elf_i386_relocate_section): If a symbol isn't dynamic in PIC, - set no_finish_dynamic_symbol and generate R_386_RELATIVE - relocation for R_386_GOT32. - -2017-04-24 H.J. Lu - - PR ld/21425 - * elf32-i386.c (ELF_MAXPAGESIZE): Set to 0x1000 for VxWorks. - -2017-04-23 Alan Modra - - PR 21414 - * section.c (GLOBAL_SYM_INIT): Make available in bfd.h. - * elf.c (lcomm_sym): New. - (_bfd_elf_large_com_section): Use lcomm_sym section symbol. - * bfd-in2.h: Regenerate. - -2017-04-23 Alan Modra - - PR 21412 - * elf-bfd.h (struct elf_backend_data ): Change - parameters and comment. - (_bfd_elf_get_reloc_section): Delete. - (_bfd_elf_plt_get_reloc_section): Declare. - * elf.c (_bfd_elf_plt_get_reloc_section, elf_get_reloc_section): - New functions. Don't blindly skip over assumed .rel/.rela prefix. - Extracted from.. - (_bfd_elf_get_reloc_section): ..here. Delete. - (assign_section_numbers): Call elf_get_reloc_section. - * elf64-ppc.c (elf_backend_get_reloc_section): Define. - * elfxx-target.h (elf_backend_get_reloc_section): Update. - -2017-04-23 Alan Modra - - PR 21409 - * dwarf2.c (_bfd_dwarf2_find_nearest_line): Don't segfault when - no symbols. - -2017-04-21 H.J. Lu - - PR ld/21402 - * elf32-i386.c (elf_i386_link_hash_entry): Add - no_finish_dynamic_symbol. - (elf_i386_link_hash_newfunc): Set no_finish_dynamic_symbol to 0. - (elf_i386_allocate_dynrelocs): If a symbol isn't undefined weak - symbol, don't make it dynamic in PIE. - (elf_i386_relocate_section): If a symbol isn't dynamic in PIE, - set no_finish_dynamic_symbol and generate R_386_RELATIVE - relocation for R_386_GOT32 - (elf_i386_finish_dynamic_symbol): Abort if no_finish_dynamic_symbol - isn't 0. - -2017-04-21 H.J. Lu - - PR ld/19617 - PR ld/21086 - * elflink.c (elf_link_add_object_symbols): Require - --no-dynamic-linker with -E/--dynamic-list when creating - dynamic sections. - -2017-04-20 Maciej W. Rozycki - - * elflink.c (_bfd_elf_symbol_refs_local_p): Always return TRUE - if forced local. - -2017-04-20 Maciej W. Rozycki - - * elfxx-mips.c (_bfd_mips_elf_final_link): Reorder comment about - dynamic symbol sorting. - -2017-04-20 H.J. Lu - - PR ld/21382 - * elflink.c (elf_link_add_object_symbols): Preserve - dynamic_ref_after_ir_def when restoring the symbol table for - unneeded dynamic object. - -2017-04-19 H.J. Lu - - PR ld/21401 - * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't abort - on on undefined IFUNC symbol in the second PLT. - -2017-04-19 Wedson Almeida Filho - - * peXXigen.c (pe_print_reloc): Correct chunk_end. - -2017-04-19 Alan Modra - - * elflink.c (_bfd_elf_adjust_dynamic_symbol): Hide undefweak - or make dynamic for info->dynamic_undefined_weak 0 and 1. - * elf32-ppc.c:Formatting. - (ensure_undefweak_dynamic): Don't make dynamic when - info->dynamic_undefined_weak is zero. - (allocate_dynrelocs): Discard undefweak dyn_relocs for - info->dynamic_undefined_weak. Discard undef dyn_relocs when - not default visibility. Discard undef and undefweak - dyn_relocs earlier. - (ppc_elf_relocate_section): Adjust to suit. - * elf64-ppc.c: Formatting. - (ensure_undefweak_dynamic): Don't make dynamic when - info->dynamic_undefined_weak is zero. - (allocate_dynrelocs): Discard undefweak dyn_relocs for - info->dynamic_undefined_weak. Discard them earlier. - -2017-04-17 H.J. Lu - - PR ld/21389 - * elflink.c (bfd_elf_size_dynamic_sections): Get soname index - before generating the version definition section. - -2017-04-17 Alan Modra - - * elflink.c (_bfd_elf_merge_symbol): Undo dynamic linking - state when a regular object file defines a symbol with - incompatible type to that defined by an earlier shared lib. - -2017-04-13 Alan Modra - - * coffcode.h: Wrap some overly long _bfd_error_handler args. - * elf.c: Likewise. - * elf32-arm.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-mep.c: Likewise. - * elf64-ia64-vms.c: Likewise. - * elf64-x86-64.c: Likewise. - * elflink.c: Likewise. - * elfnn-ia64.c: Likewise. - * elfxx-mips.c: Likewise. - -2017-04-13 Alan Modra - - * aoutx.h: Use %B and %A in error messages throughout file. - * aout-cris.c: Likewise. - * archive.c: Likewise. - * binary.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-tic4x.c: Likewise. - * coffcode.h: Likewise. - * coffgen.c: Likewise. - * cofflink.c: Likewise. - * coffswap.h: Likewise. - * cpu-arm.c: Likewise. - * elf-eh-frame.c: Likewise. - * elf-m10300.c: Likewise. - * elf.c: Likewise. - * elf32-arc.c: Likewise. - * elf32-arm.c: Likewise. - * elf32-bfin.c: Likewise. - * elf32-frv.c: Likewise. - * elf32-iq2000.c: Likewise. - * elf32-m32c.c: Likewise. - * elf32-microblaze.c: Likewise. - * elf32-nds32.c: Likewise. - * elf32-rl78.c: Likewise. - * elf32-rx.c: Likewise. - * elf32-score.c: Likewise. - * elf32-score7.c: Likewise. - * elf32-sh64.c: Likewise. - * elf32-v850.c: Likewise. - * elf32-vax.c: Likewise. - * elf32-visium.c: Likewise. - * elf64-ia64-vms.c: Likewise. - * elf64-mmix.c: Likewise. - * elf64-sh64.c: Likewise. - * elfcode.h: Likewise. - * elfnn-aarch64.c: Likewise. - * elfnn-ia64.c: Likewise. - * elfxx-mips.c: Likewise. - * hpux-core.c: Likewise. - * ieee.c: Likewise. - * ihex.c: Likewise. - * linker.c: Likewise. - * merge.c: Likewise. - * mmo.c: Likewise. - * oasys.c: Likewise. - * pdp11.c: Likewise. - * peXXigen.c: Likewise. - * rs6000-core.c: Likewise. - * vms-alpha.c: Likewise. - * xcofflink.c: Likewise. - -2017-04-13 Alan Modra - - * bfd.c (PRINT_TYPE): Define. - (_doprnt): New function. - (error_handler_internal): Use _doprnt. - * coff-arm.c: Put %A and %B arguments to _bfd_error_handler - calls in their natural order, throughout file. - * coff-mcore.c: Likewise. - * coff-ppc.c: Likewise. - * coff-tic80.c: Likewise. - * cofflink.c: Likewise. - * elf-s390-common.c: Likewise. - * elf.c: Likewise. - * elf32-arm.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-msp430.c: Likewise. - * elf32-spu.c: Likewise. - * elf64-ia64-vms.c: Likewise. - * elf64-sparc.c: Likewise. - * elf64-x86-64.c: Likewise. - * elflink.c: Likewise. - * elfnn-aarch64.c: Likewise. - * elfnn-ia64.c: Likewise. - * elfxx-mips.c: Likewise. - -2017-04-13 Alan Modra - - * elf32-arm.c (arm_type_of_stub): Supply missing args to "long - branch veneers" error. Fix double space and format message. - * elf32-avr.c (avr_add_stub): Do not pass NULL as %B arg. - * elf64-ppc.c (tocsave_find): Supply missing %B arg. - -2017-04-13 Alan Modra - - * bfd-in2.h: Regenerate. - -2017-04-11 H.J. Lu - - * elf-properties.c (_bfd_elf_parse_gnu_properties): Remove the - extra `\n' in warning/error messages. - * elf32-i386.c (elf_i386_parse_gnu_properties): Likewise. - * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. - -2017-04-11 H.J. Lu - - * elf-properties.c (_bfd_elf_parse_gnu_properties): Ignore - processor-specific properties with generic ELF target vector. - -2017-04-10 Qing Zhao - - * elf32-sparc.c (elf_backend_fixup_symbol): New. - * elf64-sparc.c (elf_backend_fixup_symbol): New. - * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New. - (_bfd_sparc_elf_link_hash_entry): Add has_got_reloc and - has_non_got_reloc. - (link_hash_newfunc): Initialize has_got_reloc and - has_non_got_reloc. - (_bfd_sparc_elf_size_dynamic_sections): Set interp to .interp - section. - (_bfd_sparc_elf_copy_indirect_symbol): Copy has_got_reloc and - has_non_got_reloc. - (_bfd_sparc_elf_check_relocs): Set has_got_reloc and - has_non_got_reloc. - (_bfd_sparc_elf_fixup_symbol): New function. - (allocate_dynrelocs): Don't allocate space for dynamic - relocations and discard relocations against resolved undefined - weak symbols in executable. Don't make resolved undefined weak - symbols in executable dynamic. Keep dynamic non-GOT/non-PLT - relocation against undefined weak symbols in PIE. - (_bfd_sparc_elf_relocate_section): Don't generate dynamic - relocations against resolved undefined weak symbols in PIE - (_bfd_sparc_elf_finish_dynamic_symbol): Keep PLT/GOT entries - without ynamic PLT/GOT relocations for resolved undefined weak - symbols. - Don't generate dynamic relocation against resolved undefined - weak symbol in executable. - (pie_finish_undefweak_symbol): New function. - (_bfd_sparc_elf_finish_dynamic_sections): Call - pie_finish_undefweak_symbol on all symbols in PIE. - * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add interp. - (_bfd_sparc_elf_fixup_symbol): New function. - -2017-04-10 Nick Clifton - - * config.bfd: Remove ns32k from obsolete list. - -2017-04-10 Alan Modra - - PR 21287 - * elf.c (special_sections_f): Match .fini_array and .fini_array.*. - (special_sections_i): Likewise for .init_array. - (special_sections_p): Likewise for .preinit_array. - -2017-04-07 H.J. Lu - - PR ld/19579 - PR ld/21306 - * elf32-s390.c (elf_s390_finish_dynamic_symbol): Check - ELF_COMMON_DEF_P for common symbols. - * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. - * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. - * elflink.c (_bfd_elf_merge_symbol): Revert commits - 202ac193bbbecc96a4978d1ac3d17148253f9b01 and - 07492f668d2173da7a2bda3707ff0985e0f460b6. - -2017-04-07 Pedro Alves - - * opncls.c (bfd_get_debug_link_info): Rename to... - (bfd_get_debug_link_info_1): ... this. Change type of second - parameter to void pointer. Adjust. - (bfd_get_debug_link_info): Reimplement on top of - bfd_get_debug_link_info_1. - (separate_debug_file_exists, separate_alt_debug_file_exists): - Change type of second parameter to void pointer. Adjust. - (get_func_type, check_func_type): Change type of second parameter - to void pointer. - (find_separate_debug_file): Add 'func_data' parameter. Pass it to - the callback functions instead of passing the address of a local. - (bfd_follow_gnu_debuglink): Pass address of unsigned long local to - find_separate_debug_file. - (get_alt_debug_link_info_shim): Change type of second parameter to - void pointer. Adjust. - (bfd_follow_gnu_debugaltlink): Adjust to pass NULL to - find_separate_debug_file. - (get_build_id_name, bfd_boolean check_build_id_file): Change type - of second parameter to void pointer. Adjust. - (bfd_follow_build_id_debuglink): Pass address of bfd_build_id - pointer local to find_separate_debug_file. - -2017-04-07 Tristan Gingold - - * coffgen.c (_bfd_coff_gc_mark_hook): Handle PE weak - external symbols with a definition. - (_bfd_coff_gc_mark_extra_sections): Fix typo. - -2017-04-07 Alan Modra - - * po/SRC-POTFILES.in: Regenerate. - -2017-04-05 Alan Modra - - * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Support ELFv2 PLT - reference counting. - -2017-04-02 Jon Turney - - (_bfd_XXi_swap_aouthdr_out): For clarity, use defines rather than - numbers for DataDirectory entry indicies passed to - add_data_entry(). - -2017-04-04 H.J. Lu - - * elf.c (get_program_header_size): Add a GNU_MBIND segment for - each GNU_MBIND section and align GNU_MBIND section to page size. - (_bfd_elf_map_sections_to_segments): Create a GNU_MBIND - segment for each GNU_MBIND section. - (_bfd_elf_init_private_section_data): Copy sh_info from input - for GNU_MBIND section. - -2017-04-03 Palmer Dabbelt - - * elfnn-riscv.c (GP_NAME): Delete. - (riscv_global_pointer_value): Change GP_NAME to RISCV_GP_SYMBOL. - (_bfd_riscv_relax_lui): Likewise. - -2017-04-04 Nick Clifton - - PR binutils/21342 - * elflink.c (_bfd_elf_define_linkage_sym): Prevent null pointer - dereference. - (bfd_elf_final_link): Only initialize the extended symbol index - section if there are extended symbol tables to list. - -2017-04-03 H.J. Lu - - * Makefile.am (BFD32_BACKENDS): Add elf-properties.lo. - (BFD32_BACKENDS_CFILES): Add elf-properties.c. - * configure.ac (elf): Add elf-properties.lo. - * Makefile.in: Regenerated. - * configure: Likewise. - * elf-bfd.h (elf_property_kind): New. - (elf_property): Likewise. - (elf_property_list): Likewise. - (elf_properties): Likewise. - (_bfd_elf_parse_gnu_properties): Likewise. - (_bfd_elf_get_property): Likewise. - (_bfd_elf_link_setup_gnu_properties): Likewise. - (elf_backend_data): Add parse_gnu_properties, merge_gnu_properties - and setup_gnu_properties. - (elf_obj_tdata): Add properties. - * elf-properties.c: New file. - * elf32-i386.c (elf_i386_parse_gnu_properties): New. - (elf_i386_merge_gnu_properties): Likewise. - (elf_backend_parse_gnu_properties): Likewise. - (elf_backend_merge_gnu_properties): Likewise. - * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. - (elf_x86_64_merge_gnu_properties): Likewise. - (elf_backend_parse_gnu_properties): Likewise. - (elf_backend_merge_gnu_properties): Likewise. - * elfxx-target.h (elf_backend_merge_gnu_properties): Likewise. - (elf_backend_parse_gnu_properties): Likewise. - (elf_backend_setup_gnu_properties): Likewise. - (elfNN_bed): Add elf_backend_parse_gnu_properties, - elf_backend_merge_gnu_properties and - elf_backend_setup_gnu_properties. - -2017-03-30 Pip Cet - - * elf32-wasm32.c: Add relocation code, two relocs. - * reloc.c: Add wasm32 relocations. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * bfd/po/bfd.pot: Regenerate. - -2017-03-29 Nick Clifton - - PR binutils/18025 - * coff-bfd.h (struct coff_section_data): Add new fields: - saved_bias and bias. - * coffgen.c (coff_find_nearest_line_with_names): Cache the bias - computed for PE binaries. - * dwarf2.c (scan_unit_for_symbols): Only warn once about each - missing abbrev. - -2017-03-28 Hans-Peter Nilsson - - PR ld/16044 - * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Adjust BFD_ASSERT - to handle a local symbol with a hash-symbol-entry; without PLT. - Add BFD_ASSERT for an incidental case with GOT entry present. - (cris_elf_check_relocs): Increment PLT refcount only if the symbol - isn't forced-or-set local. - -2017-03-27 Pip Cet - - * wasm-module.c: New file to support WebAssembly modules. - * wasm-module.h: New file to support WebAssembly modules. - * doc/webassembly.texi: Start documenting wasm-module.c. - * config.bfd: Add wasm_vec. - * targets.c: Likewise. - * configure.ac: Likewise. - * Makefile.am: Add entries for wasm-module.c. - * Makefile.in: Regenerate. - * configure: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2017-03-27 Pip Cet - - * cpu-wasm32.c: New file to support wasm32 architecture. - * elf32-wasm32.c: New file to support wasm32 architecture. - * Makefile.am: Add wasm32 architecture. - * archures.c: Likewise. - * config.bfd: Likewise. - * configure.ac: Likewise. - * targets.c: Likewise. - * Makefile.in: Regenerate. - * bfd-in2.h: Regenerate. - * configure: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2017-03-20 Alan Modra - - PR 21266 - * elf64-ppc.c (compare_symbols): Stabilize sort. - -2017-03-18 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Add - local_ifunc_resolver and maybe_local_ifunc_resolver. - (ppc_build_one_stub): Set flags on emitting dynamic - relocation to ifunc. - (ppc64_elf_relocate_section): Likewise. - (ppc64_elf_finish_dynamic_symbol): Likewise. - (ppc64_elf_finish_dynamic_sections): Error on DT_TEXTREL with - local dynamic relocs to ifuncs. - * elf32-ppc.c (struct ppc_elf_link_hash_table): Add - local_ifunc_resolver and maybe_local_ifunc_resolver. - (ppc_elf_relocate_section): Set flag on emitting dynamic - relocation to ifuncs. - (ppc_elf_finish_dynamic_symbol): Likewise. - (ppc_elf_finish_dynamic_sections): Error on DT_TEXTREL with local - dynamic relocs to ifuncs. - -2017-03-13 Nick Clifton - - PR binutils/21202 - * reloc.c (BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC): Rename to - BFD_RELOC_AARCH64_TLSDESC_LD64_LO12. - (BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC): Rename to - BFD_RELOC_AARCH64_TLSDESC_ADD_LO12. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * elfnn-aarch64.c (IS_AARCH64_TLS_RELAX_RELOC): Update reloc - names. - (IS_AARCH64_TLSDESC_RELOC): Likewise. - (elfNN_aarch64_howto_table): Likewise. - (aarch64_tls_transition_without_check): Likewise. - (aarch64_reloc_got_type): Likewise. - (elfNN_aarch64_final_link_relocate): Likewise. - (elfNN_aarch64_tls_relax): Likewise. - (elfNN_aarch64_relocate_section): Likewise. - (elfNN_aarch64_gc_sweep_hook): Likewise. - (elfNN_aarch64_check_relocs): Likewise. - * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise. - (_bfd_aarch64_elf_resolve_relocation): Likewise. - -2017-03-11 Alan Modra - - * elf32-ppc.c: Remove ATTRIBUTE_UNUSED throughout when function - parameter is in fact used. Whitespace fixes. - * elf64-ppc.c: Likewise. - -2017-03-09 Sam Thursfield - - * rs6000-core.c (CORE_NEW): Simplify macro when - AIX_CORE_DUMPX_CORE and BFD64 are true to avoid compile warning. - -2017-03-07 Alan Modra - - PR 21224 - PR 20519 - * elf64-ppc.c (ppc64_elf_relocate_section): Add missing - dyn_relocs check. - -2017-03-05 Alan Modra - - * elf-bfd.h (struct eh_cie_fde): Add u.cie.per_encoding_aligned8. - * elf-eh-frame.c (size_of_output_cie_fde): Don't align here. - (next_cie_fde_offset): New function. - (_bfd_elf_parse_eh_frame): Set u.cie.per_encoding_aligned8. - (_bfd_elf_discard_section_eh_frame): Align zero terminator to - four bytes. Align CIEs to four or eight bytes depending on - per_encoding_aligned8. Align FDEs according to their encoding. - Pad last FDE to output section alignment. - (_bfd_elf_write_section_eh_frame): Adjust to suit. Remove - assertion. - * elf64-ppc.c (glink_eh_frame_cie): Delete padding. - (ppc64_elf_size_stubs): Pad glink eh_frame as per elf-eh-frame.c. - (ppc64_elf_finish_dynamic_sections): Adjust to suit. - -2017-03-02 Martin Bickel - - PR ld/21212 - * elf.c (rewrite_elf_program_header): Do not issue a warning for - empty segments which have a zero filesz, but a non-zero memsz. - -2017-03-02 Alan Modra - - * elf32-ppc.c (ppc_elf_vle_split16): Correct insn mask typo. - -2017-02-28 Alan Modra - - * elf64-ppc.c (ppc64_elf_ha_reloc): Revert last change. - (ppc64_elf_relocate_section): Likewise. - -2017-02-28 Alan Modra - - PR 20995 - * elf32-nios2.c (nios2_elf32_relocate_section): Use htab - rather than elf32_nios2_hash_table or elf_hash_table. - (create_got_section): Likewise. - (nios2_elf32_finish_dynamic_symbol): Likewise. - (nios2_elf32_adjust_dynamic_symbol): Likewise. - (nios2_elf32_size_dynamic_sections): Likewise. - (nios2_elf32_check_relocs): Delete dynobj, sgot, and srelgot - vars. Use htab equivalents directly instead. Don't create - all dynamic sections on needing just the GOT. Use a goto - rather than a fall-through with reloc test. Ensure - htab->dynobj is set when making dynamic sreloc section. - (nios2_elf32_finish_dynamic_sections): Delete dynobj, use htab - equivalent directly instead. Don't segfault on looking for - .dynamic when dynamic sections have not been created. Don't - segfault on .got.plt being discarded. - (nios2_elf32_size_dynamic_sections): Delete plt and got vars. - Don't set "relocs" on .rela.plt. Do handle .sbss. Delete - fixme and another not so relevant comment. - (nios2_elf_add_symbol_hook): Delete dynobj var. If not - already set, set hash table dynobj on creating .sbss. - -2017-02-28 Alan Modra - - * reloc.c (BFD_RELOC_PPC_16DX_HA): New. - * elf64-ppc.c (ppc64_elf_howto_raw ): New howto. - (ppc64_elf_reloc_type_lookup): Translate new bfd reloc. - (ppc64_elf_ha_reloc): Correct overflow test on REL16DX_HA. - (ppc64_elf_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_howto_raw ): New howto. - (ppc_elf_reloc_type_lookup): Translate new bfd reloc. - (ppc_elf_check_relocs): Handle R_PPC_16DX_HA to pacify gcc. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - -2017-02-28 Alan Modra - - * elflink.c (_bfd_elf_create_dynamic_sections): Don't make - dynamic .data.rel.ro read-only. - * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Compare section - rather than section flags when deciding where copy reloc goes. - * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise. - * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise. - * elf32-i386.c (elf_i386_finish_dynamic_symbol): Likewise. - * elf32-metag.c (elf_metag_finish_dynamic_symbol): Likewise. - * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Likewise. - * elf32-nios2.c (nios2_elf32_finish_dynamic_symbol): Likewise. - * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Likewise. - * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Likewise. - * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise. - * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise. - * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise. - * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Likewise. - * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. - * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. - * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Likewise. - * elfnn-riscv.c (riscv_elf_finish_dynamic_symbol): Likewise. - * elfxx-mips.c (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise. - * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. - * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise. - -2017-02-28 Maciej W. Rozycki - - * elfxx-mips.c (mips_elf_perform_relocation): Also handle the - `jalr $0, $25' instruction encoding. - -2017-02-27 Nick Clifton - - PR ld/21180 - * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Avoid - generating a seg-fault when encountering a symbol that has been - deleted by garbage collection. - -2017-02-25 Alan Modra - - * elf32-arc.c (struct dynamic_sections): Delete. - (enum dyn_section_types): Delete. - (dyn_section_names): Delete. - (arc_create_dynamic_sections): Delete. - (elf_arc_finish_dynamic_sections): Don't call the above. Don't - segfault on discarded .rela.plt section. - (elf_arc_size_dynamic_sections): Formatting. Don't call - arc_create_dynamic_sections. Don't allocate memory for sections - handled by the generic linker. Correct code finding relocs in - read-only sections. Set SEC_EXCLUDE on zero size .got, - .got.plt, and .dynbss sections. Do set .interp for pies. - -2017-02-24 Andrew Waterman - - * elfnn-riscv.c (GP_NAME): New macro. - (riscv_global_pointer_value): Use it. - (_bfd_riscv_relax_lui): If symbol and global pointer are in same - output section, consider only that section's alignment. - -2017-02-23 Maciej W. Rozycki - - * elfxx-mips.h (_bfd_mips_relax_section): Remove prototype. - * elfxx-mips.c (_bfd_mips_relax_section): Remove function. - * elf64-mips.c (bfd_elf64_bfd_relax_section): Remove macro. - * elfn32-mips.c (bfd_elf32_bfd_relax_section): Likewise. - -2017-02-23 Maciej W. Rozycki - - * elfxx-mips.c (mips_elf_calculate_relocation) - : Discard relocation if `cross_mode_jump_p' - or misaligned. - -2017-02-23 Alan Modra - - PR 20744 - * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask on all VLE - 16D relocations. - (ppc_elf_vle_split16): Correct field mask and shift for 16D relocs. - (ppc_elf_relocate_section): Correct calculation for VLE SDAREL - relocs. - -2017-02-22 Maciej W. Rozycki - - PR ld/20828 - * elflink.c (bfd_elf_size_dynamic_sections): Move symbol version - processing ahead of the call to `elf_gc_sweep_symbol'. - -2017-02-22 Nick Clifton - - PR binutils/21193 - * opncls.c (bfd_create_gnu_debuglink_section): Give the newly - created section 4-byte alignment. - -2017-02-22 Alan Modra - - * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Don't segfault - on .got or .plt output section being discarded by script. - * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Likewise. Move - vxworks splt temp. - -2017-02-21 Alan Modra - - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only emit - DT_RELA, DT_RELASZ, and DT_RELAENT when DT_RELASZ is non-zero. - -2017-02-20 Alan Modra - - PR 21181 - * elflink.c (bfd_elf_final_link): Make DT_REL/DT_RELA zero - if DT_RELSZ/DT_RELASZ is zero. - -2017-02-17 Nick Clifton - - * compress.c (bfd_get_full_section_contents): Remember to reduce - compressed size by the sizeof the compression header when - decompressing the contents. - -2017-02-17 Pedro Alves - - * srec.c (Chunk): Rename to ... - (_bfd_srec_len): ... this. - (S3Forced): Rename to ... - (_bfd_srec_forceS3): ... this. - * objcopy.c: Adjust all references. - -2017-02-17 Pedro Alves - - * archive.c (bsd_write_armap): Rename to ... - (_bfd_bsd_write_armap): ... this. - (coff_write_armap): Rename to ... - (_bfd_coff_write_armap): ... this. - * libbfd-in.h (bsd_write_armap): Rename to ... - (_bfd_bsd_write_armap): ... this. - (coff_write_armap): Rename to ... - (_bfd_coff_write_armap): ... this. - * aout-target.h, aout-tic30.c: Adjust all users. - * libbfd.h: Regenerate. - -2017-02-17 Pedro Alves - - * bfd-in.h (bfd_read, bfd_write): Adjust to rename. - (warn_deprecated): Rename to ... - (_bfd_warn_deprecated): ... this. - * libbfd.c (warn_deprecated): Rename to ... - (_bfd_warn_deprecated): ... this. - * bfd-in2.h: Regenerate. - -2017-02-17 Pedro Alves - - * bfdio.c (real_ftell): Rename to ... - (_bfd_real_ftell): ... this. - (real_fseek): Rename to ... - (_bfd_real_fseek): ... this. - (real_fopen): Rename to ... - (_bfd_real_fopen): ... this. - * libbfd-in.h (real_ftell): Rename to ... - (_bfd_real_ftell): ... this. - (real_fseek): Rename to ... - (_bfd_real_fseek): ... this. - (real_fopen): Rename to ... - (_bfd_real_fopen): ... this. - * cache.c, dwarf2.c, opncls.c: Adjust all callers. - * libbfd.h: Regenerate. - -2017-02-17 Pedro Alves - - * dwarf2.c, elf-attrs.c, elf32-nds32.c: Adjust all callers. - * libbfd.c (read_unsigned_leb128): Rename to ... - (_bfd_read_unsigned_leb128): ... this. - (read_signed_leb128): Rename to ... - (_bfd_read_signed_leb128): ... this. - (safe_read_leb128): Rename to ... - (_bfd_safe_read_leb128): ... this. - * libbfd-in.h (read_unsigned_leb128): Rename to ... - (_bfd_read_unsigned_leb128): ... this. - (read_signed_leb128): Rename to ... - (_bfd_read_signed_leb128): ... this. - (safe_read_leb128): Rename to ... - (_bfd_safe_read_leb128): ... this. - * libbfd.h: Renegerate. - -2017-02-16 Andrew Burgess - - * dwarf2.c (_bfd_dwarf2_find_nearest_line): Perform symbol lookup - before trying to fine matching file and line information. - -2017-02-16 Andrew Burgess - - * dwarf2.c (struct dwarf2_debug): Add orig_bfd member. - (_bfd_dwarf2_slurp_debug_info): If stashed debug information does - not match current bfd, then reload debug information. Record bfd - we're loading debug info for in the stash. If we have debug - informatin in the cache then perform section placement before - returning. - -2017-02-16 Alan Modra - - PR 21000 - * elf-bfd.h (struct elf_backend_data): Add no_page_alias. - * elfxx-target.h (elf_backend_no_page_alias): Define. - (elfNN_bed): Init new field. - * elf.c (assign_file_positions_for_load_sections): If no_page_alias - ensure PT_LOAD segment starts on a new page. - * elf32-hppa.c (elf_backend_no_page_alias): Define. - -2017-02-16 Alan Modra - - PR 21132 - * elf32-hppa.c (allocate_plt_static): Allocate space for relocs - if pic. - -2017-02-16 Jiong Wang - - * bfd.c (BFD_FLAGS_SAVED): Add BFD_LINKER_CREATED. - * bfd-in2.h: Regenerated. - -2017-02-15 H.J. Lu - - PR ld/21168 - * elf32-i386.c (elf_i386_relocate_section): Allow - "lea foo@GOT, %reg" in PIC. - -2017-02-15 H.J. Lu - - PR ld/20244 - * elf32-i386.c (elf_i386_relocate_section): Properly get IFUNC - symbol name when reporting R_386_GOT32/R_386_GOT32X relocation - error against local IFUNC symbol without a base register for - PIC. - -2017-02-15 Maciej W. Rozycki - - * elf32-ppc.c (ppc_elf_check_relocs): Use `%H:' rather than - `%P: %H:' with `info->callbacks->einfo'. - (ppc_elf_relocate_section): Likewise. - * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. - (ppc64_elf_edit_toc): Likewise. - (ppc64_elf_relocate_section): Likewise. - -2017-02-14 Alan Modra - - * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support - --gc-keep-exported, and test versioned field of sym rather than - looking for @ in name. - -2017-02-13 Palmer Dabbelt - - * elfnn-riscv.c (riscv_global_pointer_value): Change _gp to - __global_pointer$. - -2017-02-13 Nick Clifton - - PR binutils/21151 - * dwarf2.c (_bfd_dwarf2_find_nearest_line): Check for an invalid - unit length field. - -2017-02-07 Andrew Waterman - - * elfnn-riscv.c (riscv_elf_finish_dynamic_sections): Only write PLT - entry size if PLT header is written. - -2017-02-06 Sheldon Lobo - - Fix sparc64 dynamic relocation processing to use the dynamic - symbol count. - * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Use 'dynamic' - to determine if bfd_get_symcount() or bfd_get_dynamic_symcount() - should be used. - -2017-02-03 Nick Clifton - - PR 21096 - * coffcode.h (coff_write_object_contents): Enlarge size of - s_name_buf in order to avoid compile time warning about possible - integer truncation. - * elf32-nds32.c (nds32_elf_ex9_import_table): Mask off lower - 32-bits of insn value before printing into buffer. - -2017-02-02 Maciej W. Rozycki - - * elfxx-mips.c (mips_elf_hash_sort_data): Add - `max_local_dynindx'. - (mips_elf_sort_hash_table): Handle it. - (mips_elf_sort_hash_table_f) : For forced local - symbols bump up `max_local_dynindx' rather than - `max_non_got_dynindx'. - -2017-02-02 Maciej W. Rozycki - - * elfxx-mips.c (mips_elf_hash_sort_data): Convert the - `min_got_dynindx', `max_unref_got_dynindx' and - `max_non_got_dynindx' members to the `bfd_size_type' data type. - (mips_elf_sort_hash_table): Adjust accordingly. - -2017-02-02 Maciej W. Rozycki - - * elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout - to access the hash table. - -2017-02-02 Maciej W. Rozycki - - * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on - non-NULL `htab' to the beginning. - -2017-02-02 Maciej W. Rozycki - - * elflink.c (elf_gc_sweep): Wrap overlong line. - -2017-01-30 Maciej W. Rozycki - - * elfxx-mips.h (_bfd_mips_elf_insn32): Rename prototype to... - (_bfd_mips_elf_linker_flags): ... this. Add another parameter. - * elfxx-mips.c (mips_elf_link_hash_table): Add - `ignore_branch_isa' member. - (mips_elf_perform_relocation): Do not treat an ISA mode mismatch - in branch relocation calculation as an error if - `ignore_branch_isa' has been set. - (_bfd_mips_elf_insn32): Rename to... - (_bfd_mips_elf_linker_flags): ... this. Rename the `on' - parameter to `insn32' and add an `ignore_branch_isa' parameter. - Handle the new parameter. - -2017-01-27 Hans-Peter Nilsson - - * elf32-cris.c (elf_cris_finish_dynamic_symbol): Remove now unused - local variable dynobj. - - PR ld/20995 - * elf32-cris.c (elf_cris_size_dynamic_sections): Handle sdynrelro. - (elf_cris_adjust_dynamic_symbol): Place variables copied into the - executable from read-only sections into sdynrelro. - (elf_cris_finish_dynamic_symbol): Select sreldynrelro for - dynamic relocs in sdynrelro. - (elf_backend_want_dynrelro): Define. - -2017-01-25 Sebastian Huber - - * config.bfd (*-*-rtemsaout*): Mark as removed. - -2017-01-25 Sebastian Huber - - * config.bfd (powerpcle-*-rtems*): Do not mark as removed. - (arm-*-rtems*): Move to (arm*-*-eabi*). - (i[3-7]86-*-rtems*): Move to (i[3-7]86-*-elf*). - (m68-*-rtems*): Move to (m68*-*-elf*). - -2017-01-25 Sebastian Huber - - * config.bfd (*-*-rtemscoff*): Mark as removed. - -2017-01-24 Maciej W. Rozycki - - PR ld/20828 - * elflink.c (bfd_elf_record_link_assignment): Revert last - change and don't ever clear `forced_local'. Set `mark' - unconditionally. - (elf_gc_sweep_symbol_info, elf_gc_sweep_symbol): Reorder within - file. - (elf_gc_sweep): Move the call to `elf_gc_sweep_symbol'... - (bfd_elf_size_dynamic_sections): ... here. - * elf32-ppc.c (ppc_elf_tls_setup): Don't clear `forced_local' - and set `mark' instead in `__tls_get_addr_opt' processing. - * elf64-ppc.c (ppc64_elf_tls_setup): Likewise. - -2017-01-24 Alan Modra - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Merge two cases - where dynamic relocs are preferable. Allow ifunc too. - (ensure_undefweak_dynamic): New function. - (allocate_dynrelocs): Use it here. Move plt handling last and - don't make symbols dynamic, simplifying loop. Only make undef - weak symbols with GOT entries dynamic. Correct condition - for GOT relocs. Handle dynamic relocs on ifuncs. Correct - comments. Remove goto. - (ppc_elf_relocate_section): Correct test for using dynamic - symbol on GOT relocs. Rearrange test for emitting GOT relocs - to suit. Set up explicit tls_index entries and implicit GOT - tls_index entries resolvable at link time for - __tls_get_addr_opt. Simplify test to clear mem for prelink. - * elf64-ppc.c (allocate_got): Correct condition for GOT relocs. - (ensure_undefweak_dynamic): New function. - (allocate_dynrelocs): Use it here. Only make undef weak symbols - with GOT entries dynamic. Remove unnecessary test of - WILL_CALL_FINISH_DYNAMIC_SYMBOL in PLT handling. - (ppc64_elf_relocate_section): Correct test for using dynamic - symbol on GOT relocs. Rearrange test for emitting GOT relocs - to suit. Set up explicit tls_index entries and implicit GOT - tls_index entries resolvable at link time for __tls_get_addr_opt. - Simplify expression to clear mem for prelink. - -2017-01-23 Yury Norov - - * elfnn-aarch64.c: Fix relaxations for ILP32 mode. - -2017-01-20 Jiong Wang - - * elfnn-aarch64.c (elf_aarch64_hash_symbol): New function. - (elf_backend_hash_symbol): Define. - -2017-01-18 Maciej W. Rozycki - - PR ld/20828 - * elflink.c (bfd_elf_record_link_assignment): Clear any - `forced_local' marking for DSO symbols that are not being - provided. - -2017-01-17 Kuan-Lin Chen - - * elfnn-riscv.c (riscv_elf_object_p): New function. - -2017-01-12 H.J. Lu - - PR ld/21038 - * elf64-x86-64.c (elf_x86_64_link_hash_table): Add - plt_bnd_eh_frame. - (elf_x86_64_check_relocs): Create .eh_frame section for the - .plt.bnd section. - (elf_x86_64_size_dynamic_sections): Allocate and initialize - .eh_frame section for the .plt.bnd section. - (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section - for the .plt.bnd section. - -2017-01-12 Nick Clifton - - PR binutils/20876 - * opncls.c (find_separate_debug_file): Add include_dirs - parameter. Only include the directory part of the bfd's filename - in search paths if include_dirs is true. Add a couple of extra - locations for looking for debug files. - ( bfd_follow_gnu_debuglink): Update invocation of - find_separate_debug_file. - (bfd_follow_gnu_debugaltlink): Likewise. - (get_build_id): New function: Finds the build-id of the given bfd. - (get_build_id_name): New function: Computes the name of the - separate debug info file for a bfd, based upon its build-id. - (check_build_id_file): New function: Checks to see if a separate - debug info file exists at the given location, and that its - build-id matches that of the original bfd. - (bfd_follow_build_id_debuglink): New function: Finds a separate - debug info file for a given bfd by using the build-id method. - * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Try using the build-id - method of locating a separate debug info file before using the - debuglink method. - * bfd-in2.h: Regenerate. - -2017-01-11 H.J. Lu - - PR ld/21038 - * elf64-x86-64.c (elf_x86_64_eh_frame_bnd_plt): New. - (elf_x86_64_bnd_arch_bed): Use elf_x86_64_eh_frame_bnd_plt and - elf_x86_64_eh_frame_plt_got. - (elf_x86_64_size_dynamic_sections): Get unwind info from - elf_x86_64_bnd_arch_bed for the BND PLT. - -2017-01-11 Jeremy Soller - - * config.bfd: Add entries for i686-redox and x86_64-redox. - -2017-01-10 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Align .eh_frame section - to 4 bytes. - * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align - .eh_frame section to 4 bytes for x32. - (elf_x86_64_check_relocs): Likewise. - -2017-01-10 H.J. Lu - - PR ld/20830 - * elf32-i386.c (elf_i386_eh_frame_plt_got): New. - (PLT_GOT_FDE_LENGTH): Likewise. - (elf_i386_plt_layout): Add eh_frame_plt_got and - eh_frame_plt_got_size. - (elf_i386_plt): Updated. - (elf_i386_link_hash_table): Add plt_got_eh_frame. - (elf_i386_check_relocs): Create .eh_frame section for .plt.got. - (elf_i386_size_dynamic_sections): Allocate and initialize - .eh_frame section for .plt.got. - (elf_i386_finish_dynamic_sections): Adjust .eh_frame section for - .plt.got. - (elf_i386_nacl_plt): Add FIXME for eh_frame_plt_got and - eh_frame_plt_got_size. - * elf64-x86-64.c (elf_x86_64_eh_frame_plt_got): New. - (PLT_GOT_FDE_LENGTH): Likewise. - (elf_x86_64_backend_data): Add eh_frame_plt_got and - eh_frame_plt_got_size. - (elf_x86_64_arch_bed): Updated. - (elf_x86_64_bnd_arch_bed): Add FIXME for eh_frame_plt_got and - eh_frame_plt_got_size. - (elf_x86_64_nacl_arch_bed): Likewise. - (elf_x86_64_link_hash_table): Add plt_got_eh_frame. - (elf_x86_64_check_relocs): Create .eh_frame section for .plt.got. - (elf_x86_64_size_dynamic_sections): Allocate and initialize - .eh_frame section for .plt.got. - (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section - for .plt.got. - -2017-01-10 H.J. Lu - - * elf32-i386.c (elf_i386_size_dynamic_sections): Set - plt_eh_frame->size to eh_frame_plt_size and use eh_frame_plt. - -2017-01-09 Nick Clifton - - * dwarf2.c (lookup_address_in_function_table): Return early if - there are no functions in the given comp unit, or if the high - address of the last function in the comp unit is less than the - desired address. - -2017-01-09 Nick Clifton - - PR binutils/21013 - * coffgen.c (_bfd_coff_get_external_symbols): Generate an error - message if there are too many symbols to load. - -2017-01-04 James Clarke - - * elf64-alpha.c (elf64_alpha_relax_opt_call): Don't set tsec_free - if relocs are cached. - -2017-01-03 Rich Felker - - PR ld/21017 - * elf32-microblaze.c (microblaze_elf_check_relocs): Add an entry - for R_MICROBLAZE_GOTOFF_64. - -2017-01-03 Nick Clifton - - * mach-o.c (bfd_mach_o_lookup_uuid_command): Fix compile time - warning about using a possibly uninitialised variable. - -2017-01-02 Alan Modra - - * elf32-hppa.c (ensure_undef_weak_dynamic): New function. - (allocate_plt_static, allocate_dynrelocs): Use it. - -2017-01-02 Alan Modra - - * elf-hppa.h (elf_hppa_fake_sections): Set SHF_INFO_LINK for - .PARISC.unwind section. - -2017-01-02 Alan Modra - - PR ld/20989 - * elfxx-sparc.c (gdop_relative_offset_ok): New function. - (_bfd_sparc_elf_relocate_section): Use it to validate GOT - indirect to GOT pointer relative code edit. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/bfd/ChangeLog-2017 b/bfd/ChangeLog-2017 new file mode 100644 index 00000000000..9810eef7fb6 --- /dev/null +++ b/bfd/ChangeLog-2017 @@ -0,0 +1,5727 @@ +2017-12-19 Alan Modra + + PR 22626 + * elflink.c (_bfd_elf_link_renumber_dynsyms): Don't set section + dynindx when section_sym_count is NULL. + (bfd_elf_size_dynamic_sections): Pass NULL section_sym_count to + preliminary _bfd_elf_link_renumber_dynsyms call. + +2017-12-15 Nick Clifton + + PR 22571 + * archive.c (bfd_openr_next_archived_file): Extend the + documentation to note that it is necessary to call + bfd_check_format on the rrturned bfd before using it. + +2017-12-14 Nick Clifton + + * cpu-mt.c: Update address of FSF in copyright notice. + * elf32-m32c.c: Likewise. + * elf32-mt.c: Likewise. + * elf32-rl78.c: Likewise. + * elf32-rx.c: Likewise. + * elf32-rx.h: Likewise. + * elf32-spu.h: Likewise. + * hosts/x86-64linux.h: Likewise. + +2017-12-13 Renlin Li + + * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Disallow + BFD_RELOC_AARCH64_16 in shared object const section. Disallow + BFD_RELOC_AARCH64_32 in shared object const section under LP64. + +2017-12-11 Sangamesh Mallayya + + * bfd.c (bfd_get_sign_extend_vma): Correct typo. + +2017-12-09 Alan Modra + + * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): When emitting + dynamic R_SPARC_RELATIVE for GOT entries, ensure the section + contents are zeroed. + +2017-12-08 Nick Clifton + + * elfcode.h (elf_write_relocs): Check for an empty howto field. + +2017-12-08 Sangamesh Mallayya + + * bfd.c (bfd_get_sign_extend_vma): Handle aix5coff64-rs6000. + +2017-12-06 Alan Modra + + * doc/header.sed: Trim trailing space when splitting lines. + * aix386-core.c, * aout-adobe.c, * aout-arm.c, * aout-cris.c, + * aout-ns32k.c, * aout-target.h, * aout-tic30.c, * aoutf1.h, * aoutx.h, + * arc-got.h, * arc-plt.def, * arc-plt.h, * archive.c, * archive64.c, + * archures.c, * armnetbsd.c, * bfd-in.h, * bfd.c, * bfdio.c, * binary.c, + * bout.c, * cache.c, * cisco-core.c, * coff-alpha.c, * coff-apollo.c, + * coff-arm.c, * coff-h8300.c, * coff-i386.c, * coff-i860.c, + * coff-i960.c, * coff-m68k.c, * coff-m88k.c, * coff-mcore.c, + * coff-mips.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c, + * coff-stgo32.c, * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, + * coff-we32k.c, * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, + * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c, + * coffswap.h, * compress.c, * corefile.c, * cpu-alpha.c, * cpu-arm.c, + * cpu-avr.c, * cpu-bfin.c, * cpu-cr16.c, * cpu-cr16c.c, * cpu-crx.c, + * cpu-d10v.c, * cpu-frv.c, * cpu-ft32.c, * cpu-i370.c, * cpu-i960.c, + * cpu-ia64-opc.c, * cpu-ip2k.c, * cpu-lm32.c, * cpu-m32r.c, + * cpu-mcore.c, * cpu-microblaze.c, * cpu-mips.c, * cpu-moxie.c, + * cpu-mt.c, * cpu-nios2.c, * cpu-ns32k.c, * cpu-or1k.c, * cpu-powerpc.c, + * cpu-pru.c, * cpu-sh.c, * cpu-spu.c, * cpu-v850.c, * cpu-v850_rh850.c, + * cpu-xgate.c, * cpu-z80.c, * dwarf1.c, * dwarf2.c, * ecoff.c, + * ecofflink.c, * ecoffswap.h, * elf-bfd.h, * elf-eh-frame.c, + * elf-hppa.h, * elf-m10200.c, * elf-m10300.c, * elf-s390-common.c, + * elf-strtab.c, * elf-vxworks.c, * elf.c, * elf32-am33lin.c, + * elf32-arc.c, * elf32-arm.c, * elf32-avr.c, * elf32-avr.h, + * elf32-bfin.c, * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, + * elf32-crx.c, * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, + * elf32-epiphany.c, * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, + * elf32-h8300.c, * elf32-hppa.c, * elf32-i386.c, * elf32-i860.c, + * elf32-i960.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32c.c, + * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c, * elf32-m68hc1x.c, + * elf32-m68hc1x.h, * elf32-m68k.c, * elf32-m88k.c, * elf32-mcore.c, + * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c, * elf32-mips.c, + * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, + * elf32-nds32.h, * elf32-nios2.c, * elf32-or1k.c, * elf32-pj.c, + * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c, + * elf32-rx.c, * elf32-s390.c, * elf32-score.c, * elf32-score.h, + * elf32-score7.c, * elf32-sh-symbian.c, * elf32-sh.c, * elf32-sh64.c, + * elf32-sparc.c, * elf32-spu.c, * elf32-tic6x.c, * elf32-tilegx.c, + * elf32-tilegx.h, * elf32-tilepro.c, * elf32-tilepro.h, * elf32-v850.c, + * elf32-vax.c, * elf32-wasm32.c, * elf32-xc16x.c, * elf32-xgate.c, + * elf32-xgate.h, * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c, + * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c, + * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c, * elf64-sparc.c, + * elf64-tilegx.c, * elf64-tilegx.h, * elf64-x86-64.c, * elfcore.h, + * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c, + * elfnn-riscv.c, * elfxx-aarch64.c, * elfxx-aarch64.h, * elfxx-ia64.c, + * elfxx-ia64.h, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-sparc.c, + * elfxx-tilegx.c, * elfxx-x86.c, * elfxx-x86.h, * freebsd.h, * hash.c, + * host-aout.c, * hp300hpux.c, * hppabsd-core.c, * hpux-core.c, + * i386aout.c, * i386linux.c, * i386lynx.c, * i386mach3.c, * i386msdos.c, + * i386netbsd.c, * ieee.c, * ihex.c, * irix-core.c, * libaout.h, + * libbfd-in.h, * libbfd.c, * libcoff-in.h, * libnlm.h, * libpei.h, + * libxcoff.h, * linker.c, * lynx-core.c, * m68k4knetbsd.c, + * m68klinux.c, * m68knetbsd.c, * m88kmach3.c, * mach-o-aarch64.c, + * mach-o-arm.c, * mach-o-i386.c, * mach-o-target.c, * mach-o-x86-64.c, + * mach-o.c, * mach-o.h, * merge.c, * mipsbsd.c, * mmo.c, * netbsd.h, + * netbsd-core.c, * newsos3.c, * nlm-target.h, * nlm32-ppc.c, + * nlm32-sparc.c, * nlmcode.h, * ns32k.h, * ns32knetbsd.c, * oasys.c, + * opncls.c, * pc532-mach.c, * pdp11.c, * pe-arm.c, * pe-i386.c, + * pe-mcore.c, * pe-mips.c, * pe-x86_64.c, * peXXigen.c, * pef.c, + * pef.h, * pei-arm.c, * pei-i386.c, * pei-mcore.c, * pei-x86_64.c, + * peicode.h, * plugin.c, * ppcboot.c, * ptrace-core.c, * reloc.c, + * riscix.c, * rs6000-core.c, * section.c, * som.c, * som.h, + * sparclinux.c, * sparcnetbsd.c, * srec.c, * stabs.c, * sunos.c, + * syms.c, * targets.c, * tekhex.c, * trad-core.c, * vax1knetbsd.c, + * vaxnetbsd.c, * verilog.c, * versados.c, * vms-alpha.c, * vms-lib.c, + * vms-misc.c, * wasm-module.c, * wasm-module.h, * xcofflink.c, + * xsym.c, * xsym.h: Whitespace fixes. + * bfd-in2.h, * libbfd.h, * libcoff.h: Regenerate. + +2017-12-06 Alan Modra + + * elf32-lm32.c (lm32_elf_check_relocs): Skip non-ALLOC sections. + * elf32-m32r.c (m32r_elf_check_relocs): Likewise. + * elf32-nds32.c (nds32_elf_check_relocs): Likewise. + * elf32-or1k.c (or1k_elf_check_relocs): Likewise. + * elf32-sh.c (sh_elf_check_relocs): Likewise. + +2017-12-06 Alan Modra + + * elf32-hppa.c (struct elf32_hppa_dyn_reloc_entry): Delete. Use + struct elf_dyn_relocs throughout file instead. + (elf32_hppa_adjust_dynamic_symbol): Comment tidy. + * elf32-lm32.c (struct elf_lm32_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (lm32_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elf32-m32r.c (struct elf_m32r_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (m32r_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. + Disable -z no-copyreloc too. + * elf32-metag.c (struct elf_metag_dyn_reloc_entry): Delete. Use + struct elf_dyn_relocs throughout file instead. + (elf_metag_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elf32-microblaze.c (struct elf32_mb_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (readonly_dynrelocs): New function. + (microblaze_elf_adjust_dynamic_symbol): Use it. + * elf32-nds32.c (struct elf_nds32_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (nds32_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. + Disable -z no-copyreloc too. + * elf32-nios2.c (struct elf32_nios2_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + * elf32-or1k.c (struct elf_or1k_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (or1k_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elf32-sh.c (struct elf_sh_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (sh_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. + Disable -z no-copyreloc too. + * elf32-tilepro.c (struct tilepro_elf_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (tilepro_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elfnn-riscv.c (struct riscv_elf_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (riscv_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elfxx-sparc.c (struct _bfd_sparc_elf_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (_bfd_sparc_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elfxx-tilegx.c (struct tilegx_elf_dyn_relocs): Delete. Use + struct elf_dyn_relocs throughout file instead. + (tilegx_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Use readonly_dynrelocs. + * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Use readonly_dynrelocs. + +2017-12-06 Alan Modra + + * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Comment tidy. + * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_adjust_dynamic_symbol): Likewise. + +2017-12-04 Alan Modra + + * elfxx-x86.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function. Always prints via minfo and + correct "readonly" to "read-only" in warning message., replacing.. + (_bfd_x86_elf_readonly_dynrelocs): ..this. + (_bfd_x86_elf_size_dynamic_sections): Correct "readonly" to + "read-only" in warning message. Formatting. + (_bfd_x86_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. + * linker.c (bfd_link_hash_traverse): Comment typo fix. + +2017-12-01 H.J. Lu + + * elfxx-x86.c (_bfd_x86_elf_readonly_dynrelocs): Print symbol + for map file output. + +2017-12-01 Alan Modra + + * elf32-hppa.c (maybe_set_textrel): Print symbol for map file output. + * elf32-ppc.c (maybe_set_textrel): Likewise. + * elf64-ppc.c (maybe_set_textrel): Likewise. + * elf32-arm.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing.. + (elf32_arm_readonly_dynrelocs): ..this. + * elf32-lm32.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf32-m32r.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf32-metag.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf32-nds32.c: Delete unnecessary forward declarations. + (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf32-or1k.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf32-s390.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf32-sh.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf32-tic6x.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing.. + (elf32_tic6x_readonly_dynrelocs): ..this. + * elf32-tilepro.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elf64-s390.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elfnn-aarch64.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing.. + (aarch64_readonly_readonly_dynrelocs): ..this. + * elfnn-riscv.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elfxx-sparc.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + * elfxx-tilegx.c (readonly_dynrelocs): New function. + (maybe_set_textrel): New function, replacing old version of.. + (readonly_dynrelocs): ..this. + +2017-12-01 Alan Modra + + PR 22533 + * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Don't do anything + special with non_got_ref for weak aliases. + (elf32_hppa_check_relocs): Tweak setting of non_got_ref. + (elf32_hppa_adjust_dynamic_symbol): When initialising weak aliases, + don't uselessly copy non_got_ref. Clear dyn_relocs instead if + strong symbol is allocated in dynbss. Tidy comments. + (elf32_hppa_relocate_section): Comment fix. + * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't do anything + special with non_got_ref for weak aliases. + (ppc_elf_adjust_dynamic_symbol): When initialising weak aliases, + don't uselessly copy non_got_ref. Clear dyn_relocs instead if + strong symbol is allocated in dynbss. Tidy comments. + * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't do anything + special with non_got_ref for weak aliases. + (ppc64_elf_adjust_dynamic_symbol): When initialising weak aliases, + don't uselessly copy non_got_ref. Clear dyn_relocs instead if + strong symbol is allocated in dynbss. Tidy comments. + +2017-11-29 Nick Clifton + + PR 22509 + * coffcode.h (coff_slurp_reloc_table): Check for a NULL symbol + pointer when processing relocs. + +2017-11-29 Stefan Stroe + + * po/Make-in (datadir): Define as @datadir@. + (localedir): Define as @localedir@. + (gnulocaledir, gettextsrcdir): Use @datarootdir@. + +2017-11-28 Nick Clifton + + PR 22507 + * coffgen.c (_bfd_coff_read_string_table): Check for an excessive + size of the external string table. + +2017-11-28 Nick Clifton + + PR 22506 + * reloc.c (reloc_offset_in_range): Rename to + bfd_reloc_offset_in_range and export. + (bfd_perform_relocation): Rename function invocation. + (bfd_install_relocation): Likewise. + (bfd_final_link_relocate): Likewise. + * bfd-in2.h: Regenerate. + * coff-arm.c (coff_arm_reloc): Use bfd_reloc_offset_in_range. + * coff-i386.c (coff_i386_reloc): Likewise. + * coff-i860.c (coff_i860_reloc): Likewise. + * coff-m68k.c (mk68kcoff_common_addend_special_fn): Likewise. + * coff-m88k.c (m88k_special_reloc): Likewise. + * coff-mips.c (mips_reflo_reloc): Likewise. + * coff-x86_64.c (coff_amd64_reloc): Likewise. + +2017-11-28 H.J. Lu + + * elf-m10300.c (mn10300_elf_check_relocs): Don't set + non_ir_ref_regular. + * elf32-arm.c (elf32_arm_check_relocs): Likewise. + * elf32-bfin.c (bfin_check_relocs): Likewise. + * elf32-cr16.c (cr16_elf_check_relocs): Likewise. + * elf32-cris.c (cris_elf_check_relocs): Likewise. + * elf32-d10v.c (elf32_d10v_check_relocs): Likewise. + * elf32-dlx.c (elf32_dlx_check_relocs): Likewise. + * elf32-fr30.c (fr30_elf_check_relocs): Likewise. + * elf32-frv.c (elf32_frv_check_relocs): Likewise. + * elf32-hppa.c (elf32_hppa_check_relocs): Likewise. + * elf32-i370.c (i370_elf_check_relocs): Likewise. + * elf32-i386.c (elf_i386_check_relocs): Likewise. + * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise. + * elf32-lm32.c (lm32_elf_check_relocs): Likewise. + * elf32-m32c.c (m32c_elf_check_relocs): Likewise. + * elf32-m32r.c (m32r_elf_check_relocs): Likewise. + * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise. + * elf32-m68k.c (elf_m68k_check_relocs): Likewise. + * elf32-mcore.c (mcore_elf_check_relocs): Likewise. + * elf32-metag.c (elf_metag_check_relocs): Likewise. + * elf32-microblaze.c (microblaze_elf_check_relocs): Likewise. + * elf32-moxie.c (moxie_elf_check_relocs): Likewise. + * elf32-msp430.c (elf32_msp430_check_relocs): Likewise. + * elf32-mt.c (mt_elf_check_relocs): Likewise. + * elf32-nios2.c (nios2_elf32_check_relocs): Likewise. + * elf32-or1k.c (or1k_elf_check_relocs): Likewise. + * elf32-ppc.c (ppc_elf_check_relocs): Likewise. + * elf32-rl78.c (rl78_elf_check_relocs): Likewise. + * elf32-s390.c (elf_s390_check_relocs): Likewise. + * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise. + * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise. + * elf32-sh.c (sh_elf_check_relocs): Likewise. + * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise. + * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise. + * elf32-v850.c (v850_elf_check_relocs): Likewise. + * elf32-vax.c (elf_vax_check_relocs): Likewise. + * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise. + * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. + * elf64-aarch64.c (elf64_aarch64_check_relocs): Likewise. + * elf64-alpha.c (elf64_alpha_check_relocs): Likewise. + * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. + * elf64-ia64-vms.c (elf64_ia64_check_relocs): Likewise. + * elf64-mmix.c (mmix_elf_check_relocs): Likewise. + * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. + * elf64-s390.c (elf_s390_check_relocs): Likewise. + * elf64-sh64.c (sh_elf64_check_relocs): Likewise. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Likewise. + * elfnn-ia64.c (elfNN_ia64_check_relocs): Likewise. + * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. + * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. + * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise. + +2017-11-28 Alan Modra + + PR 22471 + * elflink.c (_bfd_elf_merge_symbol): Allow weak symbols to override + early passes over linker script symbols. + * linker.c (_bfd_generic_link_add_one_symbol): Allow symbols to + override early passes over linker script symbols. Clear ldscript_def + on symbol definitions. + +2017-11-28 Alan Modra + + * elf64-mmix.c (bfd_elf64_bfd_copy_link_hash_symbol_type): Define. + +2017-11-28 H.J. Lu + + PR ld/22502 + * elflink.c (_bfd_elf_merge_symbol): Also skip definition from + an IR object. + (elf_link_add_object_symbols): If linker plugin is enabled, set + non_ir_ref_regular on symbols referenced in regular objects so + that linker plugin will get the correct symbol resolution. + +2017-11-27 Szabolcs Nagy + + PR ld/22263 + * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Use + bfd_link_executable instead of bfd_link_pic for TLS. + (elfNN_aarch64_allocate_dynrelocs): Likewise. + (aarch64_can_relax_tls): Likewise. + +2017-11-27 Szabolcs Nagy + + PR ld/22269 + * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Use + UNDEFWEAK_NO_DYNAMIC_RELOC to avoid dynamic GOT relocs. + (elfNN_aarch64_allocate_dynrelocs): Likewise. + +2017-11-24 H.J. Lu + + PR binutils/22444 + * elf.c (elf_read_notes): Add an argument for note aligment. + (elf_parse_notes): Likewise. + (_bfd_elf_make_section_from_shdr): Pass section aligment to + elf_parse_notes. + (bfd_section_from_phdr): Pass segment aligment to elf_read_notes. + (elf_parse_notes): Add an argument for note aligment. Use + ELF_NOTE_DESC_OFFSET to get the offset of the note descriptor. + Use ELF_NOTE_NEXT_OFFSET to get the offset of the next note + entry. + (elf_read_notes): Add an argument for note aligment and pass it + to elf_parse_notes. + +2017-11-23 Alan Modra + + * elf32-hppa.c (pc_dynrelocs): Define. + (elf32_hppa_copy_indirect_symbol): Don't copy dyn_relocs to weakdefs. + (alias_readonly_dynrelocs): New function. + (elf32_hppa_adjust_dynamic_symbol): Don't clear non_got_ref to + indicate dyn_relocs should be discarded, discard them here. + Use alias_readonly_dynrelocs. + (allocate_dynrelocs): Don't test or clear non_got_ref. + (elf32_hppa_relocate_section): Simplify test for dynamic relocs. + * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't copy dyn_relocs + to weakdefs. + (alias_readonly_dynrelocs, pc_dynrelocs): New functions. + (ppc_elf_adjust_dynamic_symbol): Don't clear non_got_ref to + indicate dyn_relocs should be discarded, discard them here. + Use alias_readonly_dynrelocs. + (allocate_dynrelocs): Don't test or clear non_got_ref. + (ppc_elf_relocate_section): Simplify test for dynamic relocs. + +2017-11-23 Alan Modra + + * elf64-ppc.c (struct ppc_link_hash_entry): Delete weakref field. + (ppc64_elf_copy_indirect_symbol): Don't set weakref. + (alias_readonly_dynrelocs): Use u.alias rather than weakref. + (ppc64_elf_adjust_dynamic_symbol): Don't use + alias_readonly_dynrelocs for function symbols. + +2017-11-23 Alan Modra + + * elf-bfd.h (struct elf_link_hash_entry): Add is_weakalias. + Rename u.weakdef to u.alias and update comment. + (weakdef): New static inline function. + * elflink.c (bfd_elf_record_link_assignment) Test is_weakalias + rather than u.weakdef != NULL, and use weakdef function. + (_bfd_elf_adjust_dynamic_symbol): Likewise. + (_bfd_elf_fix_symbol_flags): Likewise. Clear is_weakalias on + all aliases if def has been overridden in a regular object, not + u.weakdef. + (elf_link_add_object_symbols): Delete new_weakdef flag. Test + is_weakalias and use weakdef. Set is_weakalias and circular + u.alias. Update comments. + (_bfd_elf_gc_mark_rsec): Test is_weakalias rather than + u.weakdef != NULL and use weakdef function. + * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Test + is_weakalias rather than u.weakdef != NULL and use weakdef + function. Assert that def is strong defined. + * elf32-arc.c (elf_arc_adjust_dynamic_symbol): Likewise. + * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. + * elf32-bfin.c (elf32_bfinfdpic_adjust_dynamic_symbol): Likewise. + (bfin_adjust_dynamic_symbol): Likewise. + * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise. + * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. + * elf32-frv.c (elf32_frvfdpic_adjust_dynamic_symbol): Likewise. + * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. + * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. + * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise. + * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. + * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. + * elf32-metag.c (elf_metag_adjust_dynamic_symbol): Likewise. + * elf32-microblaze.c (microblaze_elf_adjust_dynamic_symbol): Likewise. + * elf32-nds32.c (nds32_elf_adjust_dynamic_symbol): Likewise. + * elf32-nios2.c (nios2_elf32_adjust_dynamic_symbol): Likewise. + * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Likewise. + * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. + * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. + * elf32-score.c (s3_bfd_score_elf_adjust_dynamic_symbol): Likewise. + * elf32-score7.c (s7_bfd_score_elf_adjust_dynamic_symbol): Likewise. + * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. + * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise. + * elf32-tilepro.c (tilepro_elf_gc_mark_hook): Likewise. + (tilepro_elf_adjust_dynamic_symbol): Likewise. + * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. + * elf32-xtensa.c (elf_xtensa_adjust_dynamic_symbol): Likewise. + * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Likewise. + * elf64-hppa.c (elf64_hppa_adjust_dynamic_symbol): Likewise. + * elf64-ia64-vms.c (elf64_ia64_adjust_dynamic_symbol): Likewise. + * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise. + (ppc64_elf_adjust_dynamic_symbol): Likewise. + * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. + * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_adjust_dynamic_symbol): Likewise. + * elfnn-ia64.c (elfNN_ia64_adjust_dynamic_symbol): Likewise. + * elfnn-riscv.c (riscv_elf_adjust_dynamic_symbol): Likewise. + * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Likewise. + (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. + * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): Likewise. + (tilegx_elf_adjust_dynamic_symbol): Likewise. + * elfxx-x86.c (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. + +2017-11-21 Alan Modra + + * elf-bfd.h (elf_symbol_from): Check for NULL symbol bfd. + * elfcode.h (elf_slurp_reloc_table_from_section): Add FIXME comment. + +2017-11-20 Nick Clifton + + PR 22450 + * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Skip + objects without a GNU_PROPERTY note section when looking for a bfd + onto which notes can be accumulated. + +2017-11-20 Alan Modra + + PR 22451 + PR 22460 + * elf.c (_bfd_elf_init_reloc_shdr): Delete "sec_hdr" parameter + and leave rel_hdr->sh_flags zero. Update calls. + (bfd_elf_set_group_contents): Check input rel/rela SHF_GROUP + flag when !gas before adding rel/rela section to group. Set + output rel/rela SHF_GROUP flags. + +2017-11-18 Jim Wilson + + * elfnn-riscv.c (_bfd_riscv_relax_align): Add space between alignment + and to in error message. + +2017-11-17 H.J. Lu + + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Pass + "%F%P:", instead of "%F:", to linker callback in case of error. + +2017-11-16 Nick Clifton + + PR 22421 + * elf.c (elfcore_grok_netbsd_procinfo): Check that the note is big enough. + (elfcore_grok_openbsd_procinfo): Likewise. + (elfcore_grok_nto_status): Likewise. + +2017-11-16 Nick Clifton + + * merge.c (sec_merge_emit): Always create padding buffer. Add + asserts to make sure that the buffer is long enough. + +2017-11-15 Alan Modra + + * bfd.c (union _bfd_doprnt_args): Add "Bad". + (_bfd_doprnt): Handle more flags. + (_bfd_doprnt_scan): Likewise. Tidy setting of args array. + (error_handler_internal): Init args type to Bad. + +2017-11-14 Alan Modra + + PR 22431 + * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Warn on discarding + non-empty dynamic section. + (ppc_build_one_stub): Take elf_gp from output bfd, not output + section owner. + (ppc_size_one_stub, ppc64_elf_next_toc_section): Likewise. + +2017-11-14 Alan Modra + + * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for user + .eh_frame info. + +2017-11-13 Jan Beulich + + * coff-tic80.c (COFF_ENCODE_ALIGNMENT, COFF_DECODE_ALIGNMENT): + Define. + * coffcode.h (coff_set_alignment_hook): Drop tic80 special case. + (coff_write_object_contents): Likewise. Issue diagnostic for too + large alignment. + +2017-11-12 H.J. Lu + + PR ld/22423 + * elf.c (_bfd_elf_map_sections_to_segments): Remove PF_X from + PT_PHDR segment. + +2017-11-12 Alan Modra + + * elflink.c (elf_link_add_object_symbols): Ignore anything but + defined and defweak symbols when setting up weakdefs. + +2017-11-12 Alan Modra + + * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Set non_got_ref + to keep dyn_relocs, clear to discard. Comment. + (allocate_dynrelocs): Always clear non_got_ref when clearing + dyn_relocs in non-pic case. Invert non_got_ref test. Also test + dynamic_adjusted and ELF_COMMON_DEF_P. Move code deleting + dyn_relocs on undefined syms to handle for non-pic too. + (elf32_hppa_relocate_section): Simplify test for non-pic dyn relocs. + * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Set non_got_ref + to keep dyn_relocs, clear to discard. Comment. + (allocate_dynrelocs): Always clear non_got_ref when clearing + dyn_relocs in non-pic case. Invert non_got_ref test. Also test + dynamic_adjusted and ELF_COMMON_DEF_P. Move code deleting + dyn_relocs on undefined syms to handle for non-pic too. + (ppc_elf_relocate_section): Simplify test for non-pic dyn relocs. + * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Discard + dyn_relocs here. Don't bother setting non_got_ref. Comment. + (allocate_dynrelocs): Delete special handling of non-pic ELFv2 + ifuncs. Move code deleting dyn_relocs on undefined symbols to + handle for non-pic too. Don't test non_got_ref. Do test + dynamic_adjusted and ELF_COMMON_DEF_P. + +2017-11-08 Djordje Todorovic + + * elf32-mips.c (elf32_mips_grok_psinfo): Extract core->pid. + * elf64-mips.c (elf64_mips_grok_psinfo): Likewise. + * elfn32-mips.c (elf32_mips_grok_psinfo): Likewise. + +2017-11-08 Djordje Todorovic + + * elf32-mips.c (elf32_mips_write_core_note): New function. + (elf_backend_write_core_note): New macro. + * elf64-mips.c (elf64_mips_write_core_note): New function. + (elf_backend_write_core_note): New macro. + * elfn32-mips.c (elf32_mips_write_core_note): New function. + (elf_backend_write_core_note): New macro. + +2017-11-07 Alan Modra + + * elf64-ppc.c (ppc64_elf_build_stubs): Correct pluralization in + statistics message. + +2017-11-07 Alan Modra + + * sysdep.h: Formatting, comment fixes. + (gettext, ngettext): Redefine when ENABLE_NLS. + (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. + (_): Define using gettext. + (textdomain, bindtextdomain): Use safer "do nothing". + * hosts/alphavms.h (textdomain, bindtextdomain): Likewise. + (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. + +2017-11-05 Alan Modra + + PR 22397 + * bfd.c (_bfd_doprnt_scan): Check args index before storing, not + after. + +2017-11-05 Alan Modra + + PR 22397 + * bfd.c (union _bfd_doprnt_args): New. + (PRINT_TYPE): Add FIELD arg. Take value from args. + (_bfd_doprnt): Replace ap parameter with args. Adjust all + PRINT_TYPE invocations and reading of format args to suit. + Move "%%" handling out of switch handling args. Support + positional parameters. + (_bfd_doprnt_scan): New function. + (error_handler_internal): Call _bfd_doprnt_scan and read args. + +2017-11-04 Alan Modra + + * elf32-ppc.c (got_entries_needed, got_relocs_needed): New functions. + (allocate_dynrelocs, ppc_elf_size_dynamic_sections): Use them here. + (ppc_elf_relocate_section): Don't output a dynamic relocation + for IE GOT entries in an executable. + * elf64-ppc.c (allocate_got): Trim unnecessary TPREL relocs. + (ppc64_elf_size_dynamic_sections): Likewise. + (ppc64_elf_relocate_section): Likewise. + +2017-11-04 Alan Modra + + * elf32-ppc.c (readonly_dynrelocs): Delete info param. Update all + callers. Don't bother with SEC_ALLOC test. Return section pointer. + Move minfo call to.. + (maybe_set_textrel): ..here. + * elf64-ppc.c (readonly_dynrelocs): Return section pointer. + (maybe_set_textrel): Call minfo to print textrel warning to map file. + +2017-11-04 Alan Modra + + * elf32-hppa.c (enum _tls_type): Move. + (struct elf32_hppa_link_hash_entry): Make tls_type a bitfield. + (elf32_hppa_check_relocs): Set DF_STATIC_TLS only for shared libraries. + Tidy tls_type handling. Set symbol tls_type for GOT_TLS_LDM too. + (got_entries_needed, got_relocs_needed): New functions. + (allocate_dynrelocs): Use them. + (elf32_hppa_size_dynamic_sections): Likewise. + (elf32_hppa_relocate_section): Delete bogus FIXME. Formatting. + Correct code emitting relocs on GD/IE got entries. Report an + error when a symbol has both normal and TLS GOT relocs. + +2017-11-04 Alan Modra + + PR 22394 + * elf32-hppa.c (elf32_hppa_check_relocs): Don't create dyn_relocs + for plabels when non-pic. + (maybe_set_textrel): New function. + (readonly_dynrelocs): Move and rewrite. + (elf32_hppa_adjust_dynamic_symbol): Use it. Don't create copy + relocs when def_regular or -z nocopyreloc. Handle non_got_ref + for functions. Expand non_got_ref comments. + (elf32_hppa_size_dynamic_sections): Use maybe_set_textrel. + +2017-11-03 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Set plt.refcount to 1. + Don't use func_pointer_refcount. Don't set plt.refcount nor + non_got_ref for function pointer reference. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Don't use + func_pointer_refcount. + (_bfd_x86_elf_copy_indirect_symbol): Don't copy + func_pointer_refcount. + (_bfd_x86_elf_hide_symbol): Don't use func_pointer_refcount. + * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Likewise. + (elf_x86_link_hash_entry): Remove func_pointer_refcount. + +2017-11-03 Mingi Cho + Nick Clifton + + PR 22385 + * coffgen.c (_bfd_coff_get_external_symbols): Check for an + overlarge raw syment count. + (coff_get_normalized_symtab): Likewise. + +2017-11-01 James Bowman + + * archures.c: Add bfd_mach_ft32b. + * cpu-ft32.c: Add arch_info_struct. + * elf32-ft32.c: Add R_FT32_RELAX, SC0, SC1, + DIFF32. + (ft32_elf_relocate_section): Add clauses for R_FT32_SC0, SC1, + DIFF32. + (ft32_reloc_shortable, elf32_ft32_is_diff_reloc) + (elf32_ft32_adjust_diff_reloc_value) + (elf32_ft32_adjust_reloc_if_spans_insn) + (elf32_ft32_relax_delete_bytes, elf32_ft32_relax_is_branch_target) + (ft32_elf_relax_section): New function. + * reloc.c: Add BFD_RELOC_FT32_RELAX, SC0, SC1, DIFF32. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2017-11-01 Nick Clifton + + PR 22376 + * coffcode.h (coff_slurp_line_table): Check for an excessively + large line number count. + +2017-11-01 Nick Clifton + + PR 22373 + * peicode.h (pe_bfd_read_buildid): Revise check for invalid size + and offset in light of further possible bogus values. + +2017-11-01 Alan Modra + + PR 22374 + * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't create a plt + entry when just a dynamic reloc can serve. Ensure no dynamic + relocations when UNDEFWEAK_NO_DYNAMIC_RELOC by setting non_got_ref. + Expand and move the non_got_ref comment. + * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. + +2017-11-01 Nick Clifton + + PR 22369 + * coffgen.c (_bfd_coff_free_symbols): Fail if called on a non-COFF + file. + * cofflink.c (coff_link_check_archive_element): Skip non-COFF + members of an archive. + +2017-10-31 Nick Clifton + + PR 22373 + * peicode.h (pe_bfd_read_buildid): Check for invalid size and data + offset values. + +2017-10-30 Alan Modra + + * elf32-frv.c (ELF_TARGET_ID): Don't define for generic + elf target. + + * elflink.c (elf_gc_sweep): Test elf_object_id in addition to + relocs_compatible. + (bfd_elf_gc_sections): Likewise. + +2017-10-30 Alan Modra + + PR 22269 + * elf32-hppa.c (elf32_hppa_check_relocs): Move SEC_ALLOC test to + ensure non_got_ref is not set due to debug references. + (elf32_hppa_adjust_dynamic_symbol): Tidy plabel handling. Use + SYMBOL_CALLS_LOCAL and UNDEFWEAK_NO_DYNAMIC_RELOC when determining + need for a plt entry. + (allocate_dynrelocs): Similarly for got entries. Tidy code discarding + dynamic relocs when pic. Remove bogus code attempting to handle + commons. + (elf32_hppa_relocate_section): Similarly. Delete resolved_to_zero + and simplify. + (elf32_hppa_finish_dynamic_symbol): Use UNDEFWEAK_NO_DYNAMIC_RELOC + and SYMBOL_REFERENCES_LOCAL in GOT handling. + +2017-10-28 Alan Modra + + PR 22300 + * elflink.c (_bfd_elf_merge_symbol): Remove relocs_compatible check. + * elf32-hppa.c (elf_backend_relocs_compatible): Define. + * elf32-ppc.c (elf_backend_relocs_compatible): Define. + * elf64-ppc.c (elf_backend_relocs_compatible): Define. + +2017-10-25 Alan Modra + + * archive.c (_bfd_compute_and_write_armap): Match "__gnu_lto_slim" + optionally prefixed with "_". + * linker.c (_bfd_generic_link_add_one_symbol): Likewise. + +2017-10-24 Andrew Waterman + + * elfnn-riscv.c (_bfd_riscv_relax_lui): Don't relax to c.lui + when rd is x0. + +2017-10-24 Renlin Li + + PR ld/21703 + * elflink.c (_bfd_elf_merge_symbol): Handle multiple definition case. + +2017-10-23 Nick Clifton + + PR 22319 + * elflink.c (elf_link_output_extsym): Keep global undefined + symbols if they have been marked as needed. + +2017-10-23 Maciej W. Rozycki + + * elfn32-mips.c (mips_elf_n32_mkobject): New prototype and + function. + (bfd_elf32_mkobject): Use `mips_elf_n32_mkobject' rather than + `_bfd_mips_elf_mkobject'. + +2017-10-22 Hans-Peter Nilsson + + PR gas/22304 + * config.bfd (cris-*-* | crisv32-*-*): Require a 64-bit BFD. + +2017-10-19 Palmer Dabbelt + + * elfnn-riscv.c (riscv_pcgp_hi_reloc): New structure. + (riscv_pcgp_lo_reloc): Likewise. + (riscv_pcgp_relocs): Likewise. + (riscv_init_pcgp_relocs): New function. + (riscv_free_pcgp_relocs): Likewise. + (riscv_record_pcgp_hi_reloc): Likewise. + (riscv_record_pcgp_lo_reloc): Likewise. + (riscv_delete_pcgp_hi_reloc): Likewise. + (riscv_use_pcgp_hi_reloc): Likewise. + (riscv_record_pcgp_lo_reloc): Likewise. + (riscv_find_pcgp_lo_reloc): Likewise. + (riscv_delete_pcgp_lo_reloc): Likewise. + (_bfd_riscv_relax_pc): Likewise. + (_bfd_riscv_relax_section): Handle R_RISCV_PCREL_* relocations + via the new functions above. + +2017-10-19 Palmer Dabbelt + + * elfnn-riscv.c (R_RISCV_DELETE): New define. + (_bfd_riscv_relax_delete): New function. + (perform_relocation): Handle R_RISCV_DELETE. + (_bfd_riscv_relax_section): Likewise. + +2017-10-19 H.J. Lu + + PR ld/22263 + * elfxx-tilegx.c (tilegx_elf_tls_transition): Replace + bfd_link_pic with !bfd_link_executable, !bfd_link_pic with + bfd_link_executable for TLS check. + (tilegx_elf_check_relocs): Likewise. + (allocate_dynrelocs): Likewise. + (tilegx_elf_relocate_section): Likewise. + +2017-10-19 H.J. Lu + + PR ld/22263 + * elf32-tilepro.c (tilepro_elf_tls_transition): Replace + bfd_link_pic with !bfd_link_executable, !bfd_link_pic with + bfd_link_executable for TLS check. + (tilepro_elf_check_relocs): Likewise. + (allocate_dynrelocs): Likewise. + (tilepro_elf_relocate_section): Likewise. + +2017-10-19 H.J. Lu + + PR ld/22263 + * elfxx-sparc.c (sparc_elf_tls_transition): Replace + bfd_link_pic with !bfd_link_executable, !bfd_link_pic with + bfd_link_executable for TLS check. + (_bfd_sparc_elf_check_relocs): Likewise. + (allocate_dynrelocs): Likewise. + (_bfd_sparc_elf_relocate_section): Likewise. + +2017-10-18 H.J. Lu + + * elf32-tilepro.c (tilepro_elf_gc_mark_hook): Call + _bfd_generic_link_add_one_symbol to mark __tls_get_addr. + * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): Likewise. + +2017-10-17 H.J. Lu + + * elf32-microblaze.c (microblaze_elf_check_relocs): Check for + indirect and warning symbols. + +2017-10-17 Alan Modra + + PR 22307 + * elf-properties.c (_bfd_elf_parse_gnu_properties): Compare datasz + against size left rather than comparing pointers. Reorganise loop. + +2017-10-17 Alan Modra + + PR 22306 + * aoutx.h (aout_get_external_symbols): Handle stringsize of zero, + and error for any other size that doesn't cover the header word. + +2017-10-16 H.J. Lu + + * elf-bfd.h (elf_backend_data): Remove gc_sweep_hook. + * elf32-arm.c (elf32_arm_gc_sweep_hook): Removed. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-bfin.c (bfin_gc_sweep_hook): Likewise. + (bfinfdpic_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-cr16.c (elf32_cr16_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-lm32.c (lm32_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-m68k.c (elf_m68k_got_entry): Remove elf_m68k_gc_sweep_hook + from comments. + (elf_m68k_remove_got_entry_type): Removed. + (elf_m68k_find_got_entry_ptr): Likewise. + (elf_m68k_remove_got_entry): Likewise. + (elf_m68k_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-mcore.c (mcore_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-metag.c (elf_metag_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-microblaze.c (elf_backend_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-mips.c (elf_backend_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-nds32.c (nds32_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-nios2.c (nios2_elf32_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-or1k.c (or1k_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-ppc.c (ppc_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-sparc.c (elf_backend_gc_sweep_hook): Likewise. + * elf32-tic6x.c (elf32_tic6x_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-tilegx.c (elf_backend_gc_sweep_hook): Likewise. + * elf32-tilepro.c (tilepro_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf64-alpha.c (elf64_alpha_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf64-mips.c (elf_backend_gc_sweep_hook): Likewise. + * elf64-mmix.c (mmix_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf64-ppc.c (elf_backend_gc_sweep_hook): Likewise. + (ppc64_elf_gc_sweep_hook): Likewise. + * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elf64-sparc.c (elf_backend_gc_sweep_hook): Likewise. + * elf64-tilegx.c (elf_backend_gc_sweep_hook): Likewise. + * elflink.c (elf_link_add_object_symbols): Don't call + _bfd_elf_link_check_relocs here. + (gc_sweep_hook_fn): Removed. + (elf_gc_sweep): Remove gc_sweep_hook. + * elfnn-aarch64.c (elfNN_aarch64_gc_sweep_hook): Removed. + (elf_backend_gc_sweep_hook): Likewise. + * elfnn-riscv.c (riscv_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elfxx-mips.c (_bfd_mips_elf_gc_sweep_hook): Likewise. + * elfxx-mips.h (_bfd_mips_elf_gc_sweep_hook): Likewise. + (elf_backend_gc_sweep_hook): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_gc_sweep_hook): Likewise. + * elfxx-sparc.h (_bfd_sparc_elf_gc_sweep_hook): Likewise. + * elfxx-target.h (elf_backend_gc_sweep_hook): Likewise. + (elfNN_bed): Remove elf_backend_gc_sweep_hook. + * elfxx-tilegx.c (tilegx_elf_gc_sweep_hook): Removed. + * elfxx-tilegx.h (tilegx_elf_gc_sweep_hook): Likewise. + +2017-10-14 H.J. Lu + + * elf32-i386.c (elf_i386_backend_data): Removed. + (get_elf_i386_backend_data): Likewise. + (elf_i386_arch_bed): Replace elf_i386_backend_data with + elf_x86_backend_data. + (elf_i386_get_synthetic_symtab): Likewise. + (elf_i386_nacl_arch_bed): Likewise. + (elf_i386_vxworks_arch_bed): Likewise. + (elf_i386_relocate_section): Check target_os instead of + is_vxworks. + (elf_i386_finish_dynamic_symbol): Likewise. + (elf_i386_finish_dynamic_sections): Use htab->plt0_pad_byte. + Check target_os instead of is_vxworks. + (elf_i386_link_setup_gnu_properties): Remove normal_target and + is_vxworks. Initialize plt0_pad_byte. + * elf64-x86-64.c (elf_x86_64_backend_data); Removed. + (get_elf_x86_64_arch_data): Likewise. + (get_elf_x86_64_backend_data): Likewise. + (elf_x86_64_arch_bed): Replace elf_x86_64_backend_data with + elf_x86_backend_data. + (elf_x86_64_get_synthetic_symtab): Likewise. + (elf_x86_64_nacl_arch_bed): Likewise. + (elf_x86_64_link_setup_gnu_properties): Remove is_vxworks and + normal_target. Initialize plt0_pad_byte. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check target_os + instead of is_vxworks. + (_bfd_x86_elf_size_dynamic_sections): Likewise. + (_bfd_x86_elf_finish_dynamic_sections): Likewise. + (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. + (_bfd_x86_elf_link_hash_table_create): Initialize target_os. + (_bfd_x86_elf_link_setup_gnu_properties): Remove is_vxworks. + Update normal_target. Set up plt0_pad_byte. Check target_os + instead of is_vxworks. + * elfxx-x86.h (elf_x86_target_os): New. + (elf_x86_backend_data): Likewise. + (get_elf_x86_backend_data): Likewise. + (elf_x86_link_hash_table): Remove is_vxworks. Add plt0_pad_byte + and target_os. + (elf_x86_init_table): Remove normal_target and is_vxworks. Add + plt0_pad_byte. + +2017-10-14 H.J. Lu + + * elf32-i386.c (elf_i386_finish_dynamic_sections): Call + _bfd_x86_elf_finish_dynamic_sections. + * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Likewise. + * elfxx-x86.c (_bfd_x86_elf_finish_dynamic_sections): New + function. + * elfxx-x86.h (_bfd_x86_elf_finish_dynamic_sections): New + prototype. + +2017-10-14 H.J. Lu + + PR ld/21384 + * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't + hide symbol which was forced to be dynamic. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-cris.c (cris_elf_relocate_section): Don't generate + dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (cris_elf_check_relocs): Don't allocate dynamic relocation + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-sh.c (allocate_dynrelocs): Discard dynamic relocations + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (sh_elf_relocate_section): Don't generate dynamic relocation if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-s390.c (allocate_dynrelocs): Discard dynamic + relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (elf_s390_relocate_section): Don't generate dynamic relocation + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + * elf64-s390.c (allocate_dynrelocs): Discard dynamic + relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (elf_s390_relocate_section): Don't generate dynamic relocation + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-nios2.c (nios2_elf32_relocate_section): Don't generate + dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (allocate_dynrelocs): Discard dynamic relocations if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-microblaze.c (microblaze_elf_relocate_section): Don't + generate dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is + true. + (allocate_dynrelocs): Discard dynamic relocations if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-m68k.c (elf_m68k_check_relocs): Don't allocate dynamic + relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (elf_m68k_adjust_dynamic_symbol): Don't make symbol dynamic if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (elf_m68k_relocate_section): Don't generate dynamic relocation + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-hppa.c (ensure_undef_dynamic): Don't make undefined + symbol dynamic if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (allocate_dynrelocs): Discard dynamic relocations if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (elf32_hppa_relocate_section): Don't generate dynamic + relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elfnn-ia64.c (elfNN_ia64_check_relocs): Don't allocate + dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (allocate_fptr): Don't allocate function pointer if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (allocate_dynrel_entries): Don't allocate dynamic relocation + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (set_got_entry): Don't set GOT entry if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (set_pltoff_entry): Don't set PLTOFF entry if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (elfNN_ia64_relocate_section): Don't install dynamic relocation + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elfxx-mips.c (mips_elf_calculate_relocation): Don't generate + dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (allocate_dynrelocs): Don't allocate dynamic relocations if + UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-arm.c (elf32_arm_final_link_relocate): Don't generate + dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (allocate_dynrelocs_for_symbol): Discard dynamic relocations + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elf32-tilepro.c (allocate_dynrelocs): Discard dynamic + relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (tilepro_elf_relocate_section): Don't generate dynamic + relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + * elfxx-tilegx.c (allocate_dynrelocs): Discard dynamic + relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + (tilegx_elf_relocate_section): Don't generate dynamic + relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + PR ld/22269 + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Don't + generate dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is + true. + (elfNN_aarch64_allocate_dynrelocs): Discard dynamic relocations + if UNDEFWEAK_NO_DYNAMIC_RELOC is true. + +2017-10-14 H.J. Lu + + * elf32-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Moved to ... + * elf-bfd.h (UNDEFWEAK_NO_DYNAMIC_RELOC): Here. + * elf64-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Removed. + +2017-10-12 James Bowman + + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * elf32-ft32.c: Add HOWTO R_FT32_15. + * reloc.c: Add BFD_RELOC_FT32_15. + +2017-10-12 Nick Clifton + + * reloc.c (enum bfd_reloc_status): Start values at 2. + * bfd-in2.h: Regenerate. + * elfnn-aarch64.c (aarch64_relocate): Invert sense of function, so + that a TRUE return indicates success. Compare the result of + calling _bfd_aarch64_elf_put_addend against bfd_reloc_ok. + (build_one_stub): Change sense of tests against aarch64_relocate + return value. + (elfNN_aarch64_tls_relax): Return bfd_reloc_notsupported, rather + than FALSE, when an error is detected. + (elfNN_aarch64_final_link_relocate): Likewise. + +2017-10-12 H.J. Lu + + * elf32-i386.c (elf_backend_hide_symbol): New. + * elf64-x86-64.c (elf_backend_hide_symbol): Likewise. + * elfxx-x86.c (_bfd_x86_elf_hide_symbol): Likewise. + * elfxx-x86.h (_bfd_x86_elf_hide_symbol): Likewise. + +2017-10-12 Alan Modra + + * elflink.c (_bfd_elf_adjust_dynamic_symbol): Call + elf_backend_hide_symbol, not _bfd_elf_link_hash_hide_symbol. + (bfd_elf_define_start_stop): Likewise. + +2017-10-12 Alan Modra + + * elf32-nds32.c (nds32_elf_size_dynamic_sections): Set .interp + when executable rather than non-PIC. + * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise. + * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise. + +2017-10-11 Maciej W. Rozycki + + * elf-bfd.h (elf_backend_data): Add `linux_prpsinfo64_ugid16' + member. + * elf-linux-core.h (elf_external_linux_prpsinfo64): Rename to... + (elf_external_linux_prpsinfo64_ugid32): ... this. + (swap_linux_prpsinfo32_out): Rename to... + (swap_linux_prpsinfo32_ugid32_out): ... this. + (elf_external_linux_prpsinfo64_ugid16): New structure. + (swap_linux_prpsinfo64_ugid16_out): New function. + * elfxx-target.h [!elf_backend_linux_prpsinfo64_ugid16] + (elf_backend_linux_prpsinfo64_ugid16): Define. + (elfNN_bed): Initialize `linux_prpsinfo64_ugid16' member. + * elf.c (elfcore_write_linux_prpsinfo64): Handle both variants + of the 64-bit Linux core PRPSINFO note. + * elf64-sh64.c (elf_backend_linux_prpsinfo64_ugid16): Define. + +2017-10-11 Maciej W. Rozycki + + * elf-bfd.h (elf_backend_data): Add `linux_prpsinfo32_ugid16' + member. + (elfcore_write_ppc_linux_prpsinfo32): Remove prototype. + * elf32-ppc.c (elfcore_write_ppc_linux_prpsinfo32): Remove. + (elf_external_ppc_linux_prpsinfo32) + (swap_ppc_linux_prpsinfo32_out): Move to... + * elf-linux-core.h (elf_external_linux_prpsinfo32_ugid32) + (swap_linux_prpsinfo32_ugid32_out): ... these. + (elf_external_linux_prpsinfo32): Rename to... + (elf_external_linux_prpsinfo32_ugid16): ... this. + (swap_linux_prpsinfo32_out): Rename to... + (swap_linux_prpsinfo32_ugid16_out): ... this. + * elfxx-target.h [!elf_backend_linux_prpsinfo32_ugid16] + (elf_backend_linux_prpsinfo32_ugid16): Define. + (elfNN_bed): Initialize `linux_prpsinfo32_ugid16' member. + * elf.c (elfcore_write_linux_prpsinfo32): Handle both variants + of the 32-bit Linux core PRPSINFO note. + * elf32-am33lin.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-arm.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-cris.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-frv.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-i386.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-m32r.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-m68k.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-s390.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-sh.c (elf_backend_linux_prpsinfo32_ugid16): Define. + * elf32-sparc.c (elf_backend_linux_prpsinfo32_ugid16): Define. + +2017-10-11 Maciej W. Rozycki + + * elf-linux-core.h (elf_external_linux_prpsinfo64): Move the + `gap' member ahead of `pr_flag'. + +2017-10-11 Pedro Alves + + * bfd.c (_doprnt): Rename to ... + (_bfd_doprnt): ... this. + (error_handler_internal): Adjust. + +2017-10-10 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Set GOT refcount to 1 + instead of incrementing it. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + +2017-10-10 Renlin Li + + PR ld/21402 + * elf32-arm.c (allocate_dynrelocs_for_symbol): Only make undefined weak + symbols into dynamic. + +2017-10-09 H.J. Lu + + PR ld/22274 + * elfnn-riscv.c (riscv_elf_link_hash_table): Add max_alignment. + (riscv_elf_link_hash_table_create): Initialize max_alignment to + (bfd_vma) -1. + (_bfd_riscv_relax_section): Cache the max alignment of output + sections if possible. + +2017-10-10 Alan Modra + + * elf64-ppc.c (ppc64_elf_before_check_relocs): Set sec_type for + .opd whenever .opd is present and non-zero size. Move code + setting abiversion to/from output file earlier. Only set + u.opd.func_sec when --gc-sections. Read relocs and set up + u.opd.func_sec values here.. + (ppc64_elf_check_relocs): ..rather than here. Simplify opd + section tests. + (ppc64_elf_edit_opd): Don't set sec_type for .opd here. + +2017-10-09 H.J. Lu + + * elf-m10300.c (mn10300_elf_check_relocs): Don't free cached + isymbuf. + +2017-10-09 H.J. Lu + + * elf32-bfin.c (bfin_size_dynamic_sections): Don't create the + .interp section with "ld --no-dynamic-linker". + +2017-10-09 Alan Modra + + PR 22212 + * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free + funcinfo_hash_table and varinfo_hash_table. + +2017-10-08 H.J. Lu + + * elf32-sh.c (readonly_dynrelocs): Dump dynamic relocation + in read-only section with minfo. + (sh_elf_size_dynamic_sections): Likewise. + +2017-10-08 H.J. Lu + + * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Remove + a strayed comment. + +2017-10-08 H.J. Lu + + * elfxx-tilegx.c (tilegx_elf_finish_dynamic_sections): Set + this_hdr.sh_entsize only if section size > 0. + +2017-10-08 H.J. Lu + + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Reformat. + +2017-10-07 H.J. Lu + + * elfxx-sparc.c (readonly_dynrelocs): Dump dynamic relocation + in read-only section with minfo. + (_bfd_sparc_elf_size_dynamic_sections): Likewise. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Update + comments. + +2017-10-06 John Baldwin + + * elf-bfd.h (struct elf_backend_data): Add + `elf_backend_grok_freebsd_prstatus'. + * elf.c (elfcore_grok_freebsd_note): Call + `elf_backend_grok_freebsd_prstatus' to handle NT_PRSTATUS if + present. + * elfn32-mips.c (elf_n32_mips_grok_freebsd_prstatus): New + function. + (elf_backend_grok_freebsd_prstatus): Define. + * elfxx-target.h (elf_backend_grok_freebsd_prstatus): Define. + (elfNN_bed): Initialize `elf_backend_grok_freebsd_prstatus'. + +2017-10-06 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Replace has_got_reloc + and has_non_got_reloc with zero_undefweak. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_newfunc): Initialize + zero_undefweak to 1. + (_bfd_x86_elf_copy_indirect_symbol): Replace has_got_reloc and + has_non_got_reloc with zero_undefweak. + * elfxx-x86.h (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Replace + has_got_reloc and has_non_got_reloc with zero_undefweak. + (elf_x86_link_hash_entry): Likewise. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (COPY_INPUT_RELOC_P): Add "do/while(0);". + (VERIFY_COPY_RELOC): Likewise. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (VERIFY_COPY_RELOC): New. + * elf32-i386.c (elf_i386_finish_dynamic_symbol): Use it. + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (VERIFY_PLT_ENTRY): New. + * elf32-i386.c (elf_i386_finish_dynamic_symbol): Use it. + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (COPY_INPUT_RELOC_P): New. + * elf32-i386.c (elf_i386_relocate_section): Use it. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + +2017-10-06 H.J. Lu + + * elf32-i386.c (X86_SIZE_TYPE_P): New. + (elf_i386_relocate_section): Use GENERATE_DYNAMIC_RELOCATION_P. + * elf64-x86-64.c (X86_SIZE_TYPE_P): New. + (elf_x86_64_relocate_section): Use GENERATE_DYNAMIC_RELOCATION_P. + * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): New. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (POINTER_LOCAL_IFUNC_P): New. + (PLT_LOCAL_IFUNC_P): Likewise. + * elf32-i386.c (elf_i386_relocate_section): Use them. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (GENERATE_RELATIVE_RELOC_P): New. + * elf32-i386.c (elf_i386_relocate_section): Use it. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (RESOLVED_LOCALLY_P): New. + * elf32-i386.c (elf_i386_relocate_section): Use it. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + +2017-10-06 H.J. Lu + + * elf32-i386.c (X86_PCREL_TYPE_P): New. + (elf_i386_check_relocs): Use NEED_DYNAMIC_RELOCATION_P. + * elf64-x86-64.c (IS_X86_64_PCREL_TYPE): Renamed to ... + (X86_PCREL_TYPE_P): This. + (elf_x86_64_check_relocs): Use NEED_DYNAMIC_RELOCATION_P. + Replace IS_X86_64_PCREL_TYPE with X86_PCREL_TYPE_P. + (elf_x86_64_relocate_section): Replace IS_X86_64_PCREL_TYPE with + X86_PCREL_TYPE_P. + * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): New. + +2017-10-06 H.J. Lu + + * elfxx-x86.h (TLS_TRANSITION_IE_TO_LE_P): New. + * elf32-i386.c (elf_i386_tls_transition): Use it. + * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. + +2017-10-05 H.J. Lu + + * elf32-ppc.c (readonly_dynrelocs): Add a link_info argument. + Dump dynamic relocation in read-only section with minfo if + needed. + (ppc_elf_adjust_dynamic_symbol): Pass NULL to readonly_dynrelocs. + (maybe_set_textrel): Likewise. + (ppc_elf_size_dynamic_sections): Dump dynamic relocation in + read-only section with minfo. + +2017-10-05 John Baldwin + + * elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_VFP. + +2017-10-05 H.J. Lu + + * elf32-tilepro.c (readonly_dynrelocs): Dump dynamic relocation + in read-only section with minfo. + (tilepro_elf_size_dynamic_sections): Likewise. + * elfxx-tilegx.c (readonly_dynrelocs): Likewise. + (tilegx_elf_size_dynamic_sections): Likewise. + +2017-10-05 Pedro Alves + + PR 22245 + * bfd.c (bfd_set_error): Revert 2017-10-04 change. Remove + ellipsis parameter. Split out bfd_error_on_input code to.. + (bfd_set_input_error): .. New function. + * archive.c (_bfd_write_archive_contents): Use bfd_set_input_error. + * vms-lib.c (_bfd_vms_lib_write_archive_contents): Likewise. + * bfd-in2.h: Regenerate. + +2017-10-05 Alan Modra + + * elflink.c (elf_link_input_bfd): Correct ctor/dtor in init_array/ + fini_array error value. + +2017-10-05 Alan Modra + + PR 21167 + * elf.c (_bfd_elf_setup_sections): Don't trim reloc sections from + groups. + (_bfd_elf_init_reloc_shdr): Pass sec_hdr, use it to copy SHF_GROUP + flag from section. + (elf_fake_sections): Adjust calls. Exit immediately on failure. + (bfd_elf_set_group_contents): Add associated reloc section indices + to group contents. + +2017-10-04 Alan Modra + + * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't sort or + classify symbols for ELFv2. + +2017-10-04 Pavel I. Kryukov + + PR 22245 + * bfd.c (bfd_set_error): Avoid UB on passing arg to va_start that + undergoes default promotion. + * bfd-in2.h: Regenerate. + +2017-10-02 Alan Modra + + * elf32-ppc.c (ppc_elf_relocate_section): Fix comment typo. + * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. + +2017-10-01 Alan Modra + + PR 21957 + * dwarf2.c (new_line_sorts_after): Remove end_sequence comparison. + (add_line_info): Always put end_sequence last. + +2017-10-01 Alan Modra + + PR 22047 + * dwarf2.c (read_section): Allocate buffer with extra byte for + bfd_simple_get_relocated_section_contents rather than copying + afterwards. + +2017-09-29 Alan Modra + + * merge.c (merge_strings): Return FALSE on malloc failure. + (_bfd_merge_sections): Return failures from record_section and + merge_strings. + +2017-09-28 Alan Modra + + PR 22220 + * elflink.c (_bfd_elf_merge_symbol): Set non_ir_ref_dynamic in + a case where plugin_notice isn't called. + +2017-09-27 Kuan-Lin Chen + + * elf32-nds32.c (nds32_elf_relax_section): Fix a tautological + comparison. + +2017-09-26 H.J. Lu + + PR ld/22199 + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't pass + output_bfd to info->callbacks->minfo. + +2017-09-26 Nick Clifton + + PR 22172 + * elf64-x86-64.c (elf_x86_64_info_to_howto): Do not trigger an + assertion failure if elf_x86_64_rtype_to_howto has already issued + an error message. + +2017-09-26 Alan Modra + + PR 22210 + * dwarf2.c (read_formatted_entries): Use read_attribute_value to + read data. + +2017-09-26 Nick Clifton + + PR 22210 + * dwarf2.c (read_formatted_entries): Fail early if we know that + the loop parsing data entries will overflow the end of the + section. + +2017-09-26 Alan Modra + + PR 22209 + * dwarf2.c (struct comp_unit): Delete sec_info_ptr field. + (find_abstract_instance_name): Calculate DW_FORM_ref_addr relative + to stash->info_ptr_memory, and check die_ref is within that memory. + Set info_ptr_end correctly when another CU is refd. Check die_ref + for DW_FORM_ref4 etc. is within CU. + +2017-09-26 Alan Modra + + PR 22205 + * dwarf2.c (concat_filename): Return "" on NULL filename. + (read_formatted_entries): Init "fe". + (decode_line_info ): Use line_info_add_file_name. + +2017-09-26 Alan Modra + + PR 22204 + * dwarf2.c (decode_line_info): Ensure line_ptr stays within + bounds in inner loop. + +2017-09-25 Alan Modra + + PR 22202 + * dwarf1.c (parse_die): Sanity check pointer against section limit + before dereferencing. + (parse_line_table): Likewise. + +2017-09-25 Alan Modra + + PR 22201 + * dwarf2.c (scan_unit_for_symbols): Ignore DW_AT_name unless it + has string form. + (parse_comp_unit): Likewise. + +2017-09-25 Alan Modra + + PR 22200 + * dwarf2.c (read_formatted_entries): Error on format_count zero. + +2017-09-24 Alan Modra + + PR 22197 + * opncls.c (bfd_get_debug_link_info_1): Properly check that crc is + within section bounds. + +2017-09-24 Alan Modra + + PR 22191 + * dwarf2.c (decode_line_info): Properly free line sequences on error. + +2017-09-24 Alan Modra + + PR 22187 + * dwarf2.c (find_abstract_instance_name): Add orig_info_ptr and + pname param. Return status. Make name const. Don't abort, + return an error. Formatting. Exit if current info_ptr matches + orig_info_ptr. Update callers. + (scan_unit_for_symbols): Start at nesting_level of zero. Make + nested_funcs an array of structs for extensibility. Formatting. + +2017-09-24 Alan Modra + + PR 22186 + * dwarf2.c (decode_line_info): Fail on lh.line_range of zero + rather than dividing by zero. + +2017-09-24 Alan Modra + + PR 22169 + * dwarf2.c (decode_line_info): Correct .debug_line unit_length check. + +2017-09-24 Alan Modra + + PR 22167 + * dwarf2.c (scan_unit_for_symbols): Check u.blk->data is non-NULL. + +2017-09-24 Alan Modra + + PR 22166 + * elf.c (_bfd_elf_slurp_version_tables): Test sh_info on + SHT_GNU_verneed section for sanity. Don't zalloc memory for + verref. + +2017-09-22 H.J. Lu + + PR binutils/22170 + * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Guard against + corrupted PLT. + +2017-09-22 H.J. Lu + + PR binutils/22163 + * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Also return + -1 if bfd_canonicalize_dynamic_reloc returns 0. + +2017-09-22 Pedro Alves + Alan Modra + + * version.h: Add comment. + +2017-09-21 Andreas Arnez + + * elf.c (elfcore_grok_note): For the cases NT_S390_GS_CB and + NT_S390_GS_BC, correct the previously swapped invocations of + elfcore_grok_s390_gs_bc and elfcore_grok_s390_gs_cb. + +2017-09-19 Alan Modra + + PR 21441 + * elf64-ppc.c (ppc64_elf_build_stubs): Don't check glink_eh_frame + size. + +2017-09-19 Alan Modra + + PR 22150 + * elflink.c (bfd_elf_size_dynamic_sections): Garbage collect + symbols before calculating verrefs. Don't renumber dynsyms + after gc. Exclude .gnu.version when zero or one dynsym. + Localize some vars and reindent. + +2017-09-18 H.J. Lu + + PR ld/22148 + * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Check error + return from bfd_canonicalize_dynamic_reloc. + +2017-09-15 Alan Modra + + PR 22116 + * archive.c (bfd_ar_hdr_from_filesystem): Detect when status.st_size + overflows bfd_size_type. + +2017-09-14 H.J. Lu + + PR ld/22135 + * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument + to indicate if conversion is performed. + (elf_i386_check_relocs): Cache section contents and relocations + if conversion is performed. + * elf64-x86-64.c (elf_x86_64_check_relocs): Cache section + contents and relocations if conversion is performed. + +2017-09-14 Nick Clifton + + PR binutils/22113 + * peXXigen.c (pe_print_idata): Extend check for HintName vector + entries. + +2017-09-13 H.J. Lu + + * elfxx-x86.h: Fix a typo in comments. + +2017-09-09 Kamil Rytarowski + + * elf32-nds32.c: Rename __BIT() to N32_BIT(). + +2017-09-09 Alan Modra + + * elf64-ppp.c (plt_stub_pad): Handle positive and negative + plt_stub_align. + +2017-09-09 H.J. Lu + + * elf32-i386.c (elf_i386_relocate_section): Update usage of + UNDEFINED_WEAK_RESOLVED_TO_ZERO. + (elf_i386_finish_dynamic_symbol): Likewise. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_finish_dynamic_symbol): Likewise. + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. + (_bfd_x86_elf_fixup_symbol): Likewise. + +2017-09-09 H.J. Lu + + * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't + check has_non_got_reloc. + +2017-09-09 H.J. Lu + + PR ld/22115 + * elf32-i386.c (elf_i386_convert_load_reloc): Check linker_def. + Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Check + linker_def. Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. + * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Set local_ref + and linker_def on __ehdr_start if it is referenced and not + defined. + (_bfd_x86_elf_link_symbol_references_local): Also set local_ref + and return TRUE when building executable, if a symbol has + non-GOT/non-PLT relocations in text section or there is no + dynamic linker. + * elfxx-x86.h (elf_x86_link_hash_entry): Add linker_def. + +2017-09-08 H.J. Lu + + * elfxx-x86.h: Update comments. + +2017-09-08 H.J. Lu + + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Replace + elf_x86_plt_layout_table with elf_x86_init_table. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): + Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): + Likewise. + * elfxx-x86.h (elf_x86_plt_layout_table): Renamed to ... + (elf_x86_init_table): This. + (_bfd_x86_elf_link_setup_gnu_properties): Replace + elf_x86_plt_layout_table with elf_x86_init_table. + +2017-09-07 H.J. Lu + + * configure.ac (bfd_backends): Don't add elf64-x86-64.lo nor + elf64.lo together with elfxx-x86.lo for 64-bit BFD. + * configure: Regenerated. + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set r_info + and r_sym fields of plt_layout. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): + Likewise. + * elfxx-x86.c (elf_x86_64_is_reloc_section): Remove BFD64 check. + (_bfd_x86_elf_link_hash_table_create): Likewise. Don't set + r_info nor r_sym fields. + (_bfd_x86_elf_link_setup_gnu_properties): Set r_info and r_sym + fields of htab. + * elfxx-x86.h (elf_x86_plt_layout_table): Add r_info and r_sym. + +2017-09-07 Palmer Dabbelt + + * (_bfd_riscv_relax_align): Call bfd_set_error and + print an error message when unable to relax a .align directive. + +2017-09-07 Palmer Dabbelt + + * elfnn-riscv.c (riscv_zero_pcrel_hi_reloc): New function. + (riscv_record_pcrel_hi_reloc): Add absolute argument. + (riscv_elf_relocate_section): Call riscv_zero_pcrel_hi_reloc for + R_RISCV_PCREL_HI20 relocs, and pass the result to + riscv_record_pcrel_hi_reloc. + +2017-09-07 H.J. Lu + + * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument, + r_type_p. Remove the converted argument. Replace + SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. Return + the new relocation type via r_type_p. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol): Likewise. + (need_convert_load): Removed. + (check_relocs_failed): Updated. + (elf_i386_check_relocs): Call elf_i386_convert_load_reloc, + instead of setting need_convert_load. + (_bfd_i386_elf_convert_load): Removed. + * elf64-x86-64.c (need_convert_load): Removed. + (check_relocs_failed): Updated. + (elf_x86_64_convert_load_reloc): Add an argument, r_type_p. + Replace SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. + Return the new relocation type via r_type_p. + (elf_x86_64_check_relocs): Call elf_x86_64_convert_load_reloc, + instead of setting need_convert_load. + (elf_x86_64_check_relocs): Don't check PIC if relocation has + been converted. + (_bfd_x86_64_elf_convert_load): Removed. + (elf_x86_64_relocate_section): Replace SYMBOL_REFERENCES_LOCAL + with SYMBOL_REFERENCES_LOCAL_P. + (elf_x86_64_finish_dynamic_symbol): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Don't + set convert_load. + (_bfd_x86_elf_size_dynamic_sections): Don't call convert_load. + (_bfd_x86_elf_link_symbol_references_local): New function. + * elfxx-x86.h (SYMBOL_REFERENCES_LOCAL_P): New. + (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Replace elf.forced_local with + SYMBOL_REFERENCES_LOCAL_P. + (elf_x86_link_hash_entry): Add local_ref. + (elf_x86_link_hash_table): Remove convert_load. + (_bfd_i386_elf_convert_load): Removed. + (_bfd_x86_64_elf_convert_load): Likewise. + (_bfd_x86_elf_link_symbol_references_local): New. + +2017-09-06 H.J. Lu + + * elf64-x86-64.c (R_X86_64_converted_reloc_bit): New. + (elf_x86_64_info_to_howto): Get the real relocation type by + masking out R_X86_64_converted_reloc_bit. + (elf_x86_64_check_tls_transition): Get the real relocation type + by masking out R_X86_64_converted_reloc_bit. + (elf_x86_64_convert_load_reloc): Set R_X86_64_converted_reloc_bit + instead of setting converted_reloc. + (elf_x86_64_relocate_section): Check R_X86_64_converted_reloc_bit + instead of converted_reloc. Get the real relocation type by + masking out R_X86_64_converted_reloc_bit. + (elf_x86_64_link_setup_gnu_properties): Verify that the value of + R_X86_64_converted_reloc_bit is valid. + * elfxx-x86.h (converted_reloc): Removed. + +2017-09-06 H.J. Lu + + * elf32-i386.c (elf_i386_relocate_section): Don't change r_type + when calling elf_i386_tls_transition. Don't use ELF32_R_TYPE + to get the relocation type again. + * elf64-x86-64.c (elf_x86_64_relocate_section): Don't change + r_type when calling elf_x86_64_tls_transition. Don't use + ELF32_R_TYPE to get the relocation type again. + +2017-09-05 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Properly set + converted_reloc. + +2017-09-05 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Remove the sec + argument. Don't check relocation overflow. Avoid relocation + overflow if --no-relax is used. Set converted_reloc on symbol + if a GOTPCREL relocation is converted. + (elf_x86_64_relocate_section): Issue a fatal error and suggest + --no-relax if GOTPCREL relocation conversion leads to relocation + overflow. + * elfxx-x86.h (elf_x86_link_hash_entry): Add converted_reloc. + +2017-09-05 Alexander Fedotov + Edmar Wienskoski + + PR ld/22071 + * elfxx-x86.c (elf_x86_allocate_dynrelocs): Set tlsdesc_plt + for x86-64 if GOT_TLS_GDESC_P is true. + +2017-09-03 Alan Modra + + PR 22067 + * elfxx-x86.h (elf_x86_hash_table): Check is_elf_hash_table first. + +2017-09-02 H.J. Lu + + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + tls_get_addr for x86-64 in one place. + +2017-09-02 H.J. Lu + + * configure.ac (bfd_backends): Add elf64-x86-64.lo together + with elfxx-x86.lo for 64-bit BFD. + * configure: Regenerated. + +2017-09-02 H.J. Lu + + * elf32-i386.c (elf_i386_convert_load): Renamed to ... + (_bfd_i386_elf_convert_load): This. Remove static. + (elf_i386_size_dynamic_sections): Removed. + (elf_backend_size_dynamic_sections): Likewise. + * elf64-x86-64.c (elf_x86_64_convert_load): Renamed to ... + (_bfd_x86_64_elf_convert_load): This. Remove static. + (elf_x86_64_size_dynamic_sections): Removed. + (elf_backend_size_dynamic_sections): Likewise. + * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): Renamed to ... + (elf_x86_allocate_dynrelocs): This. Make it static. + (_bfd_x86_elf_allocate_local_dynrelocs): Renamed to ... + (elf_x86_allocate_local_dynreloc): This. Make it static. + (elf_i386_is_reloc_section): New function. + (elf_x86_64_is_reloc_section): Likewise. + (_bfd_x86_elf_link_hash_table_create): Initialize convert_load, + is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. + Rearrange got_entry_size initialization. + (_bfd_x86_elf_size_dynamic_sections): New function. + * elfxx-x86.h (elf_x86_link_hash_table): Add convert_load, + is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. + (_bfd_i386_elf_convert_load): New. + (_bfd_x86_64_elf_convert_load): Likewise. + (_bfd_x86_elf_size_dynamic_sections): Likewise. + (elf_backend_size_dynamic_sections): Likewise. + (_bfd_x86_elf_allocate_dynrelocs): Removed. + (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. + +2017-09-02 H.J. Lu + + * elfxx-x86.h (elf_x86_link_hash_table): Rearrange fields and + update comments. + +2017-09-02 H.J. Lu + + * elf32-i386.c (elf_i386_size_dynamic_sections): Set + sgotplt_jump_table_size with elf_x86_compute_jump_table_size. + +2017-09-02 H.J. Lu + + * elf32-i386.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, + PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Moved to ... + * elfxx-x86.h (PLT_CIE_LENGTH, PLT_FDE_LENGTH, + PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Here. + * elf64-x86-64.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, + PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Removed. + +2017-09-02 H.J. Lu + + * elf32-i386.c (elf_i386_allocate_dynrelocs): Removed. + (elf_i386_allocate_local_dynrelocs): Likewise. + (elf_i386_size_dynamic_sections): Replace + elf_i386_allocate_dynrelocs/elf_i386_allocate_local_dynrelocs + with _bfd_x86_elf_allocate_dynrelocs and + _bfd_x86_elf_allocate_local_dynrelocs. + * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Removed. + (elf_x86_64_allocate_local_dynrelocs): Likewise. + (elf_x86_64_size_dynamic_sections): Replace + elf_x86_64_allocate_dynrelocs/elf_x86_64_allocate_local_dynrelocs + with _bfd_x86_elf_allocate_dynrelocs and + _bfd_x86_elf_allocate_local_dynrelocs. + * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): New function. + (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. + * elfxx-x86.h (_bfd_x86_elf_allocate_dynrelocs): New prototype. + (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. + +2017-09-02 H.J. Lu + + * elf32-i386.c (is_i386_elf): Removed. + (elf_i386_check_relocs): Replace is_i386_elf with is_x86_elf. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + * elf64-x86-64.c (is_x86_64_elf): Removed. + (elf_x86_64_check_relocs): Replace is_x86_64_elf with + is_x86_elf. + (elf_x86_64_size_dynamic_sections): Likewise. + (elf_x86_64_relocate_section): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + target_id. + * elfxx-x86.h (elf_x86_link_hash_table): Add target_id. + (is_x86_elf): New. + +2017-09-02 H.J. Lu + + * elf32-i386.c (elf_i386_compute_jump_table_size): Removed. + (elf_i386_allocate_dynrelocs): Replace + elf_i386_compute_jump_table_size with + elf_x86_compute_jump_table_size. + (elf_i386_size_dynamic_sections): Likewise. + * elf64-x86-64.c (elf_x86_64_compute_jump_table_size): Removed. + (elf_x86_64_allocate_dynrelocs): Replace + elf_x86_64_compute_jump_table_size with + elf_x86_compute_jump_table_size. + (elf_x86_64_size_dynamic_sections): Likewise. + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + got_entry_size. + * elfxx-x86.h (elf_x86_link_hash_table): Add got_entry_size. + (elf_x86_compute_jump_table_size): New. + +2017-09-02 H.J. Lu + + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize + sizeof_reloc. + (_bfd_x86_elf_adjust_dynamic_symbol): Use sizeof_reloc. + * elfxx-x86.h (elf_x86_link_hash_table): Add sizeof_reloc. + +2017-09-02 H.J. Lu + + * elf32-i386.c (elf_i386_allocate_dynrelocs): Check VxWorks + with htab->is_vxworks. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + +2017-09-02 H.J. Lu + + * elf32-i386.c (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, + GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, + GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Moved to ... + * elfxx-x86.h (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, + GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, + GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Here. + * elf64-x86-64.c (GOT_TLS_IE, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, + GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Removed. + +2017-09-01 H.J. Lu + + PR ld/22064 + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Check + ELF_COMMON_DEF_P for common symbols. + +2017-09-02 Alan Modra + + * elf-eh-frame.c (offset_adjust): Avoid false positive gcc warning. + * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. + +2017-09-01 H.J. Lu + + * elf32-i386.c (elf_i386_gc_mark_hook): Removed. + (elf_backend_gc_mark_hook): Likewise. + * elf64-x86-64.c (elf_x86_64_gc_mark_hook): Likewise. + (elf_backend_gc_mark_hook): Likewise. + * elfxx-x86.c (_bfd_x86_elf_gc_mark_hook): New function. + * elfxx-x86.h (_bfd_x86_elf_gc_mark_hook): New. + (elf_backend_gc_mark_hook): Likewise. + +2017-09-01 H.J. Lu + + * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Removed. + (elf_backend_adjust_dynamic_symbol): Likewise. + * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. + (elf_backend_adjust_dynamic_symbol): Likewise. + * elfxx-x86.c (_bfd_x86_elf_adjust_dynamic_symbol): New function. + (_bfd_x86_elf_link_setup_gnu_properties): Copy is_vxworks. + * elfxx-x86.h (elf_x86_link_hash_table): Add is_vxworks. + (_bfd_x86_elf_adjust_dynamic_symbol): New. + (elf_backend_adjust_dynamic_symbol): Likewise. + +2017-09-01 H.J. Lu + + * elfxx-x86.h (elf_x86_plt_layout_table): Fix a typo in + comments. + +2017-09-01 H.J. Lu + + * elf32-i386.c (elf_i386_mkobject): Removed. + (bfd_elf32_mkobject): Likewise. + * elf64-x86-64.c (elf_x86_64_mkobject): Likewise. + (bfd_elf64_mkobject): Likewise. + (bfd_elf32_mkobject): Likewise. + * elfxx-x86.c (_bfd_x86_elf_mkobject): New function. + * elfxx-x86.h (_bfd_x86_elf_mkobject): New. + (bfd_elf64_mkobject): Likewise. + (bfd_elf32_mkobject): Likewise. + +2017-09-01 H.J. Lu + + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Updated. + Call _bfd_x86_elf_link_setup_gnu_properties. + * elf64-x86-64.c (elf_x86_lazy_plt_layout): Initialize + pic_plt0_entry and pic_plt_entry fields with the non-PIC PLT + entries. + (elf_x86_64_non_lazy_plt): Likewise. + (elf_x86_64_lazy_bnd_plt): Likewise. + (elf_x86_64_non_lazy_bnd_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_nacl_plt): Likewise. + (elf_x86_64_link_setup_gnu_properties): Updated. Call + _bfd_x86_elf_link_setup_gnu_properties. + * elfxx-x86.c: Include elf-vxworks.h". + (_bfd_x86_elf_link_setup_gnu_properties): New function. + * elfxx-x86.h (elf_x86_lazy_plt_layout): Remove "for i386 only" + comments for pic_plt0_entry and pic_plt_entry. + (elf_x86_non_lazy_plt_layout): Likewise. + (elf_x86_plt_layout_table): New. + (_bfd_x86_elf_link_setup_gnu_properties): Likewise. + +2017-09-01 H.J. Lu + + PR ld/22061 + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Create + .eh_frame section for the second PLT. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Correct + alignment of .eh_frame section for the second PLT. + +2017-09-01 Nick Clifton + + PR 22059 + * dwarf2.c (decode_line_info): Fix test for an overlong line info + structure. + +2017-09-01 Nick Clifton + + PR 22058 + * elf-attrs.c (_bfd_elf_parse_attributes): Ensure that the + attribute buffer is NUL terminated. + +2017-08-31 Nick Clifton + + PR 22047 + * dwarf2.c (read_section): If necessary add a terminating NUL byte + to dwarf string sections. + +2017-08-31 Alan Modra + + * po/SRC-POTFILES.in: Regenerate. + +2017-08-31 Alan Modra + + * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Don't exit early + for a section containing just a terminator. Allow multiple + terminators at end of section. + * elflink.c (bfd_elf_discard_info): Iterate over .eh_frame + sections when not adding alignment. Assert on terminator in + the middle of FDEs. + +2017-08-31 Alan Modra + + PR 21441 + PR 22048 + * elflink.c (bfd_elf_discard_info): Don't pad embedded zero + terminators. + +2017-08-30 H.J. Lu + + * configure.ac (bfd_backends): Add elf64.lo together with + elfxx-x86.lo for 64-bit BFD. + * configure: Regenerated. + +2017-08-31 James Bowman + + * elf32-ft32.c (ft32_elf_howto_table): Use complain_overflow_dont + for R_FT32_18. + +2017-08-31 Alan Modra + + PR binutils/22032 + * opncls.c (bfd_close_all_done): Don't call bfd_cache_close + before _close_and_cleanup. Call iovec->bclose after. + (bfd_close): Remove code common to, and call, bfd_close_all_done. + +2017-08-30 H.J. Lu + + * elf32-i386.c (elf_i386_plt_type): Removed. + (elf_i386_plt): Likewise. + (elf_i386_get_synthetic_symtab): Updated. Call + _bfd_x86_elf_get_synthetic_symtab. + * elf64-x86-64.c (elf_x86_64_plt_type): Removed. + (elf_x86_64_plt): Likewise. + (elf_x86_64_get_synthetic_symtab): Updated. Call + _bfd_x86_elf_get_synthetic_symtab. + * elfxx-x86.c (elf_i386_get_plt_got_vma): New function. + (elf_x86_64_get_plt_got_vma): Likewise. + (elf_i386_valid_plt_reloc_p): Likewise. + (elf_x86_64_valid_plt_reloc_p): Likewise. + (_bfd_x86_elf_get_synthetic_symtab): Likewise. + * elfxx-x86.h (elf_x86_plt_type): New. + (elf_x86_plt): Likewise. + (_bfd_x86_elf_get_synthetic_symtab): Likewise. + +2017-08-30 H.J. Lu + + * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Check + target_id instead of elf_machine_code. + +2017-08-30 H.J. Lu + + * elf32-i386.c (ELF_DYNAMIC_INTERPRETER): Removed. + (elf_i386_lazy_plt_layout): Likewise. + (elf_i386_non_lazy_plt_layout): Likewise. + (elf_i386_plt_layout): Likewise. + (elf_i386_link_hash_table): Likewise. + (elf_i386_next_tls_desc_index): Likewise. + (elf_i386_srelplt2): Likewise. + (elf_i386_plt): Likewise. + (elf_i386_lazy_plt): Likewise. + (elf_i386_non_lazy_plt): Likewise. + (elf_i386_link_hash_table_create): Likewise. + (bfd_elf32_bfd_link_hash_table_create): Likewise. + (elf_i386_lazy_plt): Updated. + (elf_i386_non_lazy_plt): Likewise. + (elf_i386_lazy_ibt_plt): Likewise. + (elf_i386_non_lazy_ibt_plt): Likewise. + (elf_i386_allocate_dynrelocs): Likewise. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + (elf_i386_get_synthetic_symtab): Likewise. + (elf_i386_link_setup_gnu_properties): Likewise. + (elf_i386_nacl_plt): Likewise. + * elf64-x86-64.c (ABI_64_P): Removed. + (ELF64_DYNAMIC_INTERPRETER): Likewise. + (ELF32_DYNAMIC_INTERPRETER): Likewise. + (elf_x86_64_lazy_plt_layout): Likewise. + (elf_x86_64_non_lazy_plt_layout): Likewise. + (elf_x86_64_plt_layout): Likewise. + (elf_x86_64_link_hash_table): Likewise. + (elf_x86_64_plt): Likewise. + (elf_x86_64_lazy_plt): Likewise. + (elf_x86_64_non_lazy_plt): Likewise. + (elf_x86_64_link_hash_table_create): Likewise. + (bfd_elf64_bfd_link_hash_table_create): Likewise. + (bfd_elf32_bfd_link_hash_table_create): Likewise. + (elf_x86_64_lazy_plt): Updated. + (elf_x86_64_non_lazy_plt): Likewise. + (elf_x86_64_lazy_bnd_plt): Likewise. + (elf_x86_64_non_lazy_bnd_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_allocate_dynrelocs): Likewise. + (elf_x86_64_size_dynamic_sections): Likewise. + (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_finish_dynamic_symbol): Likewise. + (elf_x86_64_finish_dynamic_sections): Likewise. + (elf_x86_64_get_synthetic_symtab): Likewise. + (elf_x86_64_link_setup_gnu_properties): Likewise. + (elf_x86_64_nacl_plt): Likewise. + * elfxx-x86.c: Include "objalloc.h", "elf/i386.h" and + "elf/x86-64.h". + (ELF32_DYNAMIC_INTERPRETER): New. + (ELF64_DYNAMIC_INTERPRETER): Likewise. + (ELFX32_DYNAMIC_INTERPRETER): Likewise. + (_bfd_x86_elf_link_hash_table_create): Likewise. + (_bfd_x86_elf_link_hash_table_free): Renamed to ... + (elf_x86_link_hash_table_free): This. Make it static. + * elfxx-x86.h: Don't include "objalloc.h". + (ABI_64_P): New. + (elf_x86_lazy_plt_layout): Likewise. + (elf_x86_non_lazy_plt_layout): Likewise. + (elf_x86_plt_layout): Likewise. + (_bfd_x86_elf_link_hash_table_create): Likewise. + (bfd_elf64_bfd_link_hash_table_create): Likewise. + (bfd_elf32_bfd_link_hash_table_create): Likewise. + (elf_x86_link_hash_table): Add plt, lazy_plt, non_lazy_plt, + srelplt2 and next_tls_desc_index. + (_bfd_x86_elf_link_hash_table_free): Removed. + +2017-08-30 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_perform_relocation): Correct microMIPS + branch offset interpretation. + +2017-08-30 H.J. Lu + + PR binutils/22032 + * opncls.c (bfd_close_all_done): Call _close_and_cleanup. + +2017-08-30 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_next_tls_desc_index): Removed. + (elf_x86_64_srelplt2): Likewise. + +2017-08-30 Alan Modra + + * elf64-ppc.c (struct ppc_link_hash_table): Add do_tls_opt. + (ppc64_elf_tls_optimize): Set it. + (ppc64_elf_relocate_section): Nop addis on TPREL16_HA, and convert + insn on TPREL16_LO and TPREL16_LO_DS relocs to use r13 when + addis would add zero. + * elf32-ppc.c (struct ppc_elf_link_hash_table): Add do_tls_opt. + (ppc_elf_tls_optimize): Set it. + (ppc_elf_relocate_section): Nop addis on TPREL16_HA, and convert + insn on TPREL16_LO relocs to use r2 when addis would add zero. + +2017-08-30 Alan Modra + + * elf64-ppc.c (ppc64_elf_relocate_section): When optimizing + __tls_get_addr call sequences to LE, don't move the addi down + to the nop. Replace the bl with addi and leave the nop alone. + +2017-08-29 H.J. Lu + + * elf32-i386.c (elf_i386_pie_finish_undefweak_symbol): + Re-indent. + * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): + Likewise. + (elf_x86_64_pie_finish_undefweak_symbol): Likewise. + +2017-08-29 H.J. Lu + + * Makefile.am (BFD32_BACKENDS): Add elfxx-x86.lo. + (BFD64_BACKENDS): Likewise. + (BFD32_BACKENDS_CFILES): Add elfxx-x86.c. + (BFD64_BACKENDS_CFILES): Likewise. + * Makefile.in: Regenerated. + * configure.ac (bfd_backends): Add elfxx-x86.lo together with + elf32-i386.lo and elf64-x86-64.lo. + * configure: Regenerated. + * elf32-i386.c: Include "elfxx-x86.h" instead of "sysdep.h", + "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", + "objalloc.h" and "hashtab.h". + (ELIMINATE_COPY_RELOCS): Removed. + (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. + (SYMBOL_NO_COPYRELOC): Likewise. + (elf_i386_link_hash_entry): Likewise. + (GOT_UNKNOWN): Likewise. + (GOT_NORMAL): Likewise. + (GOT_TLS_GD): Likewise. + (elf_i386_hash_entry): Likewise. + (elf_i386_obj_tdata): Likewise. + (elf_i386_tdata): Likewise. + (elf_i386_local_got_tls_type): Likewise. + (elf_i386_local_tlsdesc_gotent): Likewise. + (elf_i386_hash_table): Likewise. + (elf_i386_link_hash_newfunc): Likewise. + (elf_i386_local_htab_hash): Likewise. + (elf_i386_local_htab_eq): Likewise. + (elf_i386_get_local_sym_hash): Likewise. + (elf_i386_link_hash_table_free): Likewise. + (elf_i386_copy_indirect_symbol): Likewise. + (elf_i386_fixup_symbol): Likewise. + (elf_i386_readonly_dynrelocs): Likewise. + (elf_i386_always_size_sections): Likewise. + (elf_i386_set_tls_module_base): Likewise. + (elf_i386_dtpoff_base): Likewise. + (compare_relocs): Likewise. + (elf_i386_hash_symbol): Likewise. + (elf_i386_parse_gnu_properties): Likewise. + (elf_i386_merge_gnu_properties): Likewise. + (elf_i386_link_check_relocs): Likewise. + (elf_i386_merge_symbol_attribute): Likewise. + (bfd_elf32_bfd_link_check_relocs): Likewise. + (elf_backend_copy_indirect_symbol): Likewise. + (elf_backend_always_size_sections): Likewise. + (elf_backend_omit_section_dynsym): Likewise. + (elf_backend_hash_symbol): Likewise. + (elf_backend_fixup_symbol): Likewise. + (elf_backend_parse_gnu_properties): Likewise. + (elf_backend_merge_gnu_properties): Likewise. + (elf_backend_merge_symbol_attribute): Likewise. + (elf_i386_mkobject): Updated. + (elf_i386_link_hash_table_create): Likewise. + (elf_i386_check_tls_transition): Likewise. + (elf_i386_tls_transition): Likewise. + (elf_i386_convert_load_reloc): Likewise. + (elf_i386_check_relocs): Likewise. + (elf_i386_adjust_dynamic_symbol): Likewise. + (elf_i386_allocate_dynrelocs): Likewise. + (elf_i386_convert_load): Likewise. + (elf_i386_size_dynamic_sections): Likewise. + (elf_i386_relocate_section): Likewise. + (elf_i386_finish_dynamic_symbol ): Likewise. + (elf_i386_finish_dynamic_sections): Likewise. + (elf_i386_output_arch_local_syms): Likewise. + (elf_i386_get_synthetic_symtab): Likewise. + (elf_i386_link_setup_gnu_properties): Likewise. + (elf_i386_link_hash_table): Use elf_x86_link_hash_table, instead + of elf_link_hash_table, as base. + (elf_i386_next_tls_desc_index): New. + (elf_i386_srelplt2): Likewise. + (elf_i386_plt): Likewise. + (elf_i386_lazy_plt): Likewise. + (elf_i386_non_lazy_plt): Likewise. + * elf32-x86-64.c: Include "elfxx-x86.h" instead of "sysdep.h", + "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", + "objalloc.h" and "hashtab.h". + (ELIMINATE_COPY_RELOCS): Removed. + (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. + (SYMBOL_NO_COPYRELOC): Likewise. + (elf_x86_64_link_hash_entry): Likewise. + (GOT_UNKNOWN): Likewise. + (GOT_NORMAL): Likewise. + (GOT_TLS_GD): Likewise. + (elf_x86_64_hash_entry): Likewise. + (elf_x86_64_obj_tdata): Likewise. + (elf_x86_64_tdata): Likewise. + (elf_x86_64_local_got_tls_type): Likewise. + (elf_x86_64_local_tlsdesc_gotent): Likewise. + (elf_x86_64_hash_table): Likewise. + (elf_x86_64_link_hash_newfunc): Likewise. + (elf_x86_64_local_htab_hash): Likewise. + (elf_x86_64_local_htab_eq): Likewise. + (elf_x86_64_get_local_sym_hash): Likewise. + (elf_x86_64_link_hash_table_free): Likewise. + (elf_x86_64_copy_indirect_symbol): Likewise. + (elf_x86_64_fixup_symbol): Likewise. + (elf_x86_64_readonly_dynrelocs): Likewise. + (elf_x86_64_always_size_sections): Likewise. + (elf_x86_64_set_tls_module_base): Likewise. + (elf_x86_64_dtpoff_base): Likewise. + (compare_relocs): Likewise. + (elf_x86_64_merge_symbol_attribute): Likewise. + (elf_x86_64_hash_symbol): Likewise. + (elf_x86_64_parse_gnu_properties): Likewise. + (elf_x86_64_merge_gnu_properties): Likewise. + (elf_x86_64_link_check_relocs): Likewise. + (elf_backend_copy_indirect_symbol): Likewise. + (elf_backend_always_size_sections): Likewise. + (bfd_elf64_bfd_link_check_relocs): Likewise. + (elf_backend_merge_symbol_attribute): Likewise. + (elf_backend_hash_symbol): Likewise. + (elf_backend_omit_section_dynsym): Likewise. + (elf_backend_fixup_symbol): Likewise. + (elf_backend_parse_gnu_properties): Likewise. + (elf_backend_merge_gnu_properties): Likewise. + (bfd_elf32_bfd_link_check_relocs): Likewise. + (elf_x86_64_mkobject): Updated. + (elf_x86_64_link_hash_table_create): Likewise. + (elf_x86_64_check_tls_transition): Likewise. + (elf_x86_64_tls_transition): Likewise. + (elf_x86_64_convert_load_reloc): Likewise. + (elf_x86_64_check_relocs): Likewise. + (elf_x86_64_adjust_dynamic_symbol): Likewise. + (elf_x86_64_allocate_dynrelocs): Likewise. + (elf_x86_64_convert_load): Likewise. + (elf_x86_64_size_dynamic_sections): Likewise. + (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_finish_dynamic_symbol ): Likewise. + (elf_x86_64_finish_dynamic_sections): Likewise. + (elf_x86_64_output_arch_local_syms): Likewise. + (elf_x86_64_get_synthetic_symtab): Likewise. + (elf_x86_64_link_setup_gnu_properties): Likewise. + (elf_x86_64_link_hash_table): Use elf_x86_link_hash_table, + instead of elf_link_hash_table, as base. + (elf_x86_64_next_tls_desc_index): New. + (elf_x86_64_srelplt2): Likewise. + (elf_x86_64_plt): Likewise. + (elf_x86_64_lazy_plt): Likewise. + (elf_x86_64_non_lazy_plt): Likewise. + * elfxx-x86.c: New file. + * elfxx-x86.h: Likewise. + +2017-08-29 H.J. Lu + + * elf32-i386.c (elf_i386_get_synthetic_symtab): Simplify bad + return. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-29 H.J. Lu + + * elf32-i386.c (elf_i386_get_synthetic_symtab): Check valid PLT + sections before checking dynamic relocations and free invalid + PLT section contents. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-28 H.J. Lu + + * elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): Removed. + * elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): Likewise. + +2017-08-28 H.J. Lu + + PR binutils/22018 + * elf32-i386.c (elf_i386_get_synthetic_symtab): Check for valid + PLT section size. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-27 H.J. Lu + + * elf32-i386.c (elf_i386_link_hash_newfunc): Initialize + def_protected. + * elf64-x86-64.c (elf_x86_64_link_hash_newfunc): Likewise. + +2017-08-26 H.J. Lu + + PR ld/21997 + * elf-bfd.h (elf_obj_tdata): Use ENUM_BITFIELD on object_id, + dyn_lib_class and has_gnu_symbols. Change bad_symtab to bitfield. + Add a has_no_copy_on_protected bitfield. + (elf_has_no_copy_on_protected): New. + * elf-properties.c (_bfd_elf_parse_gnu_properties): Set + elf_has_no_copy_on_protected for GNU_PROPERTY_NO_COPY_ON_PROTECTED. + (elf_merge_gnu_property_list): Likewise. + (_bfd_elf_link_setup_gnu_properties): Set extern_protected_data + to FALSE for elf_has_no_copy_on_protected. + * elf32-i386.c (SYMBOL_NO_COPYRELOC): New. + (elf_i386_link_hash_entry): Add def_protected. + (elf_i386_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC + when checking info->nocopyreloc. + (elf_i386_link_setup_gnu_properties): Don't set + extern_protected_data here. + (elf_i386_merge_symbol_attribute): New function. + (elf_backend_merge_symbol_attribute): New. + * elf64-x86-64.c (SYMBOL_NO_COPYRELOC): New. + (elf_x86_64_link_hash_entry): Add def_protected. + (elf_x86_64_need_pic): Report protected symbol for def_protected. + (elf_x86_64_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC + when checking info->nocopyreloc. + (elf_x86_64_relocate_section): Also check for R_X86_64_PC32 + relocation run-time overflow and unresolvable R_X86_64_32S + relocation against protected data symbol defined in shared object + with GNU_PROPERTY_NO_COPY_ON_PROTECTED. + (elf_x86_64_link_setup_gnu_properties): Don't set + extern_protected_data here. + (elf_x86_64_merge_symbol_attribute): New function. + (elf_backend_merge_symbol_attribute): New. + +2017-08-26 Alan Modra + + * elf32-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. + (ppc_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. + (ppc_elf_relocate_section): Comment fix. + * elf64-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. + (ppc64_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. + Support dynamic relocs for TPREL16 when non-pic too. + (dec_dynrel_count): Adjust TPREL16 handling as per check_relocs. + (ppc64_elf_relocate_section): Support dynamic relocs for TPREL16 + when non-pic too. + +2017-08-25 H.J. Lu + + * elf32-i386.c (elf_i386_link_hash_entry): Remove redundant + "symbol" in comments. + * elf64-x86-64.c (elf_x86_64_link_hash_entry): Likewise. + +2017-08-24 H.J. Lu + + PR ld/22001 + * elf64-x86-64.c (elf_x86_64_relocate_section): Check for + R_X86_64_PC32 relocation run-time overflow and unresolvable + R_X86_64_32S relocation with -z nocopyreloc. + +2017-08-24 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Revert the last change. + Undefined symbols may not have a type. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + +2017-08-23 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_need_pic): Add an argument for + bfd_link_info. Report shared, PIE or PDE object based on + bfd_link_info. + (elf_x86_64_check_relocs): Update elf_x86_64_need_pic call. + (elf_x86_64_relocate_section): Likewise. + +2017-08-23 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Increment PLT count only + for function symbols. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + +2017-08-23 H.J. Lu + + * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set + extern_protected_data to FALSE if GNU_PROPERTY_NO_COPY_ON_PROTECTED + is set on any input relocatable file. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise. + +2017-08-23 Alan Modra + + PR 21988 + * elf64-ppc.c (ensure_undef_dynamic): Rename from + ensure_undefweak_dynamic. Handle undefined too. + * elf32-ppc.c (ensure_undef_dynamic): Likewise. + * elf32-hppa.c (ensure_undef_dynamic): Likewise. + (allocate_dynrelocs): Discard undefined non-default visibility + relocs first. Make undefined syms dynamic. Tidy goto. + +2017-08-21 Alan Modra + H.J. Lu + + PR ld/21964 + * elf-bfd.h (SYMBOLIC_BIND): Return TRUE for __start/__stop symbols. + * elflink.c (bfd_elf_define_start_stop): Rewrite. + +2017-08-21 Hans-Peter Nilsson + + PR ld/20125 + * elf64-mmix.c (mmix_elf_relax_section): Correct handling of + undefined weak symbols. + +2017-08-18 Nick Clifton + + PR binutils/21962 + * tekhex.c (getsym): Fix check for source pointer walking off the + end of the input buffer. + +2017-08-17 Szabolcs Nagy + + PR ld/18808 + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Skip IFUNC + relocations in debug sections, change abort to _bfd_error_handler. + +2017-08-14 Nick Clifton + + PR 21957 + * elf.c (setup_group): Check for an empty or very small group + section. + * po/bfd.pot: Regenerate. + +2017-08-14 Alan Modra + + PR 21441 + * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't add + alignment padding here. + * elflink.c (bfd_elf_discard_info): Add .eh_frame padding here + in a reverse pass over sections. + +2017-08-11 H.J. Lu + + PR binutils/21943 + * elf32-i386.c (elf_i386_get_synthetic_symtab): Allocate space + for @plt suffixes first. + * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-08-08 Nick Clifton + + PR 21916 + * elf-attrs.c (_bfd_elf_parse_attributes): Complain about very + small section lengths. + * elf.c (_bfd_elf_setup_sections): Skip empty entries in the group + table. + (elfcore_grok_freebsd_prstatus): Add checks to make sure that + there is enough data present in the note. + +2017-08-08 Alan Modra + + PR 21017 + * elf32-microblaze.c (microblaze_elf_check_relocs): Don't bump + got.refcount for GOTOFF relocs, just create .got section. + +2017-08-07 H.J. Lu + + * elflink.c (elf_link_add_object_symbols): Move common symbol + check after bed->common_definition. + +2017-08-07 Alan Modra + + PR 21910 + * elflink.c (bfd_elf_final_link): Don't segfault when sections + needed to define various dynamic tags have been discarded. + +2017-08-07 Nick Clifton + + PR 21884 + * elf32-i386.c (elf_i386_link_setup_gnu_properties): If the dynobj + has not been set then use the bfd returned by + _bfd_elf_link_setup_gnu_properties. If that is null then search + through all the input bfds selecting the first normal, ELF format + one. + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise. + +2017-08-06 H.J. Lu + + * elf32-i386.c (elf_i386_link_hash_entry): Change tls_get_addr + to 1 bit. + (elf_i386_link_hash_newfunc): Initialize tls_get_addr to 0. + (elf_i386_check_tls_transition): Check tls_get_addr directly. + (elf_i386_convert_load_reloc): Update tls_get_addr check. + (elf_i386_link_check_relocs): New function. + (bfd_elf32_bfd_link_check_relocs): New. + * elf64-x86-64.c (elf_x86_64_link_hash_entry): Change tls_get_addr + to 1 bit. + (elf_x86_64_link_hash_newfunc): Initialize tls_get_addr to 0. + (elf_x86_64_check_tls_transition): Check tls_get_addr directly. + (elf_x86_64_convert_load_reloc): Update tls_get_addr check. + (elf_x86_64_link_check_relocs): New function. + (bfd_elf64_bfd_link_check_relocs): New. + (bfd_elf32_bfd_link_check_relocs): Likewise. + +2017-08-06 H.J. Lu + + PR ld/21903: + * elflink.c (elf_link_add_object_symbols): Treat common symbol + as undefined for --no-define-common. + +2017-08-05 Alan Modra + + * elf32-hppa.c (elf32_hppa_set_gp): Don't require an + hppa_link_hash_table. + +2017-08-02 Max Filippov + + * xtensa-isa.c (xtensa_isa_init): Don't update lookup table + entries for sysregs with negative indices. + +2017-08-01 Andreas Krebbel + + * elf32-s390.c (elf_s390_finish_dynamic_sections): Skip if it + isn't the S/390 specific elf data. + * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. + +2017-07-31 Kuan-Lin Chen + + * elfxx-riscv.c (riscv_elf_add_sub_reloc): New function. + * (howto_table) [R_RISCV_ADD8]: Use riscv_elf_add_sub_reloc. + [R_RISCV_ADD16]: Likewise. + [R_RISCV_ADD32]: Likewise. + [R_RISCV_ADD64]: Likewise. + [R_RISCV_SUB6]: Likewise. + [R_RISCV_SUB8]: Likewise. + [R_RISCV_SUB16]: Likewise. + [R_RISCV_SUB32]: Likewise. + [R_RISCV_SUB64]: Likewise. + +2017-07-31 Alan Modra + + * elf64-ppc.c (ppc64_elf_tls_setup): Warn on --plt-localentry + without ld.so checks. + +2017-07-29 Alan Modra + + PR 21847 + * elf64-ppc.c (struct ppc_link_hash_entry): Add non_zero_localentry. + (ppc64_elf_merge_symbol): Set non_zero_localentry. + (is_elfv2_localentry0): Test non_zero_localentry. + (ppc64_elf_tls_setup): Default to --no-plt-localentry. + +2017-07-28 Andreas Krebbel + + * elf32-s390.c (elf_s390_finish_dynamic_sections): Add NULL + pointer check for htab->elf.irelplt. + * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. + +2017-07-27 Nick Clifton + + PR 21840 + * mach-o.c (bfd_mach_o_read_symtab_strtab): Fail if the symtab + size is -1. + * nlmcode.h (nlm_swap_auxiliary_headers_in): Replace assertion + with error return. + * section.c (bfd_make_section_with_flags): Fail if the name or bfd + are NULL. + * vms-alpha.c (bfd_make_section_with_flags): Correct computation + of end pointer. + (evax_bfd_print_emh): Check for invalid string lengths. + +2017-07-25 Nick Clifton + + * po/fr.po: Updated French translation. + +2017-07-25 Benjamin Green + + PR 21824 + * elf32-msp430.c (msp430_elf_relax_section): Allow conversion of + 16-bit absolute branches into 10-bit pc-relative branches on the + MSP430 as well as the MSP430X. + +2017-07-25 Alan Modra + + * elf64-ppc.c (struct map_stub): Add tls_get_addr_opt_bctrl. + (stub_eh_frame_size): New function. + (ppc_size_one_stub): Set group tls_get_addr_opt_bctrl. + (group_sections): Init group tls_get_addr_opt_bctrl. + (ppc64_elf_size_stubs): Update sizing and initialization of + .eh_frame. Iteration over stubs via group list. + (ppc64_elf_build_stubs): Iterate over stubs via group list. + (ppc64_elf_finish_dynamic_sections): Update finalization of + .eh_frame. + +2017-07-24 Nick Clifton + + PR 21813 + * mach-o.c (bfd_mach_o_canonicalize_relocs): Pass the base address + of the relocs to the canonicalize_one_reloc routine. + * mach-o.h (struct bfd_mach_o_backend_data): Update the prototype + for the _bfd_mach_o_canonicalize_one_reloc field. + * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add + res_base parameter. Use to check for corrupt pair relocs. + * mach-o-aarch64.c (bfd_mach_o_arm64_canonicalize_one_reloc): + Likewise. + * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): + Likewise. + * mach-o-x86-64.c (bfd_mach_o_x86_64_canonicalize_one_reloc): + Likewise. + + * vms-alpha.c (_bfd_vms_slurp_eihd): Make sure that there is + enough data in the record before attempting to parse it. + (_bfd_vms_slurp_eeom): Likewise. + + (_bfd_vms_slurp_egsd): Check for an invalid section index. + (image_set_ptr): Likewise. + (alpha_vms_slurp_relocs): Likewise. + + (alpha_vms_object_p): Check for a truncated record. + +2017-07-24 Nick Clifton + + PR 21803 + * reloc.c (_bfd_unrecognized_reloc): New function. Reports + an unrecognized reloc and sets the bfd_error value. + * libbfd.h: Regenerate. + * elf32-arm.c (elf32_arm_final_link_relocate): Use the new + function. + * elf32-i386.c (elf_i386_relocate_section): Likewise. + * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise. + * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. + +2017-07-23 Alan Modra + + * elf64-ppc.c (ppc64_elf_size_stubs): Correct advance to + restore of LR. + +2017-07-19 Szabolcs Nagy + + PR ld/18841 + * elfnn-aarch64.c (elfNN_aarch64_reloc_type_class): Return + reloc_class_ifunc for ifunc symbols. + +2017-07-19 Nick Clifton + + PR 21787 + * archive.c (bfd_generic_archive_p): If the bfd does not have the + correct magic bytes at the start, set the error to wrong format + and clear the format selector before returning NULL. + +2017-07-19 Nick Clifton + + PR 21786 + * coff-rs6000.c (_bfd_strntol): New function. + (_bfd_strntoll): New function. + (GET_VALUE_IN_FIELD): New macro. + (EQ_VALUE_IN_FIELD): new macro. + (_bfd_xcoff_slurp_armap): Use new macros. + (_bfd_xcoff_archive_p): Likewise. + (_bfd_xcoff_read_ar_hdr): Likewise. + (_bfd_xcoff_openr_next_archived_file): Likewise. + (_bfd_xcoff_stat_arch_elt): Likewise. + * coff64-rs6000.c (_bfd_strntol): New function. + (_bfd_strntoll): New function. + (GET_VALUE_IN_FIELD): New macro. + (xcoff64_slurp_armap): Use new macros. + +2017-07-19 Claudiu Zissulescu + John Eric Martin + + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * elf32-arc.c (JLI): Define. + * reloc.c: Add JLI relocations. + +2017-07-18 Nick Clifton + + PR 21775 + * coff-sh.c: Fix spelling typos. + * compress.c: Likewise. + * cpu-pdp11.c: Likewise. + * ecofflink.c: Likewise. + * elf-m10300.c: Likewise. + * elf.c: Likewise. + * elf32-arm.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-nds32.c: Likewise. + * elf32-ppc.c: Likewise. + * elf32-sh.c: Likewise. + * elf32-v850.c: Likewise. + * elf64-ppc.c: Likewise. + * elf64-x86-64.c: Likewise. + * elflink.c: Likewise. + * elfnn-aarch64.c: Likewise. + * elfxx-mips.c: Likewise. + * som.c: Likewise. + * sunos.c: Likewise. + * vms-alpha.c: Likewise. + * xcofflink.c: Likewise. + +2017-07-18 Nick Clifton + + PR binutils/21781 + * coffcode.h (handle_COMDAT): Replace abort with an error message + and return. + +2017-07-17 H.J. Lu + + PR ld/21782 + * elf64-x86-64.c (elf_x86_64_relocate_section): Limit PIC check + to shared library. + +2017-07-17 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent. + +2017-07-16 Alan Modra + + * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimize + __tls_index GOT entries when using __tls_get_addr_opt stub. + * elf32-ppc.c (ppc_elf_relocate_section): Likewise. + +2017-07-12 Alan Modra + + * po/es.po: Update from translationproject.org/latest/bfd/. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/id.po: Likewise. + * po/ja.po: Likewise. + * po/ro.po: Likewise. + * po/ru.po: Likewise. + * po/sr.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + * po/hr.po: New file from translationproject.org. + * configure.ac (ALL_LINGUAS): Add hr. Sort. + * configure: Regenerate. + +2017-07-12 Nick Clifton + + Fix compile time warnings using gcc 7.1.1. + * elf32-xtensa.c (elf_xtensa_get_plt_section): Increase length of + plt_name buffer. + (elf_xtensa_get_gotplt_section): Increase length of got_name + buffer. + * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add a + default return of FALSE. + * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): Add a + default return of FALSE. + +2017-07-12 Alan Modra + + * binary.c (binary_set_section_contents): Don't print filepos in + error message. + (coff_write_object_contents): Cast size_t for error message. + (coff_slurp_line_table): Don't use bfd_vma symndx. + (coff_slurp_reloc_table): Remove unneeded cast. + * dwarf2.c (read_section): Cast bfd_int64_t to long long for + error message. + (find_abstract_instance_name): Likewise. + * elf32-arm.c (arm_type_of_stub): Correct error arg order. + (bfd_elf32_arm_stm32l4xx_erratum_scan): Don't cast error arg. + (elf32_arm_check_relocs): Make r_symndx an int. + * elf32-cris.c (cris_elf_check_relocs): Delete extraneous %s in + format string. + * elf32-metag.c (elf_metag_relocate_section): Delete extra error + message arg. + * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Rewrite bogus + error message. + * elf32-i386.c (elf_i386_check_relocs): Make r_symndx an int. + * elf32-s390.c (elf_s390_check_relocs): Likewise. + * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise. + * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise. + * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. + * elf64-s390.c (elf_s390_check_relocs): Likewise. + * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Likewise. + * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. + * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise. + * elf64-mmix.c (_bfd_mmix_after_linker_allocation): Cast size_t args + and use %lu for error message. + * elflink.c (elf_link_adjust_relocs): Delete extra error message arg. + * mmo.c (mmo_scan): Make stab_loc a file_ptr. Cast expression for + error message. + + * elf32-arm.c (elf32_arm_tls_relax): Correct format string and args + in error message. + (elf32_arm_final_link_relocate): Likewise. + * coff-arm.c (bfd_arm_process_before_allocation): Likewise. + * coffcode.h (styp_to_sec_flags): Likewise. + * cofflink.c (_bfd_coff_write_global_sym): Likewise. + * ecoff.c (_bfd_ecoff_slurp_symbol_table): Likewise. + * elf32-arc.c (arc_elf_merge_private_bfd_data): Likewise. + * elf32-bfin.c (bfinfdpic_check_relocs): Likewise. + (elf32_bfin_merge_private_bfd_data): Likewise. + * elf32-cris.c (cris_elf_relocate_section): Likewise. + * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise. + * elf32-i370.c (i370_elf_merge_private_bfd_data): Likewise. + (i370_elf_relocate_section): Likewise. + * elf32-iq2000.c (iq2000_elf_merge_private_bfd_data): Likewise. + * elf32-m32c.c (m32c_elf_merge_private_bfd_data): Likewise. + * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Likewise. + * elf32-mcore.c (mcore_elf_relocate_section): Likewise. + * elf32-mep.c (mep_elf_merge_private_bfd_data): Likewise. + * elf32-mt.c (mt_elf_merge_private_bfd_data): Likewise. + * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise. + * elfxx-mips.c (mips_elf_merge_obj_e_flags): Likewise. + (_bfd_mips_elf_merge_private_bfd_data): Likewise. + * ieee.c (ieee_write_id, read_id): Likewise. + * mach-o.c (bfd_mach_o_write_contents): Likewise. + (bfd_mach_o_layout_commands, bfd_mach_o_read_section_32): Likewise. + (bfd_mach_o_read_section_64, bfd_mach_o_read_symtab_symbol): Likewise. + (bfd_mach_o_read_command, bfd_mach_o_header_p): Likewise. + * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Likewise. + * stabs.c (_bfd_link_section_stabs): Likewise. + + * coff-arm.c (coff_arm_relocate_section): Use L modifier in error + format. + * coff-mcore.c (coff_mcore_relocate_section): Likewise. + * coff-ppc.c (coff_ppc_relocate_section): Likewise. + * coff-rs6000.c (xcoff_reloc_type_toc): Likewise. + * coff-sh.c (sh_relax_section): Likewise. + (sh_relax_delete_bytes, sh_swap_insns): Likewise. + * coff-tic80.c (coff_tic80_relocate_section): Likewise. + * coffcode.h (coff_slurp_reloc_table): Likewise. + * coffgen.c (_bfd_coff_get_external_symbols): Likewise. + (_bfd_coff_read_string_table): Likewise. + * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. + * compress.c (bfd_get_full_section_contents): Likewise. + * dwarf2.c (read_formatted_entries, decode_line_info): Likewise. + * elf-m10300.c (mn10300_elf_relocate_section): Likewise. + * elf.c (bfd_elf_string_from_elf_section): Likewise. + * elf32-arc.c (arc_special_overflow_checks): Likewise. + * elf32-arm.c (elf32_arm_tls_relax): Likewise. + (elf32_arm_final_link_relocate, elf32_arm_relocate_section): Likewise. + (elf32_arm_write_section): Likewise. + * elf32-bfin.c (bfin_relocate_section): Likewise. + (bfinfdpic_relocate_section): Likewise. + * elf32-hppa.c (hppa_build_one_stub): Likewise. + (final_link_relocate, elf32_hppa_relocate_section): Likewise. + * elf32-i386.c (elf_i386_tls_transition): Likewise. + (elf_i386_relocate_section): Likewise. + * elf32-ip2k.c (ip2k_final_link_relocate): Likewise. + * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise. + * elf32-m32r.c (m32r_elf_relocate_section): Likewise. + * elf32-m68k.c (elf_m68k_relocate_section): Likewise. + * elf32-metag.c (elf_metag_relocate_section): Likewise. + * elf32-nds32.c (unrecognized_reloc_msg): Likewise. + (nds32_elf_relax_longcall1, nds32_elf_relax_longcall2): Likewise. + (nds32_elf_relax_longcall3, nds32_elf_relax_longjump1): Likewise. + (nds32_elf_relax_longjump2, nds32_elf_relax_longjump3): Likewise. + (nds32_elf_relax_longcall4, nds32_elf_relax_longcall5): Likewise. + (nds32_elf_relax_longcall6, nds32_elf_relax_longjump4): Likewise. + (nds32_elf_relax_longjump5, nds32_elf_relax_longjump6): Likewise. + (nds32_elf_relax_longjump7, nds32_elf_relax_loadstore): Likewise. + (nds32_elf_relax_ptr, nds32_elf_ex9_build_hash_table): Likewise. + * elf32-nios2.c (nios2_elf32_relocate_section): Likewise. + * elf32-rx.c (UNSAFE_FOR_PID): Likewise. + * elf32-s390.c (invalid_tls_insn, elf_s390_relocate_section): Likewise. + * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise. + * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise. + * elf32-sh.c (sh_elf_relax_section): Likewise. + (sh_elf_relax_delete_bytes, sh_elf_swap_insns): Likewise. + (sh_elf_relocate_section): Likewise. + * elf32-sh64.c (shmedia_prepare_reloc): Likewise. + * elf32-spu.c (spu_elf_relocate_section): Likewise. + * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. + * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. + * elf32-v850.c (v850_elf_relax_section): Likewise. + * elf32-vax.c (elf_vax_check_relocs): Likewise. + (elf_vax_relocate_section): Likewise. + * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. + (extend_ebb_bounds_forward, extend_ebb_bounds_backward): Likewise. + (compute_text_actions, compute_ebb_proposed_actions): Likewise. + (do_fix_for_relocatable_link): Likewise. + * elf64-alpha.c (elf64_alpha_relax_got_load): Likewise. + (elf64_alpha_relax_with_lituse): Likewise. + * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Likewise. + (elf_hppa_final_link_relocate): Likewise. + * elf64-ia64-vms.c (elf64_ia64_relax_section): Likewise. + (elf64_ia64_choose_gp, elf64_ia64_relocate_section): Likewise. + (elf64_vms_link_add_object_symbols): Likewise. + * elf64-mmix.c (mmix_elf_perform_relocation): Likewise. + (mmix_final_link_relocate): Likewise. + * elf64-s390.c (invalid_tls_insn): Likewise. + (elf_s390_relocate_section): Likewise. + * elf64-sh64.c (sh_elf64_relocate_section): Likewise. + * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. + (elf_x86_64_relocate_section): Likewise. + * elfcode.h (elf_slurp_symbol_table): Likewise. + * elfcore.h (elf_core_file_p): Likewise. + * elflink.c (elf_link_read_relocs_from_section): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. + (elfNN_aarch64_relocate_section): Likewise. + * elfnn-ia64.c (elfNN_ia64_relax_section): Likewise. + (elfNN_ia64_choose_gp, elfNN_ia64_relocate_section): Likewise. + * elfnn-riscv.c (riscv_elf_relocate_section): Likewise. + * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. + (_bfd_mips_elf_relocate_section): Likewise. + (_bfd_mips_elf_finish_dynamic_symbol, mips_finish_exec_plt): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. + * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. + * ieee.c (ieee_slurp_external_symbols): Likewise. + * ihex.c (ihex_write_object_content): Likewise. + * mach-o.c (bfd_mach_o_build_exec_seg_command): Likewise. + * merge.c (_bfd_merged_section_offset): Likewise. + * mmo.c (mmo_write_loc_chunk): Likewise. + (mmo_write_object_contents): Likewise. + * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Likewise. + * stabs.c (_bfd_link_section_stabs): Likewise. + * xcofflink.c (xcoff_link_add_symbols, xcoff_find_tc0): Likewise. + +2017-07-11 Alan Modra + + * elf32-ppc.c (ppc_elf_relocate_section): Fix typo. + +2017-07-11 Alan Modra + + * elf32-ppc.c (ppc_elf_relocate_section): Emit "unexpected + instruction" error using _bfd_error_handler, not einfo. + +2017-07-10 Nick Clifton + + * coffcode.h (coff_slurp_symbol_table): Do not include an entry + for C_AIX_WEAKEXT if it has the same value as C_WEAKEXT. + +2017-07-07 John Baldwin + + * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PTLWPINFO. + +2017-07-07 Alan Modra + + * coffcode.h (coff_slurp_symbol_table): Handle C_AIX_WEAKEXT. + +2017-07-07 Alan Modra + + * bfd.c (_doprnt): Replace "L" with "ll" when printing bfd_vma + as long long. Move code replacing "ll" with "I64", and simplify. + +2017-07-06 H.J. Lu + + * bfd.c (_doprnt): Convert 'L' to 'l' when setting wide_width + to 1. + +2017-07-05 H.J. Lu + + * dwarf2.c (line_info_add_include_dir_stub): Replace time with + xtime. + (line_info_add_file_name): Likewise. + (decode_line_info): Likewise. + +2017-07-04 Tristan Gingold + + * version.m4: Bump version to 2.29.51 + * configure: Regenerate. + +2017-07-04 Jiong Wang + + * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Remove the + sanity check at the head of this function. + +2017-07-04 Jan Kratochvil + + * dwarf2.c (struct dwarf2_debug): Add fields dwarf_line_str_buffer and + dwarf_line_str_size. + (struct attr_abbrev): Add field implicit_const. + (dwarf_debug_sections): Add .debug_line_str. + (enum dwarf_debug_section_enum): Add debug_line_str and debug_max. + (dwarf_debug_section_assert): Add static assertion. + (read_indirect_line_string): New. + (read_abbrevs): Support DW_FORM_implicit_const. + (is_str_attr): Support DW_FORM_line_strp. + (read_attribute_value): Support DW_FORM_line_strp and + DW_FORM_implicit_const. + (read_attribute): Support DW_FORM_implicit_const. + (line_info_add_include_dir, line_info_add_include_dir_stub): + (line_info_add_file_name, read_formatted_entries): New. + (decode_line_info, parse_comp_unit): Support DWARF 5. + (_bfd_dwarf2_cleanup_debug_info): Free dwarf_line_str_buffer. + +2017-07-03 Egeyar Bagcioglu + + * 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 + + * po/bfd.pot: Regenerate + +2017-07-03 Alan Modra + + * 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 + + * 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 + + * 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 + + * configure.ac: Invoke AC_CHECK_TYPES for long long. Invoke + AC_TYPE_LONG_DOUBLE. + * configure: Regenerate. + * config.in: Regenerate. + +2017-06-29 Andrew Waterman + + * elfnn-riscv.c (riscv_elf_adjust_dynamic_symbol): Fix TLS copy + relocs. + +2017-06-29 Egeyar Bagcioglu + + * 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 + + 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 + + * 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 + + * 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 + + * 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 + + * 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 + Matthew Fortune + + * 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) : New + case. + (mips_set_isa_flags) : Likewise. + (bfd_mips_isa_ext) : Likewise. + (print_mips_isa_ext) : Likewise. + (mips_mach_extensions): Add `bfd_mach_mipsisa32r3' and + `bfd_mach_mips_interaptiv_mr2' entries. + * bfd-in2.h: Regenerate. + +2017-06-27 Nick Clifton + + * tekhex.c (pass_over): Revert accidental conversion of a local + array to a static array. + +2017-06-27 Senthil Kumar Selvaraj + + 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 + + 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 + + * 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 + + 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 + + PR binutils/21665 + * libbfd.c (_bfd_generic_get_section_contents): Add "count", not + "sz". + +2017-06-26 H.J. Lu + + PR binutils/21665 + * libbfd.c (_bfd_generic_get_section_contents_in_window): Add + a missing line. + +2017-06-26 Maciej W. Rozycki + + * cpu-mips.c (arch_info_struct): Mark the 4010 32-bit. + * elfxx-mips.c (mips_set_isa_flags) : 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 + + 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 + + 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 + + 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 + + * 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 + + * 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 + + * elf.c (find_link): Bounds check "hint". + +2017-06-24 Thomas Preud'homme + + * 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 + + * 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 + + * 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 + + * elf32-arm.c (elf32_arm_final_link_relocate): Use labs rather than + abs to fix a truncation warning. + +2017-06-22 H.J. Lu + + * 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 + + * 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 + + * 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 + + PR binutils/21649 + * som.c (setup_sections): NUL terminate the space_strings buffer. + Check that the space.name field does not index beyond the end of + the space_strings buffer. + +2017-06-21 Nick Clifton + + PR binutils/21646 + * coff-sh.c (sh_reloc): Check for an out of range reloc. + +2017-06-21 Nick Clifton + + PR binutils/21639 + * vms-misc.c (_bfd_vms_save_sized_string): Use unsigned int as + type of the size parameter. + (_bfd_vms_save_counted_string): Add second parameter - the maximum + length of the counted string. + * vms.h (_bfd_vms_save_sized_string): Update prototype. + (_bfd_vms_save_counted_string): Likewise. + * vms-alpha.c (_bfd_vms_slurp_eisd): Update calls to + _bfd_vms_save_counted_string. + (_bfd_vms_slurp_ehdr): Likewise. + (_bfd_vms_slurp_egsd): Likewise. + (Parse_module): Likewise. + +2017-06-21 Alan Modra + + * elf64-ppc.c (ppc64_elf_size_stubs): Test for localentry:0 plt + calls before tocsave calls. + (ppc64_elf_relocate_section): Allow localentry:0 plt calls without + following nop. + +2017-06-21 Nick Clifton + + PR binutils/21645 + * reloc.c (bfd_generic_get_relocated_section_contents): Fail if + bfd_get_full_section_contents returns no contents. + +2017-06-21 Nick Clifton + + PR binutils/21638 + * vms-alpha.c (_bfd_vms_slurp_egsd): Check for an undersized + record. + +2017-06-21 Nick Clifton + + PR binutils/21637 + * vms-alpha.c (_bfd_vms_slurp_egsd): Check for an empty section + list. + (image_set_ptr): Likewise. + (alpha_vms_fix_sec_rel): Likewise. + (alpha_vms_slurp_relocs): Likewise. + +2017-06-21 Nick Clifton + + PR binutils/21633 + * ieee.c (ieee_slurp_sections): Check for a NULL return from + read_id. + (ieee_archive_p): Likewise. + (ieee_object_p): Likewise. + +2017-06-21 Nick Clifton + + PR binutils/21640 + * elf.c (setup_group): Zero the group section pointer list after + allocation so that loops can be caught. Check for NULL pointers + when processing a group list. + +2017-06-20 Andreas Krebbel + + * 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 + + PR ld/21626 + * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Check + the DYNAMIC bit instead of bfd_count_sections. + +2017-06-19 Nick Clifton + + PR binutils/21618 + * vms-alpha.c (evax_bfd_print_emh): Check for insufficient record + length. + (evax_bfd_print_eeom): Likewise. + (evax_bfd_print_egsd): Check for an overlarge record length. + (evax_bfd_print_etir): Likewise. + +2017-06-19 Nick Clifton + + PR binutils/21612 + * libieee.h (struct common_header_type): Add end_p field. + * ieee.c (this_byte_and_next): Do not advance input_p beyond + end_p. + (read_id): Check for a length that exceeds the remaining bytes in + the input buffer. + (ieee_seek): Initialise end_p. + (ieee_archive_p): Likewise. + (ieee_object_p): Likewise. + +2017-06-19 Nick Clifton + + PR binutils/21611 + * vms-alpha.c (_bfd_vms_slurp_eihs): Check for invalid offset + before reading the EIHS structure entries. + +2017-06-19 Nick Clifton + + PR binutils/21615 + * vms-alpha.c (_bfd_vms_slurp_egsd): Use unsigned int for + gsd_size. Check that there are enough bytes remaining to read the + type and size of the next egsd. Check that the size of the egsd + does not exceed the size of the record. + +2017-06-19 Alan Modra + + * config.bfd: Correct targ_underscore for cris. + +2017-06-18 Alan Modra + + * config.bfd: Correct targ_underscore for epiphany, ip2k, + m32c, mn10200, pru, rl78, rx, crisv32 and v850. + +2017-06-16 Nick Clifton + + * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Do not fail if the + bucketlist is empty because there are no symbols to add to the + list. + +2017-06-16 Alan Modra + + PR ld/20022 + PR ld/21557 + PR ld/21562 + PR ld/21571 + * targets.c (struct bfd_target): Add _bfd_define_start_stop. + (BFD_JUMP_TABLE_LINK): Likewise. + * elf-bfd.h (bfd_elf_define_start_stop): Declare. + * elflink.c (_bfd_elf_gc_mark_rsec): Update comment. + (bfd_elf_define_start_stop): New function. + * linker.c (bfd_generic_define_start_stop): New function. + * coff64-rs6000.c (rs6000_xcoff64_vec, rs6000_xcoff64_aix_vec): Init + new field. + * aout-adobe.c (aout_32_bfd_define_start_stop): Define. + * aout-target.h (MY_bfd_define_start_stop): Define. + * aout-tic30.c (MY_bfd_define_start_stop): Define. + * binary.c (binary_bfd_define_start_stop): Define. + * bout.c (b_out_bfd_define_start_stop): Define. + * coff-alpha.c (_bfd_ecoff_bfd_define_start_stop): Define. + * coff-mips.c (_bfd_ecoff_bfd_define_start_stop): Define. + * coff-rs6000.c (_bfd_xcoff_bfd_define_start_stop): Define. + * coffcode.h (coff_bfd_define_start_stop): Define. + * elfxx-target.h (bfd_elfNN_bfd_define_start_stop): Define. + * i386msdos.c (msdos_bfd_define_start_stop): Define. + * i386os9k.c (os9k_bfd_define_start_stop): Define. + * ieee.c (ieee_bfd_define_start_stop): Define. + * ihex.c (ihex_bfd_define_start_stop): Define. + * libbfd-in.h (_bfd_nolink_bfd_define_start_stop): Define. + * mach-o-target.c (bfd_mach_o_bfd_define_start_stop): Define. + * mmo.c (mmo_bfd_define_start_stop): Define. + * nlm-target.h (nlm_bfd_define_start_stop): Define. + * oasys.c (oasys_bfd_define_start_stop): Define. + * pef.c (bfd_pef_bfd_define_start_stop): Define. + * plugin.c (bfd_plugin_bfd_define_start_stop): Define. + * ppcboot.c (ppcboot_bfd_define_start_stop): Define. + * som.c (som_bfd_define_start_stop): Define. + * srec.c (srec_bfd_define_start_stop): Define. + * tekhex.c (tekhex_bfd_define_start_stop): Define. + * versados.c (versados_bfd_define_start_stop): Define. + * vms-alpha.c (vms_bfd_define_start_stop): Define. + (alpha_vms_bfd_define_start_stop): Define. + * xsym.c (bfd_sym_bfd_define_start_stop): Define. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2017-06-16 Jiong Wang + + * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use + SYMBOL_REFERENCES_LOCAL. + +2017-06-15 Jiong Wang + + PR ld/21532 + * elfnn-aarch64.c (ELIMINATE_COPY_RELOCS): Set to 1. + (elfNN_aarch64_final_link_relocate): Also propagate relocations to + runtime for if there needs copy relocation elimination. + (need_copy_relocation_p): New function. Return true for symbol with + pc-relative references and if it's against read-only sections. + (elfNN_aarch64_adjust_dynamic_symbol): Use need_copy_relocation_p. + (elfNN_aarch64_check_relocs): Allocate dynrelocs for relocation types + that are related with accessing external objects. + (elfNN_aarch64_gc_sweep_hook): Sync the relocation types with the change + in elfNN_aarch64_check_relocs. + +2017-06-15 Nick Clifton + + PR binutils/21582 + * ieee.c (ieee_object_p): Use a static buffer to avoid compiler + bugs. + PR binutils/21581 + (ieee_archive_p): Likewise. + +2017-06-15 Nick Clifton + + PR binutils/21579 + * vms-alpha.c (_bfd_vms_slurp_etir): Extend check of cmd_length. + +2017-06-14 Max Filippov + + * elf32-xtensa.c (elf_xtensa_be_plt_entry, + elf_xtensa_le_plt_entry): Add dimension for the ABI to arrays, + keep both windowed and call0 ABI PLT definitions. + (elf_xtensa_create_plt_entry): Use selected ABI to choose upper + elf_xtensa_*_plt_entry endex. + (ELF_MAXPAGESIZE): Fix at minimal supported MMU page size. + +2017-06-14 Nick Clifton + + PR binutils/21578 + * elf32-sh.c (sh_elf_set_mach_from_flags): Fix check for invalid + flag value. + +2017-06-14 Nick Clifton + + PR binutils/21589 + * vms-alpha.c (_bfd_vms_get_value): Add an extra parameter - the + maximum value for the ascic pointer. Check that name processing + does not read beyond this value. + (_bfd_vms_slurp_etir): Add checks for attempts to read beyond the + end of etir record. + +2017-06-14 Nick Clifton + + PR binutils/21591 + * versados.c (versados_mkobject): Zero the allocated tdata structure. + (process_otr): Check for an invalid offset in the otr structure. + +2017-06-14 Sebastian Huber + + * config.bfd (epiphany-*-elf): Accept epiphany-*-*. + +2017-06-13 H.J. Lu + + PR ld/20022 + PR ld/21557 + PR ld/21562 + PR ld/21571 + * elf-bfd.h (elf_link_hash_entry): Add start_stop. Change the + vtable field to a union. + (_bfd_elf_is_start_stop): Removed. + * elf32-i386.c (elf_i386_convert_load_reloc): Also check for + __start_SECNAME and __stop_SECNAME symbols. + * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise. + * elflink.c (_bfd_elf_is_start_stop): Removed. + (_bfd_elf_gc_mark_rsec): Check start_stop instead of calling + _bfd_elf_is_start_stop. + (elf_gc_propagate_vtable_entries_used): Skip __start_SECNAME and + __stop_SECNAME symbols. Updated. + (elf_gc_smash_unused_vtentry_relocs): Likewise. + (bfd_elf_gc_record_vtinherit): Likewise. + (bfd_elf_gc_record_vtentry): Likewise. + +2017-06-13 Nick Clifton + + PR ld/21524 + * elflink.c (elf_link_adjust_relocs): Generate an error when + encountering a reloc against a symbol removed by garbage + collection. + +2017-06-12 H.J. Lu + + * elf-bfd.h (elf_backend_data): Add struct bfd_link_info * + to merge_gnu_properties. + * elf-properties.c (elf_merge_gnu_properties): Add struct + bfd_link_info * and pass it to merge_gnu_properties. + (elf_merge_gnu_property_list): Add struct bfd_link_info * + and pass it to elf_merge_gnu_properties. + (_bfd_elf_link_setup_gnu_properties): Pass info to + elf_merge_gnu_property_list. + * elf32-i386.c (elf_i386_merge_gnu_properties): Add struct + bfd_link_info *. + * elf64-x86-64.c (elf_x86_64_merge_gnu_properties): Likewise. + +2017-06-11 Joe Zbiciak + + PR 21564 + * binary.c (binary_set_section_contents): Scale lma by octets + per byte to set filepos. + +2017-06-08 Cupertino Miranda + + * elf32-arc.c (elf_arc_check_relocs): Fixed conditions to generate + dynamic sections. + +2017-06-08 Cupertino Miranda + + * elf32-arc.c (elf_arc_size_dynamic_sections): Changed condition to + require TEXTREL. + +2017-06-08 Cupertino Miranda + + * arc-got.h (relocate_fix_got_relocs_for_got_info): Added TCB_SIZE to + patched section contents for TLS IE reloc. + * elf32-arc.c: Remove TCB_SIZE preprocessor macro. + +2017-06-08 Cupertino Miranda + + * elf32-arc.c (elf_arc_relocate_section): Added "call" to + RELOC_FOR_GLOBAL_SYMBOL macro. + +2018-06-08 Cupertino Miranda + + * elf32-arc.c (elf_arc_relocate_section): Small refactor and condition + changes. + +2017-06-08 Cupertino Miranda + + * config/tc-arc.c (md_undefined_symbol): Changed. + * config/tc-arc.h (DYNAMIC_STRUCT_NAME): Removed. + +2017-06-08 Cupertino Miranda + + * elf32-arc.c (elf_arc_relocate_section): Fixed reassign of indirect + symbols. + +2017-06-08 Cupertino Miranda + + * elf32-arc.c (elf_arc_check_relocs): Added condition to disable + warning and "Bad value" for local symbols ARC_32 or ARC_32_ME relocs. + +2017-06-08 Cupertino Miranda + + * elf32-arc.c (ADD_RELA): Changed to only work when dynamic + object is created. + +2017-06-08 Richard Earnshaw + + * elf32-arm.c (elf32_arm_merge_eabi_attributes): Remove assertion + that the input bfd has Tag_FP_ARCH non-zero if Tag_ABI_HardFP_use + is non-zero. Add clarifying comments. + +2017-06-08 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Set local IFUNC symbol + name. Use local IFUNC symbol name string to report unsupported + non-PIC call to IFUNC function. + (elf_i386_relocate_section): Dump local IFUNC name with minfo + when generating R_386_IRELATIVE relocation. + (elf_i386_finish_dynamic_symbol): Likewise. + * elf_x86_64_check_relocs (elf_x86_64_check_relocs): Set local + IFUNC symbol name. + (elf_x86_64_relocate_section): Dump local IFUNC name with minfo + when generating R_X86_64_IRELATIVE relocation. + (elf_x86_64_finish_dynamic_symbol): Likewise. + +2017-06-06 Jose E. Marchesi + + * elf.c (setup_group): Make sure BFD sections are created for all + group sections in the input file when processing SHF_GROUP + sections. + (bfd_section_from_shdr): Avoid duplicating logic already + implemented in `setup_group'. + +2017-06-06 Daniel Bonniot de Ruisselet + + PR binutils/21546 + * peXXigen.c (pe_print_idata): Use the address of the first thunk + if the hint address is zero. + +2017-06-06 James Clarke + + PR ld/19579 + * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Check + ELF_COMMON_DEF_P for common symbols. + +2017-06-06 Andrew Burgess + + * elf.c (_bfd_elf_make_section_from_shdr): Don't initially mark + SEC_GROUP sections as SEC_EXCLUDE. + (bfd_elf_set_group_contents): Replace use of abort with an assert. + (assign_section_numbers): Use resolve_section_groups flag instead + of relocatable link type. + (_bfd_elf_init_private_section_data): Use resolve_section_groups + flag instead of checking the final_link flag for part of the + checks in here. Fix white space as a result. + * elflink.c (elf_link_input_bfd): Use resolve_section_groups flag + instead of relocatable link type. + (bfd_elf_final_link): Likewise. + +2017-06-06 Jose E. Marchesi + + * elfxx-mips.c (_bfd_mips_elf_relocate_section): Remove unused + variable `bed'. + * elf32-score.c (score_elf_final_link_relocate): Likewise. + (s3_bfd_score_elf_check_relocs): Likewise. + * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. + (score_elf_final_link_relocate): Likewise. + (s7_bfd_score_elf_check_relocs): Likewise. + +2017-06-06 Jose E. Marchesi + + * elflink.c (init_reloc_cookie_rels): Remove unused variable + `bed'. + +2017-06-06 Maciej W. Rozycki + + * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Subtract `count' + from `reloc_count' rather than decrementing it. + * elf.c (bfd_section_from_shdr): Multiply the adjustment to + `reloc_count' by `int_rels_per_ext_rel'. + * elf32-score.c (score_elf_final_link_relocate): Do not multiply + `reloc_count' by `int_rels_per_ext_rel' for last relocation + entry determination. + (s3_bfd_score_elf_check_relocs): Likewise. + * elf32-score7.c (score_elf_final_link_relocate): Likewise. + (s7_bfd_score_elf_relocate_section): Likewise. + (s7_bfd_score_elf_check_relocs): Likewise. + * elf64-mips.c (mips_elf64_get_reloc_upper_bound): Remove + prototype and function. + (mips_elf64_slurp_one_reloc_table): Do not update `reloc_count'. + (mips_elf64_slurp_reloc_table): Assert that `reloc_count' is + triple rather than once the sum of REL and RELA relocation entry + counts. + (bfd_elf64_get_reloc_upper_bound): Remove macro. + * elflink.c (_bfd_elf_link_read_relocs): Do not multiply + `reloc_count' by `int_rels_per_ext_rel' for internal relocation + storage allocation size determination. + (elf_link_input_bfd): Multiply `.ctors' and `.dtors' section's + size by `int_rels_per_ext_rel'. Do not multiply `reloc_count' + by `int_rels_per_ext_rel' for last relocation entry + determination. + (bfd_elf_final_link): Do not multiply `reloc_count' by + `int_rels_per_ext_rel' for internal relocation storage + allocation size determination. + (init_reloc_cookie_rels): Do not multiply `reloc_count' by + `int_rels_per_ext_rel' for last relocation entry determination. + (elf_gc_smash_unused_vtentry_relocs): Likewise. + * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. + (_bfd_mips_elf_relocate_section): Likewise. + +2017-06-05 Alan Modra + + PR 21529 + * linker.c (_bfd_generic_link_output_symbols): Handle BSF_GNU_UNIQUE. + +2017-06-01 John Baldwin + + * elf.c (elfcore_grok_freebsd_psinfo): Use ELF header class to + determine structure sizes. + (elfcore_grok_freebsd_prstatus): Likewise. + +2017-06-01 Alan Modra + + * elf64-ppc.c (struct ppc_link_hash_table): Add has_plt_localentry0. + (ppc64_elf_merge_symbol_attribute): Merge localentry bits from + dynamic objects. + (is_elfv2_localentry0): New function. + (ppc64_elf_tls_setup): Default params->plt_localentry0. + (plt_stub_size): Adjust size for tls_get_addr_opt stub. + (build_tls_get_addr_stub): Use a simpler stub when r2 is not saved. + (ppc64_elf_size_stubs): Leave stub_type as ppc_stub_plt_call for + optimized localentry:0 stubs. + (ppc64_elf_build_stubs): Save r2 in ELFv2 __glink_PLTresolve. + (ppc64_elf_relocate_section): Leave nop unchanged for optimized + localentry:0 stubs. + (ppc64_elf_finish_dynamic_sections): Set PPC64_OPT_LOCALENTRY in + DT_PPC64_OPT. + * elf64-ppc.h (struct ppc64_elf_params): Add plt_localentry0. + +2017-05-30 Casey Smith + + PR ld/21523 + * elf32-arm.c (elf32_arm_final_link_relocate): Install an absolute + value when processing the R_ARM_THM_ALU_PREL_11_0 reloc. + +2017-05-30 Anton Kolesov Anton.Kolesov@synopsys.com + + * cpu-arc.c (arc_compatible): New function. + +2017-05-30 Anton Kolesov + + * cpu-arc.c (arch_info_struct): Remove duplicate ARC600 entry. + +2017-05-30 H.J. Lu + + PR binutils/21519 + * bfdio.c (bfd_get_file_size): New function. + * bfd-in2.h: Regenerated. + +2017-05-23 Dilian Palauzov + + * elf32-arc.c (arc_elf_merge_attributes): Add fall through + comments. + +2017-05-22 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Use + dynobj instead of htab->elf.dynobj. + +2017-05-19 Maciej W. Rozycki + + * elf64-mips.c (mips_elf64_canonicalize_reloc): Remove prototype + and function. + (mips_elf64_canonicalize_dynamic_reloc): Likewise. + (mips_elf64_slurp_one_reloc_table): Set `reloc_count' to the + actual number of internal relocations retrieved. Adjust + function description. + (bfd_elf64_canonicalize_reloc): Remove macro. + (bfd_elf64_canonicalize_dynamic_reloc): Likewise. + +2017-05-19 Jose E. Marchesi + + * archures.c (bfd_mach_sparc_v9m8): Define. + (bfd_mach_sparc_v8plusm8): Likewise. + (bfd_mach_sparc_v9_p): Adjust to M8. + (bfd_mach_sparc_64bit_p): Likewise. + * aoutx.h (machine_type): Handle bfd_mach_sparc_v9m8 and + bfd_mach_sparc_v8plusm8. + * bfd-in2.h: Regenerated. + * cpu-sparc.c (arch_info_struct): Entries for sparc:v9m8 and + sparc:v8plusm8. + * elfxx-sparc.c (_bfd_sparc_elf_object_p): Handle + bfd_mach_sparc_v8plusm8 and bfd_mach_sparc_v9m8 using the new hw + capabilities ONADDSUB, ONMUL, ONDIV, DICTUNP, FPCPSHL, RLE and + SHA3. + * elf32-sparc.c (elf32_sparc_final_write_processing): Handle + bfd_mach_sparc_v8plusm8. + +2017-05-19 Alan Modra + + * elflink.c (_bfd_elf_gc_mark_extra_sections): Don't keep + debug and special sections when no non-note alloc sections in an + object are kept. + +2017-05-18 Alan Modra + + * arc-got.h: Don't compare boolean values against TRUE or FALSE. + * elf-m10300.c: Likewise. + * elf.c: Likewise. + * elf32-arc.c: Likewise. + * elf32-bfin.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-nds32.c: Likewise. + * elf32-tilepro.c: Likewise. + * elflink.c: Likewise. + * elfnn-aarch64.c: Likewise. + * elfnn-riscv.c: Likewise. + * elfxx-tilegx.c: Likewise. + * mach-o.c: Likewise. + * peXXigen.c: Likewise. + * vms-alpha.c: Likewise. + * vms-lib.c: Likewise. + +2017-05-17 H.J. Lu + + PR ld/20882 + * elflink.c (elf_gc_mark_debug_section): New function. + (_bfd_elf_gc_mark_extra_sections): Mark any debug sections + referenced by kept debug sections. + +2017-05-16 Alan Modra + + * elf-m10300.c: Rename occurrences of non_ir_ref. + * elf32-arm.c: Likewise. + * elf32-bfin.c: Likewise. + * elf32-cr16.c: Likewise. + * elf32-cris.c: Likewise. + * elf32-d10v.c: Likewise. + * elf32-dlx.c: Likewise. + * elf32-fr30.c: Likewise. + * elf32-frv.c: Likewise. + * elf32-hppa.c: Likewise. + * elf32-i370.c: Likewise. + * elf32-i386.c: Likewise. + * elf32-iq2000.c: Likewise. + * elf32-lm32.c: Likewise. + * elf32-m32c.c: Likewise. + * elf32-m32r.c: Likewise. + * elf32-m68hc1x.c: Likewise. + * elf32-m68k.c: Likewise. + * elf32-mcore.c: Likewise. + * elf32-metag.c: Likewise. + * elf32-microblaze.c: Likewise. + * elf32-moxie.c: Likewise. + * elf32-msp430.c: Likewise. + * elf32-mt.c: Likewise. + * elf32-nios2.c: Likewise. + * elf32-or1k.c: Likewise. + * elf32-ppc.c: Likewise. + * elf32-rl78.c: Likewise. + * elf32-s390.c: Likewise. + * elf32-score.c: Likewise. + * elf32-score7.c: Likewise. + * elf32-sh.c: Likewise. + * elf32-tic6x.c: Likewise. + * elf32-tilepro.c: Likewise. + * elf32-v850.c: Likewise. + * elf32-vax.c: Likewise. + * elf32-xstormy16.c: Likewise. + * elf32-xtensa.c: Likewise. + * elf64-alpha.c: Likewise. + * elf64-hppa.c: Likewise. + * elf64-ia64-vms.c: Likewise. + * elf64-mmix.c: Likewise. + * elf64-ppc.c: Likewise. + * elf64-s390.c: Likewise. + * elf64-sh64.c: Likewise. + * elf64-x86-64.c: Likewise. + * elflink.c: Likewise. + * elfnn-aarch64.c: Likewise. + * elfnn-ia64.c: Likewise. + * elfnn-riscv.c: Likewise. + * elfxx-mips.c: Likewise. + * elfxx-sparc.c: Likewise. + * elfxx-tilegx.c: Likewise. + * linker.c: Likewise. + +2017-05-16 Alan Modra + + * elf64-ppc.c (add_symbol_adjust): Transfer non_ir_ref_dynamic. + * elflink.c (elf_link_add_object_symbols): Update to use + non_ir_ref_dynamic. + (elf_link_input_bfd): Test non_ir_ref_dynamic in addition to + non_ir_ref. + * linker.c (_bfd_generic_link_add_one_symbol): Likewise. + +2017-05-15 Maciej W. Rozycki + + * elfxx-mips.c (print_mips_ases): Handle MIPS16e2 ASE. + +2017-05-12 H.J. Lu + + * elf32-i386.c (elf_i386_parse_gnu_properties): Merge + GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED + properties. + * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. + +2017-05-11 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_link_hash_entry): Rename plt_bnd + to plt_second. + (elf_x86_64_link_hash_table): Rename plt_bnd/plt_bnd_eh_frame + to plt_second/plt_second_eh_frame. + (elf_x86_64_link_hash_newfunc): Updated. + (elf_x86_64_allocate_dynrelocs): Likewise. + (elf_x86_64_size_dynamic_sections): Likewise. + (elf_x86_64_relocate_section): Likewise. + (elf_x86_64_finish_dynamic_symbol): Likewise. + (elf_x86_64_finish_dynamic_sections): Likewise. + (elf_x86_64_plt_type): Rename plt_bnd to plt_second. + (elf_x86_64_get_synthetic_symtab): Updated. Also scan the + .plt.sec section. + (elf_backend_setup_gnu_properties): Updated. Create the + .plt.sec section instead of the .plt.sec section. + +2017-05-11 H.J. Lu + + * elf32-i386.c (elf_i386_allocate_dynrelocs): Partially revert + commit 25070364b0ce33eed46aa5d78ebebbec6accec7e. + * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewse. + +2017-05-10 Jose E. Marchesi + + * elf64-sparc.c (elf64_sparc_set_reloc): New function. + (bfd_elf64_set_reloc): Define. + (elf64_sparc_write_relocs): Use `canon_reloc_count'. + +2017-05-10 Jose E. Marchesi + + * targets.c (BFD_JUMP_TABLE_RELOCS): Add NAME##_set_reloc. + (struct bfd_target): New field _bfd_set_reloc. + * bfd.c (bfd_set_reloc): Call backend _set_bfd. + * reloc.c (_bfd_generic_set_reloc): New function. + * coffcode.h (coff_set_reloc): Define to _bfd_generic_set_reloc. + * nlm-target.h (nlm_set_reloc): Likewise. + * coff-rs6000.c (_bfd_xcoff_set_reloc): Likewise. + * aout-tic30.c (MY_set_reloc): Likewise. + * aout-target.h (MY_set_reloc): Likewise. + * elfxx-target.h (bfd_elfNN_set_reloc): Likewise. + * coff-alpha.c (_bfd_ecoff_set_reloc): Likewise. + * mach-o-target.c (bfd_mach_o_set_reloc): Likewise. + * vms-alpha.c (alpha_vms_set_reloc): Likewise. + * aout-adobe.c (aout_32_set_reloc): Likewise. + * bout.c (b_out_set_reloc): Likewise. + * coff-mips.c (_bfd_ecoff_set_reloc): Likewise. + * i386os9k.c (aout_32_set_reloc): Likewise. + * ieee.c (ieee_set_reloc): Likewise. + * oasys.c (oasys_set_reloc): Likewise. + * som.c (som_set_reloc): Likewise. + * versados.c (versados_set_reloc): Likewise. + * coff64-rs6000.c (rs6000_xcoff64_vec): Add + _bfd_generic_set_reloc. + (rs6000_xcoff64_aix_vec): LIkewise. + * libbfd.c (_bfd_norelocs_set_reloc): New function. + * libbfd-in.h: Prototype for _bfd_norelocs_set_reloc. + * i386msdos.c (msdos_set_reloc): Define to + _bfd_norelocs_set_reloc. + * elfcode.h (elf_set_reloc): Define. + * bfd-in2.h: Regenerated. + +2017-05-10 H.J. Lu + + PR ld/21481 + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Use .plt.bnd + for IFUNC function address. + +2017-05-10 Claudiu Zissulescu + + * elf32-arc.c (FEATURE_LIST_NAME): Define. + (CONFLICT_LIST): Likewise. + (opcode/arc-attrs.h): Include. + (arc_elf_print_private_bfd_data): Print OSABI v4 flag. + (arc_extract_features): New file. + (arc_stralloc): Likewise. + (arc_elf_merge_attributes): Likewise. + (arc_elf_merge_private_bfd_data): Use object attributes. + (bfd_arc_get_mach_from_attributes): New function. + (arc_elf_object_p): Use object attributes. + (arc_elf_final_write_processing): Likewise. + (elf32_arc_obj_attrs_arg_type): New function. + (elf32_arc_obj_attrs_handle_unknown): Likewise. + (elf32_arc_section_from_shdr): Likewise. + (elf_backend_obj_attrs_vendor): Define. + (elf_backend_obj_attrs_section): Likewise. + (elf_backend_obj_attrs_arg_type): Likewise. + (elf_backend_obj_attrs_section_type): Likewise. + (elf_backend_obj_attrs_handle_unknown): Likewise. + (elf_backend_section_from_shdr): Likewise. + +2017-05-09 Andrew Goedhart + + PR ld/21458 + * elf32-arm.c (elf32_arm_final_link_relocate): Set the bottom bit + of the value when resolving a R_ARM_THM_ALU_PREL_11_0 relocation + and the destination is a Thumb symbol. + +2017-05-08 H.J. Lu + + * elf32-i386.c (elf_i386_get_synthetic_symtab): Add missing + initializer to silence GCC 4.2. + * lf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. + +2017-05-08 H.J. Lu + + * elf64-x86-64.c (PLT_ENTRY_SIZE): Renamed to ... + (LAZY_PLT_ENTRY_SIZE): This. + (NON_LAZY_PLT_ENTRY_SIZE): New. + (elf_x86_64_plt0_entry): Renamed to ... + (elf_x86_64_lazy_plt0_entry): This. + (elf_x86_64_plt_entry): Renamed to ... + (elf_x86_64_lazy_plt_entry): This. + (elf_x86_64_bnd_plt0_entry): Renamed to ... + (elf_x86_64_lazy_bnd_plt0_entry): This. + (elf_x86_64_legacy_plt_entry): Removed. + (elf_x86_64_bnd_plt_entry): Renamed to ... + (elf_x86_64_lazy_bnd_plt_entry): This. + (elf_x86_64_legacy_plt2_entry): Renamed to ... + (elf_x86_64_non_lazy_plt_entry): This. + (elf_x86_64_bnd_plt2_entry): Renamed to ... + (elf_x86_64_non_lazy_bnd_plt_entry): This. + (elf_x86_64_eh_frame_plt): Renamed to ... + (elf_x86_64_eh_frame_lazy_plt): This. + (elf_x86_64_eh_frame_bnd_plt): Renamed to ... + (elf_x86_64_eh_frame_lazy_bnd_plt): This. + (elf_x86_64_eh_frame_plt_got): Renamed to ... + (elf_x86_64_eh_frame_non_lazy_plt): This. + (elf_x86_64_lazy_plt_layout): New. + (elf_x86_64_non_lazy_plt_layout): Likewise. + (elf_x86_64_plt_layout): Likewise. + (elf_x86_64_backend_data): Remove PLT layout information. Add + os for target system. + (GET_PLT_ENTRY_SIZE): Removed. + (elf_x86_64_lazy_plt): New. + (elf_x86_64_non_lazy_plt): Likewise. + (elf_x86_64_lazy_bnd_plt): Likewise. + (elf_x86_64_non_lazy_bnd_plt): Likewise. + (elf_x86-64_arch_bed): Updated. + (elf_x86_64_link_hash_table): Add plt, lazy_plt and non_lazy_plt. + (elf_x86_64_create_dynamic_sections): Removed. + (elf_x86_64_check_relocs): Don't check elf.dynobj. Don't call + _bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section. + (elf_x86-64_adjust_dynamic_symbol): Updated. + (elf_x86_64_allocate_dynrelocs): Updated. Pass 0 as PLT header + size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate + size for PLT0 if there is no PLT0. Get plt_entry_size from + non_lazy_plt for non-lazy PLT entries. + (elf_x86_64_size_dynamic_sections): Updated. Get plt_entry_size + from non_lazy_plt for non-lazy PLT entries. + (elf_x86-64_relocate_section): Updated. Properly get PLT index + if there is no PLT0. + (elf_x86_64_finish_dynamic_symbol): Updated. Fill the first slot + in the PLT entry with generic PLT layout. Fill the non-lazy PLT + entries with non-lazy PLT layout. Don't fill the second and third + slots in the PLT entry if there is no PLT0. + (elf_x86_64_finish_dynamic_sections): Updated. Don't fill PLT0 + if there is no PLT0. Set sh_entsize on the .plt.got section. + (compare_relocs): New. + (elf_x86_64_plt_type): Likewise. + (elf_x86_64_plt): Likewise. + (elf_x86_64_nacl_plt): New. Forward declaration. + (elf_x86_64_get_plt_sym_val): Removed. + (elf_x86_64_get_synthetic_symtab): Rewrite to check PLT sections + against all dynamic relocations. + (elf_x86_64_link_setup_gnu_properties): New function. + (elf_backend_create_dynamic_sections): Updated. + (elf_backend_setup_gnu_properties): New. + (elf_x86_64_nacl_plt): New. + (elf_x86_64_nacl_arch_bed): Updated. + +2017-05-08 H.J. Lu + + * elf32-i386.c (PLT_ENTRY_SIZE): Renamed to ... + (LAZY_PLT_ENTRY_SIZE): This. + (NON_LAZY_PLT_ENTRY_SIZE): New. + (elf_i386_plt0_entry): Renamed to ... + (elf_i386_lazy_plt0_entry): This. + (elf_i386_plt_entry): Renamed to ... + (elf_i386_lazy_plt_entry): This. + (elf_i386_pic_plt0_entry): Renamed to ... + (elf_i386_pic_lazy_plt0_entry): This. + (elf_i386_pic_plt_entry): Renamed to ... + (elf_i386_pic_lazy_plt_entry): This. + (elf_i386_got_plt_entry): Renamed to ... + (elf_i386_non_lazy_plt_entry): This. + (elf_i386_pic_got_plt_entry): Renamed to ... + (elf_i386_pic_non_lazy_plt_entry): This. + (elf_i386_eh_frame_plt): Renamed to ... + (elf_i386_eh_frame_lazy_plt): This. + (elf_i386_eh_frame_plt_got): Renamed to ... + (elf_i386_eh_frame_non_lazy_plt): This. + (elf_i386_plt_layout): Renamed to ... + (elf_i386_lazy_plt_layout): This. Remove eh_frame_plt_got and + eh_frame_plt_got_size. + (elf_i386_non_lazy_plt_layout): New. + (elf_i386_plt_layout): Likewise. + (elf_i386_non_lazy_plt): Likewise. + (GET_PLT_ENTRY_SIZE): Removed. + (elf_i386_plt): Renamed to ... + (elf_i386_lazy_plt): This. + (elf_i386_backend_data): Remove plt. Rename is_vxworks to os. + (elf_i386_arch_bed): Updated. + (elf_i386_link_hash_table): Add plt, lazy_plt and non_lazy_plt. + (elf_i386_create_dynamic_sections): Removed. + (elf_i386_check_relocs): Don't check elf.dynobj. Don't call + _bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section. + (elf_i386_adjust_dynamic_symbol): Updated. + (elf_i386_allocate_dynrelocs): Updated. Pass 0 as PLT header + size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate + size for PLT0 if there is no PLT0. + (elf_i386_size_dynamic_sections): Updated. Check whether GOT + output section is discarded only if GOT isn't empty. + (elf_i386_relocate_section): Updated. Properly get PLT index + if there is no PLT0. + (elf_i386_finish_dynamic_symbol): Updated. Don't fill the + second and third slots in the PLT entry if there is no PLT0. + (elf_i386_finish_dynamic_sections): Updated. Don't fill PLT0 + if there is no PLT0. Set sh_entsize on the .plt.got section. + (elf_i386_nacl_plt): Forward declaration. + (elf_i386_get_plt_sym_val): Removed. + (elf_i386_get_synthetic_symtab): Rewrite to check PLT sections + against all dynamic relocations. + (elf_i386_link_setup_gnu_properties): New function. + (elf_backend_create_dynamic_sections): Updated. + (elf_backend_setup_gnu_properties): New. + (elf_i386_nacl_plt): Updated. + (elf_i386_nacl_arch_bed): Likewise. + (elf_i386_vxworks_arch_bed): Likewise. + +2017-05-08 Thomas Preud'homme + + * elflink.c (elf_output_implib): Remove executable flag from import + library bfd. + * elf32-arm.c (elf32_arm_filter_implib_symbols): Assert that the import + library is a relocatable object file. + +2017-05-01 Senthil Kumar Selvaraj + + PR ld/21404 + * elf32-avr.c (avr_should_move_sym): New function. + (avr_should_reduce_sym_size): Likewise. + (avr_should_increase_sym_size): Likewise. + (elf32_avr_relax_delete_bytes): Adjust symbol values + and sizes by calling new functions. + +2017-05-01 Palmer Dabbelt + + * config.bfd (riscv32-*): Enable rv64. + +2017-05-02 Alan Modra + + PR 21384 + * elflink.c (bfd_elf_link_mark_dynamic_symbol): Test h->non_elf + rather than h->root.type == bfd_link_hash_new. + (bfd_elf_record_link_assignment): Similarly, call + bfd_elf_link_mark_dynamic_symbol when h->non_elf. + +2017-04-29 Alan Modra + + PR 21432 + * reloc.c (reloc_offset_in_range): New function. + (bfd_perform_relocation, bfd_install_relocation): Use it. + (_bfd_final_link_relocate): Likewise. + +2017-04-28 H.J. Lu + + * elf32-i386.c (elf_i386_allocate_dynrelocs): Check plt_got + before using .plt.got. + * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise. + +2017-04-27 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Use "=" + instead of "+=" to update 0. + +2017-04-27 H.J. Lu + + * elf32-i386.c (elf_i386_create_dynamic_sections): Create the + .plt.got section here. + (elf_i386_check_relocs): Don't create the .plt.got section. + * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Create + the .plt.got and .plt.bnd sections here. + (elf_x86_64_check_relocs): Don't create the .plt.got nor + .plt.bnd sections. + +2017-04-27 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_link_hash_entry): Remove + has_bnd_reloc. + (elf_x86_64_link_hash_newfunc): Don't clear has_bnd_reloc. + (elf_x86_64_copy_indirect_symbol): Don't copy has_bnd_reloc. + (elf_x86_64_check_relocs): Don't set has_bnd_reloc. + (elf_x86_64_finish_dynamic_symbol): Check bndplt instead of + has_bnd_reloc. + +2017-04-27 H.J. Lu + + * elf-bfd.h (elf_backend_data): Change setup_gnu_properties + to return bfd *. + (_bfd_elf_link_setup_gnu_properties): Return bfd *. + * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Return + the first relocatable ELF input with GNU properties. + +2017-04-27 H.J. Lu + + * elf32-i386.c (elf_i386_finish_dynamic_sections): Simplify + VxWorks for non-PIC. + +2017-04-27 Alan Modra + + * elf-bfd.h (struct elf_backend_data): Make asection param of + elf_backend_eh_frame_address_size const. + (_bfd_elf_eh_frame_address_size): Likewise. + * elf32-m32c.c (_bfd_m32c_elf_eh_frame_address_size): Likewise. + * elf32-msp430.c (elf32_msp430_eh_frame_address_size): Likewise. + * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): Likewise. + * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Likewise. + * elf-eh-frame.c (_bfd_elf_eh_frame_address_size): Likewise. + (next_cie_fde_offset): Constify params. + (offset_adjust, adjust_eh_frame_local_symbols): Likewise. + +2017-04-27 Alan Modra + + * elf-bfd.h (struct eh_cie_fde): Add aug_str_len and aug_data_len. + (_bfd_elf_adjust_eh_frame_global_symbol): Declare. + * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Set aug_str_len and + aug_data_len. + (offset_adjust): New function. + (_bfd_elf_adjust_eh_frame_global_symbol): Likewise. + (adjust_eh_frame_local_symbols): Likewise. + (_bfd_elf_discard_section_eh_frame): Call adjust_eh_frame_local_symbols + after changing anything. Return true if anything changed. + * elflink.c (bfd_elf_discard_info): If .eh_frame changed, call + _bfd_elf_adjust_eh_frame_global_symbol for globals. + +2017-04-27 Alan Modra + + * elflink.c (_bfd_elf_link_hash_hide_symbol): Clear dynstr_index + when force_local. + +2017-04-27 Alan Modra + + * elf32-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Define. + (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Use it. + (ppc_elf_adjust_dynamic_symbol, allocate_dynrelocs): Likewise. + (ppc_elf_relocate_section): Likewise. Delete silly optimisation + for undef and undefweak dyn_relocs. + * elf64-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Define. + (ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup): Use it. + (allocate_got, allocate_dynrelocs): Likewise. + (ppc64_elf_relocate_section): Likewise. + +2017-04-26 H.J. Lu + + * elf32-i386.c (elf_i386_size_dynamic_sections): Alwasys add + DT_PLTRELSZ, DT_PLTREL and DT_JMPREL for .rel.plt section. + * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Alwasys + add DT_PLTRELSZ, DT_PLTREL and DT_JMPREL for .rela.plt section. + +2017-04-26 Nick Clifton + + PR binutils/21434 + * reloc.c (bfd_perform_relocation): Check for a negative address + in the reloc. + +2017-04-26 Maciej W. Rozycki + + PR ld/21334 + * elf-bfd.h (elf_backend_data): Add `always_renumber_dynsyms' + member. + * elfxx-target.h [!elf_backend_always_renumber_dynsyms] + (elf_backend_always_renumber_dynsyms): Define. + (elfNN_bed): Initialize `always_renumber_dynsyms' member. + * elfxx-mips.h (elf_backend_always_renumber_dynsyms): Define. + * elflink.c (bfd_elf_size_dynamic_sections): Also call + `_bfd_elf_link_renumber_dynsyms' if the backend has requested + it. + (bfd_elf_size_dynsym_hash_dynstr): Likewise. + +2017-04-26 Maciej W. Rozycki + + * elflink.c (bfd_elf_size_dynamic_sections): Only call + `_bfd_elf_link_renumber_dynsyms' after section GC if dynamic + sections have been created. + +2017-04-26 Nick Clifton + + PR binutils/21431 + * compress.c (bfd_init_section_compress_status): Check the return + value from bfd_malloc. + +2017-04-24 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_link_hash_entry): Add + no_finish_dynamic_symbol. + (elf_x86_64_link_hash_newfunc): Set no_finish_dynamic_symbol to + 0. + (elf_x86_64_allocate_dynrelocs): If a symbol isn't undefined + weak symbol, don't make it dynamic. + (elf_x86_64_relocate_section): If a symbol isn't dynamic in PIC, + set no_finish_dynamic_symbol and generate R_X86_64_RELATIVE + relocation for GOT reference. + (elf_x86_64_finish_dynamic_symbol): Abort if + no_finish_dynamic_symbol isn't 0. + +2017-04-24 H.J. Lu + + PR ld/21402 + * elf32-i386.c (elf_i386_allocate_dynrelocs): If a symbol isn't + undefined weak symbol, don't make it dynamic. + (elf_i386_relocate_section): If a symbol isn't dynamic in PIC, + set no_finish_dynamic_symbol and generate R_386_RELATIVE + relocation for R_386_GOT32. + +2017-04-24 H.J. Lu + + PR ld/21425 + * elf32-i386.c (ELF_MAXPAGESIZE): Set to 0x1000 for VxWorks. + +2017-04-23 Alan Modra + + PR 21414 + * section.c (GLOBAL_SYM_INIT): Make available in bfd.h. + * elf.c (lcomm_sym): New. + (_bfd_elf_large_com_section): Use lcomm_sym section symbol. + * bfd-in2.h: Regenerate. + +2017-04-23 Alan Modra + + PR 21412 + * elf-bfd.h (struct elf_backend_data ): Change + parameters and comment. + (_bfd_elf_get_reloc_section): Delete. + (_bfd_elf_plt_get_reloc_section): Declare. + * elf.c (_bfd_elf_plt_get_reloc_section, elf_get_reloc_section): + New functions. Don't blindly skip over assumed .rel/.rela prefix. + Extracted from.. + (_bfd_elf_get_reloc_section): ..here. Delete. + (assign_section_numbers): Call elf_get_reloc_section. + * elf64-ppc.c (elf_backend_get_reloc_section): Define. + * elfxx-target.h (elf_backend_get_reloc_section): Update. + +2017-04-23 Alan Modra + + PR 21409 + * dwarf2.c (_bfd_dwarf2_find_nearest_line): Don't segfault when + no symbols. + +2017-04-21 H.J. Lu + + PR ld/21402 + * elf32-i386.c (elf_i386_link_hash_entry): Add + no_finish_dynamic_symbol. + (elf_i386_link_hash_newfunc): Set no_finish_dynamic_symbol to 0. + (elf_i386_allocate_dynrelocs): If a symbol isn't undefined weak + symbol, don't make it dynamic in PIE. + (elf_i386_relocate_section): If a symbol isn't dynamic in PIE, + set no_finish_dynamic_symbol and generate R_386_RELATIVE + relocation for R_386_GOT32 + (elf_i386_finish_dynamic_symbol): Abort if no_finish_dynamic_symbol + isn't 0. + +2017-04-21 H.J. Lu + + PR ld/19617 + PR ld/21086 + * elflink.c (elf_link_add_object_symbols): Require + --no-dynamic-linker with -E/--dynamic-list when creating + dynamic sections. + +2017-04-20 Maciej W. Rozycki + + * elflink.c (_bfd_elf_symbol_refs_local_p): Always return TRUE + if forced local. + +2017-04-20 Maciej W. Rozycki + + * elfxx-mips.c (_bfd_mips_elf_final_link): Reorder comment about + dynamic symbol sorting. + +2017-04-20 H.J. Lu + + PR ld/21382 + * elflink.c (elf_link_add_object_symbols): Preserve + dynamic_ref_after_ir_def when restoring the symbol table for + unneeded dynamic object. + +2017-04-19 H.J. Lu + + PR ld/21401 + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't abort + on on undefined IFUNC symbol in the second PLT. + +2017-04-19 Wedson Almeida Filho + + * peXXigen.c (pe_print_reloc): Correct chunk_end. + +2017-04-19 Alan Modra + + * elflink.c (_bfd_elf_adjust_dynamic_symbol): Hide undefweak + or make dynamic for info->dynamic_undefined_weak 0 and 1. + * elf32-ppc.c:Formatting. + (ensure_undefweak_dynamic): Don't make dynamic when + info->dynamic_undefined_weak is zero. + (allocate_dynrelocs): Discard undefweak dyn_relocs for + info->dynamic_undefined_weak. Discard undef dyn_relocs when + not default visibility. Discard undef and undefweak + dyn_relocs earlier. + (ppc_elf_relocate_section): Adjust to suit. + * elf64-ppc.c: Formatting. + (ensure_undefweak_dynamic): Don't make dynamic when + info->dynamic_undefined_weak is zero. + (allocate_dynrelocs): Discard undefweak dyn_relocs for + info->dynamic_undefined_weak. Discard them earlier. + +2017-04-17 H.J. Lu + + PR ld/21389 + * elflink.c (bfd_elf_size_dynamic_sections): Get soname index + before generating the version definition section. + +2017-04-17 Alan Modra + + * elflink.c (_bfd_elf_merge_symbol): Undo dynamic linking + state when a regular object file defines a symbol with + incompatible type to that defined by an earlier shared lib. + +2017-04-13 Alan Modra + + * coffcode.h: Wrap some overly long _bfd_error_handler args. + * elf.c: Likewise. + * elf32-arm.c: Likewise. + * elf32-i386.c: Likewise. + * elf32-mep.c: Likewise. + * elf64-ia64-vms.c: Likewise. + * elf64-x86-64.c: Likewise. + * elflink.c: Likewise. + * elfnn-ia64.c: Likewise. + * elfxx-mips.c: Likewise. + +2017-04-13 Alan Modra + + * aoutx.h: Use %B and %A in error messages throughout file. + * aout-cris.c: Likewise. + * archive.c: Likewise. + * binary.c: Likewise. + * coff-rs6000.c: Likewise. + * coff-tic4x.c: Likewise. + * coffcode.h: Likewise. + * coffgen.c: Likewise. + * cofflink.c: Likewise. + * coffswap.h: Likewise. + * cpu-arm.c: Likewise. + * elf-eh-frame.c: Likewise. + * elf-m10300.c: Likewise. + * elf.c: Likewise. + * elf32-arc.c: Likewise. + * elf32-arm.c: Likewise. + * elf32-bfin.c: Likewise. + * elf32-frv.c: Likewise. + * elf32-iq2000.c: Likewise. + * elf32-m32c.c: Likewise. + * elf32-microblaze.c: Likewise. + * elf32-nds32.c: Likewise. + * elf32-rl78.c: Likewise. + * elf32-rx.c: Likewise. + * elf32-score.c: Likewise. + * elf32-score7.c: Likewise. + * elf32-sh64.c: Likewise. + * elf32-v850.c: Likewise. + * elf32-vax.c: Likewise. + * elf32-visium.c: Likewise. + * elf64-ia64-vms.c: Likewise. + * elf64-mmix.c: Likewise. + * elf64-sh64.c: Likewise. + * elfcode.h: Likewise. + * elfnn-aarch64.c: Likewise. + * elfnn-ia64.c: Likewise. + * elfxx-mips.c: Likewise. + * hpux-core.c: Likewise. + * ieee.c: Likewise. + * ihex.c: Likewise. + * linker.c: Likewise. + * merge.c: Likewise. + * mmo.c: Likewise. + * oasys.c: Likewise. + * pdp11.c: Likewise. + * peXXigen.c: Likewise. + * rs6000-core.c: Likewise. + * vms-alpha.c: Likewise. + * xcofflink.c: Likewise. + +2017-04-13 Alan Modra + + * bfd.c (PRINT_TYPE): Define. + (_doprnt): New function. + (error_handler_internal): Use _doprnt. + * coff-arm.c: Put %A and %B arguments to _bfd_error_handler + calls in their natural order, throughout file. + * coff-mcore.c: Likewise. + * coff-ppc.c: Likewise. + * coff-tic80.c: Likewise. + * cofflink.c: Likewise. + * elf-s390-common.c: Likewise. + * elf.c: Likewise. + * elf32-arm.c: Likewise. + * elf32-i386.c: Likewise. + * elf32-m32r.c: Likewise. + * elf32-msp430.c: Likewise. + * elf32-spu.c: Likewise. + * elf64-ia64-vms.c: Likewise. + * elf64-sparc.c: Likewise. + * elf64-x86-64.c: Likewise. + * elflink.c: Likewise. + * elfnn-aarch64.c: Likewise. + * elfnn-ia64.c: Likewise. + * elfxx-mips.c: Likewise. + +2017-04-13 Alan Modra + + * elf32-arm.c (arm_type_of_stub): Supply missing args to "long + branch veneers" error. Fix double space and format message. + * elf32-avr.c (avr_add_stub): Do not pass NULL as %B arg. + * elf64-ppc.c (tocsave_find): Supply missing %B arg. + +2017-04-13 Alan Modra + + * bfd-in2.h: Regenerate. + +2017-04-11 H.J. Lu + + * elf-properties.c (_bfd_elf_parse_gnu_properties): Remove the + extra `\n' in warning/error messages. + * elf32-i386.c (elf_i386_parse_gnu_properties): Likewise. + * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. + +2017-04-11 H.J. Lu + + * elf-properties.c (_bfd_elf_parse_gnu_properties): Ignore + processor-specific properties with generic ELF target vector. + +2017-04-10 Qing Zhao + + * elf32-sparc.c (elf_backend_fixup_symbol): New. + * elf64-sparc.c (elf_backend_fixup_symbol): New. + * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New. + (_bfd_sparc_elf_link_hash_entry): Add has_got_reloc and + has_non_got_reloc. + (link_hash_newfunc): Initialize has_got_reloc and + has_non_got_reloc. + (_bfd_sparc_elf_size_dynamic_sections): Set interp to .interp + section. + (_bfd_sparc_elf_copy_indirect_symbol): Copy has_got_reloc and + has_non_got_reloc. + (_bfd_sparc_elf_check_relocs): Set has_got_reloc and + has_non_got_reloc. + (_bfd_sparc_elf_fixup_symbol): New function. + (allocate_dynrelocs): Don't allocate space for dynamic + relocations and discard relocations against resolved undefined + weak symbols in executable. Don't make resolved undefined weak + symbols in executable dynamic. Keep dynamic non-GOT/non-PLT + relocation against undefined weak symbols in PIE. + (_bfd_sparc_elf_relocate_section): Don't generate dynamic + relocations against resolved undefined weak symbols in PIE + (_bfd_sparc_elf_finish_dynamic_symbol): Keep PLT/GOT entries + without ynamic PLT/GOT relocations for resolved undefined weak + symbols. + Don't generate dynamic relocation against resolved undefined + weak symbol in executable. + (pie_finish_undefweak_symbol): New function. + (_bfd_sparc_elf_finish_dynamic_sections): Call + pie_finish_undefweak_symbol on all symbols in PIE. + * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add interp. + (_bfd_sparc_elf_fixup_symbol): New function. + +2017-04-10 Nick Clifton + + * config.bfd: Remove ns32k from obsolete list. + +2017-04-10 Alan Modra + + PR 21287 + * elf.c (special_sections_f): Match .fini_array and .fini_array.*. + (special_sections_i): Likewise for .init_array. + (special_sections_p): Likewise for .preinit_array. + +2017-04-07 H.J. Lu + + PR ld/19579 + PR ld/21306 + * elf32-s390.c (elf_s390_finish_dynamic_symbol): Check + ELF_COMMON_DEF_P for common symbols. + * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. + * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. + * elflink.c (_bfd_elf_merge_symbol): Revert commits + 202ac193bbbecc96a4978d1ac3d17148253f9b01 and + 07492f668d2173da7a2bda3707ff0985e0f460b6. + +2017-04-07 Pedro Alves + + * opncls.c (bfd_get_debug_link_info): Rename to... + (bfd_get_debug_link_info_1): ... this. Change type of second + parameter to void pointer. Adjust. + (bfd_get_debug_link_info): Reimplement on top of + bfd_get_debug_link_info_1. + (separate_debug_file_exists, separate_alt_debug_file_exists): + Change type of second parameter to void pointer. Adjust. + (get_func_type, check_func_type): Change type of second parameter + to void pointer. + (find_separate_debug_file): Add 'func_data' parameter. Pass it to + the callback functions instead of passing the address of a local. + (bfd_follow_gnu_debuglink): Pass address of unsigned long local to + find_separate_debug_file. + (get_alt_debug_link_info_shim): Change type of second parameter to + void pointer. Adjust. + (bfd_follow_gnu_debugaltlink): Adjust to pass NULL to + find_separate_debug_file. + (get_build_id_name, bfd_boolean check_build_id_file): Change type + of second parameter to void pointer. Adjust. + (bfd_follow_build_id_debuglink): Pass address of bfd_build_id + pointer local to find_separate_debug_file. + +2017-04-07 Tristan Gingold + + * coffgen.c (_bfd_coff_gc_mark_hook): Handle PE weak + external symbols with a definition. + (_bfd_coff_gc_mark_extra_sections): Fix typo. + +2017-04-07 Alan Modra + + * po/SRC-POTFILES.in: Regenerate. + +2017-04-05 Alan Modra + + * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Support ELFv2 PLT + reference counting. + +2017-04-02 Jon Turney + + (_bfd_XXi_swap_aouthdr_out): For clarity, use defines rather than + numbers for DataDirectory entry indicies passed to + add_data_entry(). + +2017-04-04 H.J. Lu + + * elf.c (get_program_header_size): Add a GNU_MBIND segment for + each GNU_MBIND section and align GNU_MBIND section to page size. + (_bfd_elf_map_sections_to_segments): Create a GNU_MBIND + segment for each GNU_MBIND section. + (_bfd_elf_init_private_section_data): Copy sh_info from input + for GNU_MBIND section. + +2017-04-03 Palmer Dabbelt + + * elfnn-riscv.c (GP_NAME): Delete. + (riscv_global_pointer_value): Change GP_NAME to RISCV_GP_SYMBOL. + (_bfd_riscv_relax_lui): Likewise. + +2017-04-04 Nick Clifton + + PR binutils/21342 + * elflink.c (_bfd_elf_define_linkage_sym): Prevent null pointer + dereference. + (bfd_elf_final_link): Only initialize the extended symbol index + section if there are extended symbol tables to list. + +2017-04-03 H.J. Lu + + * Makefile.am (BFD32_BACKENDS): Add elf-properties.lo. + (BFD32_BACKENDS_CFILES): Add elf-properties.c. + * configure.ac (elf): Add elf-properties.lo. + * Makefile.in: Regenerated. + * configure: Likewise. + * elf-bfd.h (elf_property_kind): New. + (elf_property): Likewise. + (elf_property_list): Likewise. + (elf_properties): Likewise. + (_bfd_elf_parse_gnu_properties): Likewise. + (_bfd_elf_get_property): Likewise. + (_bfd_elf_link_setup_gnu_properties): Likewise. + (elf_backend_data): Add parse_gnu_properties, merge_gnu_properties + and setup_gnu_properties. + (elf_obj_tdata): Add properties. + * elf-properties.c: New file. + * elf32-i386.c (elf_i386_parse_gnu_properties): New. + (elf_i386_merge_gnu_properties): Likewise. + (elf_backend_parse_gnu_properties): Likewise. + (elf_backend_merge_gnu_properties): Likewise. + * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. + (elf_x86_64_merge_gnu_properties): Likewise. + (elf_backend_parse_gnu_properties): Likewise. + (elf_backend_merge_gnu_properties): Likewise. + * elfxx-target.h (elf_backend_merge_gnu_properties): Likewise. + (elf_backend_parse_gnu_properties): Likewise. + (elf_backend_setup_gnu_properties): Likewise. + (elfNN_bed): Add elf_backend_parse_gnu_properties, + elf_backend_merge_gnu_properties and + elf_backend_setup_gnu_properties. + +2017-03-30 Pip Cet + + * elf32-wasm32.c: Add relocation code, two relocs. + * reloc.c: Add wasm32 relocations. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + * bfd/po/bfd.pot: Regenerate. + +2017-03-29 Nick Clifton + + PR binutils/18025 + * coff-bfd.h (struct coff_section_data): Add new fields: + saved_bias and bias. + * coffgen.c (coff_find_nearest_line_with_names): Cache the bias + computed for PE binaries. + * dwarf2.c (scan_unit_for_symbols): Only warn once about each + missing abbrev. + +2017-03-28 Hans-Peter Nilsson + + PR ld/16044 + * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Adjust BFD_ASSERT + to handle a local symbol with a hash-symbol-entry; without PLT. + Add BFD_ASSERT for an incidental case with GOT entry present. + (cris_elf_check_relocs): Increment PLT refcount only if the symbol + isn't forced-or-set local. + +2017-03-27 Pip Cet + + * wasm-module.c: New file to support WebAssembly modules. + * wasm-module.h: New file to support WebAssembly modules. + * doc/webassembly.texi: Start documenting wasm-module.c. + * config.bfd: Add wasm_vec. + * targets.c: Likewise. + * configure.ac: Likewise. + * Makefile.am: Add entries for wasm-module.c. + * Makefile.in: Regenerate. + * configure: Regenerate. + * po/SRC-POTFILES.in: Regenerate. + +2017-03-27 Pip Cet + + * cpu-wasm32.c: New file to support wasm32 architecture. + * elf32-wasm32.c: New file to support wasm32 architecture. + * Makefile.am: Add wasm32 architecture. + * archures.c: Likewise. + * config.bfd: Likewise. + * configure.ac: Likewise. + * targets.c: Likewise. + * Makefile.in: Regenerate. + * bfd-in2.h: Regenerate. + * configure: Regenerate. + * po/SRC-POTFILES.in: Regenerate. + +2017-03-20 Alan Modra + + PR 21266 + * elf64-ppc.c (compare_symbols): Stabilize sort. + +2017-03-18 Alan Modra + + * elf64-ppc.c (struct ppc_link_hash_table): Add + local_ifunc_resolver and maybe_local_ifunc_resolver. + (ppc_build_one_stub): Set flags on emitting dynamic + relocation to ifunc. + (ppc64_elf_relocate_section): Likewise. + (ppc64_elf_finish_dynamic_symbol): Likewise. + (ppc64_elf_finish_dynamic_sections): Error on DT_TEXTREL with + local dynamic relocs to ifuncs. + * elf32-ppc.c (struct ppc_elf_link_hash_table): Add + local_ifunc_resolver and maybe_local_ifunc_resolver. + (ppc_elf_relocate_section): Set flag on emitting dynamic + relocation to ifuncs. + (ppc_elf_finish_dynamic_symbol): Likewise. + (ppc_elf_finish_dynamic_sections): Error on DT_TEXTREL with local + dynamic relocs to ifuncs. + +2017-03-13 Nick Clifton + + PR binutils/21202 + * reloc.c (BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC): Rename to + BFD_RELOC_AARCH64_TLSDESC_LD64_LO12. + (BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC): Rename to + BFD_RELOC_AARCH64_TLSDESC_ADD_LO12. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + * elfnn-aarch64.c (IS_AARCH64_TLS_RELAX_RELOC): Update reloc + names. + (IS_AARCH64_TLSDESC_RELOC): Likewise. + (elfNN_aarch64_howto_table): Likewise. + (aarch64_tls_transition_without_check): Likewise. + (aarch64_reloc_got_type): Likewise. + (elfNN_aarch64_final_link_relocate): Likewise. + (elfNN_aarch64_tls_relax): Likewise. + (elfNN_aarch64_relocate_section): Likewise. + (elfNN_aarch64_gc_sweep_hook): Likewise. + (elfNN_aarch64_check_relocs): Likewise. + * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise. + (_bfd_aarch64_elf_resolve_relocation): Likewise. + +2017-03-11 Alan Modra + + * elf32-ppc.c: Remove ATTRIBUTE_UNUSED throughout when function + parameter is in fact used. Whitespace fixes. + * elf64-ppc.c: Likewise. + +2017-03-09 Sam Thursfield + + * rs6000-core.c (CORE_NEW): Simplify macro when + AIX_CORE_DUMPX_CORE and BFD64 are true to avoid compile warning. + +2017-03-07 Alan Modra + + PR 21224 + PR 20519 + * elf64-ppc.c (ppc64_elf_relocate_section): Add missing + dyn_relocs check. + +2017-03-05 Alan Modra + + * elf-bfd.h (struct eh_cie_fde): Add u.cie.per_encoding_aligned8. + * elf-eh-frame.c (size_of_output_cie_fde): Don't align here. + (next_cie_fde_offset): New function. + (_bfd_elf_parse_eh_frame): Set u.cie.per_encoding_aligned8. + (_bfd_elf_discard_section_eh_frame): Align zero terminator to + four bytes. Align CIEs to four or eight bytes depending on + per_encoding_aligned8. Align FDEs according to their encoding. + Pad last FDE to output section alignment. + (_bfd_elf_write_section_eh_frame): Adjust to suit. Remove + assertion. + * elf64-ppc.c (glink_eh_frame_cie): Delete padding. + (ppc64_elf_size_stubs): Pad glink eh_frame as per elf-eh-frame.c. + (ppc64_elf_finish_dynamic_sections): Adjust to suit. + +2017-03-02 Martin Bickel + + PR ld/21212 + * elf.c (rewrite_elf_program_header): Do not issue a warning for + empty segments which have a zero filesz, but a non-zero memsz. + +2017-03-02 Alan Modra + + * elf32-ppc.c (ppc_elf_vle_split16): Correct insn mask typo. + +2017-02-28 Alan Modra + + * elf64-ppc.c (ppc64_elf_ha_reloc): Revert last change. + (ppc64_elf_relocate_section): Likewise. + +2017-02-28 Alan Modra + + PR 20995 + * elf32-nios2.c (nios2_elf32_relocate_section): Use htab + rather than elf32_nios2_hash_table or elf_hash_table. + (create_got_section): Likewise. + (nios2_elf32_finish_dynamic_symbol): Likewise. + (nios2_elf32_adjust_dynamic_symbol): Likewise. + (nios2_elf32_size_dynamic_sections): Likewise. + (nios2_elf32_check_relocs): Delete dynobj, sgot, and srelgot + vars. Use htab equivalents directly instead. Don't create + all dynamic sections on needing just the GOT. Use a goto + rather than a fall-through with reloc test. Ensure + htab->dynobj is set when making dynamic sreloc section. + (nios2_elf32_finish_dynamic_sections): Delete dynobj, use htab + equivalent directly instead. Don't segfault on looking for + .dynamic when dynamic sections have not been created. Don't + segfault on .got.plt being discarded. + (nios2_elf32_size_dynamic_sections): Delete plt and got vars. + Don't set "relocs" on .rela.plt. Do handle .sbss. Delete + fixme and another not so relevant comment. + (nios2_elf_add_symbol_hook): Delete dynobj var. If not + already set, set hash table dynobj on creating .sbss. + +2017-02-28 Alan Modra + + * reloc.c (BFD_RELOC_PPC_16DX_HA): New. + * elf64-ppc.c (ppc64_elf_howto_raw ): New howto. + (ppc64_elf_reloc_type_lookup): Translate new bfd reloc. + (ppc64_elf_ha_reloc): Correct overflow test on REL16DX_HA. + (ppc64_elf_relocate_section): Likewise. + * elf32-ppc.c (ppc_elf_howto_raw ): New howto. + (ppc_elf_reloc_type_lookup): Translate new bfd reloc. + (ppc_elf_check_relocs): Handle R_PPC_16DX_HA to pacify gcc. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + +2017-02-28 Alan Modra + + * elflink.c (_bfd_elf_create_dynamic_sections): Don't make + dynamic .data.rel.ro read-only. + * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Compare section + rather than section flags when deciding where copy reloc goes. + * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise. + * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise. + * elf32-i386.c (elf_i386_finish_dynamic_symbol): Likewise. + * elf32-metag.c (elf_metag_finish_dynamic_symbol): Likewise. + * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Likewise. + * elf32-nios2.c (nios2_elf32_finish_dynamic_symbol): Likewise. + * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Likewise. + * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Likewise. + * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise. + * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise. + * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise. + * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Likewise. + * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. + * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Likewise. + * elfnn-riscv.c (riscv_elf_finish_dynamic_symbol): Likewise. + * elfxx-mips.c (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. + * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise. + +2017-02-28 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_perform_relocation): Also handle the + `jalr $0, $25' instruction encoding. + +2017-02-27 Nick Clifton + + PR ld/21180 + * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Avoid + generating a seg-fault when encountering a symbol that has been + deleted by garbage collection. + +2017-02-25 Alan Modra + + * elf32-arc.c (struct dynamic_sections): Delete. + (enum dyn_section_types): Delete. + (dyn_section_names): Delete. + (arc_create_dynamic_sections): Delete. + (elf_arc_finish_dynamic_sections): Don't call the above. Don't + segfault on discarded .rela.plt section. + (elf_arc_size_dynamic_sections): Formatting. Don't call + arc_create_dynamic_sections. Don't allocate memory for sections + handled by the generic linker. Correct code finding relocs in + read-only sections. Set SEC_EXCLUDE on zero size .got, + .got.plt, and .dynbss sections. Do set .interp for pies. + +2017-02-24 Andrew Waterman + + * elfnn-riscv.c (GP_NAME): New macro. + (riscv_global_pointer_value): Use it. + (_bfd_riscv_relax_lui): If symbol and global pointer are in same + output section, consider only that section's alignment. + +2017-02-23 Maciej W. Rozycki + + * elfxx-mips.h (_bfd_mips_relax_section): Remove prototype. + * elfxx-mips.c (_bfd_mips_relax_section): Remove function. + * elf64-mips.c (bfd_elf64_bfd_relax_section): Remove macro. + * elfn32-mips.c (bfd_elf32_bfd_relax_section): Likewise. + +2017-02-23 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_calculate_relocation) + : Discard relocation if `cross_mode_jump_p' + or misaligned. + +2017-02-23 Alan Modra + + PR 20744 + * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask on all VLE + 16D relocations. + (ppc_elf_vle_split16): Correct field mask and shift for 16D relocs. + (ppc_elf_relocate_section): Correct calculation for VLE SDAREL + relocs. + +2017-02-22 Maciej W. Rozycki + + PR ld/20828 + * elflink.c (bfd_elf_size_dynamic_sections): Move symbol version + processing ahead of the call to `elf_gc_sweep_symbol'. + +2017-02-22 Nick Clifton + + PR binutils/21193 + * opncls.c (bfd_create_gnu_debuglink_section): Give the newly + created section 4-byte alignment. + +2017-02-22 Alan Modra + + * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Don't segfault + on .got or .plt output section being discarded by script. + * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Likewise. Move + vxworks splt temp. + +2017-02-21 Alan Modra + + * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only emit + DT_RELA, DT_RELASZ, and DT_RELAENT when DT_RELASZ is non-zero. + +2017-02-20 Alan Modra + + PR 21181 + * elflink.c (bfd_elf_final_link): Make DT_REL/DT_RELA zero + if DT_RELSZ/DT_RELASZ is zero. + +2017-02-17 Nick Clifton + + * compress.c (bfd_get_full_section_contents): Remember to reduce + compressed size by the sizeof the compression header when + decompressing the contents. + +2017-02-17 Pedro Alves + + * srec.c (Chunk): Rename to ... + (_bfd_srec_len): ... this. + (S3Forced): Rename to ... + (_bfd_srec_forceS3): ... this. + * objcopy.c: Adjust all references. + +2017-02-17 Pedro Alves + + * archive.c (bsd_write_armap): Rename to ... + (_bfd_bsd_write_armap): ... this. + (coff_write_armap): Rename to ... + (_bfd_coff_write_armap): ... this. + * libbfd-in.h (bsd_write_armap): Rename to ... + (_bfd_bsd_write_armap): ... this. + (coff_write_armap): Rename to ... + (_bfd_coff_write_armap): ... this. + * aout-target.h, aout-tic30.c: Adjust all users. + * libbfd.h: Regenerate. + +2017-02-17 Pedro Alves + + * bfd-in.h (bfd_read, bfd_write): Adjust to rename. + (warn_deprecated): Rename to ... + (_bfd_warn_deprecated): ... this. + * libbfd.c (warn_deprecated): Rename to ... + (_bfd_warn_deprecated): ... this. + * bfd-in2.h: Regenerate. + +2017-02-17 Pedro Alves + + * bfdio.c (real_ftell): Rename to ... + (_bfd_real_ftell): ... this. + (real_fseek): Rename to ... + (_bfd_real_fseek): ... this. + (real_fopen): Rename to ... + (_bfd_real_fopen): ... this. + * libbfd-in.h (real_ftell): Rename to ... + (_bfd_real_ftell): ... this. + (real_fseek): Rename to ... + (_bfd_real_fseek): ... this. + (real_fopen): Rename to ... + (_bfd_real_fopen): ... this. + * cache.c, dwarf2.c, opncls.c: Adjust all callers. + * libbfd.h: Regenerate. + +2017-02-17 Pedro Alves + + * dwarf2.c, elf-attrs.c, elf32-nds32.c: Adjust all callers. + * libbfd.c (read_unsigned_leb128): Rename to ... + (_bfd_read_unsigned_leb128): ... this. + (read_signed_leb128): Rename to ... + (_bfd_read_signed_leb128): ... this. + (safe_read_leb128): Rename to ... + (_bfd_safe_read_leb128): ... this. + * libbfd-in.h (read_unsigned_leb128): Rename to ... + (_bfd_read_unsigned_leb128): ... this. + (read_signed_leb128): Rename to ... + (_bfd_read_signed_leb128): ... this. + (safe_read_leb128): Rename to ... + (_bfd_safe_read_leb128): ... this. + * libbfd.h: Renegerate. + +2017-02-16 Andrew Burgess + + * dwarf2.c (_bfd_dwarf2_find_nearest_line): Perform symbol lookup + before trying to fine matching file and line information. + +2017-02-16 Andrew Burgess + + * dwarf2.c (struct dwarf2_debug): Add orig_bfd member. + (_bfd_dwarf2_slurp_debug_info): If stashed debug information does + not match current bfd, then reload debug information. Record bfd + we're loading debug info for in the stash. If we have debug + informatin in the cache then perform section placement before + returning. + +2017-02-16 Alan Modra + + PR 21000 + * elf-bfd.h (struct elf_backend_data): Add no_page_alias. + * elfxx-target.h (elf_backend_no_page_alias): Define. + (elfNN_bed): Init new field. + * elf.c (assign_file_positions_for_load_sections): If no_page_alias + ensure PT_LOAD segment starts on a new page. + * elf32-hppa.c (elf_backend_no_page_alias): Define. + +2017-02-16 Alan Modra + + PR 21132 + * elf32-hppa.c (allocate_plt_static): Allocate space for relocs + if pic. + +2017-02-16 Jiong Wang + + * bfd.c (BFD_FLAGS_SAVED): Add BFD_LINKER_CREATED. + * bfd-in2.h: Regenerated. + +2017-02-15 H.J. Lu + + PR ld/21168 + * elf32-i386.c (elf_i386_relocate_section): Allow + "lea foo@GOT, %reg" in PIC. + +2017-02-15 H.J. Lu + + PR ld/20244 + * elf32-i386.c (elf_i386_relocate_section): Properly get IFUNC + symbol name when reporting R_386_GOT32/R_386_GOT32X relocation + error against local IFUNC symbol without a base register for + PIC. + +2017-02-15 Maciej W. Rozycki + + * elf32-ppc.c (ppc_elf_check_relocs): Use `%H:' rather than + `%P: %H:' with `info->callbacks->einfo'. + (ppc_elf_relocate_section): Likewise. + * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. + (ppc64_elf_edit_toc): Likewise. + (ppc64_elf_relocate_section): Likewise. + +2017-02-14 Alan Modra + + * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support + --gc-keep-exported, and test versioned field of sym rather than + looking for @ in name. + +2017-02-13 Palmer Dabbelt + + * elfnn-riscv.c (riscv_global_pointer_value): Change _gp to + __global_pointer$. + +2017-02-13 Nick Clifton + + PR binutils/21151 + * dwarf2.c (_bfd_dwarf2_find_nearest_line): Check for an invalid + unit length field. + +2017-02-07 Andrew Waterman + + * elfnn-riscv.c (riscv_elf_finish_dynamic_sections): Only write PLT + entry size if PLT header is written. + +2017-02-06 Sheldon Lobo + + Fix sparc64 dynamic relocation processing to use the dynamic + symbol count. + * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Use 'dynamic' + to determine if bfd_get_symcount() or bfd_get_dynamic_symcount() + should be used. + +2017-02-03 Nick Clifton + + PR 21096 + * coffcode.h (coff_write_object_contents): Enlarge size of + s_name_buf in order to avoid compile time warning about possible + integer truncation. + * elf32-nds32.c (nds32_elf_ex9_import_table): Mask off lower + 32-bits of insn value before printing into buffer. + +2017-02-02 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_hash_sort_data): Add + `max_local_dynindx'. + (mips_elf_sort_hash_table): Handle it. + (mips_elf_sort_hash_table_f) : For forced local + symbols bump up `max_local_dynindx' rather than + `max_non_got_dynindx'. + +2017-02-02 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_hash_sort_data): Convert the + `min_got_dynindx', `max_unref_got_dynindx' and + `max_non_got_dynindx' members to the `bfd_size_type' data type. + (mips_elf_sort_hash_table): Adjust accordingly. + +2017-02-02 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout + to access the hash table. + +2017-02-02 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on + non-NULL `htab' to the beginning. + +2017-02-02 Maciej W. Rozycki + + * elflink.c (elf_gc_sweep): Wrap overlong line. + +2017-01-30 Maciej W. Rozycki + + * elfxx-mips.h (_bfd_mips_elf_insn32): Rename prototype to... + (_bfd_mips_elf_linker_flags): ... this. Add another parameter. + * elfxx-mips.c (mips_elf_link_hash_table): Add + `ignore_branch_isa' member. + (mips_elf_perform_relocation): Do not treat an ISA mode mismatch + in branch relocation calculation as an error if + `ignore_branch_isa' has been set. + (_bfd_mips_elf_insn32): Rename to... + (_bfd_mips_elf_linker_flags): ... this. Rename the `on' + parameter to `insn32' and add an `ignore_branch_isa' parameter. + Handle the new parameter. + +2017-01-27 Hans-Peter Nilsson + + * elf32-cris.c (elf_cris_finish_dynamic_symbol): Remove now unused + local variable dynobj. + + PR ld/20995 + * elf32-cris.c (elf_cris_size_dynamic_sections): Handle sdynrelro. + (elf_cris_adjust_dynamic_symbol): Place variables copied into the + executable from read-only sections into sdynrelro. + (elf_cris_finish_dynamic_symbol): Select sreldynrelro for + dynamic relocs in sdynrelro. + (elf_backend_want_dynrelro): Define. + +2017-01-25 Sebastian Huber + + * config.bfd (*-*-rtemsaout*): Mark as removed. + +2017-01-25 Sebastian Huber + + * config.bfd (powerpcle-*-rtems*): Do not mark as removed. + (arm-*-rtems*): Move to (arm*-*-eabi*). + (i[3-7]86-*-rtems*): Move to (i[3-7]86-*-elf*). + (m68-*-rtems*): Move to (m68*-*-elf*). + +2017-01-25 Sebastian Huber + + * config.bfd (*-*-rtemscoff*): Mark as removed. + +2017-01-24 Maciej W. Rozycki + + PR ld/20828 + * elflink.c (bfd_elf_record_link_assignment): Revert last + change and don't ever clear `forced_local'. Set `mark' + unconditionally. + (elf_gc_sweep_symbol_info, elf_gc_sweep_symbol): Reorder within + file. + (elf_gc_sweep): Move the call to `elf_gc_sweep_symbol'... + (bfd_elf_size_dynamic_sections): ... here. + * elf32-ppc.c (ppc_elf_tls_setup): Don't clear `forced_local' + and set `mark' instead in `__tls_get_addr_opt' processing. + * elf64-ppc.c (ppc64_elf_tls_setup): Likewise. + +2017-01-24 Alan Modra + + * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Merge two cases + where dynamic relocs are preferable. Allow ifunc too. + (ensure_undefweak_dynamic): New function. + (allocate_dynrelocs): Use it here. Move plt handling last and + don't make symbols dynamic, simplifying loop. Only make undef + weak symbols with GOT entries dynamic. Correct condition + for GOT relocs. Handle dynamic relocs on ifuncs. Correct + comments. Remove goto. + (ppc_elf_relocate_section): Correct test for using dynamic + symbol on GOT relocs. Rearrange test for emitting GOT relocs + to suit. Set up explicit tls_index entries and implicit GOT + tls_index entries resolvable at link time for + __tls_get_addr_opt. Simplify test to clear mem for prelink. + * elf64-ppc.c (allocate_got): Correct condition for GOT relocs. + (ensure_undefweak_dynamic): New function. + (allocate_dynrelocs): Use it here. Only make undef weak symbols + with GOT entries dynamic. Remove unnecessary test of + WILL_CALL_FINISH_DYNAMIC_SYMBOL in PLT handling. + (ppc64_elf_relocate_section): Correct test for using dynamic + symbol on GOT relocs. Rearrange test for emitting GOT relocs + to suit. Set up explicit tls_index entries and implicit GOT + tls_index entries resolvable at link time for __tls_get_addr_opt. + Simplify expression to clear mem for prelink. + +2017-01-23 Yury Norov + + * elfnn-aarch64.c: Fix relaxations for ILP32 mode. + +2017-01-20 Jiong Wang + + * elfnn-aarch64.c (elf_aarch64_hash_symbol): New function. + (elf_backend_hash_symbol): Define. + +2017-01-18 Maciej W. Rozycki + + PR ld/20828 + * elflink.c (bfd_elf_record_link_assignment): Clear any + `forced_local' marking for DSO symbols that are not being + provided. + +2017-01-17 Kuan-Lin Chen + + * elfnn-riscv.c (riscv_elf_object_p): New function. + +2017-01-12 H.J. Lu + + PR ld/21038 + * elf64-x86-64.c (elf_x86_64_link_hash_table): Add + plt_bnd_eh_frame. + (elf_x86_64_check_relocs): Create .eh_frame section for the + .plt.bnd section. + (elf_x86_64_size_dynamic_sections): Allocate and initialize + .eh_frame section for the .plt.bnd section. + (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section + for the .plt.bnd section. + +2017-01-12 Nick Clifton + + PR binutils/20876 + * opncls.c (find_separate_debug_file): Add include_dirs + parameter. Only include the directory part of the bfd's filename + in search paths if include_dirs is true. Add a couple of extra + locations for looking for debug files. + ( bfd_follow_gnu_debuglink): Update invocation of + find_separate_debug_file. + (bfd_follow_gnu_debugaltlink): Likewise. + (get_build_id): New function: Finds the build-id of the given bfd. + (get_build_id_name): New function: Computes the name of the + separate debug info file for a bfd, based upon its build-id. + (check_build_id_file): New function: Checks to see if a separate + debug info file exists at the given location, and that its + build-id matches that of the original bfd. + (bfd_follow_build_id_debuglink): New function: Finds a separate + debug info file for a given bfd by using the build-id method. + * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Try using the build-id + method of locating a separate debug info file before using the + debuglink method. + * bfd-in2.h: Regenerate. + +2017-01-11 H.J. Lu + + PR ld/21038 + * elf64-x86-64.c (elf_x86_64_eh_frame_bnd_plt): New. + (elf_x86_64_bnd_arch_bed): Use elf_x86_64_eh_frame_bnd_plt and + elf_x86_64_eh_frame_plt_got. + (elf_x86_64_size_dynamic_sections): Get unwind info from + elf_x86_64_bnd_arch_bed for the BND PLT. + +2017-01-11 Jeremy Soller + + * config.bfd: Add entries for i686-redox and x86_64-redox. + +2017-01-10 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Align .eh_frame section + to 4 bytes. + * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align + .eh_frame section to 4 bytes for x32. + (elf_x86_64_check_relocs): Likewise. + +2017-01-10 H.J. Lu + + PR ld/20830 + * elf32-i386.c (elf_i386_eh_frame_plt_got): New. + (PLT_GOT_FDE_LENGTH): Likewise. + (elf_i386_plt_layout): Add eh_frame_plt_got and + eh_frame_plt_got_size. + (elf_i386_plt): Updated. + (elf_i386_link_hash_table): Add plt_got_eh_frame. + (elf_i386_check_relocs): Create .eh_frame section for .plt.got. + (elf_i386_size_dynamic_sections): Allocate and initialize + .eh_frame section for .plt.got. + (elf_i386_finish_dynamic_sections): Adjust .eh_frame section for + .plt.got. + (elf_i386_nacl_plt): Add FIXME for eh_frame_plt_got and + eh_frame_plt_got_size. + * elf64-x86-64.c (elf_x86_64_eh_frame_plt_got): New. + (PLT_GOT_FDE_LENGTH): Likewise. + (elf_x86_64_backend_data): Add eh_frame_plt_got and + eh_frame_plt_got_size. + (elf_x86_64_arch_bed): Updated. + (elf_x86_64_bnd_arch_bed): Add FIXME for eh_frame_plt_got and + eh_frame_plt_got_size. + (elf_x86_64_nacl_arch_bed): Likewise. + (elf_x86_64_link_hash_table): Add plt_got_eh_frame. + (elf_x86_64_check_relocs): Create .eh_frame section for .plt.got. + (elf_x86_64_size_dynamic_sections): Allocate and initialize + .eh_frame section for .plt.got. + (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section + for .plt.got. + +2017-01-10 H.J. Lu + + * elf32-i386.c (elf_i386_size_dynamic_sections): Set + plt_eh_frame->size to eh_frame_plt_size and use eh_frame_plt. + +2017-01-09 Nick Clifton + + * dwarf2.c (lookup_address_in_function_table): Return early if + there are no functions in the given comp unit, or if the high + address of the last function in the comp unit is less than the + desired address. + +2017-01-09 Nick Clifton + + PR binutils/21013 + * coffgen.c (_bfd_coff_get_external_symbols): Generate an error + message if there are too many symbols to load. + +2017-01-04 James Clarke + + * elf64-alpha.c (elf64_alpha_relax_opt_call): Don't set tsec_free + if relocs are cached. + +2017-01-03 Rich Felker + + PR ld/21017 + * elf32-microblaze.c (microblaze_elf_check_relocs): Add an entry + for R_MICROBLAZE_GOTOFF_64. + +2017-01-03 Nick Clifton + + * mach-o.c (bfd_mach_o_lookup_uuid_command): Fix compile time + warning about using a possibly uninitialised variable. + +2017-01-02 Alan Modra + + * elf32-hppa.c (ensure_undef_weak_dynamic): New function. + (allocate_plt_static, allocate_dynrelocs): Use it. + +2017-01-02 Alan Modra + + * elf-hppa.h (elf_hppa_fake_sections): Set SHF_INFO_LINK for + .PARISC.unwind section. + +2017-01-02 Alan Modra + + PR ld/20989 + * elfxx-sparc.c (gdop_relative_offset_ok): New function. + (_bfd_sparc_elf_relocate_section): Use it to validate GOT + indirect to GOT pointer relative code edit. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 714b20d9748..8debaf0d0fc 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,1878 +1,6 @@ -2017-12-19 Nick Clifton - - PR 22587 - * readelf.c (process_section_headers): Do not complain about an - sh_info field of 0 in relocation sections of ET_EXEC or ET_DYN - type executables. - -2017-12-19 Alan Modra - - * testsuite/binutils-all/ar.exp (unique_symbol): Don't run AR - if assembly fails. - * testsuite/binutils-all/arc/objdump.exp (check_assembly): If - objfile is empty, fail test. - * testsuite/binutils-all/arm/objdump.exp: Don't return if assembly - fails for a test, continue on to other tests. - * testsuite/binutils-all/bfin/objdump.exp: Likewise. - * testsuite/binutils-all/hppa/objdump.exp: Likewise. - * testsuite/binutils-all/m68k/objdump.exp: Likewise. - * testsuite/binutils-all/vax/objdump.exp: Likewise. - * testsuite/binutils-all/size.exp: Likewise. - * testsuite/binutils-all/nm.exp: Likewise. Move PR12753 test. - * testsuite/binutils-all/objcopy.exp: Don't perror on assembly fail. - * testsuite/binutils-all/objdump.exp: Report assembly fails. - -2017-12-18 Nick Clifton - - PR 22532 - * dwarf.c (read_and_display_attr_value): Add attributes that might - use the DW_FORM_exprloc form, and if so, display the decoded - location expression list. - -2017-12-14 Alan Modra - - * testsuite/lib/utils-lib.exp (default_binutils_assemble_flags): - Don't perror on assembler diagnostic output. - * testsuite/binutils-all/nm.exp: Run unique symbol test on all - ELF targets. Resolve as "unsupported" on assembly failure. - -2017-12-11 Renlin Li - - * testsuite/binutils-all/aarch64/objdump.d: New. - * testsuite/binutils-all/aarch64/objdump.s: New. - -2017-12-08 Nick Clifton - - * objcopy.c (copy_relocations_in_section): Use the orelocations - field of the input section, if it has been initialised. - * testsuite/binutils-all/note-2-64.d: Skip test on Sparc64. - -2017-12-06 Jim Wilson - - PR 22465 - * objcopy.c (copy_section): New local extra. If isection->lma not - exactly divisible by interleave, then bias from. Also adjust - osection->lma if necessary. - -2017-12-06 Alan Modra - - PR 22552 - * readelf.c (process_file_header): Don't assume XINDEX case - value for e_shstrndx is within bounds. - (load_debug_section): Sanity test e_shstrndx before attempting - to read .shstrtab. Wrap long lines. - -2017-12-01 Oleksandr Pikozh - - * doc/binutils.texi: Add --strip-unneeded to objcopy synopsis. - -2017-11-30 Nick Clifton - - PR 22510 - * readelf.c (load_debug_section): Fail if there are no section - headers available. - -2017-11-29 Nick Clifton - - PR 22508 - * objdump.c (dump_relocs_in_section): Also check the section's - relocation count to make sure that it is reasonable before - attempting to allocate space for the relocs. - -2017-11-29 Stefan Stroe - - * po/Make-in (datadir): Define as @datadir@. - (localedir): Define as @localedir@. - (gnulocaledir, gettextsrcdir): Use @datarootdir@. - -2017-11-28 H.J. Lu - - PR binutils/22490 - * readelf.c (process_notes_at): Add an argument for note - alignment. If note alignment is less than 4, use 4 byte - alignment. Otherwise, skip notes if alignment isn't 4 nor - 8 bytes. - (process_corefile_note_segments): Pass segment alignment to - process_notes_at. - (process_note_sections): Pass section alignment to - process_notes_at. - (process_object): Call load_separate_debug_file only if - e_shstrndx != SHN_UNDEF. - -2017-11-27 Nick Clifton - - PR 22490 - * readelf.c (dump_section_as_bytes): Check for a NULL string - section pointer. - (process_notes_at): Compute the alignment to use if displaying - notes from a segment. - -2017-11-26 H.J. Lu - - * dwarf.c (load_separate_debug_info): Rename argument name from - link to xlink. - -2017-11-24 H.J. Lu - - PR binutils/22444 - * readelf.c (process_notes_at): Use ELF_NOTE_DESC_OFFSET to get - the offset of the note descriptor. Use ELF_NOTE_NEXT_OFFSET to - get the offset of the next note entry. - -2017-11-23 Pavel I. Kryukov - - PR 22485 - * readelf.c (process_archive): Use memset to initiaise - thin_filedata structure. - -2017-11-21 H.J. Lu - - PR binutils/22451 - * testsuite/binutils-all/x86-64/objects.exp: New file. - * testsuite/binutils-all/x86-64/pr22451.o.bz2: Likewise. - -2017-11-21 Claudiu Zissulescu - - * testsuite/binutils-all/arc/objdump.exp: Update pattern matching - expression. - -2017-11-21 Nick Clifton - - * dwarf.c (dwo_name, dwo_dir, dwo_id, dwo_id_len): New variables. - (read_and_display_attr_value): Record dwo variables if requested. - (display_augmentation_data): Rename to display_data and make - generic. - (load_dwo_file): New function. Loads a separate dwarf object - file. - (load_separate_debug_file): Add reporting and loading of separate - dwarf objet files. - * readelf.c (process_section_headers): Add do_debug_links to list - of flags requiring a debug dump. - (display_debug_section): Tidy up code. - * doc/debug.options.texi: Add note that dwo links will also be - followed. - * testsuite/binutils-all/debuglink.s: Tidy code. - * testsuite/binutils-all/dwo.s: New test file. - * testsuite/binutils-all/readelf.wk2: New file - expected output - from readelf. - * testsuite/binutils-all/readelf.exp: Run the new test. - -2017-11-18 Alan Modra - - PR 22443 - * nm.c (sort_symbols_by_size): Don't attempt to access - section symbol internal_elf_sym. - (print_symbol): Likewise. Don't call bfd_get_symbol_version_string - for section symbols. - * objdump.c (compare_symbols): Don't attempt to access - section symbol internal_elf_sym. - (objdump_print_symname): Don't call bfd_get_symbol_version_string - for section symbols. - -2017-11-17 Jim Wilson - - * readelf.c (elf/riscv.h): Alphabetize include. - (is_32bit_inplace_add_reloc, is_32bit_inplace_sub_reloc) - (is_64bit_inplace_add_reloc, is_64bit_inplace_sub_reloc) - (is_16bit_inplace_add_reloc, is_16bit_inplace_sub_reloc) - (is_8bit_inplace_add_reloc, is_8bit_inplace_sub_reloc): New. - (apply_relocations): New locals reloc_inplace and reloc_subtract. - Call the new functions and set the new locals. Call byte_get if - reloc_inplace. Subtract sym->st_value if reloc_subtract. - -2017-11-17 Nick Clifton - - PR 22449 - * ar.c (write_archive): Free the temporary file name. - -2017-11-17 Nick Clifton - - * readelf.c (process_archive): Include member name in the - file_name of the filedata structure. - -2017-11-15 Alan Modra - - PR 22426 - * objcopy.c (copy_main): Free tmpname. - -2017-11-15 Nick Clifton - - PR 15152 - * dwarf.h (enum dwarf_section_display_enum): Add gnu_debuglink, - gnu_debugaltlink and separate_debug_str. - (struct dwarf_section): Add filename field. - Add prototypes for load_separate_debug_file, close_debug_file and - open_debug_file. - * dwarf.c (do_debug_links): New. - (do_follow_links): New. - (separate_debug_file, separate_debug_filename): New. - (fetch_alt_indirect_string): New function. Retrieves a string - from the debug string table in the separate debug info file. - (read_and_display_attr_value): Use it with DW_FORM_GNU_strp_alt. - (load_debug_section_with_follow): New function. Like - load_debug_section, but if the first attempt fails, then tries - again in the separate debug info file. - (introduce): New function. - (process_debug_info): Use load_debug_section_with_follow and - introduce. - (load_debug_info): Likewise. - (display_debug_lines_raw): Likewise. - (display_debug_lines_decoded): Likewise. - (display_debug_macinfo): Likewise. - (display_debug_macro): Likewise. - (display_debug_abbrev): Likewise. - (display_debug_loc): Likewise. - (display_debug_str): Likewise. - (display_debug_aranges): Likewise. - (display_debug_addr); Likewise. - (display_debug_frames): Likewise. - (display_gdb_index): Likewise. - (process_cu_tu_index): Likewise. - (load_cu_tu_indexes): Likewise. - (display_debug_links): New function. Displays the contents of a - .gnu_debuglink or .gnu_debugaltlink section. - (calc_gnu_debuglink_ctc32):New function. Calculates a CRC32 - value. - (check_gnu_debuglink): New function. Checks the CRC of a - potential separate debug info file. - (parse_gnu_debuglink): New function. Reads a CRC value out of a - .gnu_debuglink section. - (check_gnu_debugaltlink): New function. - (parse_gnu_debugaltlink): New function. Reads the build-id value - out of a .gnu_debugaltlink section. - (load_separate_debug_info): New function. Finds and loads a - separate debug info file. - (load_separate_debug_file): New function. Attempts to find and - follow a link to a separate debug info file. - (free_debug_memory): Free the separate debug info file - information. - (opts_table): Add "follow-links" and "links". - (dwarf_select_sections_by_letters): Add "k" and "K". - (debug_displays): Reformat. Add .gnu-debuglink and - .gnu_debugaltlink. - Add an extra entry for .debug_str in a separate debug info file. - * doc/binutils.texi: Move description of debug dump features - common to both readelf and objdump into... - * objdump.c (usage): Add -Wk and -WK. - (load_specific_debug_section): Initialise the filename field in - the dwarf_section structure. - (close_debug_file): New function. - (open_debug_file): New function. - (dump_dwarf): Load and dump the separate debug info sections. - * readelf.c (struct filedata): New structure. Contains various - variables that used to be global: - (current_file_size, string_table, string_table_length, elf_header) - (section_headers, program_headers, dump_sects, num_dump_sects): - Move into filedata structure. - (cmdline): New global variable. Contains list of sections to dump - by number, as specified on the command line. - Add filedata parameter to most functions. - (load_debug_section): Load the string table if it has not already - been retrieved. - (close_file): New function. - (close_debug_file): New function. - (open_file): New function. - (open_debug_file): New function. - (process_object): Process sections in any separate debug info files. - * doc/debug.options.texi: New file. Add description of =links and - =follow-links options. - * NEWS: Mention the new feature. - * elfcomm.c: Have the byte get functions take a const pointer. - * elfcomm.h: Update prototypes. - * testsuite/binutils-all/dw5.W: Update expected output. - * testsuite/binutils-all/objdump.WL: Update expected output. - * testsuite/binutils-all/objdump.exp: Add test of -WK and -Wk. - * testsuite/binutils-all/readelf.exp: Add test of -wK and -wk. - * testsuite/binutils-all/readelf.k: New file. - * testsuite/binutils-all/objdump.Wk: New file. - * testsuite/binutils-all/objdump.WK2: New file. - * testsuite/binutils-all/linkdebug.s: New file. - * testsuite/binutils-all/debuglink.s: New file. - -2017-11-10 Jim Wilson - - * testsuite/binutils-all/objdump.exp: Expect the debug_ranges test to - pass. - -2017-11-07 Jim Wilson - - * MAINTAINERS (RISC-V): Fix typo in my email address. - -2017-11-07 Palmer Dabbelt - - * MAINTAINERS (RISC-V): Add Jim Wilson as a maintainer. - Clean up Andrew's entry (remove trailing space, add tabs). - Change Palmer's email address, and clean up entry (add tabs). - -2017-11-07 Alan Modra - - * dwarf.c (read_uleb128): Properly pluralize messages. - (display_debug_lines_raw, display_debug_loc): Likewise. - (display_debug_names, process_cu_tu_index): Likewise. - * od-macho.c (dump_code_signature_superblob): Likewise. - * readelf.c (process_program_headers): Likewise. - (process_section_header, process_relocs): Likewise. - (hppa_process_unwind, arm_process_unwind): Likewise. - (process_dynamic_section, process_version_sections): Likewise. - (process_symbol_table, process_syminfo): Likewise. - (apply_relocations, process_mips_specific): Likewise. - (process_gnu_liblist, process_notes_at): Likewise. - (process_archive): Likewise. - * testsuite/binutils-all/dw2-1.W, - * testsuite/binutils-all/dw2-3.W, - * testsuite/binutils-all/dw2-3gabi.W, - * testsuite/binutils-all/dw5.S, - * testsuite/binutils-all/dw5.W, - * testsuite/binutils-all/i386/compressed-1a.d, - * testsuite/binutils-all/libdw2-compressedgabi.out, - * testsuite/binutils-all/objdump.W, - * testsuite/binutils-all/readelf.r, - * testsuite/binutils-all/readelf.r-64, - * testsuite/binutils-all/x86-64/compressed-1a.d: Update - for pluralization fixes. - -2017-11-07 Alan Modra - - * sysdep.h (textdomain, bindtextdomain): Use safer "do nothing". - (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. - -2017-11-03 Claudiu Zissulescu - - * doc/binutils.texi (ARC): Update disassembler options. - * testsuite/binutils-all/arc/hexprint.s: New file. - * testsuite/binutils-all/arc/objdump.exp: Test hex printing - feature. - -2017-11-03 Mingi Cho - Nick Clifton - - PR 22386 - * dwarf.c (read_cie): Use bfd_size_type for - augmentation_data_len. - (display_augmentation_data): New function. - (display_debug_frames): Use it. - Check for integer overflow when testing augmentation_data_len. - -2017-11-02 Mingi Cho - - PR 22384 - * readelf.c (print_gnu_property_note): Improve overflow checks so - that they will work on a 32-bit host. - -2017-11-01 James Bowman - - * readelf.c (is_16bit_abs_reloc): Add entry for FT32. - -2017-10-31 Nick Clifton - - * readelf.c (process_relocs): Tell users if no static relocs were - found, but if they had added --use-dynamic to the command line - then relocs would have been displayed. - -2017-10-28 Alan Modra - - PR 22361 - * readelf.c (process_archive_index_and_symbols): Ensure ar_size - field is zero terminated for strtoul. - (setup_archive, get_archive_member_name): Likewise. - -2017-10-27 Simon Marchi - - * dwarf.c (struct Frame_Chunk) : Change type to - unsigned int. - (display_debug_frames): Read CFA reg as an unsigned number. - -2017-10-25 Alan Modra - - * nm.c (filter_symbols): Match "__gnu_lto_slim" optionally prefixed - with "_". - -2017-10-18 Eric Botcazou - - * MAINTAINERS: Add myself as Visium maintainer. - -2017-10-18 Nick Clifton - - * README-how-to-make-a-release: A note about checking file and - directory permissions. - - * MAINTAINERS: Move Svein Seldal to Past Maintainers section. - -2017-10-18 Alan Modra - - PR 22303 - * readelf.c (print_core_note): Ensure "count" sanity check - calculation doesn't overflow. - (process_notes_at): Perform note namesz and descsz checks - using unsigned comparisons against data remaining. Catch - alignment overflow of namesz and descsz too. Don't allocate a - temp for terminating "name" when there is space available - before descdata. - -2017-10-17 Tom Tromey - - * MAINTAINERS: Add myself as dwarf-mode.el maintainer. - -2017-10-11 Peeter Joot - Nick Clifton - - * dwarf.c (read_and_display_attr_value): Handle DW_AT_endianity, - DW_END_default, DW_END_big, DW_END_little, DW_ATE_UCS, - DW_ATE_ASCII, DW_CC_pass_by_reference, DW_CC_pass_by_value, - DW_CC_GNU_renesas_sh, DW_CC_GNU_borland_fastcall_i386, - DW_AT_decimal_sign, DW_AT_defaulted, DW_AT_discr_list. - (get_TAG_name): Report user generated tag values. - * testsuite/binutils-all/dwarf-attributes.S: New test. - * testsuite/binutils-all/dwarf-attributes.W. Expected output from - readelf. - * testsuite/binutils-all/readelf.exp: Run the new test. - -2017-10-10 Tom Tromey - - * dwarf-mode.el: Bump to version 1.4. - -2017-10-10 Tom Tromey - - * dwarf-mode.el (dwarf--process, dwarf--deletion-region): New - defvar. - (dwarf--check-running, dwarf--sentinel, dwarf--invoke) - (dwarf--filter): New functions. - (dwarf-do-insert-substructure, dwarf-do-refresh): Call - dwarf--check-running, dwarf--invoke. - (dwarf-browse): Initialize new variables. - -2017-10-10 Tom Tromey - - * dwarf-mode.el: Set lexical-binding. - -2017-10-10 Tom Tromey - - * dwarf-mode.el (dwarf-mode-map): New defvar. - -2017-10-10 Tom Tromey - - PR 22249 - * dwarf.c (process_debug_info): Skip any comp unit that ends - before dwarf_start_die. - -2017-10-06 Alan Modra - - * dwarf.c (process_debug_info): Consolidate header length checks. - (display_debug_pubnames_worker): Use "start" to read header. - Properly check header length and report errors earlier. - Simplify loop printing pubnames. - (get_line_filename_and_dirname): Catch small negative "length" - values. - (display_debug_aranges): Likewise. Report header errors - earlier using standardized message. - (display_debug_names): Likewise. - -2017-10-05 Joseph Myers - - * readelf.c (decode_arm_unwind): Initialize res to TRUE. - -2017-10-05 Nick Clifton - - PR 22260 - * objcopy.c (strip_main): Add 'M' character to short options list - when calling getopt_long. - -2017-10-05 Nick Clifton - - PR 22262 - * readelf.c (dump_relocations): Do not truncate reloc names when - displaying output in wide mode. - -2017-10-05 Nick Clifton - - * README-how-to-make-a-release: Merge steps 3, 4 and 5, and insert - the git tag operation at the correct location. - -2017-10-05 Alan Modra - - PR 22239 - * dwarf.c (read_cie): Don't compare "start" and "end" pointers - after adding a possibly wild length to "start", compare the length - to the difference of the pointers instead. Remove now redundant - "negative" length test. - -2017-10-05 Tristan Gingold - - * MAINTAINERS: Update email address. Redirect release maintainer - to global maitainers. - -2017-10-01 Alan Modra - - PR 22232 - PR 22230 - * objdump.c (load_specific_debug_section): Introduce a temp to - stop bfd_get_full_section_contents NULLing out section->start. - -2017-10-01 Alan Modra - - PR 22230 - * objdump.c (load_specific_debug_section): Allocate an extra byte - for a terminating NUL. - -2017-09-30 Alan Modra - - PR 21978 - * objdump.c: Formatting. - (show_line): Reset prev_line when function name changes. - -2017-09-27 Nick Clifton - - PR 22219 - * dwarf.c (process_debug_info): Add a check for a negative - cu_length field. - -2017-09-27 Alan Modra - - PR 22216 - * readelf.c (process_symbol_table): Check that DT_HASH symbol - chains are only visited once, and report an error if not. Display - invalid symbol index if chain is out of range. Use the same logic - when calculating histograms rather than the PR 17531 fix. Delete - bogus check that chained index is less than number of buckets. - -2017-09-26 Nick Clifton - - PR 22154 - * dwarf.c (get_line_filename_and_dirname): Add extra checks for - buffer overruns. - -2017-09-26 Nick Clifton - - * README-how-to-make-a-release: New file. - -2017-09-26 Alan Modra - - PR 21732 - * dwarf.c (READ_ULEB): Don't use DWARF_VMA_FMT in translated string. - (READ_SLEB): Likewise. - * readelf.c (bfd_vmatoa): New function. - (get_data, get_dynamic_data): Use it for printing error messages. - -2017-09-25 H.J. Lu - - PR binutils/22203 - * nm.c (display_rel_file): Free memory returned from - bfd_get_synthetic_symtab. - -2017-09-22 Alexandre Oliva - - * dwarf.h (debug_info): Add loc_views and num_loc_views. - * dwarf.c (vm1): New constant. - (print_dwarf_view): New function. - (read_and_display_attr_value): Support DW_AT_GNU_locviews. - (process_debug_info): Keep num_loc_offsets and num_loc_views - in sync. - (display_view_pair_list): New function. - (display_loc_list_dwo): Take vstart_ptr; update it. Dump - location view pairs before the range they apply to, when a - viewlist augments the loc list. - (display_loc_list): Likewise. Check view numbers in range - tests. - (display_loclists_list): Likewise. Handle view pair entries, - and warn on trailing ones. - (loc_views): New variable. - (loc_offsets_compar): Compare loc_views if loc_offsets are the - same. - (display_debug_loc): Check and sort loc_views too. Accept - loc_view as expected_start. Skip if lists and views are the - same. Dump locview list separately in order, and pass the - locview list base to each list dump function. Warn and skip - overlap and hole checking if we find loclists and locviews to - not be adjacent. - * testsuite/binutils-all/locview-1.s: New. - * testsuite/binutils-all/readelf.locview-1: New. - * testsuite/binutils-all/locview-2.s: New. - * testsuite/binutils-all/readelf.locview-2: New. - * testsuite/binutils-all/readelf.exp: Run new tests. Fix - option spelling in pr18374 fail message. XFAIL dw5 test on - nds32*-elf. - -2017-09-22 Alan Modra - - * testsuite/binutils-all/readelf.exp: Don't perror and exit on - bintest.s assembly failure. Report tests unresolved instead. - Likewise for version note test, pr18374, decompress, and dw5 - tests. - (readelf_test): Set testname to include both option and binary - file name. Use for pass/fail. - -2017-09-21 Maciej W. Rozycki - - * readelf.c (get_machine_flags) : New case. - -2017-09-05 Nick Clifton - - PR 21995 - * readelf.c (process_mips_specific): Add checks for a NULL data - pointer. - -2017-09-05 Alexander Fedotov - Edmar Wienskoski - - PR 21994 - * readelf.c (process_version_sections ): Check - vd_aux and vda_next for sanity. Delete "end". Correct overflow - checks. - (process_version_sections ): Correct overflow - check. Don't report invalid vna_next on overflow. Do report - invalid vna_next on size less than aux info. - -2017-08-23 Alan Modra - - PR 21990 - * readelf.c (process_version_sections ): Check - for invalid vn_next field before adding to idx. Use unsigned - long for index vars. Move index checks. - : Likewise for vd_next. - -2017-08-17 Nick Clifton - - * testsuite/binutils-all/note-3-64.s: New test. Checks assembly - and decoding of version2 GNU build attribute notes. - * testsuite/binutils-all/note-3-32.s: New test. 32-bit version of - the above test. - * testsuite/binutils-all/note-3-64.d: New test driver. - * testsuite/binutils-all/note-3-32.d: New test driver. - * testsuite/binutils-all/objcopy.exp: Run the new test. - * readelf.c (is_64bit_abs_reloc): Add R_SPARC_64. - -2017-08-14 Gustavo Romero - - * readelf.c (get_note_type): Handle PPC note types available - since Linux 4.8. - -2017-08-12 Alan Modra - - * readelf.c (process_note): Qualify NT_GNU_BUILD_ATTRIBUTE notes - by name data. - -2017-08-08 Nick Clifton - - PR 21909 - * prdbg.c (pr_int_type): Increase size of local string buffer. - (pr_float_type): Likewise. - (pr_bool_type): Likewise. - -2017-08-02 Nick Clifton - - PR 21702 - * arsup.c (ar_addmod): Add plugin support for the MRI ADDMOD - command. - -2017-08-02 Nick Clifton - - * testsuite/binutils-all/objdump.exp (cpus_expected): Add am33-2. - -2017-08-02 Alan Modra - - * readelf.c (is_32bit_abs_reloc): Add R_IA64_SECREL32MSB and - R_IA64_DIR32MSB. - (is_64bit_abs_reloc): Add R_IA64_DIR64MSB. - (is_64bit_pcrel_reloc): Add R_IA64_PCREL64MSB. - -2017-08-01 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2017-07-31 Marty Plummer - - PR 21861 - * winduni.c (codepages): Use cp1252 for codepage 0. - -2017-07-25 Nick Clifton - - PR 21820 - * readelf.c (dump_section_as_strings): Do not fail if the section - was empty. - (dump_section_as_bytes): Likewise. - -2017-07-24 Nick Clifton - - PR 21813 - * rddbg.c (read_symbol_stabs_debugging_info): Check for an empty - string whilst concatenating symbol names. - -2017-07-21 Nick Clifton - - * po/fr.po: Updated French translation. - -2017-07-21 Simon Marchi - - * dwarf.c (last_pointer_size, warned_about_missing_comp_units): - Remove. - (load_debug_info): Remove assignments to those two variables. - -2017-07-21 Alexandre Oliva - - * dwarf.c (struct State_Machine_Registers): Add view field. - (reset_state_machine): Reset view. - (process_extended_line_op): Reset view when appropriate. - (display_debug_lines_raw): Increment or reset view when appropriate. - Print nonzero views. Support print view resets, disabled by default. - (display_debug_lines_decoded): Likewise. Disambiguate op_code tests, - enabling printing of end_sequence. - * testsuite/binutils-all/dw2-1.W: Add nonzero views. - * testsuite/binutils-all/dw2-3.W: Likewise. - * testsuite/binutils-all/dw2-3gabi.W: Likewise. - * testsuite/binutils-all/dw5.W: Add end sequence lines. - * testsuite/binutils-all/i386/compressed-1a.d: Add nonzero views. - * testsuite/binutils-all/libdw2-compressedgabi.out: Likewise. - * testsuite/binutils-all/objdump.W: Likewise. - * testsuite/binutils-all/objdump.WL: Add end sequence lines. - * testsuite/binutils-all/x86-64/compressed-1a.d: Add nonzero views. - -2017-07-19 Tristan Gingold - - * nm.c (show_stats): Remove variable. - (long_options): Remove --stats option. - (main): Remove handling of --stats. - -2017-07-18 Nick Clifton - - PR 21775 - * coffgrok.c: Fix spelling typos. - * readelf.c: Likewise. - * stabs.c: Likewise. - * testsuite/binutils-all/objcopy.exp: Likewise. - -2017-07-18 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2017-07-18 Hans-Peter Nilsson - - * dwarf.c (display_debug_names): Initialize hash_prev. - -2017-07-17 Nick Clifton - - PR 21433 - * ar.c (main): Skip check for no files on the command line when - running in MRI mode. - -2017-07-13 H.J. Lu - - * testsuite/binutils-all/objdump.exp: Always delete $testarchive - first. - -2017-07-12 Alan Modra - - * po/bg.po: Update from translationproject.org/latest/binutils/. - * po/ca.po: Likewise. - * po/da.po: Likewise. - * po/es.po: Likewise. - * po/fi.po: Likewise. - * po/fr.po: Likewise. - * po/hr.po: Likewise. - * po/id.po: Likewise. - * po/it.po: Likewise. - * po/ja.po: Likewise. - * po/ro.po: Likewise. - * po/ru.po: Likewise. - * po/sk.po: Likewise. - * po/sr.po: Likewise. - * po/sv.po: Likewise. - * po/tr.po: Likewise. - * po/uk.po: Likewise. - * po/vi.po: Likewise. - * po/zh_CN.po: Likewise. - * po/zh_TW.po: Likewise. - -2017-07-12 Nick Clifton - - Fix compile time warnings using gcc 7.1.1. - * dwarf.c (dwarf_vmatoa_1): Do not pass a NULL string pointer to - sprintf. - * srconv.c (walk_tree_type): Initialise the spare field of the - IT_dty structure. - -2017-07-11 Andreas Schwab - - * readelf.c (process_note): Print newline after description data - in narrow mode. - (print_core_note): Print newline if nothing was printed in wide - mode. - -2017-07-09 Rafael Fontenelle - - * dwarf.c (display_formatted_table): Fix error message typo. - -2017-07-07 John Baldwin - - * readelf.c (get_freebsd_elfcore_note_type): Handle - NT_FREEBSD_PTLWPINFO. - -2017-07-05 H.J. Lu - - * dwarf.c (display_debug_names): Replace index with xindex. - -2017-07-04 Tristan Gingold - - * configure: Regenerate. - -2017-07-04 Tristan Gingold - - * NEWS: Add marker for 2.29. - -2017-07-03 Tristan Gingold - - * po/binutils.pot: Regenerate. - -2017-07-03 Alan Modra - - * strings.c (filename_and_size_t): Delete. - (strings_a_section): Don't check section size against file size. - Use bdf_malloc_and_get_section. Report an error on failures. - Replace arg param with filename and got_a_section param. - (got_a_section): Move to.. - (strings_object_file): ..an auto var here. Iterate over sections - rather than calling bfd_map_over_sections. Adjust strings_a_section - call. - -2017-07-02 Jan Kratochvil - - * dwarf.c: Include assert.h. - (MAX, MIN, get_IDX_name, display_debug_names): New. - (debug_displays): Add .debug_names. - * dwarf.h: (enum dwarf_section_display_enum): Add debug_names. - * readelf.c (process_section_headers): Add ".debug_names". - -2017-07-01 Alan Modra - - PR binutils/21665 - * objdump.c (strtab): Make var a bfd_byte*. - (disassemble_section): Don't limit malloc size. Instead, use - bfd_malloc_and_get_section. - (read_section_stabs): Use bfd_malloc_and_get_section. Return - bfd_byte*. - (find_stabs_section): Remove now unnecessary cast. - * objcopy.c (copy_object): Use bfd_malloc_and_get_section. Free - contents on error return. - * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section. - -2017-06-30 Nick Clifton - - PR binutils/21665 - * objdump.c (disassemble_section): Move check for an overlarge - section to just before the allocation of memory. Do not check - section size against file size, but instead use an arbitrary 2Gb - limit. Issue a warning message if the section is too big. - -2017-06-30 Maciej W. Rozycki - - * NEWS: Mention microMIPS XPA support. - -2017-06-30 Maciej W. Rozycki - - * NEWS: Mention microMIPS Release 5 ISA support. - -2017-06-30 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test. - * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test. - * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test. - * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test. - * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source. - * testsuite/binutils-all/mips/mips.exp: Run the new tests. - -2017-06-29 Anton Kolesov - - * testsuite/binutils-all/arc/double_store.s: New file. - * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler - options. - (do_objfile): New function. - (check_assembly): Likewise. - -2017-06-29 Andreas Arnez - - * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC. - -2017-06-28 H.J. Lu - - * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when - comparing against bfd_get_file_size return. - -2017-06-28 Nick Clifton - - * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes. - * readelf.c (print_gnu_build_attribute_name): Likewise. - -2017-06-28 Maciej W. Rozycki - Matthew Fortune - - * readelf.c (get_machine_flags) : New case. - (print_mips_isa_ext) : Likewise. - * NEWS: Mention Imagination interAptiv MR2 processor support. - -2017-06-26 Nick Clifton - - PR binutils/21665 - * objdump.c (disassemble_section): Skip any section that is bigger - than the entire file. - -2017-06-26 Nick Clifton - - PR binutils/21659 - * bucomm.c (get_file_size): Explicitly warn if the file is a - directory. - -2017-06-24 Thomas Preud'homme - - * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R. - -2017-06-23 Nick Clifton - - PR binutils/21659 - * strings.c (strings_file): Warn about attempts to run strings on - a directory. - -2017-06-22 H.J. Lu - - * readelf.c (decode_x86_feature): Decode - GNU_PROPERTY_X86_FEATURE_1_SHSTK. - * testsuite/binutils-all/i386/shstk.d: New file. - * testsuite/binutils-all/i386/shstk.s: Likewise. - * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. - * testsuite/binutils-all/x86-64/shstk.d: Likewise. - * testsuite/binutils-all/x86-64/shstk.s: Likewise. - -2017-06-22 H.J. Lu - - * readelf.c (decode_x86_feature): New. - (print_gnu_property_note): Call decode_x86_feature on - GNU_PROPERTY_X86_FEATURE_1_AND. - * testsuite/binutils-all/i386/empty.d: New file. - * testsuite/binutils-all/i386/empty.s: Likewise. - * testsuite/binutils-all/i386/ibt.d: Likewise. - * testsuite/binutils-all/i386/ibt.s: Likewise. - * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. - * testsuite/binutils-all/x86-64/empty.d: Likewise. - * testsuite/binutils-all/x86-64/empty.s: Likewise. - * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. - * testsuite/binutils-all/x86-64/ibt.d: Likewise. - * testsuite/binutils-all/x86-64/ibt.s: Likewise. - -2017-06-21 H.J. Lu - - * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error. - (READ_SLEB): Likewise. - -2017-06-21 Nick Clifton - - PR binutils/21648 - * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB. Add check for - reading a value that is too big for the containing variable. - (SLEB): Rename to SKIP_SLEB and READ_SLEB. Add similar check. - Replace uses of LEB and SLEB with appropriate new macro. - (display_debug_frames): Use an unsigned int for the 'reg' - variable. Use a signed long for the 'l' variable. - -2017-06-20 Andreas Krebbel - - * readelf.c (get_s390_segment_type): Add support for the new - segment type PT_S390_PGSTE. - (get_segment_type): Call get_s390_segment_type. - -2017-06-19 Nick Clifton - - PR binutils/21619 - * objdump.c (disassemble_bytes): Check that there is sufficient - data available before attempting to display it. - -2017-06-06 Simon Marchi - - * sysinfo.y: Free memory allocated by token NAME. - -2017-05-30 Anton Kolesov - - * doc/binutils.texi: Document new cpu=... disassembler options for ARC. - -2017-05-30 H.J. Lu - - PR binutils/21519 - * objdump.c (dump_relocs_in_section): Replace get_file_size - with bfd_get_file_size to get archive element size. - * testsuite/binutils-all/objdump.exp (test_objdump_f): New - proc. - (test_objdump_h): Likewise. - (test_objdump_t): Likewise. - (test_objdump_r): Likewise. - (test_objdump_s): Likewise. - Add objdump tests on archive. - -2017-05-24 Yao Qi - - * objdump.c (disassemble_data): Caller update. - -2017-05-19 Jose E. Marchesi - - * objcopy.c (merge_gnu_build_notes): Remove workaround that - prevented deleting relocations in duplicated notes in mips64 and - sparc. - -2017-05-19 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips-note-2.d: New test. - * testsuite/binutils-all/mips/mips-note-2r.d: New test. - * testsuite/binutils-all/mips/mips-note-2-n32.d: New test. - * testsuite/binutils-all/mips/mips-note-2-n64.d: New test. - * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test. - * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test. - * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'. - Run the new tests. - -2017-05-19 Maciej W. Rozycki - - * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump' - option. - -2017-05-19 Jose E. Marchesi - - * NEWS: Mention the SPARC M8 support. - -2017-05-19 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips.exp: Bail out right away if - non-ELF. - -2017-05-18 Alan Modra - - * strings.c: Don't compare boolean values against TRUE or FALSE. - -2017-05-15 Jeff Law - - * readelf.c (display_arc_attribute): Avoid implicit fallthru. - -2017-05-15 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3' - to `as' flags. - * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test. - * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test. - * testsuite/binutils-all/mips/mips16-undecoded.s: Remove - `.module mips3'. - * testsuite/binutils-all/mips/mips.exp: Run the new tests. - -2017-05-15 Maciej W. Rozycki - - * readelf.c (print_mips_ases): Handle MIPS16e2 ASE. - * NEWS: Mention MIPS16e2 ASE support. - -2017-05-12 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK - and SDBBP disassembly. - -2017-05-10 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and - `copyfile' variables. - -2017-05-10 Claudiu Zissulescu - - * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4. - (get_arc_section_type_name): New function. - (get_section_type_name): Use the above function. - (display_arc_attribute): New function. - (process_arc_specific): Likewise. - (process_arch_specific): Handle ARC specific information. - -2017-05-09 Kaz Kojima - - * MAINTAINERS (SH): Remove myself as SH maintainer. - -2017-05-02 H.J. Lu - - * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned - long when comparing with sec->reloc_count. - -2017-05-02 Nick Clifton - - * objcopy.c (merge_gnu_build_notes): Disable merge if there are - more internal relocs than external relocs. - -2017-05-02 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the - disassembly of PC-relative LA and LW synthetic instructions. - -2017-05-02 Nick Clifton - - PR 21440 - * objdump.c (dump_relocs_in_section): Check for an excessive - number of relocs before attempting to dump them. - -2017-05-01 Alan Modra - - * objcopy.c (merge_gnu_build_notes): Correct code deleting - relocs. - -2017-04-28 Nick Clifton - - PR binutils/21439 - * readelf.c (print_gnu_build_attribute_name): Allow for an empty - name field. - -2017-04-28 Nick Clifton - - PR binutils/21437 - * readelf.c (process_version_sections): Check for underflow when - computing the start address of the auxillary version data. - -2017-04-28 Nick Clifton - - PR binutils/21438 - * dwarf.c (process_extended_line_op): Do not assume that the - string extracted from the section is NUL terminated. - (fetch_indirect_string): If the string retrieved from the section - is not NUL terminated, return an error message. - (fetch_indirect_line_string): Likewise. - (fetch_indexed_string): Likewise. - -2017-04-26 Nick Clifton - - PR binutils/21433 - * bucomm.c (get_file_size): Return -1 if file_name is NULL. - * ar.c (main): Fail with usage() invocation if no file names are - provided. - -2017-04-26 Nick Clifton - - * readelf.c (process_section_headers): Warn about overlarge - sections. - (print_gnu_build_attribute_name): Print the number of unrecognised - note types. Fix formatting in the presence of errors. - (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes. - (testsuite/binutils-all/note-2-64.s): Likewise. - -2017-04-26 Maciej W. Rozycki - - * readelf.c (process_mips_specific): Add static GOT support. - -2017-04-25 Maciej W. Rozycki - - * readelf.c (process_mips_specific): Remove error reporting from - GOT[1] processing. - -2017-04-25 Maciej W. Rozycki - - * readelf.c (process_mips_specific): Remove null GOT data check. - -2017-04-25 Maciej W. Rozycki - - * testsuite/binutils-all/mips/mips16-alias.d: New test. - * testsuite/binutils-all/mips/mips16-noalias.d: New test. - * testsuite/binutils-all/mips/mips16-alias.s: New test source. - * testsuite/binutils-all/mips/mips.exp: Run the new tests. - -2017-04-23 Alan Modra - - PR 21418 - * ar.c (main): Check -a, -b, -i and -N args are given. - -2017-04-23 Alan Modra - - PR 21417 - * ar.c (main): Check that an archive file is given after options. - -2017-04-23 Alan Modra - - PR 21415 - * objdump.c (disassemble_section): Check bfd_get_section_contents - status. - -2017-04-23 Alan Modra - - PR 21408 - * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL - file_table. - -2017-04-21 Nick Clifton - - PR binutils/21378 - * readelf.c (print_gnu_build_attribute_name): Check for an - overlarge name field. - -2017-04-13 Nick Clifton - - PR binutils/21379 - * readelf.c (process_dynamic_section): Detect over large section - offsets in the DT_SYMTAB entry. - -2017-04-13 Nick Clifton - - PR binutils/21345 - * readelf.c (process_mips_specific): Catch an unfeasible memory - allocation before it happens and print a suitable error message. - -2017-04-13 Nick Clifton - - * objcopy.c: Add --no-merge-notes option to disable note merging. - Add --[no-]merge-notes option to strip, and enable it by default. - (num_bytes): New function. - (merge_gnu_build_notes): Add code to merge stack size notes. - * binutils.texi: Update strip and objcopy documentation. - * readelf.c (print_gnu_build_attribute_name): Use defined - constants for note types. - -2017-04-10 John Delsignor - - PR binutils/21319 - * dwarf.c (display_gdb_index): Correct test for a corrupt address - table size. - -2017-04-05 Jiong Wang - - * objcopy.c (struct redefine_node): Delete the field "next". - (redefine_sym_list): Deleted. - (redefine_specific_htab): New hash table. - (redefine_specific_reverse_htab): Likewise. - (eq_string_redefnode): New function. - (htab_hash_redefnode): Likewise. - (create_symbol2redef_htab): Likewise. - (add_specific_symbol_node): Likewise. - (create_symbol_htabs): Create redefine_specific_htab and - redefine_specific_reverse_htab. - (lookup_sym_redefinition): Use hash table instead of list. - (redefine_list_append): Likewise, and rename to add_redefine_and_check. - (copy_main): Use redefine_specific_htab instead of redefine_sym_list. - Update comments. - -2017-04-04 H.J. Lu - - * NEWS: Mention support for ELF SHF_GNU_MBIND and - PT_GNU_MBIND_XXX. - * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX. - (get_elf_section_flags): Handle SHF_GNU_MBIND. - (process_section_headers): Likewise. - * testsuite/binutils-all/mbind1.s: New file. - * testsuite/binutils-all/objcopy.exp: Run readelf test on - mbind1.s. - -2017-04-03 Nick Clifton - - PR binutils/21345 - * readelf.c (get_program_headers): Check for there being too many - program headers before attempting to allocate space for them. - -2017-04-03 Nick Clifton - - PR binutils/21344 - * readelf.c (process_mips_specific): Check for an out of range GOT - entry before reading the module pointer. - -2017-04-03 Nick Clifton - - PR binutils/21343 - * readelf.c (get_unwind_section_word): Fix snafu checking for - invalid word offsets in ARM unwind information. - -2017-03-31 Pip Cet - - * NEWS: Use "WebAssembly" consistently. - * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice. - -2017-03-30 Pip Cet - - * readelf.c: Add support for wasm32 ELF format WebAssembly files. - (guess_is_rela): Likewise. - (dump_relocations): Likewise. - (is_32bit_abs_reloc): Likewise. - (is_none_reloc_): Likewise. - * NEWS: Mention the new support. - * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32 - as ELF target. - (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE. - * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations. - * testsuite/binutils-all/wasm32: New directory. - * testsuite/binutils-all/wasm32/create-wasm.d: New file. - * testsuite/binutils-all/wasm32/create-wasm.s: Likewise. - * testsuite/binutils-all/wasm32/custom-section.d: Likewise. - * testsuite/binutils-all/wasm32/custom-section.s: Likewise. - * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise. - * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise. - * testsuite/binutils-all/wasm32/long-sections.d: Likewise. - * testsuite/binutils-all/wasm32/long-sections.s: Likewise. - * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise. - * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise. - * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise. - * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise. - * testsuite/binutils-all/wasm32/prepared-section.d: Likewise. - * testsuite/binutils-all/wasm32/prepared-section.s: Likewise. - * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests. - -2017-03-29 Alan Modra - - * doc/binutils.texi (objdump): Document PowerPC -M options. - -2017-03-21 Andi Kleen - - * objdump.c (unwind_inlines): Add. - (option_values): Add OPTION_INLINES. - (show_line): Unwind inlines if requested. - (main): Parse OPTION_INLINES. - (usage): Document --inlines. - * doc/binutils.texi: Document --inlines. - * NEWS: Likewise. - -2017-03-21 Nick Clifton - - * readelf.c (print_gnu_build_attribute_name): Allow stack - protection notes to contain numeric values. Use a colon rather - than a space to separate a string name from its values. Decode - the numeric value of a stack protection note. - * objcopy.c (merge_gnu_build_notes): Allow version notes to - contain extra text after the protocol version number. - -2017-03-20 Mark Wielaard - - * readelf.c (process_program_headers): Move dynamic_addr check - after .dynamic section cross check. - -2017-03-17 Nick Clifton - - * readelf.c (print_gnu_build_attribute_name): Fix off by one error - printing the value for a build note with an ascii name. - -2017-03-16 Nick Clifton - - * readelf.c (print_gnu_build_attribute_name): Add support for - GNU_BUILD_ATTRIBUTE_SHORT_ENUM. - -2017-03-14 Nick Clifton - - * readelf.c (print_gnu_build_attribute_description): Move symbol - printing code to... - (print_symbol_for_build_attribute): New function. ...here. - Add to find the best symbol to associate with an OPEN note. - Add code to cache the symbol table and string table, so that they - are not loaded every time a note is displayed. - * testsuite/binutils-all/note-2-32.s: Add a function symbol. - * testsuite/binutils-all/note-2-64.s: Likewise. - * testsuite/binutils-all/note-2-32.d: Update expected note output. - * testsuite/binutils-all/note-2-64.d: Likewise. - -2017-03-13 Alan Modra - Taeung Song - - * objdump.c (update_source_path): Add abfd param. Add struct - stat var. Pass to try_print_file_open. Warn if source is more - recent than object. - (try_print_file_open, slurp_file): Add struct stat param to - return fstat. - (show_line): Call update_source_path with bfd. - -2017-03-10 Chia-Hao Lo - - PR binutils/21235 - * objdump.c (main): Set do_wide with --wide. - -2017-03-10 Nick Clifton - - * readelf.c (get_machine_name): Rearrange switch table in order of - increasing machine number. Add missing entries. - -2017-03-08 H.J. Lu - - PR binutils/21231 - * readelf.c (decode_x86_isa): Change argument to unsigned int. - (print_gnu_property_note): Retrieve property type and datasz as - 4-byte integer. Consolidate property datasz check. Check - GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER. - * testsuite/binutils-all/i386/pr21231a.d: New file. - * testsuite/binutils-all/i386/pr21231a.s: Likewise. - * testsuite/binutils-all/i386/pr21231b.d: Likewise. - * testsuite/binutils-all/i386/pr21231b.s: Likewise. - * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. - * testsuite/binutils-all/x86-64/pr21231a.s: Likewise. - * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. - * testsuite/binutils-all/x86-64/pr21231b.s: Likewise. - -2017-03-06 Nick Clifton - - * readelf.c (print_gnu_build_attribute_name): Read byte values - from the name string as unsigned bytes. - (process_notes_at): Use memcpy to copy an unterminated name - string. - -2017-03-06 Sam Thursfield - - * configure.ac (AC_CHECK_DECLS): Add asprintf. - * config.in: Regenerate. - * configure: Regenerate. - -2017-03-02 Nick Clifton - - * readelf.c (print_gnu_build_attribute_description): Use global - symbols for OPEN attributes if at all possible. - * objcopy.c (is_merged_note_section): Support build note sections - without the SHF_GNU_BUILD_NOTE section flag set. - -2017-03-02 Jan Kratochvil - - * dwarf.c (debug_displays_assert): New static assertion. - -2017-03-02 Jan Kratochvil - - * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists. - -2017-03-01 Nick Clifton - - * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs. - (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs. - (decode_x86_isa): New function. - (print_gnu_property_note): New function. - (print_gnu_note): Handle GNU_PROPERTY_NOTEs. - (print_gnu_build_attribute_description): New function. - (print_gnu_build_attribute_name): New function. - (process_note): Add support for GNU_BUILD_NOTEs. - * objcopy.c (--merge-notes): New command line option. - (copy_options): Add merge-notes. - (copy_usage): Likewise. - (is_merge_note_section): New function. - (merge_gnu_build_notes): New function. - (copy_object): Merge note sections if asked to do so. - (skip_section): Add skip_copy parameter. Add support for skipping - merged note sections. - (copy_relocations_in_section): Update call to skip_section. - (copy_section): Likewise. - (copy_main): Add support for merge-notes option. - * doc/binutils.texi: Document the new option to objcopy. - * NEWS: Mention the new feature. - * testsuite/binutils-all/note-2-32.d: New test. Checks note - merging on 32-bit targets. - * testsuite/binutils-all/note-2-32.s: New test source file. - * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d - but for 64-bit targets. - * testsuite/binutils-all/note-2-64.s: New test source file. - * testsuite/binutils-all/objcopy.exp: Run the new test. - -2017-02-28 Peter Bergner - - * objdump.c (main): Use remove_whitespace_and_extra_commas. - -2017-02-27 Jan Kratochvil - - Fix compilation with GCC 4.4.7. - * dwarf.c (display_loclists_list, display_debug_rnglists_list): - Initialize begin and end. - -2017-02-25 Alan Modra - - * testsuite/binutils-all/dw5.S: Replace .string with .asciz. - Support hpux .comm variant. - * testsuite/binutils-all/readelf.exp: Define HPUX when assembling - dw5 test for hppa64-hpux. - -2017-02-24 Nick Clifton - - * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms, - (do_reloc, do_sections, do_section_groups, do_section_details, - (do_segments, do_unwind, do_using_dynamic, do_header, do_dump, - (do_version, do_histogram, do_debugging, do_arch, do_notes, - (do_archive_index, is_32bit_elf, decompress_dumps): Use - bfd_boolean type. - (parse_args): Treat the do_* variables as booleans. - (print_vma): Return an unsigned int. - (print_symbol): Change width parameter to signed int. - (is_ia64_vms): Change return type to bfd_boolean. - (guess_is_rela): Likewise. - (slurp_rela_relocs): Likewise. - (slurp_rel_relocs): Likewise. - (dump_relocations): Likewise. - (process_file_header): Likewise. - (get_program_headers): Likewise. - (process_program_headers): Likewise. - (process_section_headers): Likewise. - (process_section_groups): Likewise. - (dump_ia64_vms_dynamic_fixups): Likewise. - (dump_ia64_vms_dynamic_relocs): Likewise. - (process_ia64_vms_dynamic_relocs): Likewise. - (process_relocs): Likewise. - (dump_ia64_unwind): Likewise. - (ia64_process_unwind): Likewise. - (dump_hppa_unwind): Likewise. - (slurp_hppa_unwind_table): Likewise. - (hppa_process_unwind): Likewise. - (decode_arm_unwind_bytecode): Likewise. - (decode_tic6x_unwind_bytecode): Likewise. - (decode_arm_unwind): Likewise. - (dump_arm_unwind): Likewise. - (arm_process_unwind): Likewise. - (process_unwind): Likewise. - (get_32bit_dynamic_section): Likewise. - (get_64bit_dynamic_section): Likewise. - (process_dynamic_section): Likewise. - (process_version_sections): Likewise. - (process_symbol_table): Likewise. - (process_syminfo): Likewise. - (apply_relocations): Likewise. - (disassemble_section): Likewise. - (dump_section_as_strings): Likewise. - (dump_section_as_bytes): Likewise. - (load_specific_debug_section): Likewise. - (load_debug_section): Likewise. - (display_debug_section): Likewise. - (process_section_contents): Likewise. - (process_attributes): Likewise. - (process_nds32_specific): Likewise. - (process_gnu_liblist): Likewise. - (print_core_note): Likewise. - (print_gnu_note): Likewise. - (print_v850_note): Likewise. - (process_netbsd_elf_note): Likewise. - (print_stapsdt_note): Likewise. - (print_ia64_vms_note): Likewise. - (process_note): Likewise. - (process_notes_at): Likewise. - (process_corefile_note_segments): Likewise. - (process_v850_notes): Likewise. - (process_note_sections): Likewise. - (process_notes): Likewise. - (process_arch_specific): Likewise. - (get_file_header): Likewise. - (process_object): Likewise. - (process_archive): Likewise. - (process_file): Likewise. - (section_subset): Make static. - (get_mips_reg_size): Return a signed integer. - (process_object): Reverse the logic of the return value. - (process_archive): Likewise. - (process_file): Likewise. - (process_program_headers): Fix snafu - if the program headers are - not available then this is not a cause to fail. - (process_corefile_note_segments): Likewise. - -2017-02-24 Maciej W. Rozycki - - * readelf.c (get_ver_flags): Tidy the formatting of the string - returned - -2017-02-24 Maciej W. Rozycki - - * readelf.c (process_version_sections) : Make - `isum' unsigned. - : Likewise. - -2017-02-24 Maciej W. Rozycki - - * readelf.c (process_version_sections) : Limit - the number of entries processed by the section size. Don't - break out of the loop if `ent.vd_next' is 0. - -2017-02-23 Jan Kratochvil - - * testsuite/binutils-all/dw5.S: New file. - * testsuite/binutils-all/dw5.W: New file. - * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test. - -2017-02-23 Jan Kratochvil - - * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16. - -2017-02-23 Jan Kratochvil - - * dwarf.c (display_debug_macro): Support DWARF-5. Rename - DW_MACRO_GNU_*. - -2017-02-23 Jan Kratochvil - - * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer, - DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert - and DW_OP_reinterpret. - (read_and_display_attr_value): Support DW_AT_call_value, - DW_AT_call_data_value, DW_AT_call_target and - DW_AT_call_target_clobbered. - -2017-02-23 Jan Kratochvil - - * dwarf.c (fetch_indirect_line_string): New function. - (abbrev_attr): New field implicit_const. - (add_abbrev_attr): New parameter implicit_const. - (process_abbrev_section): Support DW_FORM_implicit_const. - (decode_location_expression): Support DW_OP_entry_value. - (read_and_display_attr_value): Add parameter implicit_const. Support - DW_FORM_line_strp and DW_FORM_implicit_const. - (read_and_display_attr): Add parameter implicit_const. - (process_debug_info): Support line_str and DWARF-5. - (read_debug_line_header): Support DWARF-5. - (display_formatted_table): New function. - (display_debug_lines_raw): New parameter file. Support DWARF-5. - (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5. - (display_debug_lines): Pass file parameter. - (display_debug_macro): Update read_and_display_attr_value caller. - (display_debug_abbrev): Support DW_FORM_implicit_const. - (display_loclists_list): New function. - (display_loc_list): Support .debug_loclists. - (display_debug_ranges_list): New function from display_debug_ranges. - (display_debug_rnglists_list): New function. - (display_debug_ranges): Support .debug_rnglists. - (debug_displays): Add .debug_line_str, .debug_loclists and - .debug_rnglists. - * dwarf.h: Include dwarf2.h - (DWARF2_Internal_LineInfo): Add li_offset_size. - (DWARF2_Internal_CompUnit): Add cu_unit_type. - (enum dwarf_section_display_enum): Add line_str. - * readelf.c (process_section_headers): Add rnglists and loclists. - -2017-02-23 Jan Kratochvil - - * dwarf.c (display_block): Add parameter delimiter. - (decode_location_expression): Update display_block callers. - (read_and_display_attr_value): Add parameter delimiter. - (read_and_display_attr, display_debug_macro): Update - read_and_display_attr_value caller. - -2017-02-23 Jan Kratochvil - - * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address - and off. - (display_loc_list_dwo): Use dwarf_vma for offset. - (display_debug_loc): Use dwarf_vma for offset, base_address. - (struct range_entry, range_entry_compar): Use dwarf_vma for - ranges_offset. - (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and - base_address. - -2017-02-23 Nick Clifton - - * readelf.c (display_tag_value): Use an explicit signed type for - the tag parameter. - (display_gnu_attributes): Use an unsigned integer type for - attribute tags. - (display_power_gnu_attribute): Likewise. - (display_s390_gnu_attribute): Likewise. - (display_sparc_hwcaps): Likewise. - (display_sparc_hwcaps2): Likewise. - (display_sparc_gnu_attribute): Likewise. - (display_mips_gnu_attribute): Likewise. - (display_tic6x_attribute): Likewise. - (display_raw_attribute): Likewise. - (process_attributes): Likewise. - (process_arm_specific): Delete redundant function. - (process_power_specific): Likewise. - (process_s390_specific): Likewise. - (process_sparc_specific): Likewise. - (process_tic6x_specific): Likewise. - (process_msp430x_specific): Likewise. - (display_public_gnu_attributes): New function. Displays known - information about an unknown gnu attribute. - (display_generic_attribute): New function. Calls - display_tag_value for non-nul tags. - (process_arch_specific): Call process_attributes even for - architectures not known to specifically support gnu attributes. - -2017-02-22 Jan Kratochvil - - * dwarf.c (decode_location_expression): Display also OP. - -2017-02-22 Maciej W. Rozycki - - * readelf.c (process_version_sections) : Print a - new line between the heading and the first version definition - entry. - -2017-02-20 Nick Clifton - - PR binutils/21156 - * dwarf.c (cu_tu_indexes_read): Move into... - (load_cu_tu_indexes): ... here. Change the variable into - tri-state. Change the function into boolean, returning - false if the indicies could not be loaded. - (find_cu_tu_set): Return NULL if the indicies could not be - loaded. - -2017-02-17 Nick Clifton - - PR binutils/21156 - * readelf.c (find_section_in_set): Test for invalid section - indicies. - -2017-02-17 Nick Clifton - - * readelf.c (get_section_type_name): Add decoding of GNU section - types. - -2017-02-15 Nick Clifton - - * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past - Maintainers section. - -2017-02-14 Nick Clifton - - PR binutils/21159 - * readelf.c (dump_section_as_strings): Reset the start address if - no decompression is perfromed. - (dump_section_as_bytes): Likewise. - -2017-02-14 Nick Clifton - - PR binutils/21158 - * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or - empty symbol name. - -2017-02-14 Nick Clifton - - PR binutils/21157 - * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE - pairs. - (parse_number): Exit early if passed an empty string. - -2017-02-14 Nick Clifton - - PR binutils/21155 - * readelf.c (IN_RANGE): New macro. Tests for an address + offset - being within a given range. - (target_specific_reloc_handling): Use macro to test for underflow - as well as overflow of reloc offset. - -2017-02-13 Nick Clifton - - PR binutils/21150 - * nm.c (file_symbol): Add test of string length before testing - string characters. - -2017-02-13 Nick Clifton - - PR binutils/21135 - * readelf.c (dump_section_as_bytes): Handle the case where - uncompress_section_contents returns false. - (dump_section_as_bytes, load_specific_debug_section): Likewise. - -2017-02-13 Nick Clifton - - PR binutils/21149 - * readelf.c (get_compression_header): Add size parameter. Check - size against sizeof compression header before attempting to - extract the header. - (process_section_headers): Pass size to get_compression_header. - (dump_section_as_strings): Likewise. - (dump_section_as_bytes): Likewise. - (load_specific_debug_section): Likewise. - -2017-02-13 Nick Clifton - - PR binutils/21148 - * readelf.c (process_version_sections): Include size of auxillary - version information when checking for buffer overflow. - -2017-02-13 Nick Clifton - - PR binutils/21147 - * readelf.c (process_section_contents): Fix off by one error - reporting un-dumped sections. - -2017-02-13 Nick Clifton - - PR binutils/21139 - * readelf.c (target_specific_reloc_handling): Add num_syms - parameter. Check for symbol table overflow before accessing - symbol value. If reloc pointer is NULL, discard all saved state. - (apply_relocations): Pass num_syms to target_specific_reloc_handling. - Call target_specific_reloc_handling with a NULL reloc pointer - after processing all of the relocs. - -2017-02-13 Nick Clifton - - PR binutils/21137 - * readelf.c (target_specific_reloc_handling): Add end parameter. - Check for buffer overflow before writing relocated values. - (apply_relocations): Pass end to target_specific_reloc_handling. - -2017-01-27 Dilyan Palauzov - Nick Clifton - - PR 20343 - * doc/binutils.texi (ar): Extend documentation of the --plugin - option. Include a description of where the plugins should be - located. - (nm): Likewise. - -2017-01-23 Nick Clifton - - * MAINTAINERS: Add Bernd to Past Maintainers section. - (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers - section. - -2017-01-23 Bernd Schmidt - - * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer. - -2017-01-20 Andrew Burgess - - * objdump.c (dump_section_header): Extract max section name length - from data parameter, use this when formatting output. - (find_longest_section_name): New function. - (dump_headers): Calculate longest section name when in wide mode, - reformat to unify printing of header line. - -2017-01-18 Bernhard Rosenkranzer - - PR 21059 - * arlex.l: Support processing with flex 2.6.3. - * deflex.l: Likewise. - -2017-01-17 Dmitry Timoshkov - - * resbin.c: Optional dialog control data immediately follows - the control description without alignment. - * testsuite/binutils-all/windres/controldata.rc: New test. - source. - * testsuite/binutils-all/windres/controldata.rsd: New test. - -2017-01-12 Nick Clifton - - PR binutils/20876 - * NEWS: Mention the new feature. - * testsuite/binutils-all/objdump.exp (test_build_id_debuglink): - New proc to test the location of separate debug info files using - the build-id method. - -2017-01-10 Nick Clifton - - PR 21034 - * stabs.c (parse_stab_members): Fix thinko checking for g++ - version 1 stabs information. - -2017-01-09 Nick Clifton - - * objdump.c (display_file): Add new parameter 'last_file'. If - last_file is true, do not call bfd_close at the end of the - function. - (main): Set the value of the last_file parameter when calling - display_file. - -2017-01-09 Alan Modra - - * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn - comment. - -2017-01-06 Nick Clifton - - * MAINTAINERS: Move Paul Brook to the Past Maintainers section. - -2017-01-04 Dilan Palauzov - - PR 20958 - * syslex.l (option): Add noyywrap - (yywrap): Delete. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/binutils/ChangeLog-2017 b/binutils/ChangeLog-2017 new file mode 100644 index 00000000000..714b20d9748 --- /dev/null +++ b/binutils/ChangeLog-2017 @@ -0,0 +1,1886 @@ +2017-12-19 Nick Clifton + + PR 22587 + * readelf.c (process_section_headers): Do not complain about an + sh_info field of 0 in relocation sections of ET_EXEC or ET_DYN + type executables. + +2017-12-19 Alan Modra + + * testsuite/binutils-all/ar.exp (unique_symbol): Don't run AR + if assembly fails. + * testsuite/binutils-all/arc/objdump.exp (check_assembly): If + objfile is empty, fail test. + * testsuite/binutils-all/arm/objdump.exp: Don't return if assembly + fails for a test, continue on to other tests. + * testsuite/binutils-all/bfin/objdump.exp: Likewise. + * testsuite/binutils-all/hppa/objdump.exp: Likewise. + * testsuite/binutils-all/m68k/objdump.exp: Likewise. + * testsuite/binutils-all/vax/objdump.exp: Likewise. + * testsuite/binutils-all/size.exp: Likewise. + * testsuite/binutils-all/nm.exp: Likewise. Move PR12753 test. + * testsuite/binutils-all/objcopy.exp: Don't perror on assembly fail. + * testsuite/binutils-all/objdump.exp: Report assembly fails. + +2017-12-18 Nick Clifton + + PR 22532 + * dwarf.c (read_and_display_attr_value): Add attributes that might + use the DW_FORM_exprloc form, and if so, display the decoded + location expression list. + +2017-12-14 Alan Modra + + * testsuite/lib/utils-lib.exp (default_binutils_assemble_flags): + Don't perror on assembler diagnostic output. + * testsuite/binutils-all/nm.exp: Run unique symbol test on all + ELF targets. Resolve as "unsupported" on assembly failure. + +2017-12-11 Renlin Li + + * testsuite/binutils-all/aarch64/objdump.d: New. + * testsuite/binutils-all/aarch64/objdump.s: New. + +2017-12-08 Nick Clifton + + * objcopy.c (copy_relocations_in_section): Use the orelocations + field of the input section, if it has been initialised. + * testsuite/binutils-all/note-2-64.d: Skip test on Sparc64. + +2017-12-06 Jim Wilson + + PR 22465 + * objcopy.c (copy_section): New local extra. If isection->lma not + exactly divisible by interleave, then bias from. Also adjust + osection->lma if necessary. + +2017-12-06 Alan Modra + + PR 22552 + * readelf.c (process_file_header): Don't assume XINDEX case + value for e_shstrndx is within bounds. + (load_debug_section): Sanity test e_shstrndx before attempting + to read .shstrtab. Wrap long lines. + +2017-12-01 Oleksandr Pikozh + + * doc/binutils.texi: Add --strip-unneeded to objcopy synopsis. + +2017-11-30 Nick Clifton + + PR 22510 + * readelf.c (load_debug_section): Fail if there are no section + headers available. + +2017-11-29 Nick Clifton + + PR 22508 + * objdump.c (dump_relocs_in_section): Also check the section's + relocation count to make sure that it is reasonable before + attempting to allocate space for the relocs. + +2017-11-29 Stefan Stroe + + * po/Make-in (datadir): Define as @datadir@. + (localedir): Define as @localedir@. + (gnulocaledir, gettextsrcdir): Use @datarootdir@. + +2017-11-28 H.J. Lu + + PR binutils/22490 + * readelf.c (process_notes_at): Add an argument for note + alignment. If note alignment is less than 4, use 4 byte + alignment. Otherwise, skip notes if alignment isn't 4 nor + 8 bytes. + (process_corefile_note_segments): Pass segment alignment to + process_notes_at. + (process_note_sections): Pass section alignment to + process_notes_at. + (process_object): Call load_separate_debug_file only if + e_shstrndx != SHN_UNDEF. + +2017-11-27 Nick Clifton + + PR 22490 + * readelf.c (dump_section_as_bytes): Check for a NULL string + section pointer. + (process_notes_at): Compute the alignment to use if displaying + notes from a segment. + +2017-11-26 H.J. Lu + + * dwarf.c (load_separate_debug_info): Rename argument name from + link to xlink. + +2017-11-24 H.J. Lu + + PR binutils/22444 + * readelf.c (process_notes_at): Use ELF_NOTE_DESC_OFFSET to get + the offset of the note descriptor. Use ELF_NOTE_NEXT_OFFSET to + get the offset of the next note entry. + +2017-11-23 Pavel I. Kryukov + + PR 22485 + * readelf.c (process_archive): Use memset to initiaise + thin_filedata structure. + +2017-11-21 H.J. Lu + + PR binutils/22451 + * testsuite/binutils-all/x86-64/objects.exp: New file. + * testsuite/binutils-all/x86-64/pr22451.o.bz2: Likewise. + +2017-11-21 Claudiu Zissulescu + + * testsuite/binutils-all/arc/objdump.exp: Update pattern matching + expression. + +2017-11-21 Nick Clifton + + * dwarf.c (dwo_name, dwo_dir, dwo_id, dwo_id_len): New variables. + (read_and_display_attr_value): Record dwo variables if requested. + (display_augmentation_data): Rename to display_data and make + generic. + (load_dwo_file): New function. Loads a separate dwarf object + file. + (load_separate_debug_file): Add reporting and loading of separate + dwarf objet files. + * readelf.c (process_section_headers): Add do_debug_links to list + of flags requiring a debug dump. + (display_debug_section): Tidy up code. + * doc/debug.options.texi: Add note that dwo links will also be + followed. + * testsuite/binutils-all/debuglink.s: Tidy code. + * testsuite/binutils-all/dwo.s: New test file. + * testsuite/binutils-all/readelf.wk2: New file - expected output + from readelf. + * testsuite/binutils-all/readelf.exp: Run the new test. + +2017-11-18 Alan Modra + + PR 22443 + * nm.c (sort_symbols_by_size): Don't attempt to access + section symbol internal_elf_sym. + (print_symbol): Likewise. Don't call bfd_get_symbol_version_string + for section symbols. + * objdump.c (compare_symbols): Don't attempt to access + section symbol internal_elf_sym. + (objdump_print_symname): Don't call bfd_get_symbol_version_string + for section symbols. + +2017-11-17 Jim Wilson + + * readelf.c (elf/riscv.h): Alphabetize include. + (is_32bit_inplace_add_reloc, is_32bit_inplace_sub_reloc) + (is_64bit_inplace_add_reloc, is_64bit_inplace_sub_reloc) + (is_16bit_inplace_add_reloc, is_16bit_inplace_sub_reloc) + (is_8bit_inplace_add_reloc, is_8bit_inplace_sub_reloc): New. + (apply_relocations): New locals reloc_inplace and reloc_subtract. + Call the new functions and set the new locals. Call byte_get if + reloc_inplace. Subtract sym->st_value if reloc_subtract. + +2017-11-17 Nick Clifton + + PR 22449 + * ar.c (write_archive): Free the temporary file name. + +2017-11-17 Nick Clifton + + * readelf.c (process_archive): Include member name in the + file_name of the filedata structure. + +2017-11-15 Alan Modra + + PR 22426 + * objcopy.c (copy_main): Free tmpname. + +2017-11-15 Nick Clifton + + PR 15152 + * dwarf.h (enum dwarf_section_display_enum): Add gnu_debuglink, + gnu_debugaltlink and separate_debug_str. + (struct dwarf_section): Add filename field. + Add prototypes for load_separate_debug_file, close_debug_file and + open_debug_file. + * dwarf.c (do_debug_links): New. + (do_follow_links): New. + (separate_debug_file, separate_debug_filename): New. + (fetch_alt_indirect_string): New function. Retrieves a string + from the debug string table in the separate debug info file. + (read_and_display_attr_value): Use it with DW_FORM_GNU_strp_alt. + (load_debug_section_with_follow): New function. Like + load_debug_section, but if the first attempt fails, then tries + again in the separate debug info file. + (introduce): New function. + (process_debug_info): Use load_debug_section_with_follow and + introduce. + (load_debug_info): Likewise. + (display_debug_lines_raw): Likewise. + (display_debug_lines_decoded): Likewise. + (display_debug_macinfo): Likewise. + (display_debug_macro): Likewise. + (display_debug_abbrev): Likewise. + (display_debug_loc): Likewise. + (display_debug_str): Likewise. + (display_debug_aranges): Likewise. + (display_debug_addr); Likewise. + (display_debug_frames): Likewise. + (display_gdb_index): Likewise. + (process_cu_tu_index): Likewise. + (load_cu_tu_indexes): Likewise. + (display_debug_links): New function. Displays the contents of a + .gnu_debuglink or .gnu_debugaltlink section. + (calc_gnu_debuglink_ctc32):New function. Calculates a CRC32 + value. + (check_gnu_debuglink): New function. Checks the CRC of a + potential separate debug info file. + (parse_gnu_debuglink): New function. Reads a CRC value out of a + .gnu_debuglink section. + (check_gnu_debugaltlink): New function. + (parse_gnu_debugaltlink): New function. Reads the build-id value + out of a .gnu_debugaltlink section. + (load_separate_debug_info): New function. Finds and loads a + separate debug info file. + (load_separate_debug_file): New function. Attempts to find and + follow a link to a separate debug info file. + (free_debug_memory): Free the separate debug info file + information. + (opts_table): Add "follow-links" and "links". + (dwarf_select_sections_by_letters): Add "k" and "K". + (debug_displays): Reformat. Add .gnu-debuglink and + .gnu_debugaltlink. + Add an extra entry for .debug_str in a separate debug info file. + * doc/binutils.texi: Move description of debug dump features + common to both readelf and objdump into... + * objdump.c (usage): Add -Wk and -WK. + (load_specific_debug_section): Initialise the filename field in + the dwarf_section structure. + (close_debug_file): New function. + (open_debug_file): New function. + (dump_dwarf): Load and dump the separate debug info sections. + * readelf.c (struct filedata): New structure. Contains various + variables that used to be global: + (current_file_size, string_table, string_table_length, elf_header) + (section_headers, program_headers, dump_sects, num_dump_sects): + Move into filedata structure. + (cmdline): New global variable. Contains list of sections to dump + by number, as specified on the command line. + Add filedata parameter to most functions. + (load_debug_section): Load the string table if it has not already + been retrieved. + (close_file): New function. + (close_debug_file): New function. + (open_file): New function. + (open_debug_file): New function. + (process_object): Process sections in any separate debug info files. + * doc/debug.options.texi: New file. Add description of =links and + =follow-links options. + * NEWS: Mention the new feature. + * elfcomm.c: Have the byte get functions take a const pointer. + * elfcomm.h: Update prototypes. + * testsuite/binutils-all/dw5.W: Update expected output. + * testsuite/binutils-all/objdump.WL: Update expected output. + * testsuite/binutils-all/objdump.exp: Add test of -WK and -Wk. + * testsuite/binutils-all/readelf.exp: Add test of -wK and -wk. + * testsuite/binutils-all/readelf.k: New file. + * testsuite/binutils-all/objdump.Wk: New file. + * testsuite/binutils-all/objdump.WK2: New file. + * testsuite/binutils-all/linkdebug.s: New file. + * testsuite/binutils-all/debuglink.s: New file. + +2017-11-10 Jim Wilson + + * testsuite/binutils-all/objdump.exp: Expect the debug_ranges test to + pass. + +2017-11-07 Jim Wilson + + * MAINTAINERS (RISC-V): Fix typo in my email address. + +2017-11-07 Palmer Dabbelt + + * MAINTAINERS (RISC-V): Add Jim Wilson as a maintainer. + Clean up Andrew's entry (remove trailing space, add tabs). + Change Palmer's email address, and clean up entry (add tabs). + +2017-11-07 Alan Modra + + * dwarf.c (read_uleb128): Properly pluralize messages. + (display_debug_lines_raw, display_debug_loc): Likewise. + (display_debug_names, process_cu_tu_index): Likewise. + * od-macho.c (dump_code_signature_superblob): Likewise. + * readelf.c (process_program_headers): Likewise. + (process_section_header, process_relocs): Likewise. + (hppa_process_unwind, arm_process_unwind): Likewise. + (process_dynamic_section, process_version_sections): Likewise. + (process_symbol_table, process_syminfo): Likewise. + (apply_relocations, process_mips_specific): Likewise. + (process_gnu_liblist, process_notes_at): Likewise. + (process_archive): Likewise. + * testsuite/binutils-all/dw2-1.W, + * testsuite/binutils-all/dw2-3.W, + * testsuite/binutils-all/dw2-3gabi.W, + * testsuite/binutils-all/dw5.S, + * testsuite/binutils-all/dw5.W, + * testsuite/binutils-all/i386/compressed-1a.d, + * testsuite/binutils-all/libdw2-compressedgabi.out, + * testsuite/binutils-all/objdump.W, + * testsuite/binutils-all/readelf.r, + * testsuite/binutils-all/readelf.r-64, + * testsuite/binutils-all/x86-64/compressed-1a.d: Update + for pluralization fixes. + +2017-11-07 Alan Modra + + * sysdep.h (textdomain, bindtextdomain): Use safer "do nothing". + (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. + +2017-11-03 Claudiu Zissulescu + + * doc/binutils.texi (ARC): Update disassembler options. + * testsuite/binutils-all/arc/hexprint.s: New file. + * testsuite/binutils-all/arc/objdump.exp: Test hex printing + feature. + +2017-11-03 Mingi Cho + Nick Clifton + + PR 22386 + * dwarf.c (read_cie): Use bfd_size_type for + augmentation_data_len. + (display_augmentation_data): New function. + (display_debug_frames): Use it. + Check for integer overflow when testing augmentation_data_len. + +2017-11-02 Mingi Cho + + PR 22384 + * readelf.c (print_gnu_property_note): Improve overflow checks so + that they will work on a 32-bit host. + +2017-11-01 James Bowman + + * readelf.c (is_16bit_abs_reloc): Add entry for FT32. + +2017-10-31 Nick Clifton + + * readelf.c (process_relocs): Tell users if no static relocs were + found, but if they had added --use-dynamic to the command line + then relocs would have been displayed. + +2017-10-28 Alan Modra + + PR 22361 + * readelf.c (process_archive_index_and_symbols): Ensure ar_size + field is zero terminated for strtoul. + (setup_archive, get_archive_member_name): Likewise. + +2017-10-27 Simon Marchi + + * dwarf.c (struct Frame_Chunk) : Change type to + unsigned int. + (display_debug_frames): Read CFA reg as an unsigned number. + +2017-10-25 Alan Modra + + * nm.c (filter_symbols): Match "__gnu_lto_slim" optionally prefixed + with "_". + +2017-10-18 Eric Botcazou + + * MAINTAINERS: Add myself as Visium maintainer. + +2017-10-18 Nick Clifton + + * README-how-to-make-a-release: A note about checking file and + directory permissions. + + * MAINTAINERS: Move Svein Seldal to Past Maintainers section. + +2017-10-18 Alan Modra + + PR 22303 + * readelf.c (print_core_note): Ensure "count" sanity check + calculation doesn't overflow. + (process_notes_at): Perform note namesz and descsz checks + using unsigned comparisons against data remaining. Catch + alignment overflow of namesz and descsz too. Don't allocate a + temp for terminating "name" when there is space available + before descdata. + +2017-10-17 Tom Tromey + + * MAINTAINERS: Add myself as dwarf-mode.el maintainer. + +2017-10-11 Peeter Joot + Nick Clifton + + * dwarf.c (read_and_display_attr_value): Handle DW_AT_endianity, + DW_END_default, DW_END_big, DW_END_little, DW_ATE_UCS, + DW_ATE_ASCII, DW_CC_pass_by_reference, DW_CC_pass_by_value, + DW_CC_GNU_renesas_sh, DW_CC_GNU_borland_fastcall_i386, + DW_AT_decimal_sign, DW_AT_defaulted, DW_AT_discr_list. + (get_TAG_name): Report user generated tag values. + * testsuite/binutils-all/dwarf-attributes.S: New test. + * testsuite/binutils-all/dwarf-attributes.W. Expected output from + readelf. + * testsuite/binutils-all/readelf.exp: Run the new test. + +2017-10-10 Tom Tromey + + * dwarf-mode.el: Bump to version 1.4. + +2017-10-10 Tom Tromey + + * dwarf-mode.el (dwarf--process, dwarf--deletion-region): New + defvar. + (dwarf--check-running, dwarf--sentinel, dwarf--invoke) + (dwarf--filter): New functions. + (dwarf-do-insert-substructure, dwarf-do-refresh): Call + dwarf--check-running, dwarf--invoke. + (dwarf-browse): Initialize new variables. + +2017-10-10 Tom Tromey + + * dwarf-mode.el: Set lexical-binding. + +2017-10-10 Tom Tromey + + * dwarf-mode.el (dwarf-mode-map): New defvar. + +2017-10-10 Tom Tromey + + PR 22249 + * dwarf.c (process_debug_info): Skip any comp unit that ends + before dwarf_start_die. + +2017-10-06 Alan Modra + + * dwarf.c (process_debug_info): Consolidate header length checks. + (display_debug_pubnames_worker): Use "start" to read header. + Properly check header length and report errors earlier. + Simplify loop printing pubnames. + (get_line_filename_and_dirname): Catch small negative "length" + values. + (display_debug_aranges): Likewise. Report header errors + earlier using standardized message. + (display_debug_names): Likewise. + +2017-10-05 Joseph Myers + + * readelf.c (decode_arm_unwind): Initialize res to TRUE. + +2017-10-05 Nick Clifton + + PR 22260 + * objcopy.c (strip_main): Add 'M' character to short options list + when calling getopt_long. + +2017-10-05 Nick Clifton + + PR 22262 + * readelf.c (dump_relocations): Do not truncate reloc names when + displaying output in wide mode. + +2017-10-05 Nick Clifton + + * README-how-to-make-a-release: Merge steps 3, 4 and 5, and insert + the git tag operation at the correct location. + +2017-10-05 Alan Modra + + PR 22239 + * dwarf.c (read_cie): Don't compare "start" and "end" pointers + after adding a possibly wild length to "start", compare the length + to the difference of the pointers instead. Remove now redundant + "negative" length test. + +2017-10-05 Tristan Gingold + + * MAINTAINERS: Update email address. Redirect release maintainer + to global maitainers. + +2017-10-01 Alan Modra + + PR 22232 + PR 22230 + * objdump.c (load_specific_debug_section): Introduce a temp to + stop bfd_get_full_section_contents NULLing out section->start. + +2017-10-01 Alan Modra + + PR 22230 + * objdump.c (load_specific_debug_section): Allocate an extra byte + for a terminating NUL. + +2017-09-30 Alan Modra + + PR 21978 + * objdump.c: Formatting. + (show_line): Reset prev_line when function name changes. + +2017-09-27 Nick Clifton + + PR 22219 + * dwarf.c (process_debug_info): Add a check for a negative + cu_length field. + +2017-09-27 Alan Modra + + PR 22216 + * readelf.c (process_symbol_table): Check that DT_HASH symbol + chains are only visited once, and report an error if not. Display + invalid symbol index if chain is out of range. Use the same logic + when calculating histograms rather than the PR 17531 fix. Delete + bogus check that chained index is less than number of buckets. + +2017-09-26 Nick Clifton + + PR 22154 + * dwarf.c (get_line_filename_and_dirname): Add extra checks for + buffer overruns. + +2017-09-26 Nick Clifton + + * README-how-to-make-a-release: New file. + +2017-09-26 Alan Modra + + PR 21732 + * dwarf.c (READ_ULEB): Don't use DWARF_VMA_FMT in translated string. + (READ_SLEB): Likewise. + * readelf.c (bfd_vmatoa): New function. + (get_data, get_dynamic_data): Use it for printing error messages. + +2017-09-25 H.J. Lu + + PR binutils/22203 + * nm.c (display_rel_file): Free memory returned from + bfd_get_synthetic_symtab. + +2017-09-22 Alexandre Oliva + + * dwarf.h (debug_info): Add loc_views and num_loc_views. + * dwarf.c (vm1): New constant. + (print_dwarf_view): New function. + (read_and_display_attr_value): Support DW_AT_GNU_locviews. + (process_debug_info): Keep num_loc_offsets and num_loc_views + in sync. + (display_view_pair_list): New function. + (display_loc_list_dwo): Take vstart_ptr; update it. Dump + location view pairs before the range they apply to, when a + viewlist augments the loc list. + (display_loc_list): Likewise. Check view numbers in range + tests. + (display_loclists_list): Likewise. Handle view pair entries, + and warn on trailing ones. + (loc_views): New variable. + (loc_offsets_compar): Compare loc_views if loc_offsets are the + same. + (display_debug_loc): Check and sort loc_views too. Accept + loc_view as expected_start. Skip if lists and views are the + same. Dump locview list separately in order, and pass the + locview list base to each list dump function. Warn and skip + overlap and hole checking if we find loclists and locviews to + not be adjacent. + * testsuite/binutils-all/locview-1.s: New. + * testsuite/binutils-all/readelf.locview-1: New. + * testsuite/binutils-all/locview-2.s: New. + * testsuite/binutils-all/readelf.locview-2: New. + * testsuite/binutils-all/readelf.exp: Run new tests. Fix + option spelling in pr18374 fail message. XFAIL dw5 test on + nds32*-elf. + +2017-09-22 Alan Modra + + * testsuite/binutils-all/readelf.exp: Don't perror and exit on + bintest.s assembly failure. Report tests unresolved instead. + Likewise for version note test, pr18374, decompress, and dw5 + tests. + (readelf_test): Set testname to include both option and binary + file name. Use for pass/fail. + +2017-09-21 Maciej W. Rozycki + + * readelf.c (get_machine_flags) : New case. + +2017-09-05 Nick Clifton + + PR 21995 + * readelf.c (process_mips_specific): Add checks for a NULL data + pointer. + +2017-09-05 Alexander Fedotov + Edmar Wienskoski + + PR 21994 + * readelf.c (process_version_sections ): Check + vd_aux and vda_next for sanity. Delete "end". Correct overflow + checks. + (process_version_sections ): Correct overflow + check. Don't report invalid vna_next on overflow. Do report + invalid vna_next on size less than aux info. + +2017-08-23 Alan Modra + + PR 21990 + * readelf.c (process_version_sections ): Check + for invalid vn_next field before adding to idx. Use unsigned + long for index vars. Move index checks. + : Likewise for vd_next. + +2017-08-17 Nick Clifton + + * testsuite/binutils-all/note-3-64.s: New test. Checks assembly + and decoding of version2 GNU build attribute notes. + * testsuite/binutils-all/note-3-32.s: New test. 32-bit version of + the above test. + * testsuite/binutils-all/note-3-64.d: New test driver. + * testsuite/binutils-all/note-3-32.d: New test driver. + * testsuite/binutils-all/objcopy.exp: Run the new test. + * readelf.c (is_64bit_abs_reloc): Add R_SPARC_64. + +2017-08-14 Gustavo Romero + + * readelf.c (get_note_type): Handle PPC note types available + since Linux 4.8. + +2017-08-12 Alan Modra + + * readelf.c (process_note): Qualify NT_GNU_BUILD_ATTRIBUTE notes + by name data. + +2017-08-08 Nick Clifton + + PR 21909 + * prdbg.c (pr_int_type): Increase size of local string buffer. + (pr_float_type): Likewise. + (pr_bool_type): Likewise. + +2017-08-02 Nick Clifton + + PR 21702 + * arsup.c (ar_addmod): Add plugin support for the MRI ADDMOD + command. + +2017-08-02 Nick Clifton + + * testsuite/binutils-all/objdump.exp (cpus_expected): Add am33-2. + +2017-08-02 Alan Modra + + * readelf.c (is_32bit_abs_reloc): Add R_IA64_SECREL32MSB and + R_IA64_DIR32MSB. + (is_64bit_abs_reloc): Add R_IA64_DIR64MSB. + (is_64bit_pcrel_reloc): Add R_IA64_PCREL64MSB. + +2017-08-01 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2017-07-31 Marty Plummer + + PR 21861 + * winduni.c (codepages): Use cp1252 for codepage 0. + +2017-07-25 Nick Clifton + + PR 21820 + * readelf.c (dump_section_as_strings): Do not fail if the section + was empty. + (dump_section_as_bytes): Likewise. + +2017-07-24 Nick Clifton + + PR 21813 + * rddbg.c (read_symbol_stabs_debugging_info): Check for an empty + string whilst concatenating symbol names. + +2017-07-21 Nick Clifton + + * po/fr.po: Updated French translation. + +2017-07-21 Simon Marchi + + * dwarf.c (last_pointer_size, warned_about_missing_comp_units): + Remove. + (load_debug_info): Remove assignments to those two variables. + +2017-07-21 Alexandre Oliva + + * dwarf.c (struct State_Machine_Registers): Add view field. + (reset_state_machine): Reset view. + (process_extended_line_op): Reset view when appropriate. + (display_debug_lines_raw): Increment or reset view when appropriate. + Print nonzero views. Support print view resets, disabled by default. + (display_debug_lines_decoded): Likewise. Disambiguate op_code tests, + enabling printing of end_sequence. + * testsuite/binutils-all/dw2-1.W: Add nonzero views. + * testsuite/binutils-all/dw2-3.W: Likewise. + * testsuite/binutils-all/dw2-3gabi.W: Likewise. + * testsuite/binutils-all/dw5.W: Add end sequence lines. + * testsuite/binutils-all/i386/compressed-1a.d: Add nonzero views. + * testsuite/binutils-all/libdw2-compressedgabi.out: Likewise. + * testsuite/binutils-all/objdump.W: Likewise. + * testsuite/binutils-all/objdump.WL: Add end sequence lines. + * testsuite/binutils-all/x86-64/compressed-1a.d: Add nonzero views. + +2017-07-19 Tristan Gingold + + * nm.c (show_stats): Remove variable. + (long_options): Remove --stats option. + (main): Remove handling of --stats. + +2017-07-18 Nick Clifton + + PR 21775 + * coffgrok.c: Fix spelling typos. + * readelf.c: Likewise. + * stabs.c: Likewise. + * testsuite/binutils-all/objcopy.exp: Likewise. + +2017-07-18 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2017-07-18 Hans-Peter Nilsson + + * dwarf.c (display_debug_names): Initialize hash_prev. + +2017-07-17 Nick Clifton + + PR 21433 + * ar.c (main): Skip check for no files on the command line when + running in MRI mode. + +2017-07-13 H.J. Lu + + * testsuite/binutils-all/objdump.exp: Always delete $testarchive + first. + +2017-07-12 Alan Modra + + * po/bg.po: Update from translationproject.org/latest/binutils/. + * po/ca.po: Likewise. + * po/da.po: Likewise. + * po/es.po: Likewise. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/hr.po: Likewise. + * po/id.po: Likewise. + * po/it.po: Likewise. + * po/ja.po: Likewise. + * po/ro.po: Likewise. + * po/ru.po: Likewise. + * po/sk.po: Likewise. + * po/sr.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + * po/zh_TW.po: Likewise. + +2017-07-12 Nick Clifton + + Fix compile time warnings using gcc 7.1.1. + * dwarf.c (dwarf_vmatoa_1): Do not pass a NULL string pointer to + sprintf. + * srconv.c (walk_tree_type): Initialise the spare field of the + IT_dty structure. + +2017-07-11 Andreas Schwab + + * readelf.c (process_note): Print newline after description data + in narrow mode. + (print_core_note): Print newline if nothing was printed in wide + mode. + +2017-07-09 Rafael Fontenelle + + * dwarf.c (display_formatted_table): Fix error message typo. + +2017-07-07 John Baldwin + + * readelf.c (get_freebsd_elfcore_note_type): Handle + NT_FREEBSD_PTLWPINFO. + +2017-07-05 H.J. Lu + + * dwarf.c (display_debug_names): Replace index with xindex. + +2017-07-04 Tristan Gingold + + * configure: Regenerate. + +2017-07-04 Tristan Gingold + + * NEWS: Add marker for 2.29. + +2017-07-03 Tristan Gingold + + * po/binutils.pot: Regenerate. + +2017-07-03 Alan Modra + + * strings.c (filename_and_size_t): Delete. + (strings_a_section): Don't check section size against file size. + Use bdf_malloc_and_get_section. Report an error on failures. + Replace arg param with filename and got_a_section param. + (got_a_section): Move to.. + (strings_object_file): ..an auto var here. Iterate over sections + rather than calling bfd_map_over_sections. Adjust strings_a_section + call. + +2017-07-02 Jan Kratochvil + + * dwarf.c: Include assert.h. + (MAX, MIN, get_IDX_name, display_debug_names): New. + (debug_displays): Add .debug_names. + * dwarf.h: (enum dwarf_section_display_enum): Add debug_names. + * readelf.c (process_section_headers): Add ".debug_names". + +2017-07-01 Alan Modra + + PR binutils/21665 + * objdump.c (strtab): Make var a bfd_byte*. + (disassemble_section): Don't limit malloc size. Instead, use + bfd_malloc_and_get_section. + (read_section_stabs): Use bfd_malloc_and_get_section. Return + bfd_byte*. + (find_stabs_section): Remove now unnecessary cast. + * objcopy.c (copy_object): Use bfd_malloc_and_get_section. Free + contents on error return. + * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section. + +2017-06-30 Nick Clifton + + PR binutils/21665 + * objdump.c (disassemble_section): Move check for an overlarge + section to just before the allocation of memory. Do not check + section size against file size, but instead use an arbitrary 2Gb + limit. Issue a warning message if the section is too big. + +2017-06-30 Maciej W. Rozycki + + * NEWS: Mention microMIPS XPA support. + +2017-06-30 Maciej W. Rozycki + + * NEWS: Mention microMIPS Release 5 ISA support. + +2017-06-30 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test. + * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test. + * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test. + * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test. + * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source. + * testsuite/binutils-all/mips/mips.exp: Run the new tests. + +2017-06-29 Anton Kolesov + + * testsuite/binutils-all/arc/double_store.s: New file. + * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler + options. + (do_objfile): New function. + (check_assembly): Likewise. + +2017-06-29 Andreas Arnez + + * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC. + +2017-06-28 H.J. Lu + + * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when + comparing against bfd_get_file_size return. + +2017-06-28 Nick Clifton + + * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes. + * readelf.c (print_gnu_build_attribute_name): Likewise. + +2017-06-28 Maciej W. Rozycki + Matthew Fortune + + * readelf.c (get_machine_flags) : New case. + (print_mips_isa_ext) : Likewise. + * NEWS: Mention Imagination interAptiv MR2 processor support. + +2017-06-26 Nick Clifton + + PR binutils/21665 + * objdump.c (disassemble_section): Skip any section that is bigger + than the entire file. + +2017-06-26 Nick Clifton + + PR binutils/21659 + * bucomm.c (get_file_size): Explicitly warn if the file is a + directory. + +2017-06-24 Thomas Preud'homme + + * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R. + +2017-06-23 Nick Clifton + + PR binutils/21659 + * strings.c (strings_file): Warn about attempts to run strings on + a directory. + +2017-06-22 H.J. Lu + + * readelf.c (decode_x86_feature): Decode + GNU_PROPERTY_X86_FEATURE_1_SHSTK. + * testsuite/binutils-all/i386/shstk.d: New file. + * testsuite/binutils-all/i386/shstk.s: Likewise. + * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. + * testsuite/binutils-all/x86-64/shstk.d: Likewise. + * testsuite/binutils-all/x86-64/shstk.s: Likewise. + +2017-06-22 H.J. Lu + + * readelf.c (decode_x86_feature): New. + (print_gnu_property_note): Call decode_x86_feature on + GNU_PROPERTY_X86_FEATURE_1_AND. + * testsuite/binutils-all/i386/empty.d: New file. + * testsuite/binutils-all/i386/empty.s: Likewise. + * testsuite/binutils-all/i386/ibt.d: Likewise. + * testsuite/binutils-all/i386/ibt.s: Likewise. + * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. + * testsuite/binutils-all/x86-64/empty.d: Likewise. + * testsuite/binutils-all/x86-64/empty.s: Likewise. + * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. + * testsuite/binutils-all/x86-64/ibt.d: Likewise. + * testsuite/binutils-all/x86-64/ibt.s: Likewise. + +2017-06-21 H.J. Lu + + * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error. + (READ_SLEB): Likewise. + +2017-06-21 Nick Clifton + + PR binutils/21648 + * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB. Add check for + reading a value that is too big for the containing variable. + (SLEB): Rename to SKIP_SLEB and READ_SLEB. Add similar check. + Replace uses of LEB and SLEB with appropriate new macro. + (display_debug_frames): Use an unsigned int for the 'reg' + variable. Use a signed long for the 'l' variable. + +2017-06-20 Andreas Krebbel + + * readelf.c (get_s390_segment_type): Add support for the new + segment type PT_S390_PGSTE. + (get_segment_type): Call get_s390_segment_type. + +2017-06-19 Nick Clifton + + PR binutils/21619 + * objdump.c (disassemble_bytes): Check that there is sufficient + data available before attempting to display it. + +2017-06-06 Simon Marchi + + * sysinfo.y: Free memory allocated by token NAME. + +2017-05-30 Anton Kolesov + + * doc/binutils.texi: Document new cpu=... disassembler options for ARC. + +2017-05-30 H.J. Lu + + PR binutils/21519 + * objdump.c (dump_relocs_in_section): Replace get_file_size + with bfd_get_file_size to get archive element size. + * testsuite/binutils-all/objdump.exp (test_objdump_f): New + proc. + (test_objdump_h): Likewise. + (test_objdump_t): Likewise. + (test_objdump_r): Likewise. + (test_objdump_s): Likewise. + Add objdump tests on archive. + +2017-05-24 Yao Qi + + * objdump.c (disassemble_data): Caller update. + +2017-05-19 Jose E. Marchesi + + * objcopy.c (merge_gnu_build_notes): Remove workaround that + prevented deleting relocations in duplicated notes in mips64 and + sparc. + +2017-05-19 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips-note-2.d: New test. + * testsuite/binutils-all/mips/mips-note-2r.d: New test. + * testsuite/binutils-all/mips/mips-note-2-n32.d: New test. + * testsuite/binutils-all/mips/mips-note-2-n64.d: New test. + * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test. + * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test. + * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'. + Run the new tests. + +2017-05-19 Maciej W. Rozycki + + * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump' + option. + +2017-05-19 Jose E. Marchesi + + * NEWS: Mention the SPARC M8 support. + +2017-05-19 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips.exp: Bail out right away if + non-ELF. + +2017-05-18 Alan Modra + + * strings.c: Don't compare boolean values against TRUE or FALSE. + +2017-05-15 Jeff Law + + * readelf.c (display_arc_attribute): Avoid implicit fallthru. + +2017-05-15 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3' + to `as' flags. + * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test. + * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test. + * testsuite/binutils-all/mips/mips16-undecoded.s: Remove + `.module mips3'. + * testsuite/binutils-all/mips/mips.exp: Run the new tests. + +2017-05-15 Maciej W. Rozycki + + * readelf.c (print_mips_ases): Handle MIPS16e2 ASE. + * NEWS: Mention MIPS16e2 ASE support. + +2017-05-12 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK + and SDBBP disassembly. + +2017-05-10 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and + `copyfile' variables. + +2017-05-10 Claudiu Zissulescu + + * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4. + (get_arc_section_type_name): New function. + (get_section_type_name): Use the above function. + (display_arc_attribute): New function. + (process_arc_specific): Likewise. + (process_arch_specific): Handle ARC specific information. + +2017-05-09 Kaz Kojima + + * MAINTAINERS (SH): Remove myself as SH maintainer. + +2017-05-02 H.J. Lu + + * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned + long when comparing with sec->reloc_count. + +2017-05-02 Nick Clifton + + * objcopy.c (merge_gnu_build_notes): Disable merge if there are + more internal relocs than external relocs. + +2017-05-02 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the + disassembly of PC-relative LA and LW synthetic instructions. + +2017-05-02 Nick Clifton + + PR 21440 + * objdump.c (dump_relocs_in_section): Check for an excessive + number of relocs before attempting to dump them. + +2017-05-01 Alan Modra + + * objcopy.c (merge_gnu_build_notes): Correct code deleting + relocs. + +2017-04-28 Nick Clifton + + PR binutils/21439 + * readelf.c (print_gnu_build_attribute_name): Allow for an empty + name field. + +2017-04-28 Nick Clifton + + PR binutils/21437 + * readelf.c (process_version_sections): Check for underflow when + computing the start address of the auxillary version data. + +2017-04-28 Nick Clifton + + PR binutils/21438 + * dwarf.c (process_extended_line_op): Do not assume that the + string extracted from the section is NUL terminated. + (fetch_indirect_string): If the string retrieved from the section + is not NUL terminated, return an error message. + (fetch_indirect_line_string): Likewise. + (fetch_indexed_string): Likewise. + +2017-04-26 Nick Clifton + + PR binutils/21433 + * bucomm.c (get_file_size): Return -1 if file_name is NULL. + * ar.c (main): Fail with usage() invocation if no file names are + provided. + +2017-04-26 Nick Clifton + + * readelf.c (process_section_headers): Warn about overlarge + sections. + (print_gnu_build_attribute_name): Print the number of unrecognised + note types. Fix formatting in the presence of errors. + (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes. + (testsuite/binutils-all/note-2-64.s): Likewise. + +2017-04-26 Maciej W. Rozycki + + * readelf.c (process_mips_specific): Add static GOT support. + +2017-04-25 Maciej W. Rozycki + + * readelf.c (process_mips_specific): Remove error reporting from + GOT[1] processing. + +2017-04-25 Maciej W. Rozycki + + * readelf.c (process_mips_specific): Remove null GOT data check. + +2017-04-25 Maciej W. Rozycki + + * testsuite/binutils-all/mips/mips16-alias.d: New test. + * testsuite/binutils-all/mips/mips16-noalias.d: New test. + * testsuite/binutils-all/mips/mips16-alias.s: New test source. + * testsuite/binutils-all/mips/mips.exp: Run the new tests. + +2017-04-23 Alan Modra + + PR 21418 + * ar.c (main): Check -a, -b, -i and -N args are given. + +2017-04-23 Alan Modra + + PR 21417 + * ar.c (main): Check that an archive file is given after options. + +2017-04-23 Alan Modra + + PR 21415 + * objdump.c (disassemble_section): Check bfd_get_section_contents + status. + +2017-04-23 Alan Modra + + PR 21408 + * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL + file_table. + +2017-04-21 Nick Clifton + + PR binutils/21378 + * readelf.c (print_gnu_build_attribute_name): Check for an + overlarge name field. + +2017-04-13 Nick Clifton + + PR binutils/21379 + * readelf.c (process_dynamic_section): Detect over large section + offsets in the DT_SYMTAB entry. + +2017-04-13 Nick Clifton + + PR binutils/21345 + * readelf.c (process_mips_specific): Catch an unfeasible memory + allocation before it happens and print a suitable error message. + +2017-04-13 Nick Clifton + + * objcopy.c: Add --no-merge-notes option to disable note merging. + Add --[no-]merge-notes option to strip, and enable it by default. + (num_bytes): New function. + (merge_gnu_build_notes): Add code to merge stack size notes. + * binutils.texi: Update strip and objcopy documentation. + * readelf.c (print_gnu_build_attribute_name): Use defined + constants for note types. + +2017-04-10 John Delsignor + + PR binutils/21319 + * dwarf.c (display_gdb_index): Correct test for a corrupt address + table size. + +2017-04-05 Jiong Wang + + * objcopy.c (struct redefine_node): Delete the field "next". + (redefine_sym_list): Deleted. + (redefine_specific_htab): New hash table. + (redefine_specific_reverse_htab): Likewise. + (eq_string_redefnode): New function. + (htab_hash_redefnode): Likewise. + (create_symbol2redef_htab): Likewise. + (add_specific_symbol_node): Likewise. + (create_symbol_htabs): Create redefine_specific_htab and + redefine_specific_reverse_htab. + (lookup_sym_redefinition): Use hash table instead of list. + (redefine_list_append): Likewise, and rename to add_redefine_and_check. + (copy_main): Use redefine_specific_htab instead of redefine_sym_list. + Update comments. + +2017-04-04 H.J. Lu + + * NEWS: Mention support for ELF SHF_GNU_MBIND and + PT_GNU_MBIND_XXX. + * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX. + (get_elf_section_flags): Handle SHF_GNU_MBIND. + (process_section_headers): Likewise. + * testsuite/binutils-all/mbind1.s: New file. + * testsuite/binutils-all/objcopy.exp: Run readelf test on + mbind1.s. + +2017-04-03 Nick Clifton + + PR binutils/21345 + * readelf.c (get_program_headers): Check for there being too many + program headers before attempting to allocate space for them. + +2017-04-03 Nick Clifton + + PR binutils/21344 + * readelf.c (process_mips_specific): Check for an out of range GOT + entry before reading the module pointer. + +2017-04-03 Nick Clifton + + PR binutils/21343 + * readelf.c (get_unwind_section_word): Fix snafu checking for + invalid word offsets in ARM unwind information. + +2017-03-31 Pip Cet + + * NEWS: Use "WebAssembly" consistently. + * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice. + +2017-03-30 Pip Cet + + * readelf.c: Add support for wasm32 ELF format WebAssembly files. + (guess_is_rela): Likewise. + (dump_relocations): Likewise. + (is_32bit_abs_reloc): Likewise. + (is_none_reloc_): Likewise. + * NEWS: Mention the new support. + * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32 + as ELF target. + (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE. + * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations. + * testsuite/binutils-all/wasm32: New directory. + * testsuite/binutils-all/wasm32/create-wasm.d: New file. + * testsuite/binutils-all/wasm32/create-wasm.s: Likewise. + * testsuite/binutils-all/wasm32/custom-section.d: Likewise. + * testsuite/binutils-all/wasm32/custom-section.s: Likewise. + * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise. + * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise. + * testsuite/binutils-all/wasm32/long-sections.d: Likewise. + * testsuite/binutils-all/wasm32/long-sections.s: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise. + * testsuite/binutils-all/wasm32/prepared-section.d: Likewise. + * testsuite/binutils-all/wasm32/prepared-section.s: Likewise. + * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests. + +2017-03-29 Alan Modra + + * doc/binutils.texi (objdump): Document PowerPC -M options. + +2017-03-21 Andi Kleen + + * objdump.c (unwind_inlines): Add. + (option_values): Add OPTION_INLINES. + (show_line): Unwind inlines if requested. + (main): Parse OPTION_INLINES. + (usage): Document --inlines. + * doc/binutils.texi: Document --inlines. + * NEWS: Likewise. + +2017-03-21 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Allow stack + protection notes to contain numeric values. Use a colon rather + than a space to separate a string name from its values. Decode + the numeric value of a stack protection note. + * objcopy.c (merge_gnu_build_notes): Allow version notes to + contain extra text after the protocol version number. + +2017-03-20 Mark Wielaard + + * readelf.c (process_program_headers): Move dynamic_addr check + after .dynamic section cross check. + +2017-03-17 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Fix off by one error + printing the value for a build note with an ascii name. + +2017-03-16 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Add support for + GNU_BUILD_ATTRIBUTE_SHORT_ENUM. + +2017-03-14 Nick Clifton + + * readelf.c (print_gnu_build_attribute_description): Move symbol + printing code to... + (print_symbol_for_build_attribute): New function. ...here. + Add to find the best symbol to associate with an OPEN note. + Add code to cache the symbol table and string table, so that they + are not loaded every time a note is displayed. + * testsuite/binutils-all/note-2-32.s: Add a function symbol. + * testsuite/binutils-all/note-2-64.s: Likewise. + * testsuite/binutils-all/note-2-32.d: Update expected note output. + * testsuite/binutils-all/note-2-64.d: Likewise. + +2017-03-13 Alan Modra + Taeung Song + + * objdump.c (update_source_path): Add abfd param. Add struct + stat var. Pass to try_print_file_open. Warn if source is more + recent than object. + (try_print_file_open, slurp_file): Add struct stat param to + return fstat. + (show_line): Call update_source_path with bfd. + +2017-03-10 Chia-Hao Lo + + PR binutils/21235 + * objdump.c (main): Set do_wide with --wide. + +2017-03-10 Nick Clifton + + * readelf.c (get_machine_name): Rearrange switch table in order of + increasing machine number. Add missing entries. + +2017-03-08 H.J. Lu + + PR binutils/21231 + * readelf.c (decode_x86_isa): Change argument to unsigned int. + (print_gnu_property_note): Retrieve property type and datasz as + 4-byte integer. Consolidate property datasz check. Check + GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER. + * testsuite/binutils-all/i386/pr21231a.d: New file. + * testsuite/binutils-all/i386/pr21231a.s: Likewise. + * testsuite/binutils-all/i386/pr21231b.d: Likewise. + * testsuite/binutils-all/i386/pr21231b.s: Likewise. + * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231a.s: Likewise. + * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231b.s: Likewise. + +2017-03-06 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Read byte values + from the name string as unsigned bytes. + (process_notes_at): Use memcpy to copy an unterminated name + string. + +2017-03-06 Sam Thursfield + + * configure.ac (AC_CHECK_DECLS): Add asprintf. + * config.in: Regenerate. + * configure: Regenerate. + +2017-03-02 Nick Clifton + + * readelf.c (print_gnu_build_attribute_description): Use global + symbols for OPEN attributes if at all possible. + * objcopy.c (is_merged_note_section): Support build note sections + without the SHF_GNU_BUILD_NOTE section flag set. + +2017-03-02 Jan Kratochvil + + * dwarf.c (debug_displays_assert): New static assertion. + +2017-03-02 Jan Kratochvil + + * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists. + +2017-03-01 Nick Clifton + + * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs. + (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs. + (decode_x86_isa): New function. + (print_gnu_property_note): New function. + (print_gnu_note): Handle GNU_PROPERTY_NOTEs. + (print_gnu_build_attribute_description): New function. + (print_gnu_build_attribute_name): New function. + (process_note): Add support for GNU_BUILD_NOTEs. + * objcopy.c (--merge-notes): New command line option. + (copy_options): Add merge-notes. + (copy_usage): Likewise. + (is_merge_note_section): New function. + (merge_gnu_build_notes): New function. + (copy_object): Merge note sections if asked to do so. + (skip_section): Add skip_copy parameter. Add support for skipping + merged note sections. + (copy_relocations_in_section): Update call to skip_section. + (copy_section): Likewise. + (copy_main): Add support for merge-notes option. + * doc/binutils.texi: Document the new option to objcopy. + * NEWS: Mention the new feature. + * testsuite/binutils-all/note-2-32.d: New test. Checks note + merging on 32-bit targets. + * testsuite/binutils-all/note-2-32.s: New test source file. + * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d + but for 64-bit targets. + * testsuite/binutils-all/note-2-64.s: New test source file. + * testsuite/binutils-all/objcopy.exp: Run the new test. + +2017-02-28 Peter Bergner + + * objdump.c (main): Use remove_whitespace_and_extra_commas. + +2017-02-27 Jan Kratochvil + + Fix compilation with GCC 4.4.7. + * dwarf.c (display_loclists_list, display_debug_rnglists_list): + Initialize begin and end. + +2017-02-25 Alan Modra + + * testsuite/binutils-all/dw5.S: Replace .string with .asciz. + Support hpux .comm variant. + * testsuite/binutils-all/readelf.exp: Define HPUX when assembling + dw5 test for hppa64-hpux. + +2017-02-24 Nick Clifton + + * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms, + (do_reloc, do_sections, do_section_groups, do_section_details, + (do_segments, do_unwind, do_using_dynamic, do_header, do_dump, + (do_version, do_histogram, do_debugging, do_arch, do_notes, + (do_archive_index, is_32bit_elf, decompress_dumps): Use + bfd_boolean type. + (parse_args): Treat the do_* variables as booleans. + (print_vma): Return an unsigned int. + (print_symbol): Change width parameter to signed int. + (is_ia64_vms): Change return type to bfd_boolean. + (guess_is_rela): Likewise. + (slurp_rela_relocs): Likewise. + (slurp_rel_relocs): Likewise. + (dump_relocations): Likewise. + (process_file_header): Likewise. + (get_program_headers): Likewise. + (process_program_headers): Likewise. + (process_section_headers): Likewise. + (process_section_groups): Likewise. + (dump_ia64_vms_dynamic_fixups): Likewise. + (dump_ia64_vms_dynamic_relocs): Likewise. + (process_ia64_vms_dynamic_relocs): Likewise. + (process_relocs): Likewise. + (dump_ia64_unwind): Likewise. + (ia64_process_unwind): Likewise. + (dump_hppa_unwind): Likewise. + (slurp_hppa_unwind_table): Likewise. + (hppa_process_unwind): Likewise. + (decode_arm_unwind_bytecode): Likewise. + (decode_tic6x_unwind_bytecode): Likewise. + (decode_arm_unwind): Likewise. + (dump_arm_unwind): Likewise. + (arm_process_unwind): Likewise. + (process_unwind): Likewise. + (get_32bit_dynamic_section): Likewise. + (get_64bit_dynamic_section): Likewise. + (process_dynamic_section): Likewise. + (process_version_sections): Likewise. + (process_symbol_table): Likewise. + (process_syminfo): Likewise. + (apply_relocations): Likewise. + (disassemble_section): Likewise. + (dump_section_as_strings): Likewise. + (dump_section_as_bytes): Likewise. + (load_specific_debug_section): Likewise. + (load_debug_section): Likewise. + (display_debug_section): Likewise. + (process_section_contents): Likewise. + (process_attributes): Likewise. + (process_nds32_specific): Likewise. + (process_gnu_liblist): Likewise. + (print_core_note): Likewise. + (print_gnu_note): Likewise. + (print_v850_note): Likewise. + (process_netbsd_elf_note): Likewise. + (print_stapsdt_note): Likewise. + (print_ia64_vms_note): Likewise. + (process_note): Likewise. + (process_notes_at): Likewise. + (process_corefile_note_segments): Likewise. + (process_v850_notes): Likewise. + (process_note_sections): Likewise. + (process_notes): Likewise. + (process_arch_specific): Likewise. + (get_file_header): Likewise. + (process_object): Likewise. + (process_archive): Likewise. + (process_file): Likewise. + (section_subset): Make static. + (get_mips_reg_size): Return a signed integer. + (process_object): Reverse the logic of the return value. + (process_archive): Likewise. + (process_file): Likewise. + (process_program_headers): Fix snafu - if the program headers are + not available then this is not a cause to fail. + (process_corefile_note_segments): Likewise. + +2017-02-24 Maciej W. Rozycki + + * readelf.c (get_ver_flags): Tidy the formatting of the string + returned + +2017-02-24 Maciej W. Rozycki + + * readelf.c (process_version_sections) : Make + `isum' unsigned. + : Likewise. + +2017-02-24 Maciej W. Rozycki + + * readelf.c (process_version_sections) : Limit + the number of entries processed by the section size. Don't + break out of the loop if `ent.vd_next' is 0. + +2017-02-23 Jan Kratochvil + + * testsuite/binutils-all/dw5.S: New file. + * testsuite/binutils-all/dw5.W: New file. + * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test. + +2017-02-23 Jan Kratochvil + + * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16. + +2017-02-23 Jan Kratochvil + + * dwarf.c (display_debug_macro): Support DWARF-5. Rename + DW_MACRO_GNU_*. + +2017-02-23 Jan Kratochvil + + * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer, + DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert + and DW_OP_reinterpret. + (read_and_display_attr_value): Support DW_AT_call_value, + DW_AT_call_data_value, DW_AT_call_target and + DW_AT_call_target_clobbered. + +2017-02-23 Jan Kratochvil + + * dwarf.c (fetch_indirect_line_string): New function. + (abbrev_attr): New field implicit_const. + (add_abbrev_attr): New parameter implicit_const. + (process_abbrev_section): Support DW_FORM_implicit_const. + (decode_location_expression): Support DW_OP_entry_value. + (read_and_display_attr_value): Add parameter implicit_const. Support + DW_FORM_line_strp and DW_FORM_implicit_const. + (read_and_display_attr): Add parameter implicit_const. + (process_debug_info): Support line_str and DWARF-5. + (read_debug_line_header): Support DWARF-5. + (display_formatted_table): New function. + (display_debug_lines_raw): New parameter file. Support DWARF-5. + (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5. + (display_debug_lines): Pass file parameter. + (display_debug_macro): Update read_and_display_attr_value caller. + (display_debug_abbrev): Support DW_FORM_implicit_const. + (display_loclists_list): New function. + (display_loc_list): Support .debug_loclists. + (display_debug_ranges_list): New function from display_debug_ranges. + (display_debug_rnglists_list): New function. + (display_debug_ranges): Support .debug_rnglists. + (debug_displays): Add .debug_line_str, .debug_loclists and + .debug_rnglists. + * dwarf.h: Include dwarf2.h + (DWARF2_Internal_LineInfo): Add li_offset_size. + (DWARF2_Internal_CompUnit): Add cu_unit_type. + (enum dwarf_section_display_enum): Add line_str. + * readelf.c (process_section_headers): Add rnglists and loclists. + +2017-02-23 Jan Kratochvil + + * dwarf.c (display_block): Add parameter delimiter. + (decode_location_expression): Update display_block callers. + (read_and_display_attr_value): Add parameter delimiter. + (read_and_display_attr, display_debug_macro): Update + read_and_display_attr_value caller. + +2017-02-23 Jan Kratochvil + + * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address + and off. + (display_loc_list_dwo): Use dwarf_vma for offset. + (display_debug_loc): Use dwarf_vma for offset, base_address. + (struct range_entry, range_entry_compar): Use dwarf_vma for + ranges_offset. + (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and + base_address. + +2017-02-23 Nick Clifton + + * readelf.c (display_tag_value): Use an explicit signed type for + the tag parameter. + (display_gnu_attributes): Use an unsigned integer type for + attribute tags. + (display_power_gnu_attribute): Likewise. + (display_s390_gnu_attribute): Likewise. + (display_sparc_hwcaps): Likewise. + (display_sparc_hwcaps2): Likewise. + (display_sparc_gnu_attribute): Likewise. + (display_mips_gnu_attribute): Likewise. + (display_tic6x_attribute): Likewise. + (display_raw_attribute): Likewise. + (process_attributes): Likewise. + (process_arm_specific): Delete redundant function. + (process_power_specific): Likewise. + (process_s390_specific): Likewise. + (process_sparc_specific): Likewise. + (process_tic6x_specific): Likewise. + (process_msp430x_specific): Likewise. + (display_public_gnu_attributes): New function. Displays known + information about an unknown gnu attribute. + (display_generic_attribute): New function. Calls + display_tag_value for non-nul tags. + (process_arch_specific): Call process_attributes even for + architectures not known to specifically support gnu attributes. + +2017-02-22 Jan Kratochvil + + * dwarf.c (decode_location_expression): Display also OP. + +2017-02-22 Maciej W. Rozycki + + * readelf.c (process_version_sections) : Print a + new line between the heading and the first version definition + entry. + +2017-02-20 Nick Clifton + + PR binutils/21156 + * dwarf.c (cu_tu_indexes_read): Move into... + (load_cu_tu_indexes): ... here. Change the variable into + tri-state. Change the function into boolean, returning + false if the indicies could not be loaded. + (find_cu_tu_set): Return NULL if the indicies could not be + loaded. + +2017-02-17 Nick Clifton + + PR binutils/21156 + * readelf.c (find_section_in_set): Test for invalid section + indicies. + +2017-02-17 Nick Clifton + + * readelf.c (get_section_type_name): Add decoding of GNU section + types. + +2017-02-15 Nick Clifton + + * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past + Maintainers section. + +2017-02-14 Nick Clifton + + PR binutils/21159 + * readelf.c (dump_section_as_strings): Reset the start address if + no decompression is perfromed. + (dump_section_as_bytes): Likewise. + +2017-02-14 Nick Clifton + + PR binutils/21158 + * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or + empty symbol name. + +2017-02-14 Nick Clifton + + PR binutils/21157 + * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE + pairs. + (parse_number): Exit early if passed an empty string. + +2017-02-14 Nick Clifton + + PR binutils/21155 + * readelf.c (IN_RANGE): New macro. Tests for an address + offset + being within a given range. + (target_specific_reloc_handling): Use macro to test for underflow + as well as overflow of reloc offset. + +2017-02-13 Nick Clifton + + PR binutils/21150 + * nm.c (file_symbol): Add test of string length before testing + string characters. + +2017-02-13 Nick Clifton + + PR binutils/21135 + * readelf.c (dump_section_as_bytes): Handle the case where + uncompress_section_contents returns false. + (dump_section_as_bytes, load_specific_debug_section): Likewise. + +2017-02-13 Nick Clifton + + PR binutils/21149 + * readelf.c (get_compression_header): Add size parameter. Check + size against sizeof compression header before attempting to + extract the header. + (process_section_headers): Pass size to get_compression_header. + (dump_section_as_strings): Likewise. + (dump_section_as_bytes): Likewise. + (load_specific_debug_section): Likewise. + +2017-02-13 Nick Clifton + + PR binutils/21148 + * readelf.c (process_version_sections): Include size of auxillary + version information when checking for buffer overflow. + +2017-02-13 Nick Clifton + + PR binutils/21147 + * readelf.c (process_section_contents): Fix off by one error + reporting un-dumped sections. + +2017-02-13 Nick Clifton + + PR binutils/21139 + * readelf.c (target_specific_reloc_handling): Add num_syms + parameter. Check for symbol table overflow before accessing + symbol value. If reloc pointer is NULL, discard all saved state. + (apply_relocations): Pass num_syms to target_specific_reloc_handling. + Call target_specific_reloc_handling with a NULL reloc pointer + after processing all of the relocs. + +2017-02-13 Nick Clifton + + PR binutils/21137 + * readelf.c (target_specific_reloc_handling): Add end parameter. + Check for buffer overflow before writing relocated values. + (apply_relocations): Pass end to target_specific_reloc_handling. + +2017-01-27 Dilyan Palauzov + Nick Clifton + + PR 20343 + * doc/binutils.texi (ar): Extend documentation of the --plugin + option. Include a description of where the plugins should be + located. + (nm): Likewise. + +2017-01-23 Nick Clifton + + * MAINTAINERS: Add Bernd to Past Maintainers section. + (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers + section. + +2017-01-23 Bernd Schmidt + + * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer. + +2017-01-20 Andrew Burgess + + * objdump.c (dump_section_header): Extract max section name length + from data parameter, use this when formatting output. + (find_longest_section_name): New function. + (dump_headers): Calculate longest section name when in wide mode, + reformat to unify printing of header line. + +2017-01-18 Bernhard Rosenkranzer + + PR 21059 + * arlex.l: Support processing with flex 2.6.3. + * deflex.l: Likewise. + +2017-01-17 Dmitry Timoshkov + + * resbin.c: Optional dialog control data immediately follows + the control description without alignment. + * testsuite/binutils-all/windres/controldata.rc: New test. + source. + * testsuite/binutils-all/windres/controldata.rsd: New test. + +2017-01-12 Nick Clifton + + PR binutils/20876 + * NEWS: Mention the new feature. + * testsuite/binutils-all/objdump.exp (test_build_id_debuglink): + New proc to test the location of separate debug info files using + the build-id method. + +2017-01-10 Nick Clifton + + PR 21034 + * stabs.c (parse_stab_members): Fix thinko checking for g++ + version 1 stabs information. + +2017-01-09 Nick Clifton + + * objdump.c (display_file): Add new parameter 'last_file'. If + last_file is true, do not call bfd_close at the end of the + function. + (main): Set the value of the last_file parameter when calling + display_file. + +2017-01-09 Alan Modra + + * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn + comment. + +2017-01-06 Nick Clifton + + * MAINTAINERS: Move Paul Brook to the Past Maintainers section. + +2017-01-04 Dilan Palauzov + + PR 20958 + * syslex.l (option): Add noyywrap + (yywrap): Delete. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/elfcpp/ChangeLog b/elfcpp/ChangeLog index 262c7f62d79..8debaf0d0fc 100644 --- a/elfcpp/ChangeLog +++ b/elfcpp/ChangeLog @@ -1,41 +1,6 @@ -2017-09-18 Nick Clifton - - * dwarf.h (elfcpp): Add definition of DW_CFA_DUP. - -2017-08-29 Alan Modra - - * elfcpp.h (DT_PPC_OPT): Define. - * powerpc.h (PPC_OPT_TLS): Define. - -2017-07-28 H.J. Lu - - PR gold/21857 - * elfcpp.h (Chdr_write): Add put_ch_reserved. - (Chdr_write<64, true>::put_ch_reserved): New. - (Chdr_write<64, false>::put_ch_reserved): Likewise. - -2017-07-03 Alan Modra - - * dwarf.h (DW_FIRST_IDX, DW_IDX, DW_IDX_DUP, DW_END_IDX): Define, - and undefine after using. - -2017-06-21 Alan Modra - - * elfcpp.h (DT_PPC64_OPT): Define. - * powerpc.h (PPC64_OPT_TLS, PPC64_OPT_MULTI_TOC, - PPC64_OPT_LOCALENTRY): Define. - -2017-06-20 Andreas Krebbel - - * elfcpp.h (enum PT): Add PT_S390_PGSTE to enum. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/elfcpp/ChangeLog-2017 b/elfcpp/ChangeLog-2017 new file mode 100644 index 00000000000..262c7f62d79 --- /dev/null +++ b/elfcpp/ChangeLog-2017 @@ -0,0 +1,49 @@ +2017-09-18 Nick Clifton + + * dwarf.h (elfcpp): Add definition of DW_CFA_DUP. + +2017-08-29 Alan Modra + + * elfcpp.h (DT_PPC_OPT): Define. + * powerpc.h (PPC_OPT_TLS): Define. + +2017-07-28 H.J. Lu + + PR gold/21857 + * elfcpp.h (Chdr_write): Add put_ch_reserved. + (Chdr_write<64, true>::put_ch_reserved): New. + (Chdr_write<64, false>::put_ch_reserved): Likewise. + +2017-07-03 Alan Modra + + * dwarf.h (DW_FIRST_IDX, DW_IDX, DW_IDX_DUP, DW_END_IDX): Define, + and undefine after using. + +2017-06-21 Alan Modra + + * elfcpp.h (DT_PPC64_OPT): Define. + * powerpc.h (PPC64_OPT_TLS, PPC64_OPT_MULTI_TOC, + PPC64_OPT_LOCALENTRY): Define. + +2017-06-20 Andreas Krebbel + + * elfcpp.h (enum PT): Add PT_S390_PGSTE to enum. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/gas/ChangeLog b/gas/ChangeLog index 202838320a9..e1dc72c811f 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -4,4414 +4,9 @@ * config/tc-arm.c (do_mrs): Fix test of bits 16-19 in non-banked version of ARM MRS instruction. -2017-12-28 Jim Wilson - - * testsuite/gas/riscv/priv-reg.d, testsuite/gas/riscv/priv-reg.s: New. - -2017-12-20 Jim Wilson - - * config/tc-riscv.c (risc_ip) : Add comment. - * testsuite/gas/riscv/c-nonzero-imm.d, - * testsuite/gas/riscv/c-nonzero-imm.l, - * testsuite/gas/riscv/c-nonzero-imm.s, - * testsuite/gas/riscv/c-nonzero-reg.d, - * testsuite/gas/riscv/c-nonzero-reg.l, - * testsuite/gas/riscv/c-nonzero-reg.s, - * testsuite/gas/riscv/c-zero-imm-64.d, - * testsuite/gas/riscv/c-zero-imm-64.s, - * testsuite/gas/riscv/c-zero-imm.d, testsuite/gas/riscv/c-zero-imm.s, - * testsuite/gas/riscv/c-zero-reg.d, - * testsuite/gas/riscv/c-zero-reg.s: New. - -2017-12-19 Tamar Christina - - PR 22559 - * config/tc-aarch64.c (vectype_to_qualifier): Support AARCH64_OPND_QLF_S_4B. - * gas/testsuite/gas/aarch64/dotproduct.d: Update disassembly. - -2017-12-19 Tamar Christina - - PR 22529 - * config/tc-aarch64.c (vectype_to_qualifier): Support AARCH64_OPND_QLF_V_4B. - * gas/testsuite/gas/aarch64/pr22529.s: New. - * gas/testsuite/gas/aarch64/pr22529.d: New. - * gas/testsuite/gas/aarch64/pr22529.l: New. - -2017-12-18 Nick Clifton - - PR 22493 - * config/tc-arm.c (encode_ldmstm): Do not use A2 encoding of the - PUSH insn when pushing the stack pointer. - -2017-12-18 Jan Beulich - - * config/tc-i386.c (regymm, regzmm): Delete. - (operand_type_register_match). Extend comment. Also handle some - memory operands here. Extend to cover .regsimd. - (build_vex_prefix): Derive vector_length from actual operand - size. - (process_operands, build_modrm_byte): Use .regsimd. - -2017-12-18 Jan Beulich - - * config/tc-i386.c (match_simd_size): New. - (match_mem_size): Use it. - (operand_size_match): Likewise. Split .reg and .acc checks. - (pi, check_VecOperands, match_template, check_byte_reg, - check_long_reg, check_qword_reg, build_modrm_byte, - parse_real_register): Replace .regxmm, .regymm, and .regzmm - checks. - (md_assemble): Qualify .acc check with .xmmword one. - (bad_implicit_operand): Delete. - (process_operands): Replace .firstxmm0 checks with .acc plus - .xmmword ones. Drop now pointless assertions. Convert .acc to - .regsimd. - * config/tc-i386-intel.c (i386_intel_simplify_register): Replace - .regxmm, .regymm, and .regzmm checks. - * testsuite/gas/i386/x86-64-specific-reg.l: Adjust expectations. - -2017-12-18 Jan Beulich - - * config/tc-i386.c (operand_type_check): Extend comment. - (match_reg_size): Also check .tbyte. - (match_mem_size): No longer check .tbyte here. - (md_assemble): Drop .floatacc check. - (check_byte_reg): Drop .floatreg and .floatacc checks. - (process_operands, parse_real_register): Replace .floatreg - check. - -2017-12-18 Jan Beulich - - * config/tc-i386.c (operand_type_check, pi): Switch .reg to - just .reg. - (operand_size_match): Qualify .anysize check with .reg one. - Extend .acc check to also cover .reg. - (operand_type_register_match): Drop m0 and m1 parameters. Switch - .reg to .byte/.word/.dword/.qword. Drop .acc special - handling. - (md_assemble): Expand .reg8 checks to .reg plus .bytes ones. - (optimize_imm, process_suffix, check_byte_reg, check_long_reg, - check_qword_reg, check_word_reg): Expand .reg checks to .reg - plus size ones. - (match_template): Drop arguments from calls to - operand_type_register_match(). - (build_modrm_byte, i386_addressing_mode, i386_index_check, - parse_real_register): Replace .reg checks. - * config/tc-i386-intel.c (i386_intel_simplify, - i386_intel_operand): Switch .reg16 to .word. - -2017-12-17 H.J. Lu - - PR gas/22623 - * gas/config/tc-i386.c (output_insn): Check pseudo prefix - without instruction. - * testsuite/gas/i386/i386.exp: Run inval-pseudo. - * testsuite/gas/i386/inval-pseudo.l: New file. - * testsuite/gas/i386/inval-pseudo.s: Likewise. - -2017-12-15 Jan Beulich - - * config/tc-i386.c (match_template): Add missing ! to - reg{x,y,z}mm checks in q- and l-suffix handling. - -2017-12-15 Jan Beulich - - * config/tc-i386.c (build_modrm_byte): Add missing ! to reg64 - check leading to abort(). - -2017-12-14 Nick Clifton - - * config/tc-m32c.c: Update address of FSF in copyright notice. - * config/tc-m32c.h: Likewise. - * config/tc-mt.c: Likewise. - * config/tc-mt.h: Likewise. - * config/tc-visium.c: Likewise. - * config/tc-visium.h: Likewise. - * testsuite/gas/rx/explode: Likewise. - -2017-12-13 Jim Wilson - - PR 22599 - * testsuite/gas/riscv/fsxxi.d, testsuite/gas/riscv/fsxxi.s: New. - -2017-12-13 Dimitar Dimitrov - - * testsuite/gas/pru/extern.s: New test for print of U16_PMEMM - relocation. - * testsuite/gas/pru/extern.d: New test driver. - -2017-12-12 Alan Modra - - PR 21118 - * config/tc-ppc.c (md_assemble): Don't mask register number. - -2017-12-07 Max Filippov - - * config/tc-xtensa.c (xg_order_trampoline_chain): Replace - xg_order_trampoline_chain_entry call with check for - canonicalized symbol equality and offset equality. - -2017-12-04 Alan Modra - - PR 22544 - * doc/as.texinfo (8byte): Correct. - -2017-12-04 Alan Modra - - * testsuite/gas/ppc/ppc.exp: Don't exclude VLE tests when little-endian. - * testsuite/gas/ppc/efs.d: Add -mbig to assembler options. - * testsuite/gas/ppc/efs2.d: Likewise. - * testsuite/gas/ppc/lsp-checks.d: Likewise. - * testsuite/gas/ppc/lsp.d: Likewise. - * testsuite/gas/ppc/spe.d: Likewise. - * testsuite/gas/ppc/spe2-checks.d: Likewise. - * testsuite/gas/ppc/spe2.d: Likewise. - * testsuite/gas/ppc/spe_ambiguous.d: Likewise. - * testsuite/gas/ppc/vle-mult-ld-st-insns.d: Likewise. - * testsuite/gas/ppc/vle-reloc.d: Likewise. - * testsuite/gas/ppc/vle-simple-1.d: Likewise. - * testsuite/gas/ppc/vle-simple-2.d: Likewise. - * testsuite/gas/ppc/vle-simple-3.d: Likewise. - * testsuite/gas/ppc/vle-simple-4.d: Likewise. - * testsuite/gas/ppc/vle-simple-5.d: Likewise. - * testsuite/gas/ppc/vle-simple-6.d: Likewise. - * testsuite/gas/ppc/vle.d: Likewise. - -2017-12-03 Jim Wilson - - * doc/c-riscv.texi (RISC-V-Directives): Move @section immediately after - @node. - -2017-12-01 Palmer Dabbelt - Jim Wilson - - * doc/as.texinfo (RISC-V): Alphabetize RISC-V entries. Change - RISC-V-Opts to RISC-V-Options. Delete redundant space. Add -fpic - and related options to option list. - * doc/c-riscv.texi: (RISC-V-Options): Renamed from RISC-V-Opts. - (RISC-V Options): Renamed from Options. Add missing period. - (-fpic): Also mention -fPIC. - (RISC-V Directives): New node. - -2017-12-01 Peter Bergner - - * config/tc-ppc.c (last_insn): Update type. - (insn_validate) : Likewise. - (ppc_setup_opcodes) : Likewise. - : Update types and printf format specifiers. - (ppc_insert_operand): Update return and argument types and remove - unneeded type casts. - : Update type. - (md_assemble): Remove unneeded type casts. - : Update type. - -2017-11-29 Jan Beulich - - * config/tc-i386.c (enum i386_error): Remove try_vector_disp8. - (mode_from_disp_size, build_modrm_byte, build_modrm_byte, - disp_size): Remove reference to .vec_disp8. - (output_disp): Likewise. Unconditionally use i.memshift. - (fits_in_vec_disp8): Rename to fits_in_disp8. - (type_names): Remove OPERAND_TYPE_VEC_DISP8 entry. - (optimize_disp): Use fits_in_disp8. - (check_VecOperands): Re-work (simplify) .disp8memshift - conditional handling. - -2017-11-29 Jan Beulich - - PR gas/21874 - * config/tc-i386-intel.c (i386_intel_simplify): Chain together - multiple segment override expressions. - (i386_intel_operand): Issue diagnostic for redundant segment - overrides. - * testsuite/gas/i386/intelok.e: New. - * testsuite/gas/i386/intelok.d: Reference intelok.e. - * testsuite/gas/i386/inval-seg.s: Add redundant override checks. - * testsuite/gas/i386/inval-seg.l: Adjust expectations. - -2017-11-29 Jim Wilson - Palmer Dabbelt - - * config/tc-riscv.c (riscv_frag_align_code): New local insn_alignment. - Early return if bytes less than or equal to insn_alignment. - * testsuite/gas/riscv/align-1.l: New. - * testsuite/gas/riscv/align-1.s: New. - * testsuite/gas/riscv/riscv.exp: Use run_dump_tests. Use run_list_test - for align-1. - - PR gas/22464 - * doc/c-i386.texi (-n): Clarify docs. - -2017-11-29 Renlin Li - - * config/tc-aarch64.c (reg_names): Fix IP1 register alias typo. - * testsuite/gas/aarch64/register_aliases.s: Add IP0 and IP1 tests. - * testsuite/gas/aarch64/register_aliases.d: Update. - -2017-11-29 Stefan Stroe - - * po/Make-in (datadir): Define as @datadir@. - (localedir): Define as @localedir@. - (gnulocaledir, gettextsrcdir): Use @datarootdir@. - -2017-11-29 Nick Clifton - - PR 22492 - * config/obj-elf.c (obj_elf_version): Use record_alignment rather - than bfd_set_section_alignment. - -2017-11-27 Andrew Waterman - Palmer Dabbelt - Jim Wilson - - * config/tc-riscv.c (riscv_handle_implicit_zero_offset): New. - (riscv_ip): Cases 'k', 'l', 'm', 'n', 'M', 'N', add call to - riscv_handle_implicit_zero_offset. At label load_store, replace - existing code with call to riscv_handle_implicit_zero_offset. - * testsuite/gas/riscv/c-ld.d, testsuite/gas/riscv/c-ld.s: New. - * testsuite/gas/riscv/c-lw.d, testsuite/gas/riscv/c-lw.s: New. - * testsuite/gas/riscv/riscv.exp: Run new tests. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (find_trampoline_seg): Add static variable - that caches the result of the most recent search. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (trampoline_chain_entry, trampoline_chain) - (trampoline_chain_index): New structures. - (trampoline_index): Add chain_index field. - (xg_order_trampoline_chain_entry, xg_sort_trampoline_chain) - (xg_find_chain_entry, xg_get_best_chain_entry) - (xg_order_trampoline_chain, xg_get_trampoline_chain) - (xg_find_best_eq_target, xg_add_location_to_chain) - (xg_create_trampoline_chain, xg_get_single_symbol_slot): New - functions. - (xg_relax_fixups): Call xg_find_best_eq_target to adjust jump - target to point to an existing jump. Call - xg_create_trampoline_chain to create new jump target. Call - xg_add_location_to_chain to add newly created trampoline jump - to the corresponding chain. - (add_jump_to_trampoline): Extract loop searching for a single - slot with a symbol into a separate function, replace that code - with a call to that function. - (relax_frag_immed): Call xg_find_best_eq_target to adjust jump - target to point to an existing jump. - * testsuite/gas/xtensa/all.exp: Add trampoline-2 test. - * testsuite/gas/xtensa/trampoline.d: Adjust absolute addresses - as many duplicate trampoline chains are now coalesced. - * testsuite/gas/xtensa/trampoline.s: Add _nop so that objdump - stays in sync with instruction stream. - * testsuite/gas/xtensa/trampoline-2.l: New test result file. - * testsuite/gas/xtensa/trampoline-2.s: New test source file. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (search_trampolines, get_best_trampoline): - Remove definitions. - (xg_find_best_trampoline_for_tinsn): New function. - (relax_frag_immed): Replace call to get_best_trampoline with a - call to xg_find_best_trampoline_for_tinsn. - * testsuite/gas/xtensa/trampoline.d: Adjust absolute addresses - as the placement of trampolines for relaxed branches has been - changed. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (trampoline_index): New structure. - (trampoline_seg): Replace trampoline list with trampoline index. - (xg_find_trampoline, xg_add_trampoline_to_index) - (xg_remove_trampoline_from_index, xg_add_trampoline_to_seg) - (xg_is_trampoline_frag_full, xg_get_fulcrum) - (xg_find_best_trampoline, xg_relax_fixup, xg_relax_fixups) - (xg_is_relaxable_fixup): New functions. - (J_MARGIN): New macro. - (xtensa_create_trampoline_frag): Use xg_add_trampoline_to_seg - instead of open-coded addition to the linked list. - (dump_trampolines): Iterate through the trampoline_seg::index. - (cached_fixupS, cached_fixup, fixup_cacheS, fixup_cache) - (fixup_order, xtensa_make_cached_fixup) - (xtensa_realloc_fixup_cache, xtensa_cache_relaxable_fixups) - (xtensa_find_first_cached_fixup, xtensa_delete_cached_fixup) - (xtensa_add_cached_fixup, check_and_update_trampolines): Remove - definitions. - (xg_relax_trampoline): Extract logic into separate functions, - replace body with a call to xg_relax_fixups. - (search_trampolines): Replace search in linked list with search - in index. Change data type of address-tracking variables from - int to offsetT. Replace abs with labs. - (xg_append_jump): Finish the trampoline frag if it's full. - (add_jump_to_trampoline): Remove trampoline frag from the index - if the frag is full. - * config/tc-xtensa.h (xtensa_frag_type): Remove next_trampoline. - * testsuite/gas/xtensa/trampoline.d: Adjust absolute addresses - as the placement of trampolines has slightly changed. - * testsuite/gas/xtensa/trampoline.s: Add _nop so that objdump - stays in sync with instruction stream. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (init_trampoline_frag): Replace pointer to - struct trampoline_frag parameter with pointer to fragS. - (xg_append_jump): Remove jump_around parameter. - (struct trampoline_frag): Remove. - (struct trampoline_seg): Change type of trampoline_list from - struct trampoline_frag to fragS. - (xtensa_create_trampoline_frag): Don't allocate struct - trampoline_frag. Initialize new fragS::tc_frag_data fields. - (dump_trampolines, xg_relax_trampoline, search_trampolines) - (get_best_trampoline, init_trampoline_frag) - (add_jump_to_trampoline, relax_frag_immed): Replace pointer to - struct trampoline_frag with a pointer to fragS. - (xg_append_jump): Remove jump_around parameter, use - fragS::tc_frag_data.jump_around_fix instead. - (xg_relax_trampoline, init_trampoline_frag) - (add_jump_to_trampoline): Don't pass jump_around parameter to - xg_append_jump. - * config/tc-xtensa.h (struct xtensa_frag_type): Add new fields: - needs_jump_around, next_trampoline and jump_around_fix. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (find_trampoline_seg): Move above the first - use. - (xtensa_create_trampoline_frag): Replace trampoline seg search - code with a call to find_trampoline_seg. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (xg_append_jump): New function. - (xg_relax_trampoline, init_trampoline_frag) - (add_jump_to_trampoline): Replace trampoline jump assembling - code with a call to xg_append_jump. - -2017-11-27 Max Filippov - - * config/tc-xtensa.c (xg_relax_trampoline): New function. - (xtensa_relax_frag): Replace trampoline relaxation code with a - call to xg_relax_trampoline. - -2017-11-27 Nick Clifton - - PR 22492 - * config/obj-elf.c (obj_elf_version): Set the alignment of the - .note section. - -2017-11-26 H.J. Lu - - * testsuite/gas/i386/sse-noavx.s: Add tests for fisttps and - fisttpl. - * testsuite/gas/i386/x86-64-sse-noavx.s: Likewise. - * testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Updated. - * testsuite/gas/i386/sse-noavx.d: Likewise. - * testsuite/gas/i386/x86-64-sse-noavx.d: Likewise. - -2017-11-24 Jim Wilson - - * write.h (FAKE_LABEL_CHAR): Expand comment. - -2017-11-24 Jan Beulich - - * config/tc-i386.c (check_VecOperations): Check register type - for masking. Quote the actual register name in the respective - diagnostic. Check {z} wasn't specified on its own. - * testsuite/gas/i386/inval-avx512f.s, - testsuite/gas/i386/x86-64-inval-avx512f.s: Add further bad - masking tests. - * testsuite/gas/i386/inval-avx512f.l, - testsuite/gas/i386/x86-64-inval-avx512f.l: Adjust expectations. - -2017-11-24 Jan Beulich - - * testsuite/gas/i386/intel.d, testsuite/gas/i386/opcode.d, - testsuite/gas/i386/opcode-suffix.d, testsuite/gas/i386/sse3.d, - testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/x86-64-sse3.d, - testsuite/gas/i386/x86-64-sse-noavx.d, - testsuite/gas/i386/ilp32/x86-64-sse3.d, - testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Adjust expectations. - -2017-11-23 Jim Wilson - - * testsuite/gas/all/err-fakelabel.s (dg-error): Also accept fatal error - string. - - * as.c (INITIALIZING_EMULS): Define. - * config/obj-multi.h (FAKE_LABEL_NAME): When INITIALIZING_EMULS set, - don't define it. - -2017-11-23 Igor Tsimbalist - - * testsuite/gas/i386/avx512f_vaes-intel.d: Regenerate. - * testsuite/gas/i386/avx512f_vaes.d: Likewise. - * testsuite/gas/i386/avx512f_vaes-wig1-intel.d: Likewise. - * testsuite/gas/i386/avx512f_vaes-wig1.d: Likewise. - * testsuite/gas/i386/avx512vl_vaes-intel.d: Likewise. - * testsuite/gas/i386/avx512vl_vaes.d: Likewise. - * testsuite/gas/i386/x86-64-avx512f_vaes.s: Add instructions with - disp8*N. - * testsuite/gas/i386/x86-64-avx512f_vaes-intel.d: Regenerate. - * testsuite/gas/i386/x86-64-avx512f_vaes.d: Likewise. - * testsuite/gas/i386/x86-64-avx512f_vaes-wig.s: Add instructions with - disp8*N. - * testsuite/gas/i386/x86-64-avx512f_vaes-wig1-intel.d: Regenerate. - * testsuite/gas/i386/x86-64-avx512f_vaes-wig1.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_vaes-intel.d: Regenerate. - * testsuite/gas/i386/x86-64-avx512vl_vaes.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_vaes-wig.s: Add instructions with - disp8*N. - * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1-intel.d: Regenerate. - * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1.d: Regenerate. - -2017-11-23 Jan Beulich - - * tc-i386.c (check_VecOperands): Don't clear .disp16. - * testsuite/gas/i386/avx512f.s: Add 16-bit addressing tests. - * testsuite/gas/i386/avx512f.d, - testsuite/gas/i386/avx512f-intel.d: Adjust expectations. - -2017-11-23 Jan Beulich - - PR gas/22441 - * config/tc-i386.c (build_modrm_byte): Add address override - prefix checks alongside 64-bit mode ones. - * testsuite/gas/i386/reloc64.s: Add 32-bit signed/unsigned - relocation cases. - * testsuite/gas/i386/reloc64.d: Adjust expectations. - -2017-11-23 Jan Beulich - - * config/tc-i386.c (build_modrm_byte): Drop VSIB handling from - code also setting fake_zero_displacement. - -2017-11-23 Jan Beulich - - * testsuite/gas/i386/arch-4.s: Correct ud1 and ud2b. Add ud0. - * testsuite/gas/i386/intel.s: Test ud2 instead of ud2b. - * testsuite/gas/i386/opcode.s: Likewise. - * testsuite/gas/i386/arch-4.d, testsuite/gas/i386/intel.d, - testsuite/gas/i386/opcode.d, testsuite/gas/i386/opcode-intel.d, - testsuite/gas/i386/opcode-suffix.d: Adjust expectations. - -2017-11-23 Jan Beulich - - * config/tc-i386-intel.c (i386_intel_operand): Don't call - as_bad() if a prior error was already reported. - * testsuite/gas/i386/inval-avx512f.l, - testsuite/gas/i386/x86-64-inval-avx512f.l: Adjust expectations. - -2017-11-22 Jim Wilson - - * as.c: Include write.h. - (common_emul_init): Use FAKE_LABEL_NAME. - * ecoff.c (add_file, ecoff_directive_end, ecoff_directive_loc): - Likewise. - (ecoff_build_symbols): Use FAKE_LABEL_CHAR. - * expr.c (get_symbol_name): Use FAKE_LABEL_CHAR. Accept only if - input_from_string is TRUE. - * read.c (input_from_string): New. - (read_symbol_name): Use FAKE_LABEL_CHAR. Accept only if - input_from_string is TRUE. - (temp_ilp): Set input_from_string to TRUE. - (restore_ilp): Set input_from_string to FALSE. - * read.h (input_from_string): Declare. - * symbols.c: Include write.h - (S_IS_LOCAL): Check for FAKE_LABEL_CHAR. - (symbol_relc_make_sym): Fix comment refering to default fake label - string. - * write.h (FAKE_LABEL_CHAR): New. - * config/tc-riscv.h (FAKE_LABEL_CHAR): Define. - * testsuite/gas/all/err-fakelabel.s: New. - - * doc/as.texinfo (.align): Change some to most for text nop fill. - (.balign, .p2align): Likewise. - -2017-11-22 Thomas Preud'homme - - * config/tc-arm.c (arm_reg_type): Comment on the link with - reg_expected_msgs. - (reg_expected_msgs): Initialize using array designators with - arm_reg_type index. - -2017-11-22 Claudiu Zissulescu - - * testsuite/gas/arc/hregs-err.s: New test. - -2017-11-21 H.J. Lu - - PR gas/22464 - * testsuite/gas/i386/align-1.s: New file. - * testsuite/gas/i386/align-1a.d: Likewise. - * testsuite/gas/i386/align-1b.d: Likewise. - * testsuite/gas/i386/i386.exp: Run align-1a and align-1b. - -2017-11-21 Claudiu Zissulescu - - * testsuite/gas/arc/b.d : Update test. - * testsuite/gas/arc/bl.d: Likewise. - * testsuite/gas/arc/jli-1.d: Likewise. - * testsuite/gas/arc/lp.d: Likewise. - * testsuite/gas/arc/pcl-relocs.d: Likewise. - * testsuite/gas/arc/pcrel-relocs.d: Likewise. - * testsuite/gas/arc/pic-relocs.d: Likewise. - * testsuite/gas/arc/plt-relocs.d: Likewise. - * testsuite/gas/arc/pseudos.d: Likewise. - * testsuite/gas/arc/relax-avoid2.d: Likewise. - * testsuite/gas/arc/relax-avoid3.d: Likewise. - * testsuite/gas/arc/relax-b.d: Likewise. - * testsuite/gas/arc/tls-relocs.d: Likewise. - * testsuite/gas/arc/relax-add01.d: Likewise. - * testsuite/gas/arc/relax-add04.d: Likewise. - * testsuite/gas/arc/relax-ld01.d: Likewise. - * testsuite/gas/arc/relax-sub01.d: Likewise. - * testsuite/gas/arc/relax-sub02.d: Likewise. - * testsuite/gas/arc/relax-sub04.d: Likewise. - * testsuite/gas/arc/pcl-print.s: New file. - * testsuite/gas/arc/pcl-print.d: Likewise. - * testsuite/gas/arc/nps400-12.d: Likewise. - -2017-11-21 Alan Modra - - * config/tc-xtensa.c (finish_vinsn): Avoid multiple ngettext calls - in error message. - -2017-11-20 Alan Modra - - * testsuite/gas/i386/x86-64-reg-bad.l: Accept trailing padding. - -2017-11-16 Tamar Christina - - * config/tc-aarch64.c (fp16fml): New. - * doc/c-aarch64.texi (fp16fml): New. - * testsuite/gas/aarch64/armv8_2-a-crypto-fp16.d (fp16): Make fp16fml. - * testsuite/gas/aarch64/armv8_3-a-crypto-fp16.d (fp16): Make fp16fml. - -2017-11-16 Tamar Christina - - * opcodes/aarch64-tbl.h - (aarch64_feature_crypto): Add ARCH64_FEATURE_SIMD and AARCH64_FEATURE_FP. - (aarch64_feature_crypto_v8_2, aarch64_feature_sm4): Likewise. - (aarch64_feature_sha3): Likewise. - -2017-11-16 Tamar Christina - - * doc/c-aarch64.texi (armv8.4-a, sha2, sha3, sm4): New. - (dotprod): Update default note. - -2017-11-16 Tamar Christina - - * testsuite/gas/aarch64/armv8_4-a-illegal.d: New. - * testsuite/gas/aarch64/armv8_4-a-illegal.l: New. - * testsuite/gas/aarch64/armv8_4-a-illegal.s: New. - * testsuite/gas/aarch64/armv8_4-a.d: New. - * testsuite/gas/aarch64/armv8_4-a.s: New. - * testsuite/gas/aarch64/armv8_2-a-crypto-fp16.s: New. - * testsuite/gas/aarch64/armv8_2-a-crypto-fp16.d: New. - * testsuite/gas/aarch64/armv8_3-a-crypto-fp16.d: New. - * testsuite/gas/aarch64/armv8_4-a-crypto-fp16.d: New. - * testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.s: New. - * testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.l: New. - * testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.d: New. - -2017-11-16 Jan Beulich - - * testsuite/gas/i386/noextreg.s: Add tests with register index - bit 3 set. - * testsuite/gas/i386/noextreg.d: Adjust expectations. - -2017-11-16 Jan Beulich - - * config/tc-i386.c (process_suffix): Ignore .no_qsuf outside of - 64-bit mode. - * testsuite/gas/i386/ptwrite.s: Add test for memory operand - without DWORD PTR. - * testsuite/gas/i386/ptwrite.d, - testsuite/gas/i386/ptwrite-intel.d: Adjust expectations. - -2017-11-15 H.J. Lu - - * testsuite/gas/i386/noextreg.s: Replace .code64/.code32 and - 64-bit instructions with .byte. Remove ELF directive. - -2017-11-15 Tamar Christina - - * config/tc-arm.c (arm_ext_fp16_fml, fp16fml): New. - (do_neon_fmac_maybe_scalar_long): Use arm_ext_fp16_fml. - * doc/c-arm.texi (fp16, fp16fml): New. - * testsuite/gas/arm/armv8_2-a-fp16.d (fp16): Make fp16fml. - * testsuite/gas/arm/armv8_3-a-fp16.d (fp16): Make fp16fml. - * testsuite/gas/arm/armv8_2-a-fp16-illegal.d (fp16): Make fp16fml. - * testsuite/gas/arm/armv8_2-a-fp16-thumb2.d (fp16): Make fp16fml. - -2017-11-15 Nick Clifton - - PR 15152 - * testsuite/gas/avr/large-debug-line-table.d: Update expected - output. - * testsuite/gas/elf/dwarf2-11.d: Likewise. - * testsuite/gas/elf/dwarf2-12.d: Likewise. - * testsuite/gas/elf/dwarf2-13.d: Likewise. - * testsuite/gas/elf/dwarf2-14.d: Likewise. - * testsuite/gas/elf/dwarf2-15.d: Likewise. - * testsuite/gas/elf/dwarf2-16.d: Likewise. - * testsuite/gas/elf/dwarf2-17.d: Likewise. - * testsuite/gas/elf/dwarf2-18.d: Likewise. - * testsuite/gas/elf/dwarf2-5.d: Likewise. - * testsuite/gas/elf/dwarf2-6.d: Likewise. - * testsuite/gas/elf/dwarf2-7.d: Likewise. - -2017-11-15 Jan Beulich - - * testsuite/gas/i386/noextreg.s: Add tests for VEX-encoded GPR - insns with VEX.W set. - * testsuite/gas/i386/noextreg.d: Adjust expectations. - -2017-11-15 Jan Beulich - - * testsuite/gas/i386/noextreg.{s,d}: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2017-11-15 Jan Beulich - - * testsuite/gas/i386/x86-64-reg.s: Add extended byte reg tests. - * testsuite/gas/i386/x86-64-reg.d, - testsuite/gas/i386/x86-64-reg-intel.d, - testsuite/gas/i386/ilp32/x86-64-reg.d, - testsuite/gas/i386/ilp32/x86-64-reg-intel.d: Adjust - expectations. - - * testsuite/gas/i386/x86-64-reg-bad.{s,l}: New. - * testsuite/gas/i386/i386.exp: Run new test. - -2017-11-14 Jim Wilson - - * testsuite/gas/lns/lns.exp (lns-common-1): Add riscv*-*-* to alt list. - -2017-11-14 Jan Beulich - - * testsuite/gas/i386/x86-64-xop.d, testsuite/gas/i386/xop.d, - testsuite/gas/i386/xop32reg.d: Adjust expectations. - -2017-11-14 Jan Beulich - - * testsuite/gas/i386/avx512bw.s: Add vpcmp* pseudo tests. - * testsuite/gas/i386/avx512bw_vl.s: Likewise. - * testsuite/gas/i386/avx512bw.d, testsuite/gas/i386/avx512bw-intel.d, - testsuite/gas/i386/avx512bw_vl.d, - testsuite/gas/i386/avx512bw_vl-intel.d: Adjust expectations. - -2017-11-14 Jan Beulich - - * testsuite/gas/i386/string-ok.s: Add a few more valid patterns. - Move bogus tests ... - * testsuite/gas/i386/string-bad.s: ... here. - * testsuite/gas/i386/string-bad.l: Adjust expectations. - * testsuite/gas/i386/string-ok.d: Likewise. - * testsuite/gas/i386/string-ok.e: Likewise. - -2017-11-13 Jan Beulich - - * config/tc-aarch64.c (R_Z_BHSDQ_VZP): Rename to ... - (R_Z_SP_BHSDQ_VZP): ... and include both stack pointer variants. - -2017-11-13 Jan Beulich - - * testsuite/gas/ia64/group-1.d: Adjust expectations. - * testsuite/gas/ia64/group-2.d: Likewise. - * testsuite/gas/ia64/xdata.d: Likewise. - -2017-11-13 Jan Beulich - - * config/tc-i386.c (process_suffix): Treat .shiftcount just like - .inoutportreg. - * testsuite/gas/i386/inval.s: Add ambiguous shift/rotate cases. - * testsuite/gas/i386/inval.l: Adjust expectations. - -2017-11-13 Jan Beulich - - * config/tc-i386-intel.c (i386_intel_simplify_register): Also - recognize RegRiz/RegEiz as index-only registers. - * testsuite/gas/i386/intel.s: Add tests exercising base/index - swapping. - * testsuite/gas/i386/intel.d: Adjust expectations. - -2017-11-13 Jan Beulich - - * config/tc-i386.c (i386_index_check): Break out ... - (i386_addressing_mode): ... this new function. - * config/tc-i386-intel.c (i386_intel_operand): Do base/index - swapping and the setting of .baseindex earlier. Call - i386_addressing_mode. - * testsuite/gas/i386/x86-64-inval.s: Add out of range - displacement case. - * testsuite/gas/i386/x86-64-inval.l: Adjust expectations. - -2017-11-09 Jim Wilson - - * testsuite/gas/elf/dwarf2-10.l: Accept optional line number in error. - -2017-11-06 Tamar Christina - - * gas/testsuite/gas/aarch64/dotproduct_armv8_4.s: New. - * gas/testsuite/gas/aarch64/dotproduct_armv8_4.d: New. - -2017-11-09 Tamar Christina - - * gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.d: New. - * gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.l: New. - * gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.s: New. - * gas/testsuite/gas/aarch64/armv8_4-a-registers.d: New. - * gas/testsuite/gas/aarch64/armv8_4-a-registers.s: New. - -2017-11-09 Tamar Christina - - * config/tc-aarch64.c (process_omitted_operand): - Add AARCH64_OPND_Va, AARCH64_OPND_SM3_IMM2 - and AARCH64_OPND_IMM_2. - (parse_operands): Add AARCH64_OPND_Va, AARCH64_OPND_SM3_IMM2, - AARCH64_OPND_IMM_2, AARCH64_OPND_MASK - and AARCH64_OPND_ADDR_OFFSET. - -2017-11-09 Tamar Christina - - * config/tc-aarch64.c (aarch64_arch_option_table): Add armv8.4-a. - (aarch64_features): Add SM4 and SHA3. - -2017-11-08 Tamar Christina - - * config/tc-aarch64.c - (aarch64_features): Include AES and SHA2 in CRYPTO. - Add SHA2 and AES. - -2017-11-08 Jiong Wang - Tamar Christina - - * config/tc-arm.c (arm_extensions): - (arm_archs): New entry for "armv8.4-a". - Add FPU_ARCH_DOTPROD_NEON_VFP_ARMV8. - (arm_ext_v8_2): New variable. - (enum arm_reg_type): New enumeration REG_TYPE_NSD. - (reg_expected_msgs): New entry for REG_TYPE_NSD. - (parse_typed_reg_or_scalar): Handle REG_TYPE_NSD. - (parse_scalar): Support REG_TYPE_VFS. - (enum operand_parse_code): New enumerations OP_RNSD and OP_RNSD_RNSC. - (parse_operands): Handle OP_RNSD and OP_RNSD_RNSC. - (NEON_SHAPE_DEF): New entries for DHH and DHS. - (neon_scalar_for_fmac_fp16_long): New function to generate Rm encoding - for new FP16 instructions in ARMv8.2-A. - (do_neon_fmac_maybe_scalar_long): New function to encode new FP16 - instructions in ARMv8.2-A. - (do_neon_vfmal): Wrapper function for vfmal. - (do_neon_vfmsl): Wrapper function for vfmsl. - (insns): New entries for vfmal and vfmsl. - * doc/c-arm.texi (-march): Document "armv8.4-a". - * testsuite/gas/arm/dotprod-mandatory.d: New test. - * testsuite/gas/arm/armv8_2-a-fp16.s: New test source. - * testsuite/gas/arm/armv8_2-a-fp16-illegal.s: New test source. - * testsuite/gas/arm/armv8_2-a-fp16.d: New test. - * testsuite/gas/arm/armv8_3-a-fp16.d: New test. - * testsuite/gas/arm/armv8_4-a-fp16.d: New test. - * testsuite/gas/arm/armv8_2-a-fp16-thumb2.d: New test. - * testsuite/gas/arm/armv8_2-a-fp16-illegal.d: New test. - * testsuite/gas/arm/armv8_2-a-fp16-illegal.l: New error file. - -2017-11-08 Alan Modra - - * config/tc-xtensa.c (finish_vinsn): Properly pluralize error message. - -2017-11-07 Jim Wilson - - * config/tc-riscv.c (append_insn): Call frag_wane and frag_new at - end for linker optimizable relocs. - * testsuite/gas/riscv/eh-relocs.d: New. - * testsuite/gas/riscv/eh-relocs.s: New. - * testsuite/gas/riscv/riscv.exp: Run eh-relocs test. - -2017-11-07 Palmer Dabbelt - - * testsuite/gas/riscv/satp.d: New test. - testsuite/gas/riscv/satp.s: Likewise. - testsuite/gas/riscv/riscv.exp: Likewise. - config/tc-riscv.c (md_begin): Handle CSR aliases. - -2017-11-07 Tamar Christina - - * config/tc-arm.c (arm_cpus): - Change FPU_ARCH_CRYPTO_NEON_VFP_ARMV8 - into FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_DOTPROD. - -2017-11-07 Alan Modra - - * read.c (assemble_one, s_bundle_unlock): Formatting. - Consistently add comma and "bytes" to error message. - * testsuite/gas/i386/bundle-bad.l: Adjust to suit. - -2017-11-07 Alan Modra - - * testsuite/gas/arm/got_prel.d, - * testsuite/gas/elf/dwarf2-1.d, - * testsuite/gas/elf/dwarf2-2.d, - * testsuite/gas/elf/dwarf2-3.d, - * testsuite/gas/elf/dwarf2-5.d, - * testsuite/gas/elf/dwarf2-6.d, - * testsuite/gas/i386/debug1.d, - * testsuite/gas/i386/dw2-compress-1.d, - * testsuite/gas/i386/dw2-compress-3a.d, - * testsuite/gas/i386/dw2-compress-3b.d, - * testsuite/gas/i386/dw2-compressed-1.d, - * testsuite/gas/i386/dw2-compressed-3a.d, - * testsuite/gas/i386/dw2-compressed-3b.d, - * testsuite/gas/i386/ilp32/x86-64-localpic.d, - * testsuite/gas/i386/localpic.d, - * testsuite/gas/i386/x86-64-localpic.d, - * testsuite/gas/ia64/pr13167.d, - * testsuite/gas/mips/loc-swap-2.d, - * testsuite/gas/mips/loc-swap.d, - * testsuite/gas/mips/micromips@loc-swap-2.d, - * testsuite/gas/mips/micromips@loc-swap.d, - * testsuite/gas/mips/mips16-dwarf2-n32.d, - * testsuite/gas/mips/mips16-dwarf2.d, - * testsuite/gas/mips/mips16@loc-swap-2.d, - * testsuite/gas/mips/mips16@loc-swap.d, - * testsuite/gas/mips/mips16e@loc-swap.d, - * testsuite/gas/mmix/bspec-1.d, - * testsuite/gas/mmix/bspec-2.d, - * testsuite/gas/tic6x/unwind-1.d, - * testsuite/gas/tic6x/unwind-2.d, - * testsuite/gas/tic6x/unwind-3.d: Update for pluralization - fixes. - -2017-11-07 Alan Modra - - * as.c (main): Properly pluralize messages. - * frags.c (frag_grow): Likewise. - * read.c (emit_expr_with_reloc, emit_expr_fix): Likewise. - (parse_bitfield_cons): Likewise. - * write.c (fixup_segment, compress_debug, write_contents): Likewise. - (relax_segment): Likewise. - * config/tc-arm.c (s_arm_elf_cons): Likewise. - * config/tc-cr16.c (l_cons): Likewise. - * config/tc-i370.c (i370_elf_cons): Likewise. - * config/tc-m68k.c (m68k_elf_cons): Likewise. - * config/tc-msp430.c (msp430_operands): Likewise. - * config/tc-s390.c (s390_elf_cons, s390_literals): Likewise. - * config/tc-mcore.c (md_apply_fix): Likewise. - * config/tc-tic54x.c (md_assemble): Likewise. - * config/tc-xtensa.c (xtensa_elf_cons): Likewise. - (xg_expand_assembly_insn): Likewise. - * config/xtensa-relax.c (build_transition): Likewise. - -2017-11-07 Alan Modra - - * asintl.h (textdomain, bindtextdomain): Use safer "do nothing". - (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. - -2017-11-03 Siddhesh Poyarekar - Jim Wilson - - * config/tc-aarch64.c (aarch64_cpus): Add saphira. - * doc/c-aarch64.texi: Likewise. - -2017-11-02 Thomas Preud'homme - - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d: Add - --disassembler-options=force-thumb to objdump options. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d: Likewise. - -2017-11-01 James Bowman - - * config/tc-ft32.c (md_assemble): Add relaxation reloc - BFD_RELOC_FT32_RELAX. - (md_longopts): Add "norelax" and "no-relax". - (md_apply_fix): Add reloc BFD_RELOC_FT32_DIFF32. - (relaxable_section, ft32_validate_fix_sub, ft32_force_relocation, - ft32_allow_local_subtract): New function. - * config/tc-ft32.h: Remove unused MD_PCREL_FROM_SECTION. - * testsuite/gas/ft32/insnsc.s: New test exercising all FT32B - shortcodes. - * testsuite/gas/ft32/insnsc.d: New driver file. - * testsuite/gas/all/gas.exp: Update. - * testsuite/gas/ft32/ft32.exp: Run the new test. - * testsuite/gas/ft32/insn.d: Update. - * testsuite/gas/elf/dwarf2-11.d: Update. - * testsuite/gas/elf/dwarf2-12.d: Update. - * testsuite/gas/elf/dwarf2-13.d: Update. - * testsuite/gas/elf/dwarf2-14.d: Update. - * testsuite/gas/elf/dwarf2-15.d: Update. - * testsuite/gas/elf/dwarf2-16.d: Update. - * testsuite/gas/elf/dwarf2-17.d: Update. - * testsuite/gas/elf/dwarf2-18.d: Update. - * testsuite/gas/elf/dwarf2-3.d: Update. - * testsuite/gas/elf/dwarf2-5.d: Update. - * testsuite/gas/elf/dwarf2-7.d: Update. - -2017-11-01 Thomas Preud'homme - - * config/tc-arm.c (arm_ext_v2): Define to ARM_EXT_V2 feature bit. - * testsuite/gas/arm/copro.s: Split into - * testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus.s: This while - changing it to unified syntax and - * testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus.s: this and ... - * testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus.s: This and ... - * testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus.s: This. - * testsuite/gas/arm/copro.d: Split into ... - * testsuite/gas/arm/copro-arm_v2plus-arm_v2.d: This but target ARMv2 - and ... - * testsuite/gas/arm/copro-arm_v5plus-arm_v5.d: this but target ARMv5 - and ... - * testsuite/gas/arm/copro-arm_v5teplus-arm_v5te.d: This but target - ARMv5TE and ... - * testsuite/gas/arm/copro-arm_v6plus-arm_v6.d: This but target ARMv6. - * testsuite/gas/arm/copro-arm_v2plus-arm_v1.d: New testcase. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d: New testcase. - * testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus-unavail.l: Expected - errors for the above two testcases. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d: New testcase. - * testsuite/gas/arm/copro-arm_v5plus-arm_v4.d: New testcase. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d: New testcase. - * testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus-unavail.l: - Expected errors for the above two testcases. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d: New testcase. - * testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d: New testcase. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d: New testcase. - * testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus-unavail.l: - Expected errors for the above two testcases. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-3.d: New testcase. - * testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d: New testcase. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d: New testcase. - * testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus-unavail.l: - Expected errors for the above two testcases. - * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-4.d: New testcase. - -2017-10-26 H.J. Lu - - PR gas/22352 - * config/tc-i386.c (check_VecOperands): Also check XMM register - for invalid register in AVX512 gathers. - * testsuite/gas/i386/vgather-check.s: Add tests for AVX512 - gathers with XMM register. - * testsuite/gas/i386/x86-64-vgather-check.s: Likewise. - * testsuite/gas/i386/vgather-check-error.l: Updated. - * testsuite/gas/i386/vgather-check-none.d: Likewise. - * testsuite/gas/i386/vgather-check-warn.d: Likewise. - * testsuite/gas/i386/vgather-check-warn.e: Likewise. - * testsuite/gas/i386/vgather-check.d: Likewise. - * testsuite/gas/i386/x86-64-vgather-check-error.l: Likewise. - * testsuite/gas/i386/x86-64-vgather-check-none.d: Likewise. - * testsuite/gas/i386/x86-64-vgather-check-warn.d: Likewise. - * testsuite/gas/i386/x86-64-vgather-check-warn.e: Likewise. - * testsuite/gas/i386/x86-64-vgather-check.d: Likewise. - -2017-10-26 Hans-Peter Nilsson - - * testsuite/gas/all/fill-1.s: Use L2 rather than .L2. - -2017-10-25 Alan Modra - - PR 22348 - * config/tc-crx.c (instruction, output_opcode): Make static. - (relocatable, ins_parse, cur_arg_num): Likewise. - (parse_insn): Adjust for renamed opcodes globals. - (check_range): Likewise - -2017-10-25 Alan Modra - - * testsuite/gas/all/fill-1.d: Exclude tic4x and tic54x. - * testsuite/gas/all/fill-1.s: Use L1 rather than .L1. - -2017-10-24 Andrew Waterman - - * testsuite/gas/riscv/c-addi16sp-fail.d: New test. - * testsuite/gas/riscv/c-addi16sp-fail.l: Likewise. - * testsuite/gas/riscv/c-addi16sp-fail.s: Likewise. - * testsuite/gas/riscv/c-addi4spn-fail.d: Likewise. - * testsuite/gas/riscv/c-addi4spn-fail.l: Likewise. - * testsuite/gas/riscv/c-addi4spn-fail.s: Likewise. - * testsuite/gas/riscv/riscv.exp: Add new tests. - -2017-10-24 Andrew Waterman - - * testsuite/gas/riscv/c-lui-fail.d: New testcase. - * gas/testsuite/gas/riscv/c-lui-fail.l: Likewise. - * gas/testsuite/gas/riscv/c-lui-fail.s: Likewise. - * gas/testsuite/gas/riscv/riscv.exp: Likewise. - -2017-10-24 H.J. Lu - - * config/tc-i386.c (md_pseudo_table): Add .code64 directive - only if BFD64 is defined. - * testsuite/gas/i386/code64-inval.l: New file. - * gas/testsuite/gas/i386/code64-inval.s: Likewise. - * gas/testsuite/gas/i386/code64.d: Likewise. - * gas/testsuite/gas/i386/code64.s: Likewise. - * testsuite/gas/i386/i386.exp: Run mixed-mode-reloc32, - att-regs, intel-regs, intel-expr and string-ok tests only if - assembler supports x86-64. Run code64 and code64-inval. - -2017-10-23 Palmer Dabbelt - - * config/tc-riscv.c (riscv_frag_align_code): Align code by 4 - bytes on non-RVC systems. - -2017-10-23 Maciej W. Rozycki - - * config/tc-mips.c (mips_elf_final_processing): Don't set - EF_MIPS_ABI2 in `e_flags'. - -2017-10-23 Igor Tsimbalist - - * config/tc-i386.c (cpu_arch): Add .avx512_bitalg. - (cpu_noarch): noavx512_bitalg. - * doc/c-i386.texi: Document .avx512_bitalg, noavx512_bitalg. - * testsuite/gas/i386/i386.exp: Add AVX512_BITALG tests. - * testsuite/gas/i386/avx512f_bitalg-intel.d: New test. - * testsuite/gas/i386/avx512f_bitalg.d: Likewise. - * testsuite/gas/i386/avx512f_bitalg.s: Likewise. - * testsuite/gas/i386/avx512vl_bitalg-intel.d: Likewise. - * testsuite/gas/i386/avx512vl_bitalg.d: Likewise. - * testsuite/gas/i386/avx512vl_bitalg.s: Likewise. - * testsuite/gas/i386/x86-64-avx512f_bitalg-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512f_bitalg.d: Likewise. - * testsuite/gas/i386/x86-64-avx512f_bitalg.s: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_bitalg-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_bitalg.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_bitalg.s: Likewise. - -2017-10-23 Igor Tsimbalist - - * config/tc-i386.c (cpu_arch): Add .avx512_vnni. - (cpu_noarch): Add noavx512_vnni. - * doc/c-i386.texi: Document .avx512_vnni. - * testsuite/gas/i386/i386.exp: Add AVX512_VNNI tests. - * testsuite/gas/i386/avx512vnni-intel.d: New test. - * testsuite/gas/i386/avx512vnni.d: Likewise. - * testsuite/gas/i386/avx512vnni.s: Likewise. - * testsuite/gas/i386/avx512vnni_vl-intel.d: Likewise. - * testsuite/gas/i386/avx512vnni_vl.d: Likewise. - * testsuite/gas/i386/avx512vnni_vl.s: Likewise. - * testsuite/gas/i386/x86-64-avx512vnni-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vnni.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vnni.s: Likewise. - * testsuite/gas/i386/x86-64-avx512vnni_vl-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vnni_vl.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vnni_vl.s: Likewise. - -2017-10-23 Igor Tsimbalist - - * config/tc-i386.c (cpu_arch): Add VPCLMULQDQ. - * doc/c-i386.texi: Document VPCLMULQDQ. - * testsuite/gas/i386/i386.exp: Run VPCLMULQDQ tests. - * testsuite/gas/i386/avx512f_vpclmulqdq-intel.d: New test. - * testsuite/gas/i386/avx512f_vpclmulqdq-wig.s: Ditto. - * testsuite/gas/i386/avx512f_vpclmulqdq-wig1-intel.d: Ditto. - * testsuite/gas/i386/avx512f_vpclmulqdq-wig1.d: Ditto. - * testsuite/gas/i386/avx512f_vpclmulqdq.d: Ditto. - * testsuite/gas/i386/avx512f_vpclmulqdq.s: Ditto. - * testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d: Ditto. - * testsuite/gas/i386/avx512vl_vpclmulqdq-wig.s: Ditto. - * testsuite/gas/i386/avx512vl_vpclmulqdq-wig1-intel.d: Ditto. - * testsuite/gas/i386/avx512vl_vpclmulqdq-wig1.d: Ditto. - * testsuite/gas/i386/avx512vl_vpclmulqdq.d: Ditto. - * testsuite/gas/i386/avx512vl_vpclmulqdq.s: Ditto. - * testsuite/gas/i386/vpclmulqdq-intel.d: Ditto. - * testsuite/gas/i386/vpclmulqdq.d: Ditto. - * testsuite/gas/i386/vpclmulqdq.s: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig.s: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig1-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig1.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig.s: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig1-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig1.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Ditto. - * testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Ditto. - * testsuite/gas/i386/x86-64-vpclmulqdq.d: Ditto. - * testsuite/gas/i386/x86-64-vpclmulqdq.s: Ditto. - -2017-10-23 Igor Tsimbalist - - * config/tc-i386.c (cpu_arch): Add VAES. - * doc/c-i386.texi: Document VAES. - * testsuite/gas/i386/i386.exp: Run VAES tests. - * testsuite/gas/i386/avx512f_vaes-intel.d: New test. - * testsuite/gas/i386/avx512f_vaes-wig.s: Ditto. - * testsuite/gas/i386/avx512f_vaes-wig1-intel.d: Ditto. - * testsuite/gas/i386/avx512f_vaes-wig1.d: Ditto. - * testsuite/gas/i386/avx512f_vaes.d: Ditto. - * testsuite/gas/i386/avx512f_vaes.s: Ditto. - * testsuite/gas/i386/avx512vl_vaes-intel.d: Ditto. - * testsuite/gas/i386/avx512vl_vaes-wig.s: Ditto. - * testsuite/gas/i386/avx512vl_vaes-wig1-intel.d: Ditto. - * testsuite/gas/i386/avx512vl_vaes-wig1.d: Ditto. - * testsuite/gas/i386/avx512vl_vaes.d: Ditto. - * testsuite/gas/i386/avx512vl_vaes.s: Ditto. - * testsuite/gas/i386/vaes-intel.d: Ditto. - * testsuite/gas/i386/vaes.d: Ditto. - * testsuite/gas/i386/vaes.s: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vaes-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vaes-wig.s: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vaes-wig1-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vaes-wig1.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vaes.d: Ditto. - * testsuite/gas/i386/x86-64-avx512f_vaes.s: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vaes-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vaes-wig.s: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vaes.d: Ditto. - * testsuite/gas/i386/x86-64-avx512vl_vaes.s: Ditto. - * testsuite/gas/i386/x86-64-vaes-intel.d: Ditto. - * testsuite/gas/i386/x86-64-vaes.d: Ditto. - * testsuite/gas/i386/x86-64-vaes.s: Ditto. - -2017-10-23 Igor Tsimbalist - - * config/tc-i386.c (cpu_arch): Add .gfni. - * doc/c-i386.texi: Document .gfni. - * testsuite/gas/i386/i386.exp: Add GFNI tests. - * testsuite/gas/i386/avx.s: New GFNI test. - * testsuite/gas/i386/x86-64-avx.s: Likewise. - * testsuite/gas/i386/avx.d: Adjust. - * testsuite/gas/i386/avx-intel.d: Likewise - * testsuite/gas/i386/ilp32/x86-64-avx-intel.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-avx.d: Likewise. - * testsuite/gas/i386/avx512f_gfni-intel.d: New test. - * testsuite/gas/i386/avx512f_gfni.d: Likewise. - * testsuite/gas/i386/avx512f_gfni.s: Likewise. - * testsuite/gas/i386/avx512vl_gfni-intel.d: Likewise. - * testsuite/gas/i386/avx512vl_gfni.d: Likewise. - * testsuite/gas/i386/avx512vl_gfni.s: Likewise. - * testsuite/gas/i386/gfni-intel.d: Likewise. - * testsuite/gas/i386/gfni.d: Likewise. - * testsuite/gas/i386/gfni.s: Likewise. - * testsuite/gas/i386/x86-64-avx512f_gfni-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512f_gfni.d: Likewise. - * testsuite/gas/i386/x86-64-avx512f_gfni.s: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_gfni-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_gfni.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vl_gfni.s: Likewise. - * testsuite/gas/i386/x86-64-avx_gfni-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx_gfni.d: Likewise. - * testsuite/gas/i386/x86-64-avx_gfni.s: Likewise. - * testsuite/gas/i386/x86-64-gfni-intel.d: Likewise. - * testsuite/gas/i386/x86-64-gfni.d: Likewise. - * testsuite/gas/i386/x86-64-gfni.s: Likewise. - -2017-10-23 Igor Tsimbalist - - * config/tc-i386.c (cpu_arch): Add .avx512_vbmi2. - (cpu_noarch): noavx512_vbmi2. - * doc/c-i386.texi: Document .avx512_vbmi2, noavx512_vbmi2. - * testsuite/gas/i386/i386.exp: Add AVX512_VBMI2 tests. - * testsuite/gas/i386/avx512vbmi2-intel.d: New test. - * testsuite/gas/i386/avx512vbmi2.d: Likewise. - * testsuite/gas/i386/avx512vbmi2.s: Likewise. - * testsuite/gas/i386/avx512vbmi2_vl-intel.d: Likewise. - * testsuite/gas/i386/avx512vbmi2_vl.d: Likewise. - * testsuite/gas/i386/avx512vbmi2_vl.s: Likewise. - * testsuite/gas/i386/x86-64-avx512vbmi2-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vbmi2.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vbmi2.s: Likewise. - * testsuite/gas/i386/x86-64-avx512vbmi2_vl-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vbmi2_vl.d: Likewise. - * testsuite/gas/i386/x86-64-avx512vbmi2_vl.s: Likewise. - -2017-10-22 Hans-Peter Nilsson - - PR gas/22304 - * testsuite/gas/cris/range-err-1.s: Remove quotes left from last edit. - -2017-10-20 Nick Clifton - - PR 22324 - * read.c (s_rept): Use size_t type for count parameter. - (do_repeat): Change type of count parameter to size_t. - Issue an error is the count parameter is negative. - (do_repeat_with_expression): Likewise. - * read.h: Update prototypes for do_repeat and - do_repeat_with_expression. - * doc/as.texinfo (Rept): Document that a zero count is allowed but - negative counts are not. - * config/tc-rx.c (rx_rept): Use size_t type for count parameter. - * config/tc-tic54x.c (tic54x_loop): Cast count parameter to size_t - type. - * testsuite/gas/macros/end.s: Add a test using a negative repeat - count. - * testsuite/gas/macros/end.l: Add expected error message. - -2017-10-19 Palmer Dabbelt - - * config/tc-riscv.c (md_apply_fix): Mark - BFD_RELOC_RISCV_PCREL_HI20 as relaxable when relaxations are - enabled. - -2017-10-19 Nick Clifton - - PR 21621 - * config/tc-avr.h (struct avr_frag_data): Add prev_opcode field. - (TC_FRAG_INIT): Define. - (avr_frag_init): Add prototype. - * config/tc-avr.c (avr_frag_init): New function. - (avr_operands): Replace static local 'prev' variable with - prev_opcode field in current frag. - * testsuite/gas/avr/pr21621.s: New test source file. - * testsuite/gas/avr/pr21621.d: New test driver file. - * testsuite/gas/avr/pr21621.s: New test error output file. - -2017-10-19 Andreas Krebbel - - * testsuite/gas/all/fill-1.s: Use normal labels. Change .text to - .data. Pick different values. Use .dc.w instead of .word. - * testsuite/gas/all/fill-1.d: New objdump output check. - * testsuite/gas/all/gas.exp: Use run_dump_test to execute fill-1 - testcase. - -2017-10-18 Palmer Dabbelt - - * testsuite/gas/all/align.d: Mark as unsupported on RISC-V. - testsuite/gas/all/relax.d: Likewise. - testsuite/gas/all/sleb128-2.d: Likewise. - testsuite/gas/all/sleb128-4.d: Likewise. - testsuite/gas/all/sleb128-5.d: Likewise. - testsuite/gas/all/sleb128-7.d: Likewise. - testsuite/gas/elf/section11.d: Likewise. - testsuite/gas/all/gas.exp (diff1.s): Likewise. - -2017-10-18 Nick Clifton - - PR gas/22304 - * testsuite/gas/cris/range-err-1.s: Remove spurious xfails. - * testsuite/gas/cris/cris.exp: Expect the shexpr-1 test to pass. - -2017-10-18 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2017-10-16 Sandra Loosemore - Henry Wong - - * config/tc-nios2.c (nios2_translate_pseudo_insn): Check for - correct number of arguments. - (md_assemble): Handle failure of nios2_translate_pseudo_insn. - * testsuite/gas/nios2/illegal_pseudoinst.l: New file. - * testsuite/gas/nios2/illegal_pseudoinst.s: New file. - * testsuite/gas/nios2/nios2.exp: Add illegal_pseudoinst test. - -2017-10-12 James Bowman - - * config/tc-ft32.c (md_assemble): Replace FT32_FLD_K8 with - K15. - (md_apply_fix, tc_gen_reloc): Add BFD_RELOC_FT32_15. - -2017-10-11 Nick Clifton - - PR 21977 - * listing.c (listing_newline): Use the name of the current - physical input file, rather than the current logical input file, - unless including high level source in the listing. - * input-scrub.c (as_where_physical): New function. Returns the - name of the current physical input file. - * as.h: Add prototype for as_where_physical. - -2017-10-09 Andreas Krebbel - - * testsuite/gas/s390/zarch-arch12.d (prno, tpei, irbm): New - instructions added. - * testsuite/gas/s390/zarch-arch12.s: Likewise. - * testsuite/gas/s390/zarch-z13.d: Rename ppno to prno. - -2017-10-09 Andreas Krebbel - - * testsuite/gas/all/fill-1.s: Replace nop with .word 42 - -2017-10-09 Andreas Krebbel - - * read.c (s_fill): Invoke expression instead of - get_known_segmented_expression. - * testsuite/gas/all/fill-1.s: New testcase. - * testsuite/gas/all/gas.exp: Run fill-1 testcase - -2017-10-05 Nick Clifton - - PR 22133 - * config/tc-msp430.c (parse_exp): Skip an 'h' suffix to constant - expressions. - (msp430_srcoperand): Check that the entire text was parsed by - parse_exp. - (msp430_operands): Likewise. - * testsuite/gas/msp430/pr22133.s: New test file. - * testsuite/gas/msp430/pr22133.d: New test driver. - * testsuite/gas/msp430/pr22133.s: Expected error output. - * testsuite/gas/msp430/msp430.exp: Run the new test. - -2017-10-04 H.J. Lu - - PR gas/21167 - * testsuite/gas/elf/elf.exp: Run group3. - * testsuite/gas/elf/group3.d: New file. - * testsuite/gas/elf/group3.s: Likewise. - -2017-10-05 Alan Modra - - PR 21167 - * config/obj-elf.c (struct group_list): Delete elt_count. - (groups): New static. - (build_group_lists): Don't count elements. - (elf_adjust_symtab): Use "groups" rather than auto "list". Set up - pointer from group member to SHT_GROUP section. Don't size - SHT_GROUP section or clean up here.. - (elf_frob_file_after_relocs): ..do so here instead. - * testsuite/gas/arc/jli-1.d, - * testsuite/gas/elf/groupautob.d, - * testsuite/gas/mips/compact-eh-eb-2.d, - * testsuite/gas/mips/compact-eh-eb-5.d, - * testsuite/gas/mips/compact-eh-el-2.d, - * testsuite/gas/mips/compact-eh-el-5.d: Adjust. - -2017-10-01 Alexander Fedotov - - * testsuite/gas/ppc/vle-mult-ld-st-insns.s: New file: Tests the - support for the VLE multiple load/store instructions. - * testsuite/gas/ppc/vle-mult-ld-st-insns.d: New file: Test - driver. - * testsuite/gas/ppc/ppc.exp: Run it. - -2017-09-27 Nick Clifton - - PR 22179 - * testsuite/gas/riscv/fmv.x.s: New file: Tests the support for the - renamed fmv.x.s and fmv.s.x instructions. - * testsuite/gas/riscv/fmv.x.d: New file: Test driver. - -2017-09-21 Maciej W. Rozycki - - * testsuite/gas/mips/elf_mach_5900.d: New test. - * testsuite/gas/mips/mips.exp: Run it. - -2017-09-21 James Cowgill - - PR gas/21762 - * config/tc-mips.c (s_mips_stab): Insert call to - file_mips_check_options. - * testsuite/gas/mips/micromips@stabs-symbol-type.d: New test. - * testsuite/gas/mips/mips.exp: Run the new tests. - * testsuite/gas/mips/mips16@stabs-symbol-type.d: New test. - * testsuite/gas/mips/stabs-symbol-type.d: New test. - * testsuite/gas/mips/stabs-symbol-type.s: New test source. - -2017-09-21 Alan Modra - - * config/tc-ppc.h (EH_FRAME_ALIGNMENT): Define. - -2017-09-14 Alan Modra - - PR 22127 - * write.c (resolve_reloc_expr_symbols): Don't segfault when - sec has been set to NULL. - -2017-09-09 H.J. Lu - - * config/tc-i386.c (NOTRACK_PREFIX): Removed. - (REX_PREFIX): Updated. - (MAX_PREFIXES): Likewise. - (parse_insn): Remove restriction on NOTRACK prefix position. - * testsuite/gas/i386/notrack.s: Add tests with NOTRACK prefix - before other prefixes. - * testsuite/gas/i386/x86-64-notrack.s: Likewise. - * testsuite/gas/i386/notrackbad.s: Remove tests with NOTRACK - prefix before other prefixes. - * testsuite/gas/i386/x86-64-notrackbad.s: Likewise. - * testsuite/gas/i386/notrack-intel.d: Updated. - * testsuite/gas/i386/notrack.d: Likewise. - * testsuite/gas/i386/notrackbad.l: Likewise. - * testsuite/gas/i386/x86-64-notrack-intel.d: Likewise. - * testsuite/gas/i386/x86-64-notrack.d: Likewise. - * testsuite/gas/i386/x86-64-notrackbad.l: Likewise. - -2017-09-07 Palmer Dabbelt - - * config/tc-riscv.c (riscv_frag_align_code): Emit the entire - alignment sequence inside R_RISCV_ALIGN. - -2017-09-05 Alexander Fedotov - Edmar Wienskoski - - * config/tc-aarch64.c (aarch64_cpus): Enable DOTPROD for - cortex-a55 and cortx-a75. - -2017-08-30 Maciej W. Rozycki - - * testsuite/gas/mips/branch-addend-micromips.d: New test. - * testsuite/gas/mips/branch-addend-micromips-n32.d: New test. - * testsuite/gas/mips/branch-addend-micromips-n64.d: New test. - * testsuite/gas/mips/branch-addend-micromips.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-08-30 Maciej W. Rozycki - - * config/tc-mips.c (md_convert_frag): Respect - `mips_ignore_branch_isa'. - * testsuite/gas/mips/branch-local-5.d: New test. - * testsuite/gas/mips/branch-local-n32-5.d: New test. - * testsuite/gas/mips/branch-local-n64-5.d: New test. - * testsuite/gas/mips/branch-local-6.d: New test. - * testsuite/gas/mips/branch-local-n32-6.d: New test. - * testsuite/gas/mips/branch-local-n64-6.d: New test. - * testsuite/gas/mips/branch-local-7.d: New test. - * testsuite/gas/mips/branch-local-n32-7.d: New test. - * testsuite/gas/mips/branch-local-n64-7.d: New test. - * testsuite/gas/mips/branch-local-ignore-5.d: New test. - * testsuite/gas/mips/branch-local-ignore-n32-5.d: New test. - * testsuite/gas/mips/branch-local-ignore-n64-5.d: New test. - * testsuite/gas/mips/branch-local-ignore-6.d: New test. - * testsuite/gas/mips/branch-local-ignore-n32-6.d: New test. - * testsuite/gas/mips/branch-local-ignore-n64-6.d: New test. - * testsuite/gas/mips/branch-local-5.l: New stderr output. - * testsuite/gas/mips/branch-local-6.l: New stderr output. - * testsuite/gas/mips/branch-local-5.s: New test source. - * testsuite/gas/mips/branch-local-6.s: New test source. - * testsuite/gas/mips/branch-local-7.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-08-30 Maciej W. Rozycki - - * testsuite/gas/mips/branch-local-n32-2.d: Use `branch-local-2.l' - for `error-output'. - * testsuite/gas/mips/branch-local-n64-2.d: Likewise. - * testsuite/gas/mips/branch-local-n32-3.d: Use `branch-local-3.l' - for `error-output'. - * testsuite/gas/mips/branch-local-n64-3.d: Likewise. - * testsuite/gas/mips/branch-local-n32-2.l: Remove file. - * testsuite/gas/mips/branch-local-n64-2.l: Remove file. - * testsuite/gas/mips/branch-local-n32-3.l: Remove file. - * testsuite/gas/mips/branch-local-n64-3.l: Remove file. - -2017-08-29 Jozef Lawrynowicz - - * config/tc-msp430.c (md_parse_option): Define high data and high - bss symbols if -mdata-region is passed. - Define -mdata-region open. - * doc/c-msp430.texi: Document -mdata-region. - * testsuite/gas/msp430/high-data-bss-sym.d: New test. - * testsuite/gas/msp430/high-data-bss-sym.s: New. - * testsuite/gas/msp430/msp430.exp: Add -mdata-region tests. - -2017-08-23 Alexander Fedotov - Edmar Wienskoski - - * config/tc-sparc.c (tc_gen_reloc): Convert BFD_RELOC_8/16/32/64 - into the corresponding BFD_RELOC_8/16/32/64_PCREL relocation - when requested. - * config/tc-sparc.h (DIFF_EXPR_OK): Define to enable PC-relative - diff relocations. - (TC_FORCE_RELOCATION_SUB_LOCAL): Define to ensure only supported - relocations are made PC-relative. - (CFI_DIFF_EXPR_OK): Define to 0 to force BFD_RELOC_32_PCREL to - be used directly, since otherwise BFD_RELOC_SPARC_UA32 will be - used for .eh_frame which cannot in general be converted to a - BFD_RELOC_32_PCREL due to alignment requirements. - -2017-08-22 Alan Modra - - * testsuite/gas/ppc/lsp-checks.d: Assemble with -a32. - * testsuite/gas/ppc/lsp.d: Likewise. - -2017-08-21 Alexander Fedotov - Edmar Wienskoski - - * config/tc-aarch64.c (REGDEF_ALIAS): Define - (reg_names): Update for ip0, ip1, fp, lr to use REGDEF_ALIAS - * doc/c-aarch64.texi: Update documentation on .req. - * testsuite/gas/diagnostic.s: Update - * testsuite/gas/diagnostic.l: Likewise - * testsuite/gas/register_aliases.s: New file. - * testsuite/gas/register_aliases.d: New file. - -2017-08-11 H.J. Lu - - PR gas/21667 - * read.c (pseudo_set): Update error message for alias of common - symbol. - * write.c (write_object_file): Disallow both local and global - aliases of common symbol. - * testsuite/gas/elf/common5a.d: New file. - * testsuite/gas/elf/common5a.l: Likewise. - * testsuite/gas/elf/common5a.s: Likewise. - * testsuite/gas/elf/common5b.d: Likewise. - * testsuite/gas/elf/common5b.l: Likewise. - * testsuite/gas/elf/common5b.s: Likewise. - * testsuite/gas/elf/common5c.d: Likewise. - * testsuite/gas/elf/common5c.s: Likewise. - * testsuite/gas/elf/common5d.d: Likewise. - * testsuite/gas/elf/common5d.s: Likewise. - * testsuite/gas/elf/elf.exp: Run common5a, common5b, common5c - and common5d. - -2017-08-10 Nick Clifton - - PR gas/21939 - * config/obj-macho.c (obj_mach_o_set_indirect_symbols): Increase - size of indirect_syms array so that it is large enough to hold - every symbol if necessary. - -2017-08-09 Jiong Wang - - * config/tc-arm.c (do_crc32_1): Remove warning on REG_SP for thumb_mode. - * testsuite/gas/arm/crc32-armv8-a-bad.d: Update exepcted result. - * testsuite/gas/arm/crc32-armv8-r-bad.d: Likewise. - * testsuite/gas/arm/crc32-armv8-a.d: Likewise. - * testsuite/gas/arm/crc32-armv8-r.d: Likewise. - * testsuite/gas/arm/crc32-armv8-ar-bad.s: Update test case. - * testsuite/gas/arm/crc32-armv8-ar.s: Likewise. - * testsuite/gas/arm/crc32-bad.l: Update expected error message. - -2017-08-02 Nick Clifton - - * testsuite/gas/all/gas.exp: Add am33 to the skip lists of tests - passed over by the mn10300 target. - * testsuite/gas/elf/elf.exp: Likewise. - * testsuite/gas/elf/dwarf2-11.d: Correct skip of am33 target. - * testsuite/gas/elf/dwarf2-12.d: Likewise. - * testsuite/gas/elf/dwarf2-13.d: Likewise. - * testsuite/gas/elf/dwarf2-14.d: Likewise. - * testsuite/gas/elf/dwarf2-15.d: Likewise. - * testsuite/gas/elf/dwarf2-16.d: Likewise. - * testsuite/gas/elf/dwarf2-17.d: Likewise. - * testsuite/gas/elf/dwarf2-18.d: Likewise. - * testsuite/gas/elf/dwarf2-5.d: Likewise. - * testsuite/gas/elf/dwarf2-6.d: Likewise. - * testsuite/gas/elf/dwarf2-7.d: Likewise. - -2017-07-31 John David Anglin - - * config/tc-hppa.c (pa_ip): Clear `d' bit in branch on bit instructions - with a double-word condition and a fixed bit position greater than 31. - -2017-07-28 Andrew Waterman - - * config/tc-riscv.c (riscv_set_arch): Handle the Q subset like - all other subsets. - Obviate use-after-free. - -2017-07-25 Nick Clifton - - PR 21739 - * testsuite/gas/arc/add_s-err.s: Update expected error message. - -2017-07-24 Nick Clifton - - PR 21809 - * config/tc-aarch64.c (aarch64_init_frag): Do not set a mapping - state for frags in debug sections. - * config/tc-arm.c (arm_init_frag): Likewise. - -2017-07-24 Hans-Peter Nilsson - - * dwarf2dbg.c (dwarf2dbg_final_check): Rename local variable exp - from expr. - -2017-07-21 Andreas Krebbel - - * config/tc-s390.c (s390_parse_cpu): Add z14 as alternate CPU - name. - * doc/as.texinfo: Add z14 to CPU string list. - * doc/c-s390.texi: Likewise. - -2017-07-21 Alexandre Oliva - - * dwarf2dbg.c (unused): Check offset of next in struct line_entry. - (current): Initialize view. - (force_reset_view, view_assert_failed): New variables. - (reverse_line_entry_list): New function. - (set_or_check_view): Likewise. - (dwarf2_gen_line_info_1): Call it. - (dwarf2_where): Set view to NULL. - (dwarf2_emit_insn): Return early when called before first file. - (dwarf2_directive_loc): Add view support. Emit insn - immediately when view option is given. - (process_entries): Avoid set_address to reset view when a known - address change already implies the view reset. - (dwarf2dbg_final_check): New function. - * dwarf2dbg.h (struct dwarf2_line_info): Add view. - (dwarf2dbg_final_check): Declare. - * read.c (s_leb128): Parse expression as deferred. - * write.c (write_object_file): Check pending view asserts. - (cvt_frag_to_fill): Complain about undefined leb128 operand. - * doc/as.texinfo (.loc): Document view support. - * NEWS: Mention the new feature. - * testsuite/gas/all/gas.exp: Run sleb128-9. - * testsuite/gas/all/sleb128-9.d: New. - * testsuite/gas/all/sleb128-9.l: New. - * testsuite/gas/all/sleb128-9.s: New. - * testsuite/gas/elf/dwarf2-1.d: Add nonzero views. - * testsuite/gas/elf/dwarf2-2.d: Likewise. - * testsuite/gas/elf/dwarf2-5.d: New. - * testsuite/gas/elf/dwarf2-5.s: New. - * testsuite/gas/elf/dwarf2-6.d: New. - * testsuite/gas/elf/dwarf2-6.s: New. - * testsuite/gas/elf/dwarf2-7.d: New. - * testsuite/gas/elf/dwarf2-7.s: New. - * testsuite/gas/elf/dwarf2-8.d: New. - * testsuite/gas/elf/dwarf2-8.l: New. - * testsuite/gas/elf/dwarf2-8.s: New. - * testsuite/gas/elf/dwarf2-9.d: New. - * testsuite/gas/elf/dwarf2-9.l: New. - * testsuite/gas/elf/dwarf2-9.s: New. - * testsuite/gas/elf/dwarf2-10.d: New. - * testsuite/gas/elf/dwarf2-10.l: New. - * testsuite/gas/elf/dwarf2-10.s: New. - * testsuite/gas/elf/dwarf2-11.d: New. - * testsuite/gas/elf/dwarf2-11.s: New. - * testsuite/gas/elf/dwarf2-12.d: New. - * testsuite/gas/elf/dwarf2-12.s: New. - * testsuite/gas/elf/dwarf2-13.d: New. - * testsuite/gas/elf/dwarf2-13.s: New. - * testsuite/gas/elf/dwarf2-14.d: New. - * testsuite/gas/elf/dwarf2-14.s: New. - * testsuite/gas/elf/dwarf2-15.d: New. - * testsuite/gas/elf/dwarf2-15.s: New. - * testsuite/gas/elf/dwarf2-16.d: New. - * testsuite/gas/elf/dwarf2-16.s: New. - * testsuite/gas/elf/dwarf2-17.d: New. - * testsuite/gas/elf/dwarf2-17.s: New. - * testsuite/gas/elf/dwarf2-18.d: New. - * testsuite/gas/elf/dwarf2-18.s: New. - * testsuite/gas/elf/elf.exp: Run dwarf2-5..18 tests. - * testsuite/gas/i386/dw2-compress-1.d: Add nonzero views. - * testsuite/gas/i386/dw2-compressed-1.d: Likewise. - * testsuite/gas/i386/ilp32/lns/lns-duplicate.d: Likewise. - * testsuite/gas/lns/lns-big-delta.d: Likewise. - * testsuite/gas/lns/lns-duplicate.d: Likewise. - * testsuite/gas/mips/loc-swap-2.d: Likewise. - * testsuite/gas/mips/loc-swap-3.d: Likewise. - * testsuite/gas/mips/loc-swap.d: Likewise. - * testsuite/gas/mips/micromips@loc-swap-2.d: Likewise. - * testsuite/gas/mips/micromips@loc-swap.d: Likewise. - * testsuite/gas/mips/mips16@loc-swap-2.d: Likewise. - * testsuite/gas/mips/mips16@loc-swap.d: Likewise. - * testsuite/gas/mips/mips16e@loc-swap.d: Likewise. - -2017-07-19 Claudiu Zissulescu - - * testsuite/gas/arc/jli-1.d: New file. - * testsuite/gas/arc/jli-1.s: Likewise. - * testsuite/gas/arc/taux.d: Update for jli_base. - -2017-07-19 Tristan Gingold - - * as.c (start_sbrk): Remove. - (main): Remove assignment. - (dump_statistics): Remove display of data size. - -2017-07-19 Tristan Gingold - - * testsuite/gas/pe/seh-x64-err-2.s: New test. - * testsuite/gas/pe/seh-x64-err-2.l: New stderr output. - * testsuite/gas/pe/pe.exp: Add test. - * config/obj-coff-seh.c (obj_coff_seh_do_final): Don't try to end - seh part. - -2017-07-18 Nick Clifton - - PR 21775 - * config/tc-arm.c: Fix spelling typos. - * config/tc-mips.c: Likewise. - * config/tc-msp430.c: Likewise. - * config/tc-sh64.c: Likewise. - * config/tc-tic4x.c: Likewise. - * ecoff.c: Likewise. - * testsuite/gas/arm/ldr-bad.l: Likewise. - * testsuite/gas/arm/ldr-t-bad.l: Likewise. - * testsuite/gas/tic54x/opcodes.s: Likewise. - * testsuite/gas/msp340/errata_warns.l: Likewise. - -2017-07-18 Nick Clifton - - * po/uk.po: Updated Ukranian translation. - -2017-07-17 Georg-Johann Lay - - PR 21472 - * config/tc-avr.c (mcu_types): Add entries for: attiny212, - attiny214, attiny412, attiny414, attiny814, attiny1614, - attiny1616, attiny1617, attiny3214, attiny3216, attiny3217. - (md_show_usage): Adjust doc for "avrxmega3". - * doc/c-avr.texi (AVR options) [-mmcu=]: Adjust doc for avrxmega3. - Add MCUs: attiny212, attiny214, attiny412, attiny414, attiny416, - attiny417, attiny814, attiny816, attiny817, attiny1614, - attiny1616, attiny1617, attiny3214, attiny3216, attiny3217. - -2017-07-13 Jim Wilson - - * config/tc-arch64.c (aarch64_cpus): Add AARCH64_FEATURE_RDMA to - falkor and qdf24xx entries. - -2017-07-12 Alan Modra - - * po/es.po: Update from translationproject.org/latest/gas/. - * po/fi.po: Likewise. - * po/fr.po: Likewise. - * po/id.po: Likewise. - * po/ja.po: Likewise. - * po/ru.po: Likewise. - * po/sv.po: Likewise. - * po/tr.po: Likewise. - * po/uk.po: Likewise. - * po/zh_CN.po: Likewise. - -2017-07-12 Nick Clifton - - Fix compile time warnings using gcc 7.1.1. - * config/tc-pru.c (md_assemble): Add continue statement after - handling 'E' operand character. - * config/tc-v850.c (md_assemble): Initialise the 'insn' variable. - -2017-07-05 James Greenhalgh - - * config/tc-arm.c (arm_cpus): Add Cortex-A55 and Cortex-A75. - * doc/c-arm.texi (-mcpu): Document Cortex-A55 and Cortex-A75. - -2017-07-05 Borislav Petkov - - * testsuite/gas/i386/opcode.s: Add tests for ModRM.reg == 6 variants. - * testsuite/gas/i386/opcode.d: ditto. - * testsuite/gas/i386/x86-64-opcode.s: Add x86_64 variants too. - * testsuite/gas/i386/x86-64-opcode.d: ditto. - -2017-07-04 Ramana Radhakrishnan - - * config/tc-arm.c (arm_regs): Add MVFR2. - (do_vmrs): Constraint for MVFR2 and armv8. - (do_vmsr): Likewise. - * testsuite/gas/arm/armv8-a+fp.d: Update. - * testsuite/gas/arm/armv8-ar+fp.s: Likewise. - * testsuite/gas/arm/armv8-r+fp.d: Likewise. - * testsuite/gas/arm/vfp-bad.s: Likewise. - * testsuite/gas/arm/vfp-bad.l: Likewise. - -2017-07-04 Tristan Gingold - - * configure: Regenerate. - -2017-07-04 Tristan Gingold - - * NEWS: Add marker for 2.29. - -2017-07-03 Alan Modra - - * testsuite/gas/elf/symver.d: Don't run on hppa64-hpux. - -2017-06-30 Maciej W. Rozycki - - * config/tc-mips.c (md_convert_frag): Use a switch on the - microMIPS relaxation type rather than a chain of conditionals. - -2017-06-30 Maciej W. Rozycki - - * config/tc-mips.c (md_convert_frag): Rewrite `fix_new_exp' - calls in terms of `fix_new'. - -2017-06-30 Maciej W. Rozycki - - * config/tc-mips.c (md_convert_frag): Don't make a helper - expression symbol for `fix_new_exp' called with a non-zero - offset. - * testsuite/gas/mips/relax-offset.d: New test. - * testsuite/gas/mips/mips1@relax-offset.d: New test. - * testsuite/gas/mips/r3000@relax-offset.d: New test. - * testsuite/gas/mips/r3900@relax-offset.d: New test. - * testsuite/gas/mips/micromips@relax-offset.d: New test. - * testsuite/gas/mips/relax-offset.l: New stderr output. - * testsuite/gas/mips/relax-offset.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-06-30 Georg-Johann Lay - - PR gas/21683 - * doc/c-avr.texi (AVR Options) <-mgcc-isr>: Document it. - (AVR Pseudo Instructions): New node. - * config/tc-avr.h (md_pre_output_hook): Define to avr_pre_output_hook. - (md_undefined_symbol): Define to avr_undefined_symbol. - (avr_pre_output_hook, avr_undefined_symbol): New protos. - * config/tc-avr.c (struc-symbol.h): Include it. - (ISR_CHUNK_Done, ISR_CHUNK_Prologue, ISR_CHUNK_Epilogue): New enums. - (avr_isr, avr_gccisr_opcode) - (avr_no_sreg_hash, avr_no_sreg): New static variables. - (avr_opt_s) : Add field. - (avr_opt): Add initializer for have_gccisr. - (enum options) : Add enum. - (md_longopts) <"mgcc-isr">: Add entry. - (md_show_usage): Document -mgcc-isr. - (md_parse_option) [OPTION_HAVE_GCCISR]: Handle it. - (md_undefined_symbol): Remove. - (avr_undefined_symbol, avr_pre_output_hook): New fuctions. - (md_begin) : Initialize them. - (avr_operand) : Add argument and set *pregno if function - is called for a register constraint. - [N]: Handle constraint. - (avr_operands) : Pass 5th parameter to calls. - [avr_opt.have_gccisr]: Call avr_update_gccisr. Call - avr_gccisr_operands instead of avr_operands. - (avr_update_gccisr, avr_emit_insn, avr_patch_gccisr_frag) - (avr_gccisr_operands, avr_check_gccisr_done): New static functions. - * testsuite/gas/avr/gccisr-01.d: New test. - * testsuite/gas/avr/gccisr-01.s: New test. - * testsuite/gas/avr/gccisr-02.d: New test. - * testsuite/gas/avr/gccisr-02.s: New test. - * testsuite/gas/avr/gccisr-03.d: New test. - * testsuite/gas/avr/gccisr-03.s: New test. - -2017-06-30 Maciej W. Rozycki - - * config/tc-mips.c (match_float_constant): Update description. - (match_operand): Likewise. - -2017-06-30 Andrew Bennett - Maciej W. Rozycki - - * config/tc-mips.c (mips_ases): Add microMIPS XPA support. - * testsuite/gas/mips/micromips@xpa.d: New test. - * testsuite/gas/mips/mips.exp: Run the new test. Enable - `xpa-virt-err' test for `micromips'. - -2017-06-30 Andrew Bennett - Maciej W. Rozycki - - * testsuite/gas/mips/micromips@r5.d: New test. - * testsuite/gas/mips/mips.exp: Run the new test. - -2017-06-30 Maciej W. Rozycki - Andrew Bennett - - * config/tc-mips.c (mips_set_ase): Handle the ASE_XPA_VIRT flag. - * testsuite/gas/mips/xpa.d: Remove `xpa' from `-M' in `objdump' - flags. Add `-mvirt' to `as' flags. - * testsuite/gas/mips/xpa-err.d: New test. - * testsuite/gas/mips/xpa-virt-err.d: New test. - * testsuite/gas/mips/xpa-err.l: New stderr output. - * testsuite/gas/mips/xpa-virt-err.l: New stderr output. - * testsuite/gas/mips/xpa-err.s: New test source. - * testsuite/gas/mips/xpa-virt-err.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-06-29 Maciej W. Rozycki - - * testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d: Adjust for the - ASE_MIPS16E2_MT flag disassembler fix. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e2-mt-sub.d: - Likewise. - -2017-06-29 Maciej W. Rozycki - - * config/tc-mips.c (mips_set_ase): Clear the ASE_MIPS16E2_MT - flag before recalculating. - * testsuite/gas/mips/mips16e2-mt-err.d: New test. - * testsuite/gas/mips/mips16e2-mt-err.l: New stderr output. - * testsuite/gas/mips/mips16e2-mt-err.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new test. - -2017-06-28 Tamar Christina - - * config/tc-aarch64.c (aarch64_reg_parse_32_64): Accept 4B. - (aarch64_features): Added dotprod. - * doc/c-aarch64.texi: Added dotprod. - * testsuite/gas/aarch64/dotproduct.d: New. - * testsuite/gas/aarch64/dotproduct.s: New. - -2017-06-28 Jiong Wang - - * config/tc-arm.c (fpu_neon_ext_dotprod): New variable. - (neon_scalar_for_mul): Improve comments. - (do_neon_dotproduct): New function to encode Dot Product instructions. - (do_neon_dotproduct_s): Wrapper function for signed Dot Product - instructions. - (do_neon_dotproduct_u): Wrapper function for unsigned Dot Product - instructions. - (insns): New entries for vsdot and vudot. - (arm_extensions): New entry for "dotprod". - * doc/c-arm.texi: Document new "dotprod" extension. - * testsuite/gas/arm/dotprod.s: New test source. - * testsuite/gas/arm/dotprod-illegal.s: New test source. - * testsuite/gas/arm/dotprod.d: New test. - * testsuite/gas/arm/dotprod-thumb2.d: New test. - * testsuite/gas/arm/dotprod-illegal.d: New test. - * testsuite/gas/arm/dotprod-legacy-arch.d: New test. - * testsuite/gas/arm/dotprod-illegal.l: New error file. - * testsuite/gas/arm/dotprod-legacy-arch.l: New error file. - -2017-06-28 Maciej W. Rozycki - - * testsuite/gas/mips/elf_mach_interaptiv-mr2.d: New test. - * testsuite/gas/mips/save-err.d: New test. - * testsuite/gas/mips/save-sub.d: New test. - * testsuite/gas/mips/interaptiv-mr2@save.d: New test. - * testsuite/gas/mips/mips1@save-sub.d: New test. - * testsuite/gas/mips/mips2@save-sub.d: New test. - * testsuite/gas/mips/mips3@save-sub.d: New test. - * testsuite/gas/mips/mips4@save-sub.d: New test. - * testsuite/gas/mips/mips5@save-sub.d: New test. - * testsuite/gas/mips/mips32@save-sub.d: New test. - * testsuite/gas/mips/mips64@save-sub.d: New test. - * testsuite/gas/mips/mips16@save-sub.d: New test. - * testsuite/gas/mips/mips16e@save-sub.d: New test. - * testsuite/gas/mips/r3000@save-sub.d: New test. - * testsuite/gas/mips/r3900@save-sub.d: New test. - * testsuite/gas/mips/r4000@save-sub.d: New test. - * testsuite/gas/mips/vr5400@save-sub.d: New test. - * testsuite/gas/mips/interaptiv-mr2@save-sub.d: New test. - * testsuite/gas/mips/sb1@save-sub.d: New test. - * testsuite/gas/mips/octeon2@save-sub.d: New test. - * testsuite/gas/mips/octeon3@save-sub.d: New test. - * testsuite/gas/mips/xlr@save-sub.d: New test. - * testsuite/gas/mips/r5900@save-sub.d: New test. - * testsuite/gas/mips/mips16e2-copy.d: New test. - * testsuite/gas/mips/mips16e2-copy-err.d: New test. - * testsuite/gas/mips/save.d: Remove `MIPS16e' from the `name' - option. Adjust for trailing padding change. - * testsuite/gas/mips/mips16e2-copy-err.l: New stderr output. - * testsuite/gas/mips/save-sub.s: New test source. - * testsuite/gas/mips/mips16e2-copy.s: New test source. - * testsuite/gas/mips/mips16e2-copy-err.s: New test source. - * testsuite/gas/mips/save.s: Update description, change trailing - padding and remove trailing white space. - * testsuite/gas/mips/mips.exp: Expand `save' and `save-err' - tests across the regular MIPS interAptiv MR2 architecture. Run - the new tests. - -2017-06-28 Maciej W. Rozycki - - * testsuite/gas/mips/mips.exp (interaptiv-mr2): New architecture. - (mips16e2-interaptiv-mr2): Likewise. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.d: New - test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.d: - New test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.d: - New test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.d: - New test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.d: - New test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64.d: New - test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.d: New - test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.d: New - test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.d: - New test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e2-mt-sub.d: - New test. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-asmacro.d: - New test. - * testsuite/gas/mips/interaptiv-mr2@mcu.d: New test. - * testsuite/gas/mips/interaptiv-mr2@isa-override-1.d: New test. - * testsuite/gas/mips/interaptiv-mr2@isa-override-2.d: New test. - * testsuite/gas/mips/attr-gnu-4-5.d: Ignore any number of ASE - flag lines present rather than just one. - * testsuite/gas/mips/attr-gnu-4-6.d: Likewise. - * testsuite/gas/mips/attr-gnu-4-7.d: Likewise. - * testsuite/gas/mips/attr-none-o32-fp64-nooddspreg.d: Likewise. - * testsuite/gas/mips/attr-none-o32-fp64.d: Likewise. - * testsuite/gas/mips/attr-none-o32-fpxx.d: Likewise. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.l: New - stderr output. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.l: - New stderr output. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.l: - New stderr output. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.l: - New stderr output. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.l: - New stderr output. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.l: New - stderr output. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.l: New - stderr output. - * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.l: - New stderr output. - * testsuite/gas/mips/interaptiv-mr2@isa-override-1.l: New stderr - output. - * testsuite/gas/mips/interaptiv-mr2@isa-override-2.l: New stderr - output. - -2017-06-28 Maciej W. Rozycki - Matthew Fortune - - * config/tc-mips.c (validate_mips_insn): Handle - OP_SAVE_RESTORE_LIST specially. - (mips_encode_save_restore, mips16_encode_save_restore): New - functions. - (match_save_restore_list_operand): Factor out SAVE/RESTORE - operand insertion into the instruction word or halfword to these - new functions. - (mips_cpu_info_table): Add "interaptiv-mr2" entry. - - * doc/c-mips.texi (MIPS Options): Add `interaptiv-mr2' to the - `-march=' argument list. - -2017-06-27 Maciej W. Rozycki - - * testsuite/gas/mips/mips16e-save.d: Rename to... - * testsuite/gas/mips/save.d: ... this. - * testsuite/gas/mips/mips16e-save-err.d: Update the - `error-output' option and rename to... - * testsuite/gas/mips/save-err.d: ... this. - * testsuite/gas/mips/mips16e-save-err.l: Rename to... - * testsuite/gas/mips/save-err.l: ... this. - * testsuite/gas/mips/mips16e-save.s: Rename to... - * testsuite/gas/mips/save.s: ... this. - * testsuite/gas/mips/mips16e-save-err.s: Rename to... - * testsuite/gas/mips/save-err.s: ... this. - * testsuite/gas/mips/mips.exp: Rename `mips16e-save' and - `mips16e-save-err' invocations to `save' and `save-err' - respectively and reorder these tests away from MIPS16 tests. - -2017-06-27 Maciej W. Rozycki - - * testsuite/gas/mips/mips16e-save.d: Remove `-mmips:isa32 - -mmips:16' from `objdump' flags and `-march=mips32 -mips16' from - `as' flags. - * testsuite/gas/mips/mips16e-save-err.d: Remove `-march=mips32' - from `as' flags. - * testsuite/gas/mips/mips16e-save.s: Remove the `.set mips16' - pseudo-op. - * testsuite/gas/mips/mips16e-save-err.s: Likewise. - * testsuite/gas/mips/mips.exp: Run SAVE/RESTORE tests across all - MIPS16e architectures. - -2017-06-27 Maciej W. Rozycki - - * testsuite/gas/mips/mips16e-save-err.d: New test. - * gas/testsuite/gas/mips/mips.exp: Fold `mips16e-save-err' list - test into the new test. - -2017-06-27 Maciej W. Rozycki - - * testsuite/gas/mips/mips16e-save.d: Capitalize the `name' - option. - -2017-06-26 Kuan-Lin Chen - - * config/tc-riscv.c (md_apply_fix) [BFD_RELOC_32]: Convert to a - R_RISCV_32_PCREL relocation. - -2017-06-26 H.J. Lu - - PR gas/21661 - * config/obj-elf.c (obj_elf_symver): Don't allow .symver with - common symbol. - (elf_frob_symbol): Likewise. - * testsuite/gas/elf/elf.exp: Run pr21661. - * testsuite/gas/elf/pr21661.d: New file. - * testsuite/gas/elf/pr21661.s: Likewise. - -2017-06-26 Nick Clifton - - * config/tc-arm.c (fpu_any): Only define for ELF based targets. - -2017-06-26 Claudiu Zissulescu - - * /config/tc-arc.c (is_br_jmp_insn_p): Update macro with known - instructions to be accounted as jumps. - (assemble_insn): Check for limms into the delay slots. Emit an - error if so. - * testsuite/gas/arc/asm-errors-3.d: New file. - * testsuite/gas/arc/asm-errors-3.err: Likewise. - * testsuite/gas/arc/asm-errors-3.s: Likewise. - -2017-06-26 Thomas Preud'homme - - * NEWS: Mention support of ARM Cortex-R52 processor. - * config/tc-arm.c (arm_cpus): Add entry for ARM Cortex-R52 processor. - * doc/c-arm.texi: Mention support for -mcpu=cortex-r52. - -2017-06-24 Thomas Preud'homme - - * NEWS: Mention support for ARMv8-R architecture. - * config/tc-arm.c (arm_archs): Add entry for ARMv8-R. - (arm_extensions): Restrict pan, ras and rdma extension to - ARMv8-A and make crypto, fp and simd extensions available to - ARMv8-R. - (cpu_arch_ver): Add entry for ARMv8-R. - (aeabi_set_public_attributes): Update gas_assert for Tag_DIV_use - logic. - * testsuite/gas/arm/armv8-a+fp.s: Rename into ... - * testsuite/gas/arm/armv8-ar+fp.s: This. Remove .arch directive. - * testsuite/gas/arm/armv8-a+fp.d: Specify source to assemble and - architecture to assemble for. - * testsuite/gas/arm/armv8-r+fp.d: New. - * testsuite/gas/arm/armv8-a+simd.s: Rename into ... - * testsuite/gas/arm/armv8-ar+simd.s: This. Remove .arch directive. - * testsuite/gas/arm/armv8-a+simd.d: Specify source to assemble and - architecture to assemble for. - * testsuite/gas/arm/armv8-r+simd.d: New. - * testsuite/gas/arm/armv8-a-bad.s: Rename into ... - * testsuite/gas/arm/armv8-ar-bad.s: This. Remove .arch directive. - * testsuite/gas/arm/armv8-a-bad.l: Rename into ... - * testsuite/gas/arm/armv8-ar-bad.l: This. Decrement line number by 1. - * testsuite/gas/arm/armv8-a-bad.d: Specify source to assemble, - architecture to assemble for and adjust error output file. - * testsuite/gas/arm/armv8-r-bad.d: New. - * testsuite/gas/arm/armv8-a-barrier.s: Rename into ... - * testsuite/gas/arm/armv8-ar-barrier.s: This. - * testsuite/gas/arm/armv8-a-barrier-arm.d: Adjust source. - * testsuite/gas/arm/armv8-a-barrier-thumb.d: Likewise. - * testsuite/gas/arm/armv8-r-barrier-arm.d: New. - * testsuite/gas/arm/armv8-r-barrier-thumb.d: New. - * testsuite/gas/arm/armv8-a-it-bad.s: Rename into ... - * testsuite/gas/arm/armv8-ar-it-bad.s: This. Remove .arch directive. - * testsuite/gas/arm/armv8-a-it-bad.l: Rename into ... - * testsuite/gas/arm/armv8-ar-it-bad.l: This. Decrement line number - by 1. - * testsuite/gas/arm/armv8-a-it-bad.d: Specify source to assemble, - architecture to assemble for and adjust error output file. - * testsuite/gas/arm/armv8-r-it-bad.d: New. - * testsuite/gas/arm/armv8-a.s: Rename into ... - * testsuite/gas/arm/armv8-ar.s: This. Remove .arch directive. - * testsuite/gas/arm/armv8-a.d: Specify source to assemble and - architecture to assemble for. - * testsuite/gas/arm/armv8-r.d: New. - * testsuite/gas/arm/attr-march-armv8-r+crypto.d: New. - * testsuite/gas/arm/attr-march-armv8-r+fp.d: New. - * testsuite/gas/arm/attr-march-armv8-r+simd.d: New. - * testsuite/gas/arm/attr-march-armv8-r.d: New. - * testsuite/gas/arm/crc32.s: Rename into ... - * testsuite/gas/arm/crc32-armv8-ar.s: This. - * testsuite/gas/arm/crc32.d: Rename into ... - * testsuite/gas/arm/crc32-armv8-a.d: This. Specify source to assemble. - * testsuite/gas/arm/crc32-armv8-r.d: New. - * testsuite/gas/arm/crc32-bad.s: Rename into ... - * testsuite/gas/arm/crc32-armv8-ar-bad.s: This. - * testsuite/gas/arm/crc32-bad.d: Rename into ... - * testsuite/gas/arm/crc32-armv8-a-bad.d: This. Specify source to - assemble. - * testsuite/gas/arm/crc32-armv8-r-bad.d: New. - * testsuite/gas/arm/mask_1.s: Rename into ... - * testsuite/gas/arm/mask_1-armv8-ar.s: This. - * testsuite/gas/arm/mask_1.d: Rename into ... - * testsuite/gas/arm/mask_1-armv8-a.d: This. Specify source to - assemble. - * testsuite/gas/arm/mask_1-armv8-r.d: new. - -2017-06-24 Thomas Preud'homme - - * config/tc-arm.c (arm_ext_v6m): Delete. - (arm_ext_v7m): Delete. - (arm_ext_m): Remove ARM_EXT_OS from the set of feature defined M - profile. - (arm_arch_v6m_only): Delete. - (do_t_swi): Remove special case for ARMv6S-M. - (md_assemble): Display error message previously in do_t_swi when - SVC is not available. - (insns): Guard swi and svc by arm_ext_os for Thumb mode. - (aeabi_set_public_attributes): Remove special case for ARMv6S-M. - -2017-05-11 Andrew Waterman - - * config/tc-riscv.c (riscv_ip): Changes as_warn to as_bad for improper - shift amounts. - -2017-06-22 Nick Clifton - - * config/tc-arm.c (arm_ext_v7m): Add ATTRIBUTE_UNUSED. - -2017-06-21 Thomas Preud'homme - - * config/tc-arm.c (fpu_any): Defined from FPU_ANY. - (cpu_arch_ver): Add all architectures and sort by release date. - (have_ext_for_needed_feat_p): New. - (get_aeabi_cpu_arch_from_fset): New. - (aeabi_set_public_attributes): Call above function to determine - Tag_CPU_arch and Tag_CPU_arch_profile values. Adapt Tag_ARM_ISA_use - and Tag_THUMB_ISA_use selection logic to check absence of feature bit - accordingly. - * testsuite/gas/arm/attr-march-armv1.d: Fix expected Tag_CPU_arch build - attribute value. - * testsuite/gas/arm/attr-march-armv2.d: Likewise. - * testsuite/gas/arm/attr-march-armv2a.d: Likewise. - * testsuite/gas/arm/attr-march-armv2s.d: Likewise. - * testsuite/gas/arm/attr-march-armv3.d: Likewise. - * testsuite/gas/arm/attr-march-armv3m.d: Likewise. - * testsuite/gas/arm/pr12198-2.d: Likewise. - -2017-06-21 H.J. Lu - - * testsuite/gas/i386/cet-intel.d: Updated. - * testsuite/gas/i386/cet.d: Likewise. - * testsuite/gas/i386/x86-64-cet-intel.d: Likewise. - * testsuite/gas/i386/x86-64-cet.d: Likewise. - * testsuite/gas/i386/cet.s: Update incsspd and setssbsy tests. - * testsuite/gas/i386/x86-64-cet.s: Likewise. - -2017-06-21 H.J. Lu - - * testsuite/gas/i386/cet-intel.d: Updated. - * testsuite/gas/i386/cet.d: Likewise. - * testsuite/gas/i386/x86-64-cet-intel.d: Likewise. - * testsuite/gas/i386/x86-64-cet.d: Likewise. - * testsuite/gas/i386/cet.s: Replace savessp with saveprevssp. - * testsuite/gas/i386/x86-64-cet.s: Likewise. - -2017-06-21 H.J. Lu - - * config/tc-i386.c (md_assemble): Update NOTRACK prefix check. - * testsuite/gas/i386/notrack-intel.d: Updated. - * testsuite/gas/i386/notrack.d: Likewise. - * testsuite/gas/i386/notrackbad.l: Likewise. - * testsuite/gas/i386/x86-64-notrack-intel.d: Likewise. - * testsuite/gas/i386/x86-64-notrack.d: Likewise. - * testsuite/gas/i386/x86-64-notrackbad.l: Likewise. - * testsuite/gas/i386/notrack.s: Add NOTRACK prefix tests with - memory indirect branch. - * testsuite/gas/i386/x86-64-notrack.s: Likewise. - * testsuite/gas/i386/notrackbad.s: Remove memory indirect branch - with NOTRACK prefix. - * testsuite/gas/i386/x86-64-notrackbad.s: Likewise. - -2017-06-20 Thomas Preud'homme - - * config/tc-arm.c (arm_extensions): New duplicate idiv entry to enable - Thumb division for ARMv7 architecture. - (arm_parse_extension): Document expected behavior for duplicate - entries. - (s_arm_arch_extension): Likewise. - * testsuite/gas/arm/forbid-armv7-idiv-ext.d: New test. - * testsuite/gas/arm/forbid-armv7-idiv-ext.l: New expected output for - above test. - -2017-06-21 Thomas Preud'homme - - * config/tc-arm.c (aeabi_set_public_attributes): Populate flags from - feature bits used or selected_cpu depending on whether a CPU was - selected by the user. - -2017-06-21 Thomas Preud'homme - - * config/tc-arm.c (aeabi_set_public_attributes): Test *mcpu_ext_opt to - decide whether to set Tag_DSP_extension build attribute value. Remove - now useless arm_arch variable. - -2017-06-21 Thomas Preud'homme - - * config/tc-arm.c (dyn_mcpu_ext_opt): New static variable. - (dyn_march_ext_opt): Likewise. - (md_begin): Copy extension feature bits alongside architecture ones. - Merge extensions feature bits in selected_cpu and cpu_variant if there - is some. - (arm_parse_extension): Pass architecture and extension feature bits in - separate parameters, with architecture bits being read only. Update - **opt_p directly rather than *ext_set and initialize it if needed. - (arm_parse_cpu): Stop merging architecture and extension feature bits - and instead use mcpu_cpu_opt and dyn_mcpu_ext_opt to memorize them - respectively. Adapt to change in parameters of arm_parse_extension. - (arm_parse_arch): Adapt to change in parameters of arm_parse_extension. - (aeabi_set_attribute_string): Make function static. - (arm_md_post_relax): New function. - (s_arm_cpu): Stop merging architecture and extension feature bits and - instead use mcpu_cpu_opt and dyn_mcpu_ext_opt to memorize them - respectively. Merge extension feature bits in cpu_variant - if there is any. - (s_arm_arch): Reset extension feature bit. Set selected_cpu from - *mcpu_cpu_opt and cpu_variant from selected_cpu and *mfpu_opt for - consistency with s_arm_cpu. - (s_arm_arch_extension): Update *dyn_mcpu_ext_opt rather than - selected_cpu, allocating it before hand if needed. Set selected_cpu - from it and then cpu_variant. - (s_arm_fpu): Merge *mcpu_ext_opt feature bits if any in cpu_variant. - * config/tc-arm.h (md_post_relax_hook): Set to arm_md_post_relax. - (aeabi_set_public_attributes): Delete external declaration. - (arm_md_post_relax): Declare externally. - -2017-06-21 Thomas Preud'homme - - * config/tc-arm.c (struct arm_cpu_option_table): New ext field. - (ARM_CPU_OPT): Add parameter to set new ext field and reorder canonical - name field just after the name field. - (arm_cpus): Move extension feature bit from value field to ext field, - reorder parameter according to changes in ARM_CPU_OPT and reindent. - (arm_parse_cpu): Point mcpu_cpu_opt to a bitfield merging the value and - ext field from the selected arm_cpus entry. - (s_arm_cpu): Likewise. - -2017-06-21 James Greenhalgh - - * config/tc-aarch64.c (aarch64_cpus): Add cortex-a55 and cortex-a75. - * doc/c-aarch64.texi (-mcpu): Document cortex-a55 and cortex-a75. - -2017-06-15 H.J. Lu - - PR binutils/21594 - * testsuite/gas/i386/mpx.s: Add 2 tests with invalid bnd - register. - * testsuite/gas/i386/x86-64-mpx.s: Likewise. - * testsuite/gas/i386/mpx.d: Updated. - * testsuite/gas/i386/x86-64-mpx.d: Likewise. - -2017-06-14 Max Filippov - - * config/tc-xtensa.c (density_supported, xtensa_fetch_width, - absolute_literals_supported): Leave definitions uninitialized. - (directive_state): Leave entries for directive_density and - directive_absolute_literals initialized to false. - (xg_init_global_config, xtensa_init): New functions. - * config/tc-xtensa.h (TARGET_BYTES_BIG_ENDIAN): Define as 0. - (HOST_SPECIAL_INIT): New definition. - (xtensa_init): New declaration. - -2017-06-07 Michael Collison - - * config/tc-aarch64.c (reg_entry_reg_names): Add IP0, - IP1, FP, and LR as register aliases of register 16, 17, 29 - and 30 respectively. - * testsuite/gas/aarch64/diagnostic.l: Remove diagnostic - prohibiting register 'lr' which is now an alias. - * testsuite/gas/aarch64/diagnostic.s: Remove instruction - utilizing register 'lr' which is now an alias. - -2017-06-06 Jiong Wang - - * config/tc-arm.c (reject_bad_reg): Allow REG_SP on ARMv8-A. - (parse_operands): Allow REG_SP for OP_oRRnpcsp and OP_RRnpcsp on - ARMv8-A. - (do_co_reg): Allow REG_SP for Rd on ARMv8-A. - (do_t_add_sub): Likewise. - (do_t_mov_cmp): Likewise. - (do_t_tb): Likewise. - * testsuite/gas/arm/ld-sp-warn.l: Delete the warning on REG_SP as Rt for - ldrsb. - * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d: New test. - * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.l: New test. - * testsuite/gas/arm/sp-pc-validations-bad-t.d: Specifies -march=armv7-a. - * testsuite/gas/arm/sp-pc-validations-bad-t.s: Remove ".arch armv7-a". - * testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.d: New test. - * testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.l: New test. - * testsuite/gas/arm/sp-usage-thumb2-relax-on-v8.d: New test. - * testsuite/gas/arm/sp-usage-thumb2-relax.s: New test. - * testsuite/gas/arm/strex-bad-t.d: Specifies -march=armv7-a. - -2017-06-05 Jim Wilson - - * config/tc-arm.c (arm_cpus): Delete falkor and qdf24xx entries. - * doc/c-arm.texi (-mcpu): Likewise. - -2017-05-30 Anton Kolesov - - * config/tc-arc.c (cpu_types): Include arc-cpu.def - -2017-05-23 H.J. Lu - - * gas/testsuite/gas/i386/notrackbad.l: Updated for non-ELF - targets. - * gas/testsuite/gas/i386/x86-64-notrackbad.l: Likewise. - -2017-05-23 Claudiu Zissulescu - - * config/tc-arc.c (md_apply_fix): Use as_bad_where. - (assemble_insn): Use as_bad. - -2017-05-22 H.J. Lu - - * config/tc-i386.c (REX_PREFIX): Changed to 7. - (NOTRACK_PREFIX): New. - (MAX_PREFIXES): Changed to 8. - (_i386_insn): Add notrack_prefix. - (PREFIX_GROUP): Add PREFIX_DS. - (add_prefix): Return PREFIX_DS for DS_PREFIX_OPCODE. - (md_assemble): Check if NOTRACK prefix is supported. - (parse_insn): Set notrack_prefix and issue an error for - other prefixes after NOTRACK prefix. - * testsuite/gas/i386/i386.exp: Run tests for NOTRACK prefix. - * testsuite/gas/i386/notrack-intel.d: New file. - * testsuite/gas/i386/notrack.d: Likewise. - * testsuite/gas/i386/notrack.s: Likewise. - * testsuite/gas/i386/notrackbad.l: Likewise. - * testsuite/gas/i386/notrackbad.s: Likewise. - * testsuite/gas/i386/x86-64-notrack-intel.d: Likewise. - * testsuite/gas/i386/x86-64-notrack.d: Likewise. - * testsuite/gas/i386/x86-64-notrack.s: Likewise. - * testsuite/gas/i386/x86-64-notrackbad.l: Likewise. - * testsuite/gas/i386/x86-64-notrackbad.s: Likewise. - -2017-05-22 Jiong Wang - - * configure.tgt: Set "arch" to "aarch64" if ${cpu} equals "aarch64". - Recognize the new triplet name aarch64*-linux-gnu_ilp32. - * configure.ac: Output DEFAULT_ARCH macro for AArch64. - * configure: Regenerate. - * config/tc-aarch64.h (aarch64_after_parse_args): New declaration. - (md_after_parse_args): New define. - * config/tc-aarch64.c (aarch64_abi_type): New enumeration - AARCH64_ABI_NONE. - (DEFAULT_ARCH): New define. - (aarch64_abi): Set default value to AARCH64_ABI_NONE. - (aarch64_after_parse_args): New function. - -2017-05-19 Jose E. Marchesi - - * config/tc-sparc.c (sparc_arch_table): Entries for `sparc6', - `v9m8' and `v8plusm8'. - (sparc_md_end): Handle SPARC_OPCODE_ARCH_M8. - (get_hwcap_name): Support the M8 hardware capabilities. - (sparc_ip): Handle new operand types. - * doc/c-sparc.texi (Sparc-Opts): Document -Av9m8, -Av8plusm8 and - -Asparc6, and the corresponding -xarch aliases. - * testsuite/gas/sparc/sparc6.s: New file. - * testsuite/gas/sparc/sparc6.d: Likewise. - * testsuite/gas/sparc/sparc6-diag.s: Likewise. - * testsuite/gas/sparc/sparc6-diag.l: Likewise. - * testsuite/gas/sparc/fpcmpshl.s: Likewise. - * testsuite/gas/sparc/fpcmpshl.d: Likewise. - * testsuite/gas/sparc/fpcmpshl-diag.s: Likewise. - * testsuite/gas/sparc/fpcmpshl-diag.l: Likewise. - * testsuite/gas/sparc/ldm-stm.s: Likewise. - * testsuite/gas/sparc/ldm-stm.d: Likewise. - * testsuite/gas/sparc/ldm-stm-diag.s: Likewise. - * testsuite/gas/sparc/ldm-stm-diag.l: Likewise. - * testsuite/gas/sparc/ldmf-stmf.s: Likewise. - * testsuite/gas/sparc/ldmf-stmf.d: Likewise. - * testsuite/gas/sparc/ldmf-stmf-diag.s: Likewise. - * testsuite/gas/sparc/ldmf-stmf-diag.l: Likewise. - * testsuite/gas/sparc/on.s: Likewise. - * testsuite/gas/sparc/on.d: Likewise. - * testsuite/gas/sparc/on-diag.s: Likewise. - * testsuite/gas/sparc/on-diag.l: Likewise. - * testsuite/gas/sparc/rle.s: Likewise. - * testsuite/gas/sparc/rle.d: Likewise. - * testsuite/gas/sparc/sparc.exp (gas_64_check): Run new tests. - * testsuite/gas/sparc/rdasr.s: Add test for RDENTROPY. - * testsuite/gas/sparc/rdasr.d: Likewise. - -2017-05-19 Jose E. Marchesi - - * testsuite/gas/sparc/call-relax.d: Support 32-bit targets. - * testsuite/gas/sparc/sparc.exp (gas_64_check): Use -64 to - run asi-bump-warn. - -2017-05-19 Georg-Johann Lay - - PR ld/21472 - * config/tc-avr.c (mcu_types): Add entries for: attiny416, - attiny417, attiny816, attiny817. - -2017-05-18 Alan Modra - - * config/tc-aarch64.c: Don't compare booleans against TRUE or FALSE. - * config/tc-hppa.c: Likewise. - * config/tc-mips.c: Likewise. - * config/tc-score7.c: Likewise. - -2017-05-16 Alan Modra - - * write.c (GENERIC_FORCE_RELOCATION_LOCAL): Define. - (TC_FORCE_RELOCATION_LOCAL): Use it. - (GENERIC_FORCE_RELOCATION_SUB_SAME): Define. - (TC_FORCE_RELOCATION_SUB_SAME): Use it. - * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL, - TC_FORCE_RELOCATION_SUB_SAME): Use GENERIC defines. - * config/tc-aarch64.h: Similarly. - * config/tc-avr.h: Similarly. - * config/tc-cris.h: Similarly. - * config/tc-i386.h: Similarly. - * config/tc-i960.h: Similarly. - * config/tc-ia64.h: Similarly. - * config/tc-microblaze.h: Similarly. - * config/tc-mips.h: Similarly. - * config/tc-msp430.h: Similarly. - * config/tc-nds32.h: Similarly. - * config/tc-pru.h: Similarly. - * config/tc-riscv.h: Similarly. - * config/tc-rl78.h: Similarly. - * config/tc-s390.h: Similarly. - * config/tc-sh.h: Similarly. - * config/tc-sh64.h: Similarly. - * config/tc-sparc.h: Similarly. - * config/tc-xtensa.h: Similarly. - * config/tc-mn10300.h: Similarly. - (GENERIC_FORCE_RELOCATION_LOCAL): Define. - * config/tc-msp430.c (msp430_force_relocation_local): Modify to - be addition to rather than replacement of standard - TC_FORCE_RELOCATION_LOCAL. - -2017-05-15 Nick Clifton - - PR gas/21458 - * config/tc-arm.c (do_adr): If the ADR involves a thumb function - symbol, ensure that the T bit will be set. - (do_adrl): Likewise. - (do_t_adr): Likewise. - * testsuite/gas/arm/pr21458.s: New test. - * testsuite/gas/arm/pr21458.d: New test driver. - -2017-05-15 Maciej W. Rozycki - - * testsuite/gas/mips/mips16-pcrel-1.d: Remove `-mips3' from `as' - flags. - * testsuite/gas/mips/mips16-pcrel-pic-1.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-n64-0.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-n64-1.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-reloc-4.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-reloc-5.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-reloc-6.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-reloc-7.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-4.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-5.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-6.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-7.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-9.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-pic-9.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-n32-8.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-n32-9.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-n64-8.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-addend-n64-9.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-2.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-3.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-6.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-7.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d: Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d: - Likewise. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d: - Likewise. - * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-2.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-2.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-3.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-6.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-7.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-2.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-3.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-6.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-7.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-8.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-9.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-8.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-9.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-8.d: - New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-9.d: - New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute.d: New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-1.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-2.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-3.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-4.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-5.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-6.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-7.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-4.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-6.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-4.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-6.d: New - test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-4.d: - New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-6.d: - New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-4.d: - New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-6.d: - New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-4.d: - New test. - * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-6.d: - New test. - * testsuite/gas/mips/mips16-pcrel-1.l: Adjust line numbers. - * testsuite/gas/mips/mips16-pcrel-1.s: Adjust for alignment - preservation between MIPS16 and MIPS16e2 code. - * testsuite/gas/mips/mips.exp: Run MIPS16 relaxation tests over - all MIPS16 architectures. - -2017-05-15 Maciej W. Rozycki - - * testsuite/gas/mips/mips16e2.d: New test. - * testsuite/gas/mips/mips16e2-mt.d: New test. - * testsuite/gas/mips/mips16e2-sub.d: New test. - * testsuite/gas/mips/mips16e2@mips16e2-sub.d: New test. - * testsuite/gas/mips/mips16e2-mt-sub.d: New test. - * testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d: New test. - * testsuite/gas/mips/mips16e2-hilo.d: New test. - * testsuite/gas/mips/mips16e2-hilo-n32.d: New test. - * testsuite/gas/mips/mips16e2-reloc-error.d: New test. - * testsuite/gas/mips/mips16e2-imm-error.d: New test. - * testsuite/gas/mips/elf_ase_mips16e2.d: New test. - * testsuite/gas/mips/elf_ase_mips16e2-2.d: New test. - * testsuite/gas/mips/elf-rel9-mips16e2.d: New test. - * testsuite/gas/mips/mips16e2-lui.d: New test. - * testsuite/gas/mips/mips16e2@mips32r2-sync.d: New test. - * testsuite/gas/mips/mips16e2@mips32r2-sync-1.d: New test. - * testsuite/gas/mips/mips16e2@lui-2.d: New test. - * testsuite/gas/mips/mips16e2-reloc-error.l: New stderr output. - * testsuite/gas/mips/mips16e2-imm-error.l: New stderr output. - * testsuite/gas/mips/mips16e2@lui-2.l: New stderr output. - * testsuite/gas/mips/mips16e2.s: New test source. - * testsuite/gas/mips/mips16e2-mt.s: New test source. - * testsuite/gas/mips/mips16e2-sub.s: New test source. - * testsuite/gas/mips/mips16e2-mt-sub.s: New test source. - * testsuite/gas/mips/mips16e2-hilo.s: New test source. - * testsuite/gas/mips/mips16e2-reloc-error.s: New test source. - * testsuite/gas/mips/mips16e2-imm-error.s: New test source. - * testsuite/gas/mips/elf-rel9-mips16e2.s: New test source. - * testsuite/gas/mips/mips16e2-lui.s: New test source. - * testsuite/gas/mips/mips.exp: Expand `mips32r2-sync', - `mips32r2-sync-1', `lui-1' and `lui-2' tests across MIPS16e2 - architectures. Run the new tests. - -2017-05-15 Maciej W. Rozycki - - * testsuite/gas/mips/mips.exp (run_dump_test_arch): Add - `mips16e2@' prefix. - (run_list_test_arch): Likewise. - (mips16e2-32, mips16e2-64): New architectures. - * testsuite/gas/mips/mips16e2-32@mips16-macro.d: New test. - * testsuite/gas/mips/mips16e2-32@mips16-macro-t.d: New test. - * testsuite/gas/mips/mips16e2-32@mips16-macro-e.d: New test. - * testsuite/gas/mips/mips16e2-32@mips16-insn-t.d: New test. - * testsuite/gas/mips/mips16e2-32@mips16-insn-e.d: New test. - * testsuite/gas/mips/mips16e2-32@mips16e-64.d: New test. - * testsuite/gas/mips/mips16e2-32@mips16-sub.d: New test. - * testsuite/gas/mips/mips16e2-32@mips16e-64-sub.d: New test. - * testsuite/gas/mips/mips16e2@relax-swap3.d: New test. - * testsuite/gas/mips/mips16-32@mips16-asmacro.d: Remove `source' - tag. Add `-I$srcdir/$subdir' to `as' flags. - * testsuite/gas/mips/mips16-64@mips16-asmacro.d: Likewise. - * testsuite/gas/mips/mips16e2-32@mips16-macro.l: New stderr - output. - * testsuite/gas/mips/mips16e2-32@mips16-macro-t.l: New stderr - output. - * testsuite/gas/mips/mips16e2-32@mips16-macro-e.l: New stderr - output. - * testsuite/gas/mips/mips16e2-32@mips16-insn-t.l: New stderr - output. - * testsuite/gas/mips/mips16e2-32@mips16-insn-e.l: New stderr - output. - * testsuite/gas/mips/mips16-sub.s: Add `.set nomips16e2'. - * testsuite/gas/mips/mips16e-sub.s: Likewise. - * testsuite/gas/mips/mips16e-64-sub.s: Likewise. - * testsuite/gas/mips/mips16-asmacro.s: Remove `.set mips32'. - * testsuite/gas/mips/mips16-32@mips16-asmacro.s: New test - source. - * testsuite/gas/mips/mips16-64@mips16-asmacro.s: New test - source. - -2017-05-15 Maciej W. Rozycki - Matthew Fortune - Andrew Bennett - - * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add `e2' flag. - (RELAX_MIPS16_E2): New macro. - (RELAX_MIPS16_PIC, RELAX_MIPS16_SYM32, RELAX_MIPS16_NOMACRO) - (RELAX_MIPS16_USER_SMALL, RELAX_MIPS16_USER_EXT) - (RELAX_MIPS16_DSLOT, RELAX_MIPS16_JAL_DSLOT) - (RELAX_MIPS16_EXTENDED, RELAX_MIPS16_MARK_EXTENDED) - (RELAX_MIPS16_CLEAR_EXTENDED, RELAX_MIPS16_ALWAYS_EXTENDED) - (RELAX_MIPS16_MARK_ALWAYS_EXTENDED) - (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED, RELAX_MIPS16_MACRO) - (RELAX_MIPS16_MARK_MACRO, RELAX_MIPS16_CLEAR_MACRO): Shift bits. - (mips16_immed_extend): New prototype. - (options): Add OPTION_MIPS16E2 and OPTION_NO_MIPS16E2 enum - values. - (md_longopts): Add "mmips16e2" and "mno-mips16e2" options. - (mips_ases): Add "mips16e2" entry. - (mips_set_ase): Handle MIPS16e2 ASE. - (insn_insert_operand): Explicitly handle immediates with MIPS16 - instructions that require 32-bit encoding. - (is_opcode_valid_16): Pass enabled ASE bitmask on to - `opcode_is_member'. - (validate_mips_insn): Explicitly handle immediates with MIPS16 - instructions that require 32-bit encoding. - (operand_reg_mask) : Add handler. - (match_reg28_operand): New function. - (match_operand) : Add handler. - (append_insn): Pass ASE_MIPS16E2 setting to RELAX_MIPS16_ENCODE. - (match_mips16_insn): Handle MIPS16 instructions that require - 32-bit encoding and `V' and `u' operand codes. - (mips16_ip): Allow any characters except from `.' in opcodes. - (mips16_immed_extend): Handle 9-bit immediates. Do not shuffle - immediates whose width is not one of these listed. - (md_estimate_size_before_relax): Handle MIPS16e2 relaxation. - (mips_relax_frag): Likewise. - (md_convert_frag): Likewise. - (mips_convert_ase_flags): Handle MIPS16e2 ASE. - - * doc/as.texinfo (Target MIPS options): Add `-mmips16e2' and - `-mno-mips16e2' options. - (-mmips16e2, -mno-mips16e2): New options. - * doc/c-mips.texi (MIPS Options): Add `-mmips16e2' and - `-mno-mips16e2' options. - (MIPS ASE Instruction Generation Overrides): Add `.set mips16e2' - and `.set nomips16e2'. - -2017-05-15 Maciej W. Rozycki - - * config/tc-mips.c (match_int_operand): Call - `match_out_of_range' before returning failure for 0x8000-0xffff - values conditionally allowed. - -2017-05-15 Maciej W. Rozycki - - * config/tc-mips.c (match_int_operand): Call - `match_not_constant' before returning failure for a non-constant - 16-bit immediate conditionally allowed. - -2017-05-15 Maciej W. Rozycki - - * config/tc-mips.c (match_const_int): Call `match_out_of_range' - rather than `match_not_constant' for unrelocated operands - retrieved as an `O_big' expression. - (match_int_operand): Call `match_out_of_range' for relocatable - operands retrieved as an `O_big' expression. - (match_mips16_insn): Call `match_out_of_range' for relaxable - operands retrieved as an `O_big' expression. - * testsuite/gas/mips/addiu-error.d: New test. - * testsuite/gas/mips/mips16@addiu-error.d: New test. - * testsuite/gas/mips/micromips@addiu-error.d: New test. - * testsuite/gas/mips/break-error.d: New test. - * testsuite/gas/mips/lui-1.l: Adjust error message. - * testsuite/gas/mips/addiu-error.l: New stderr output. - * testsuite/gas/mips/mips16@addiu-error.l: New stderr output. - * testsuite/gas/mips/micromips@addiu-error.l: New stderr output. - * testsuite/gas/mips/break-error.l: New stderr output. - * testsuite/gas/mips/addiu-error.s: New test source. - * testsuite/gas/mips/break-error.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-05-15 Maciej W. Rozycki - - * config/tc-mips.c (match_mips16_insn): Remove the explicit - OT_INTEGER check before the `match_expression' call. - * testsuite/gas/mips/mips16-insn-e.l: Adjust messages. - * testsuite/gas/mips/mips16-32@mips16-insn-e.l: Likewise. - * testsuite/gas/mips/mips16-64@mips16-insn-e.l: Likewise. - * testsuite/gas/mips/mips16e-32@mips16-insn-e.l: Likewise. - * testsuite/gas/mips/mips16-reg-error.d: New test. - * testsuite/gas/mips/mips16-reg-error.l: New stderr output. - * testsuite/gas/mips/mips16-reg-error.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new test. - -2017-05-15 Maciej W. Rozycki - - * config/tc-mips.c (match_mips16_insn): Call - `match_not_constant' for a disallowed relocation operation. - * testsuite/gas/mips/mips16-reloc-error.d: New test. - * testsuite/gas/mips/mips16-reloc-error.l: New stderr output. - * testsuite/gas/mips/mips16-reloc-error.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new test. - -2017-05-15 Maciej W. Rozycki - - * testsuite/gas/mips/lui-1.d: New test. - * testsuite/gas/mips/lui-2.d: New test. - * gas/testsuite/gas/mips/mips.exp: Fold corresponding list tests - into the new tests. - -2017-05-15 Maciej W. Rozycki - - * config/tc-mips.c (match_const_int): Update description. - -2017-05-15 Maciej W. Rozycki - - * doc/as.texinfo (-mips16, -no-mips16): Refer to `.module - mips16' rather than `.set mips16'. - (-mmicromips, -mno-micromips): Refer to `.module micromips' and - `.module nomicromips' rather than `.set micromips' and `.set - nomicromips'. - (-msmartmips, -mno-smartmips): Refer to `.module smartmips' - rather than `.set smartmips'. - * doc/c-mips.texi (MIPS Options): Refer to `.module mips16', - `.module micromips', `.module nomicromips' and `.module - smartmips' rather than `.set mips16', `.set micromips', `.set - nomicromips' and `.set smartmips' respectively. - -2017-05-12 Maciej W. Rozycki - Matthew Fortune - - * config/tc-mips.c (mips_percent_op): Add "%gprel". - (mips16_percent_op): Add "%gp_rel". - * testsuite/gas/mips/elf-rel8.s:: Add `%gprel' forms. - * testsuite/gas/mips/elf-rel8-mips16.s: Add `%gp_rel' forms. - * testsuite/gas/mips/elf-rel8.d: Adjust accordingly. - * testsuite/gas/mips/elf-rel8-mips16.d: Likewise. - -2017-05-12 Maciej W. Rozycki - - * testsuite/gas/mips/mips16.d: Adjust BREAK disassembly. - * testsuite/gas/mips/mips16-64@mips16.d: Likewise. - * testsuite/gas/mips/mips16-64.d: Likewise. - * testsuite/gas/mips/mips16-64@mips16-64.d: Likewise. - * testsuite/gas/mips/mips16-macro.d: Likewise. - * testsuite/gas/mips/mips16-64@mips16-macro.d: Likewise. - * testsuite/gas/mips/mips16-sub.d: Likewise. - * testsuite/gas/mips/mips16-32@mips16-sub.d: Likewise. - -2017-05-11 Maciej W. Rozycki - - * testsuite/gas/mips/mips32r2-sync-1.d: New test. - * testsuite/gas/mips/micromips@mips32r2-sync-1.d: New test. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-05-10 Maciej W. Rozycki - - * testsuite/gas/mips/isa-override-2.d: New test. - * testsuite/gas/mips/mips1@isa-override-2.d: New test. - * testsuite/gas/mips/r3000@isa-override-2.d: New test. - * testsuite/gas/mips/r3900@isa-override-2.d: New test. - * testsuite/gas/mips/mips2@isa-override-2.d: New test. - * testsuite/gas/mips/mips32@isa-override-2.d: New test. - * testsuite/gas/mips/mips32r2@isa-override-2.d: New test. - * testsuite/gas/mips/mips32r3@isa-override-2.d: New test. - * testsuite/gas/mips/mips32r5@isa-override-2.d: New test. - * testsuite/gas/mips/mips32r6@isa-override-2.d: New test. - * testsuite/gas/mips/octeon3@isa-override-2.d: New test. - * testsuite/gas/mips/r3000@isa-override-2.l: Remove list test. - * testsuite/gas/mips/mips1@isa-override-2.s: Remove test source. - * testsuite/gas/mips/r3000@isa-override-2.s: Remove test source. - * testsuite/gas/mips/r3900@isa-override-2.s: Remove test source. - * testsuite/gas/mips/mips2@isa-override-2.s: Remove test source. - * testsuite/gas/mips/mips32@isa-override-2.s: Remove test - source. - * testsuite/gas/mips/mips32r2@isa-override-2.s: Remove test - source. - * testsuite/gas/mips/mips32r3@isa-override-2.s: Remove test - source. - * testsuite/gas/mips/mips32r5@isa-override-2.s: Remove test - source. - * testsuite/gas/mips/mips32r6@isa-override-2.s: Remove test - source. - * testsuite/gas/mips/octeon3@isa-override-2.s: Remove test - source. - * gas/testsuite/gas/mips/mips.exp: Fold corresponding list tests - into the new tests. - -2017-05-10 Maciej W. Rozycki - - * testsuite/gas/mips/mips16e-sub.d: Correct test name. - * testsuite/gas/mips/mips16-32@mips16e-sub.d: Likewise. - * testsuite/gas/mips/mips16-64@mips16e-sub.d: Likewise. - * testsuite/gas/mips/mips16e-64-sub.d: Likewise. - * testsuite/gas/mips/mips16-32@mips16e-64-sub.d: Likewise. - * testsuite/gas/mips/mips16-64@mips16e-64-sub.d: Likewise. - * testsuite/gas/mips/mips16e-32@mips16e-64-sub.d: Likewise. - -2017-05-10 Maciej W. Rozycki - - * testsuite/gas/mips/mips16-macro.l: Remove list test. - -2017-05-10 Maciej W. Rozycki - - * testsuite/gas/mips/r3900@ecoff@ld.d: Remove test. - * testsuite/gas/mips/mips2@ecoff@ld.d: Remove test. - * testsuite/gas/mips/mips32@ecoff@ld.d: Remove test. - * testsuite/gas/mips/mips32r2@ecoff@ld.d: Remove test. - * testsuite/gas/mips/r3900@ecoff@ld-forward.d: Remove test. - * testsuite/gas/mips/mips2@ecoff@ld-forward.d: Remove test. - * testsuite/gas/mips/mips32@ecoff@ld-forward.d: Remove test. - * testsuite/gas/mips/mips32r2@ecoff@ld-forward.d: Remove test. - * testsuite/gas/mips/mips1@ecoff@sd.d: Remove test. - * testsuite/gas/mips/r3000@ecoff@sd.d: Remove test. - * testsuite/gas/mips/r3900@ecoff@sd.d: Remove test. - * testsuite/gas/mips/mips2@ecoff@sd.d: Remove test. - * testsuite/gas/mips/mips32@ecoff@sd.d: Remove test. - * testsuite/gas/mips/mips32r2@ecoff@sd.d: Remove test. - * testsuite/gas/mips/mips1@ecoff@sd-forward.d: Remove test. - * testsuite/gas/mips/r3000@ecoff@sd-forward.d: Remove test. - * testsuite/gas/mips/r3900@ecoff@sd-forward.d: Remove test. - * testsuite/gas/mips/mips2@ecoff@sd-forward.d: Remove test. - * testsuite/gas/mips/mips32@ecoff@sd-forward.d: Remove test. - * testsuite/gas/mips/mips32r2@ecoff@sd-forward.d: Remove test. - -2017-05-10 Claudiu Zissulescu - - * testsuite/gas/arc/attr-arc600.d: New file. - * testsuite/gas/arc/attr-arc600_mul32x16.d: Likewise. - * testsuite/gas/arc/attr-arc600_norm.d: Likewise. - * testsuite/gas/arc/attr-arc601.d: Likewise. - * testsuite/gas/arc/attr-arc601_mul32x16.d: Likewise. - * testsuite/gas/arc/attr-arc601_mul64.d: Likewise. - * testsuite/gas/arc/attr-arc601_norm.d: Likewise. - * testsuite/gas/arc/attr-arc700.d: Likewise. - * testsuite/gas/arc/attr-arcem.d: Likewise. - * testsuite/gas/arc/attr-archs.d: Likewise. - * testsuite/gas/arc/attr-autodetect-1.d: Likewise. - * testsuite/gas/arc/attr-autodetect-1.s: Likewise. - * testsuite/gas/arc/attr-cpu-a601.d: Likewise. - * testsuite/gas/arc/attr-cpu-a601.s: Likewise. - * testsuite/gas/arc/attr-cpu-a700.d: Likewise. - * testsuite/gas/arc/attr-cpu-a700.s: Likewise. - * testsuite/gas/arc/attr-cpu-em.d: Likewise. - * testsuite/gas/arc/attr-cpu-em.s: Likewise. - * testsuite/gas/arc/attr-cpu-hs.d: Likewise. - * testsuite/gas/arc/attr-cpu-hs.s: Likewise. - * testsuite/gas/arc/attr-em.d: Likewise. - * testsuite/gas/arc/attr-em4.d: Likewise. - * testsuite/gas/arc/attr-em4_dmips.d: Likewise. - * testsuite/gas/arc/attr-em4_fpuda.d: Likewise. - * testsuite/gas/arc/attr-em4_fpus.d: Likewise. - * testsuite/gas/arc/attr-hs.d: Likewise. - * testsuite/gas/arc/attr-hs34.d: Likewise. - * testsuite/gas/arc/attr-hs38.d: Likewise. - * testsuite/gas/arc/attr-hs38_linux.d: Likewise. - * testsuite/gas/arc/attr-mul64.d: Likewise. - * testsuite/gas/arc/attr-name.d: Likewise. - * testsuite/gas/arc/attr-name.s: Likewise. - * testsuite/gas/arc/attr-nps400.d: Likewise. - * testsuite/gas/arc/attr-override-mcpu.d: Likewise. - * testsuite/gas/arc/attr-override-mcpu.s - * testsuite/gas/arc/attr-quarkse_em.d: Likewise. - * testsuite/gas/arc/blank.s: Likewise. - * testsuite/gas/elf/section2.e-arc: Likewise. - * testsuite/gas/arc/cpu-pseudop-1.d: Update test. - * testsuite/gas/arc/cpu-pseudop-2.d: Likewise. - * testsuite/gas/arc/nps400-0.d: Likewise. - * testsuite/gas/elf/elf.exp: Set target_machine for ARC. - * config/tc-arc.c (opcode/arc-attrs.h): Include. - (ARC_GET_FLAG, ARC_SET_FLAG, streq): Define. - (arc_attribute): Declare new function. - (md_pseudo_table): Add arc_attribute. - (cpu_types): Rename default cpu features. - (selected_cpu): Set the default OSABI flag. - (mpy_option): New variable. - (pic_option): Likewise. - (sda_option): Likewise. - (tls_option): Likewise. - (feature_type, feature_list): Remove. - (arc_initial_eflag): Likewise. - (attributes_set_explicitly): New variable. - (arc_check_feature): Check also for the conflicting features. - (arc_select_cpu): Refactor assignment of selected_cpu.eflags. - (arc_option): Remove setting of private flags and architecture. - (check_cpu_feature): Refactor feature names. - (autodetect_attributes): New function. - (assemble_tokens): Use above function. - (md_parse_option): Refactor feature names. - (arc_attribute): New function. - (arc_set_attribute_int): Likewise. - (arc_set_attribute_string): Likewise. - (arc_stralloc): Likewise. - (arc_set_public_attributes): Likewise. - (arc_md_end): Likewise. - (arc_copy_symbol_attributes): Likewise. - (rc_convert_symbolic_attribute): Likewise. - * config/tc-arc.h (md_end): Define. - (CONVERT_SYMBOLIC_ATTRIBUTE): Likewise. - (TC_COPY_SYMBOL_ATTRIBUTES): Likewise. - * doc/c-arc.texi: Document ARC object attributes. - -2017-05-03 Maciej W. Rozycki - - * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add `pic', `sym32' and - `nomacro' flags. - (RELAX_MIPS16_PIC, RELAX_MIPS16_SYM32, RELAX_MIPS16_NOMACRO): - New macros. - (RELAX_MIPS16_USER_SMALL, RELAX_MIPS16_USER_EXT) - (RELAX_MIPS16_DSLOT, RELAX_MIPS16_JAL_DSLOT) - (RELAX_MIPS16_EXTENDED, RELAX_MIPS16_MARK_EXTENDED) - (RELAX_MIPS16_CLEAR_EXTENDED, RELAX_MIPS16_ALWAYS_EXTENDED) - (RELAX_MIPS16_MARK_ALWAYS_EXTENDED) - (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED): Shift bits. - (RELAX_MIPS16_MACRO, RELAX_MIPS16_MARK_MACRO) - (RELAX_MIPS16_CLEAR_MACRO): New macros. - (append_insn): Pass `mips_pic', HAVE_32BIT_SYMBOLS and - `mips_opts.warn_about_macros' settings to RELAX_MIPS16_ENCODE. - (mips16_macro_frag): New function. - (md_estimate_size_before_relax): Handle HI16/LO16 relaxation. - (mips_relax_frag): Likewise. - (md_convert_frag): Likewise. - - * testsuite/gas/mips/mips16@relax-swap3.d: Remove error output, - add dump patterns. - * testsuite/gas/mips/mips16e@relax-swap3.d: New test - subarchitecture. - * testsuite/gas/mips/micromips@relax-swap3.d: Remove trailing - NOP padding. - * testsuite/gas/mips/mips16-pcrel-reloc-2.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16-pcrel-reloc-3.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16-pcrel-reloc-6.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16-pcrel-reloc-7.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16-pcrel-addend-2.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16-pcrel-addend-3.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16-pcrel-absolute.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16-pcrel-absolute-1.d: Remove error - output, add dump patterns. - * testsuite/gas/mips/mips16@relax-swap3.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-reloc-2.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-reloc-3.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-reloc-6.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-reloc-7.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-addend-2.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-addend-3.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-absolute.l: Remove file. - * testsuite/gas/mips/mips16-pcrel-absolute-1.l: Remove file. - * testsuite/gas/mips/relax-swap3.s: Adjust trailing padding. - - * testsuite/gas/mips/mips16-pcrel-0.d: New test. - * testsuite/gas/mips/mips16-pcrel-1.d: New test. - * testsuite/gas/mips/mips16-pcrel-2.d: New test. - * testsuite/gas/mips/mips16-pcrel-3.d: New test. - * testsuite/gas/mips/mips16-pcrel-4.d: New test. - * testsuite/gas/mips/mips16-pcrel-5.d: New test. - * testsuite/gas/mips/mips16-pcrel-pic-0.d: New test. - * testsuite/gas/mips/mips16-pcrel-pic-1.d: New test. - * testsuite/gas/mips/mips16-pcrel-n32-0.d: New test. - * testsuite/gas/mips/mips16-pcrel-n32-1.d: New test. - * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: New test. - * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: New test. - * testsuite/gas/mips/mips16-pcrel-n64-0.d: New test. - * testsuite/gas/mips/mips16-pcrel-n64-1.d: New test. - * testsuite/gas/mips/mips16-pcrel-delay-0.d: New test. - * testsuite/gas/mips/mips16-pcrel-delay-1.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-4.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-5.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-6.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-7.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-8.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-9.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-pic-8.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-pic-9.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-n32-8.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-n32-9.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-n64-8.d: New test. - * testsuite/gas/mips/mips16-pcrel-addend-n64-9.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-2.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-3.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-4.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-5.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-6.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-7.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-4.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d: New - test. - * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d: New - test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d: New - test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d: New - test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d: New - test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d: New - test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d: - New test. - * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d: - New test. - * testsuite/gas/mips/mips16-pcrel-0.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-1.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-2.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-3.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-4.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-5.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-delay-0.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-delay-1.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-addend-8.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-addend-9.l: New stderr output. - * testsuite/gas/mips/mips16-pcrel-absolute-4.l: New stderr - output. - * testsuite/gas/mips/mips16-pcrel-absolute-6.l: New stderr - output. - * testsuite/gas/mips/mips16-pcrel-0.s: New test source. - * testsuite/gas/mips/mips16-pcrel-1.s: New test source. - * testsuite/gas/mips/mips16-pcrel-2.s: New test source. - * testsuite/gas/mips/mips16-pcrel-3.s: New test source. - * testsuite/gas/mips/mips16-pcrel-4.s: New test source. - * testsuite/gas/mips/mips16-pcrel-5.s: New test source. - * testsuite/gas/mips/mips16-pcrel-delay-0.s: New test source. - * testsuite/gas/mips/mips16-pcrel-delay-1.s: New test source. - * testsuite/gas/mips/mips16-pcrel-addend-4.s: New test source. - * testsuite/gas/mips/mips16-pcrel-addend-5.s: New test source. - * testsuite/gas/mips/mips16-pcrel-addend-6.s: New test source. - * testsuite/gas/mips/mips16-pcrel-addend-7.s: New test source. - * testsuite/gas/mips/mips16-pcrel-addend-8.s: New test source. - * testsuite/gas/mips/mips16-pcrel-addend-9.s: New test source. - * testsuite/gas/mips/mips16-pcrel-absolute-2.s: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-3.s: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-4.s: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-5.s: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-6.s: New test. - * testsuite/gas/mips/mips16-pcrel-absolute-7.s: New test. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-05-03 Nick Clifton - - PR gas/20941 - * symbols.c (snapshot_symbol): Handle the case where - resolve_expression returns a local symbol. - -2017-05-02 Maciej W. Rozycki - - * config/tc-mips.c (append_insn): Call `symbol_append' for any - expression symbol created for MIPS16 relaxation. - (match_mips16_insn): Don't encode a constant value as an - immediate with a PC-relative operand. - - * testsuite/gas/mips/mips16-pcrel-absolute-1.d: New test. - * testsuite/gas/mips/mips16-branch-absolute-1.d: New test. - * testsuite/gas/mips/mips16-branch-absolute-2.d: New test. - * testsuite/gas/mips/mips16-branch-absolute-addend-1.d: New - test. - * testsuite/gas/mips/mips16-branch-absolute-n32-1.d: New test. - * testsuite/gas/mips/mips16-branch-absolute-n32-2.d: New test. - * testsuite/gas/mips/mips16-branch-absolute-addend-n32-1.d: New - test. - * testsuite/gas/mips/mips16-branch-absolute-n64-1.d: New test. - * testsuite/gas/mips/mips16-branch-absolute-n64-2.d: New test. - * testsuite/gas/mips/mips16-branch-absolute-addend-n64-1.d: New - test. - * testsuite/gas/mips/mips16-pcrel-absolute-1.l: New stderr - output. - * testsuite/gas/mips/mips16-pcrel-absolute-1.s: New test source. - * testsuite/gas/mips/mips16-branch-absolute-1.s: New test - source. - * testsuite/gas/mips/mips16-branch-absolute-2.s: New test - source. - * testsuite/gas/mips/mips16-branch-absolute-addend-1.s: New test - source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-04-27 Maciej W. Rozycki - - * config/tc-mips.c (mips16_pcrel_val): New function, factored - out from... - (mips16_extended_frag): ... here. - (md_convert_frag): Use `mips16_pcrel_val' rather than repeated - code in MIPS16 relaxation, with `stretch' hardcoded to 0. - -2017-04-27 Maciej W. Rozycki - - * config/tc-mips.c (RELAX_MIPS16_LONG_BRANCH): Rename to... - (RELAX_MIPS16_ALWAYS_EXTENDED): ... this. - (RELAX_MIPS16_MARK_LONG_BRANCH): Rename to... - (RELAX_MIPS16_MARK_ALWAYS_EXTENDED): ... this. - (RELAX_MIPS16_CLEAR_LONG_BRANCH): Rename to... - (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED): ... this. - (mips16_extended_frag): Adjust accordingly. - -2017-04-27 Alan Modra - - * symbols.c (S_FORCE_RELOC): Separate section and symbol tests. - -2017-04-26 Maciej W. Rozycki - - * config/tc-mips.c (RELAX_ENCODE): Add `PIC' flag. - (RELAX_PIC): New macro. - (RELAX_USE_SECOND, RELAX_SECOND_LONGER, RELAX_NOMACRO) - (RELAX_DELAY_SLOT, RELAX_DELAY_SLOT_16BIT) - (RELAX_DELAY_SLOT_SIZE_FIRST, RELAX_DELAY_SLOT_SIZE_SECOND): - Shift bits. - (RELAX_BRANCH_ENCODE): Add `pic' flag. - (RELAX_BRANCH_UNCOND, RELAX_BRANCH_LIKELY, RELAX_BRANCH_LINK) - (RELAX_BRANCH_TOOFAR): Shift bits. - (RELAX_BRANCH_PIC): New macro. - (RELAX_MICROMIPS_ENCODE): Add `pic' flag. - (RELAX_MICROMIPS_PIC): New macro. - (RELAX_MICROMIPS_UNCOND, RELAX_MICROMIPS_COMPACT) - (RELAX_MICROMIPS_LINK, RELAX_MICROMIPS_NODS) - (RELAX_MICROMIPS_RELAX32): Shift bits. - (relax_close_frag): Pass `mips_pic' setting to RELAX_ENCODE. - (append_insn): Pass `mips_pic' setting to RELAX_BRANCH_ENCODE - and RELAX_MICROMIPS_ENCODE, and record it in `fx_tcbit2' of the - first fixup created. - (md_apply_fix) : Use `fx_tcbit2' of the - fixup processed rather than `mips_pic' in choosing to relax an - out of range branch to a jump. - (relaxed_branch_length): Use the `pic' flag of the relaxed frag - rather than `mips_pic'. - (relaxed_micromips_32bit_branch_length): Likewise. - (md_estimate_size_before_relax): Likewise. - (md_convert_frag): Likewise. - - * testsuite/gas/mips/option-pic-relax-0.d: New test. - * testsuite/gas/mips/option-pic-relax-1.d: New test. - * testsuite/gas/mips/option-pic-relax-2.d: New test. - * testsuite/gas/mips/option-pic-relax-3.d: New test. - * testsuite/gas/mips/option-pic-relax-3a.d: New test. - * testsuite/gas/mips/option-pic-relax-4.d: New test. - * testsuite/gas/mips/option-pic-relax-5.d: New test. - * testsuite/gas/mips/option-pic-relax-2.l: New stderr output. - * testsuite/gas/mips/option-pic-relax-3.l: New stderr output. - * testsuite/gas/mips/option-pic-relax-4.l: New stderr output. - * testsuite/gas/mips/option-pic-relax-5.l: New stderr output. - * testsuite/gas/mips/option-pic-relax-0.s: New test source. - * testsuite/gas/mips/option-pic-relax-1.s: New test source. - * testsuite/gas/mips/option-pic-relax-2.s: New test source. - * testsuite/gas/mips/option-pic-relax-3.s: New test source. - * testsuite/gas/mips/option-pic-relax-4.s: New test source. - * testsuite/gas/mips/option-pic-relax-5.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-04-25 Claudiu Zissulescu - - * testsuite/gas/arc/leave_enter.d: Update test. - * testsuite/gas/arc/leave_enter.s: Likewise. - -2017-04-25 Claudiu Zissulescu - - * testsuite/gas/arc/b.d: Update test. - * testsuite/gas/arc/noargs_hs.d: Likewise. - -2017-04-25 Maciej W. Rozycki - - * config/tc-mips.c (md_convert_frag): Correct - BFD_RELOC_MIPS16_16_PCREL_S1 fixup size. - * testsuite/gas/mips/mips16-branch-addend-4.d: New test. - * testsuite/gas/mips/mips16-branch-addend-5.d: New test. - * testsuite/gas/mips/mips16-branch-addend-5.l: New stderr - output. - * testsuite/gas/mips/mips16-branch-addend-4.s: New test source. - * testsuite/gas/mips/mips16-branch-addend-5.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-04-25 Jose E. Marchesi - - PR gas/21407 - * config/tc-sparc.c (md_apply_fix): Do not transform `call' - instructions into branch instructions in fixups generating - additional relocations. - * testsuite/gas/sparc/call-relax.s: New file. - * testsuite/gas/sparc/call-relax.d: Likewise. - * testsuite/gas/sparc/call-relax-aout.d: Likewise. - * testsuite/gas/sparc/sparc.exp: Test call-relax and call-relax-aout. - -2017-04-24 Thomas Preud'homme - - * config/tc-arm.c (move_or_literal_pool): Remove code generating MOVS. - Forbid MOV.W and MOVW if destination is SP or PC. - * testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.s: Explain - expectation of LDR not generating a MOVS for low registers and small - constants. Add tests of MOVW generation. - * testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.d: Update - expected disassembly. - -2017-04-22 Alan Modra - - * testsuite/gas/ppc/vle.s: Format. Add se_rfgi and e_sc. - * testsuite/gas/ppc/vle.d: Update. - -2017-04-21 Nick Clifton - - PR binutils/21380 - * testsuite/gas/aarch64/illegal-3.s: New file. - * testsuite/gas/aarch64/illegal-3.d: New file. - -2017-04-11 Alan Modra - - * config/tc-ppc.c (md_show_usage): Delete mention of -mhtm. - * testsuite/gas/ppc/htm.d: Pass -mpower8 and -Mpower8. - -2017-04-10 Max Filippov - - * config/tc-xtensa.c (xtensa_maybe_create_literal_pool_frag): - Initialize lps->frag_count with auto_litpool_limit. - (xg_promote_candidate_litpool): New function. - (xtensa_move_literals): Extract candidate litpool promotion code - into separate function. Call it for all possible found - candidates. - (xtensa_switch_to_literal_fragment): Drop 'recursive' flag and - call to xtensa_mark_literal_pool_location that it guards. - Replace it with call to xtensa_maybe_create_literal_pool_frag. - Initialize pool_location with created literal pool candidate. - * testsuite/gas/xtensa/all.exp: Add new tests. - * testsuite/gas/xtensa/auto-litpools-first1.d: New test results. - * testsuite/gas/xtensa/auto-litpools-first1.s: New test. - * testsuite/gas/xtensa/auto-litpools-first2.d: New test results. - * testsuite/gas/xtensa/auto-litpools-first2.s: New test. - * testsuite/gas/xtensa/auto-litpools.d: Fix offsets changed due - to additional jump instruction. - -2017-04-07 Alan Modra - - * testsuite/gas/ppc/altivec2.s: Delete E6500 vector insns. - * testsuite/gas/ppc/altivec2.d: Adjust to suit. - -2017-04-07 Alan Modra - - * testsuite/gas/elf/section12a.d: Don't expect alignment of 1 - for .mbind.text. - -2017-04-06 Pip Cet - - * testsuite/gas/wasm32/allinsn.d: Adjust test for disassembler - changes. - * testsuite/gas/wasm32/disass.d: New test. - * testsuite/gas/wasm32/disass.s: New test. - * testsuite/gas/wasm32/disass-2.d: New test. - * testsuite/gas/wasm32/disass-2.s: New test. - * testsuite/gas/wasm32/reloc.d: Adjust test for changed reloc - names. - * testsuite/gas/wasm32/reloc.s: Update test for changed assembler - syntax. - * testsuite/gas/wasm32/wasm32.exp: Run new tests. Expect allinsn - test to succeed. - -2017-04-04 H.J. Lu - - * NEWS: Mention support for ELF SHF_GNU_MBIND. - * config/obj-elf.c (section_match): New. - (get_section): Match both sh_info and group name. - (obj_elf_change_section): Add argument for sh_info. Pass both - sh_info and group name to get_section. Issue an error for - SHF_GNU_MBIND section without SHF_ALLOC. Set sh_info. - (obj_elf_parse_section_letters): Set SHF_GNU_MBIND for 'd'. - (obj_elf_section): Support SHF_GNU_MBIND section info. - * config/obj-elf.h (obj_elf_change_section): Add argument for - sh_info. - * config/tc-arm.c (start_unwind_section): Pass 0 as sh_info to - obj_elf_change_section. - * config/tc-ia64.c (obj_elf_vms_common): Likewise. - * config/tc-microblaze.c (microblaze_s_data): Likewise. - (microblaze_s_sdata): Likewise. - (microblaze_s_rdata): Likewise. - (microblaze_s_bss): Likewise. - * config/tc-mips.c (s_change_section): Likewise. - * config/tc-msp430.c (msp430_profiler): Likewise. - * config/tc-rx.c (parse_rx_section): Likewise. - * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise. - * doc/as.texinfo: Document 'd' for SHF_GNU_MBIND. - * testsuite/gas/elf/elf.exp: Run section12a, section12b and - section13. - * testsuite/gas/elf/section10.d: Updated. - * testsuite/gas/elf/section10.s: Likewise. - * testsuite/gas/elf/section12.s: New file. - * testsuite/gas/elf/section12a.d: Likewise. - * testsuite/gas/elf/section12b.d: Likewise. - * testsuite/gas/elf/section13.l: Likewise. - * testsuite/gas/elf/section13.d: Likewise. - * testsuite/gas/elf/section13.s: Likewise. - -2017-04-03 Palmer Dabbelt - - * config/tc-riscv.c (riscv_clear_subsets): Cast argument to free to - avoid const warnings. - -2017-03-30 Palmer Dabbelt - - * config/tc-riscv.c (riscv_clear_subsets): New function. - (riscv_add_subset): Call riscv_clear_subsets and riscv_set_rvc to - clear RVC when it's been previously set. - -2017-03-31 Nick Clifton - - PR gas/21333 - * config/tc-s390.c (tc_s390_fix_adjustable): Allow non pc-relative - fixups in mergeable sections to be adjusted. - -2017-03-30 Pip Cet - - * config/tc-wasm32.h: New file: Add WebAssembly assembler target. - * config/tc-wasm32.c: New file: Add WebAssembly assembler target. - * Makefile.am: Add WebAssembly assembler target. - * configure.tgt: Add WebAssembly assembler target. - * doc/c-wasm32.texi: New file: Start documenting WebAssembly - assembler. - * doc/all.texi: Define WASM32. - * doc/as.texinfo: Add WebAssembly entries. - * NEWS: Mention the new support. - * Makefile.in: Regenerate. - * po/gas.pot: Regenerate. - * po/POTFILES.in: Regenerate. - * testsuite/gas/wasm32: New directory. - * testsuite/gas/wasm32/allinsn.d: New file. - * testsuite/gas/wasm32/allinsn.s: New file. - * testsuite/gas/wasm32/illegal.l: New file. - * testsuite/gas/wasm32/illegal.s: New file. - * testsuite/gas/wasm32/illegal-2.l: New file. - * testsuite/gas/wasm32/illegal-2.s: New file. - * testsuite/gas/wasm32/illegal-3.l: New file. - * testsuite/gas/wasm32/illegal-3.s: New file. - * testsuite/gas/wasm32/illegal-4.l: New file. - * testsuite/gas/wasm32/illegal-4.s: New file. - * testsuite/gas/wasm32/illegal-5.l: New file. - * testsuite/gas/wasm32/illegal-5.s: New file. - * testsuite/gas/wasm32/illegal-6.l: New file. - * testsuite/gas/wasm32/illegal-6.s: New file. - * testsuite/gas/wasm32/illegal-7.l: New file. - * testsuite/gas/wasm32/illegal-7.s: New file. - * testsuite/gas/wasm32/illegal-8.l: New file. - * testsuite/gas/wasm32/illegal-8.s: New file. - * testsuite/gas/wasm32/illegal-9.l: New file. - * testsuite/gas/wasm32/illegal-9.s: New file. - * testsuite/gas/wasm32/illegal-10.l: New file. - * testsuite/gas/wasm32/illegal-10.s: New file. - * testsuite/gas/wasm32/illegal-11.l: New file. - * testsuite/gas/wasm32/illegal-11.s: New file. - * testsuite/gas/wasm32/illegal-12.l: New file. - * testsuite/gas/wasm32/illegal-12.s: New file. - * testsuite/gas/wasm32/illegal-13.l: New file. - * testsuite/gas/wasm32/illegal-13.s: New file. - * testsuite/gas/wasm32/illegal-14.l: New file. - * testsuite/gas/wasm32/illegal-14.s: New file. - * testsuite/gas/wasm32/illegal-15.l: New file. - * testsuite/gas/wasm32/illegal-15.s: New file. - * testsuite/gas/wasm32/illegal-16.l: New file. - * testsuite/gas/wasm32/illegal-16.s: New file. - * testsuite/gas/wasm32/illegal-17.l: New file. - * testsuite/gas/wasm32/illegal-17.s: New file. - * testsuite/gas/wasm32/illegal-18.l: New file. - * testsuite/gas/wasm32/illegal-18.s: New file. - * testsuite/gas/wasm32/illegal-19.l: New file. - * testsuite/gas/wasm32/illegal-19.s: New file. - * testsuite/gas/wasm32/illegal-20.l: New file. - * testsuite/gas/wasm32/illegal-20.s: New file. - * testsuite/gas/wasm32/illegal-21.l: New file. - * testsuite/gas/wasm32/illegal-21.s: New file. - * testsuite/gas/wasm32/illegal-22.l: New file. - * testsuite/gas/wasm32/illegal-22.s: New file. - * testsuite/gas/wasm32/illegal-24.l: New file. - * testsuite/gas/wasm32/illegal-24.s: New file. - * testsuite/gas/wasm32/illegal-25.l: New file. - * testsuite/gas/wasm32/illegal-25.s: New file. - * testsuite/gas/wasm32/reloc.d: New file. - * testsuite/gas/wasm32/reloc.s: New file. - * testsuite/gas/wasm32/wasm32.exp: New tests for WebAssembly - architecture. - -2017-03-29 Alan Modra - - * config/tc-ppc.c (md_parse_option): Reject -mraw. - -2017-03-27 Alan Modra - - PR 21303 - * testsuite/gas/ppc/pr21303.d, - * testsuite/gas/ppc/pr21303.s: New test - * testsuite/gas/ppc/ppc.exp: Run it. - -2017-03-27 Rinat Zelig - - * testsuite/gas/arc/nps400-12.s: New file. - * testsuite/gas/arc/nps400-12.d: New file. - -2017-03-24 Thomas preud'homme - - * config/tc-arm.: (md_begin): Set selected_cpu from *mcpu_cpu_opt when - CPU_DEFAULT is defined. - -2017-03-21 Palmer Dabbbelt - - * config/tc-riscv.c (md_show_usage): Remode defuct -m32, -m64, - -msoft-float, -mhard-float, -mno-rvc, and -mrvc options; and don't - print an invalid default ISA string. - * doc/c-riscv.texi (OPTIONS): Add -fpic and -fno-pic options. - -2017-03-22 Max Filippov - - * config/tc-xtensa.c (xtensa_relax_frag): Change fx_size of the - reassigned fixup to size of jump instruction (3) and fx_r_type - to BFD_RELOC_XTENSA_SLOT0_OP, as there's only one slot. - (add_jump_to_trampoline): Search - origfrag->tc_frag_data.slot_symbols for the slot with non-NULL - symbol and use that slot instead of slot 0. - -2017-03-21 Andreas Krebbel - - * config/tc-s390.c (s390_parse_cpu): Remove S390_INSTR_FLAG_VX2 - from cpu_table. Remove vx2, and novx2 from cpu_flags. - -2017-03-21 Rinat Zelig - - * testsuite/gas/arc/nps400-11.s: New file. - * testsuite/gas/arc/nps400-11.d: New file. - -2017-03-20 Nick Clifton - - * doc/as.texinfo (2byte): Note that if no expressions are present - the directive does nothing. Emphasize that the output is - unaligned, and that this can have an effect on the relocations - generated. - (4byte): Simplify description. Refer back to the 2byte - description. - (8byte): Likewise. - -2017-03-20 Richard Earnshaw - - * config/tc-arm.c (arm_fpus): Note entires that should not be - documented. - * doc/c-arm.texi (-mfpu): Add missing FPU entries for neon-vfpv3 and - neon-fp16. Fix spelling error. - -2017-03-20 Richard Earnshaw - - * config/tc-arm.c (arm_fpus): Add neon-vfpv3 as an alias for neon. - -2017-03-16 Rinat Zelig - - * config/tc-arc.c (assemble_insn): Only handle ".t" and ".nt" - specially for ARCv2. - -2017-03-14 Kito Cheng - - * config/tc-riscv.c (validate_riscv_insn): Add 'o' RVC immediate - encoding format, which can accept 0-valued immediates. - (riscv_ip): Likewise. - -2017-03-15 Nick Clifton - - * config/tc-riscv.c (riscv_pre_output_hook): Fix compile time - warning about discarding a const qualifier. - -2017-03-02 Kuan-Lin Chen - - * config/tc-riscv.h (HWARD2_USE_FIXED_ADVANCE_PC): New define. - -2017-03-02 Kuan-Lin Chen - - * config/tc-riscv.c (md_apply_fix): Set fx_frag and - fx_next->fx_frag for CFA_advance_loc relocations. - -2017-03-02 Kuan-Lin Chen - - * config/tc-riscv.c (md_apply_fix): Compute the correct offsets - for CFA relocations. - -2017-03-13 Nick Clifton - - PR binutils/21202 - * config/tc-aarch64.c (reloc_table): Rename - BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC to - BFD_RELOC_AARCH64_TLSDESC_LD64_LO12. Rname - BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC to - BFD_RELOC_AARCH64_TLSDESC_ADD_LO12. - (md_apply_fix): Likewise. - (aarch64_force_relocation): Likewise. - * testsuite/gas/aarch64/tls.d: Update regexp. - -2017-03-10 Tobin C. Harding - Nick Clifton - - * doc/as.texinfo (2byte): Tidy up wording. Add note that - overlarge values will produce a warning message and be trunacted. - (4byte): Likewise. - -2017-03-09 H.J. Lu - - * config/tc-i386.c (_i386_insn): Add dir_encoding and - vec_encoding. Remove swap_operand and need_vrex. - (extra_symbol_chars): Add '}'. - (md_begin): Mark '}' with LEX_BEGIN_NAME. Allow '}' in - mnemonic. - (build_vex_prefix): Don't use 2-byte VEX encoding with - {vex3}. Check dir_encoding and load. - (parse_insn): Check pseudo prefixes. Set dir_encoding. - (VEX_check_operands): Likewise. - (match_template): Check dir_encoding and load. - (parse_real_register): Set vec_encoding instead of need_vrex. - (parse_register): Likewise. - * doc/c-i386.texi: Document {disp8}, {disp32}, {load}, {store}, - {vex2}, {vex3} and {evex}. Remove ".s", ".d8" and ".d32" - * testsuite/gas/i386/i386.exp: Run pseudos and x86-64-pseudos. - * testsuite/gas/i386/pseudos.d: New file. - * testsuite/gas/i386/pseudos.s: Likewise. - * testsuite/gas/i386/x86-64-pseudos.d: Likewise. - * testsuite/gas/i386/x86-64-pseudos.s: Likewise. - -2017-03-08 Peter Bergner - - * testsuite/gas/ppc/altivec2.d (as): Use the -mpower8 option. - (objdump): Use the -Mpower8 option. - -2017-03-08 Peter Bergner - - * testsuite/gas/ppc/power9.d New test. - * testsuite/gas/ppc/power9.s: Likewise. - -2017-03-07 Alan Modra - - * doc/as.texinfo (2byte, 4byte, 8byte): Correct @section placement. - -2017-03-07 Tobin C. Harding - Alan Modra - - * doc/as.texinfo (2byte, 4byte, 8byte): Document. - * doc/c-arm.texi (2byte, 4byte, 8byte): Omit if ELF. - -2017-03-06 H.J. Lu - - * config/tc-i386.c (cpu_arch): Add .cet. - * doc/c-i386.texi: Document cet. - * testsuite/gas/i386/cet-intel.d: New file. - * testsuite/gas/i386/cet.d: Likewise. - * testsuite/gas/i386/cet.s: Likewise. - * testsuite/gas/i386/x86-64-cet-intel.d: Likewise. - * testsuite/gas/i386/x86-64-cet.d: Likewise. - * testsuite/gas/i386/x86-64-cet.s: Likewise. - * testsuite/gas/i386/i386.exp: Run Intel CET tests. - -2017-03-06 H.J. Lu - - * testsuite/gas/i386/x86-64-mpx-inval-2.s: Force a good alignment. - * testsuite/gas/i386/x86-64-mpx-inval-2.l: Expect [0-9A-F]+. - -2017-03-06 Alan Modra - - * dw2gencfi.c (encoding_size): Return unsigned int. - (emit_expr_encoded): Assert size matches reloc bitsize. - (output_fde): Use unsigned for offset_size and addr_size. Set - addr_size earlier and use in place of constant 4 and uses of - DWARF2_FDE_RELOC_SIZE. Assert it matches reloc bitsize. - -2017-03-06 Alan Modra - - * dw2gencfi.c: Wrap overlong lines. Add parens for emacs - auto reformat. Formatting and whitespace fixes. - -2017-03-05 Mark Wielaard - - * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_strp instead of - DW_FORM_string for DW_AT_name, DW_AT_comp_dir and DW_AT_producer. - (out_debug_info): Accept symbols to name, comp_dir and producer in - the .debug_str section and emit those offsets not full strings. - (out_debug_str): New function that outputs the strings for name, - comp_dir and producer in .debug_str and generates symbols to those - strings. - (out_debug_line): Create a .debug_str section if necessary and call - out_debug_str before calling out_debug_info. - * testsuite/gas/aarch64/dwarf.d: Add extra section symbol to expected - output. - -2017-03-02 Maciej W. Rozycki - - * write.c (relax_segment) : Only bail out if the fixed - part of the frag has overrun the location requested. - - * testsuite/gas/all/org-1.d: New test. - * testsuite/gas/all/org-2.d: New test. - * testsuite/gas/all/org-3.d: New test. - * testsuite/gas/all/org-4.d: New test. - * testsuite/gas/all/org-5.d: New test. - * testsuite/gas/all/org-6.d: New test. - * testsuite/gas/all/org-1.l: New stderr output. - * testsuite/gas/all/org-2.l: New stderr output. - * testsuite/gas/all/org-3.l: New stderr output. - * testsuite/gas/all/org-1.s: New test source. - * testsuite/gas/all/org-2.s: New test source. - * testsuite/gas/all/org-3.s: New test source. - * testsuite/gas/all/org-4.s: New test source. - * testsuite/gas/all/org-5.s: New test source. - * testsuite/gas/all/org-6.s: New test source. - * testsuite/gas/all/gas.exp: Run the new tests. - - * testsuite/gas/mips/org-1.d: New test. - * testsuite/gas/mips/org-2.d: New test. - * testsuite/gas/mips/org-3.d: New test. - * testsuite/gas/mips/org-4.d: New test. - * testsuite/gas/mips/org-5.d: New test. - * testsuite/gas/mips/org-6.d: New test. - * testsuite/gas/mips/org-7.d: New test. - * testsuite/gas/mips/org-8.d: New test. - * testsuite/gas/mips/org-9.d: New test. - * testsuite/gas/mips/org-10.d: New test. - * testsuite/gas/mips/org-11.d: New test. - * testsuite/gas/mips/org-12.d: New test. - * testsuite/gas/mips/org-1.l: New stderr output. - * testsuite/gas/mips/org-4.l: New stderr output. - * testsuite/gas/mips/org-5.l: New stderr output. - * testsuite/gas/mips/org-6.l: New stderr output. - * testsuite/gas/mips/org-10.l: New stderr output. - * testsuite/gas/mips/org-1.s: New test source. - * testsuite/gas/mips/org-2.s: New test source. - * testsuite/gas/mips/org-3.s: New test source. - * testsuite/gas/mips/org-4.s: New test source. - * testsuite/gas/mips/org-5.s: New test source. - * testsuite/gas/mips/org-6.s: New test source. - * testsuite/gas/mips/org-7.s: New test source. - * testsuite/gas/mips/org-8.s: New test source. - * testsuite/gas/mips/org-9.s: New test source. - * testsuite/gas/mips/org-10.s: New test source. - * testsuite/gas/mips/org-11.s: New test source. - * testsuite/gas/mips/org-12.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-03-01 Szabolcs Nagy - - * doc/c-aarch64.texi (AArch64 Extensions): Document rcpc. - -2017-02-28 Jan Beulich - - * testsuite/gas/i386/x86-64-avx.s: Add suffixed variants of - VPCMPESTR{I,M}. - * testsuite/gas/i386/x86-64-sse2avx.s: Likewise. - * testsuite/gas/i386/x86-64-sse4_2.s: Add suffixed variants - of PCMPESTR{I,M}. - * testsuite/gas/i386/ilp32/x86-64-avx-intel.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-avx.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-sse4_2.d: Likewise. - * testsuite/gas/i386/x86-64-avx-intel.d: Likewise. - * testsuite/gas/i386/x86-64-avx.d: Likewise. - * testsuite/gas/i386/x86-64-sse2avx.d: Likewise. - * testsuite/gas/i386/x86-64-sse4_2-intel.d: Likewise. - * testsuite/gas/i386/x86-64-sse4_2.d: Likewise. - -2017-02-28 Alan Modra - - * config/tc-nios2.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define. - -2017-02-28 Alan Modra - - * config/tc-ppc.c (md_assemble): Use BFD_RELOC_PPC_16DX_HA for addpcis. - (md_apply_fix): Remove fx_subsy check. Move code converting to - pcrel reloc earlier and handle BFD_RELOC_PPC_16DX_HA. Remove code - emiiting errors on seeing fx_pcrel set on unexpected relocs, as - that is done now by the generic code via.. - * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): ..this. Define. - (TC_VALIDATE_FIX_SUB): Define. - -2017-02-28 Maciej W. Rozycki - - * testsuite/gas/mips/jalr4.s: Add `jalr $0, $25' instructions. - * testsuite/gas/mips/jalr4.d: Adjust accordingly. Remove MIPSr6 - encoding patterns. - * testsuite/gas/mips/jalr4-n64.d: Likewise. - * testsuite/gas/mips/mipsr6@jalr4.d: New test. - * testsuite/gas/mips/mipsr6@jalr4-n32.d: New test. - * testsuite/gas/mips/mipsr6@jalr4-n64.d: New test. - -2017-02-25 Alan Modra - - * testsuite/gas/elf/strtab.s: Don't put directives on first - column or continuation with labels not in first column. - -2017-02-24 Richard Sandiford - - * doc/c-aarch64.texi: Document that sve implies fp16, simd and compnum. - * config/tc-aarch64.c (parse_vector_type_for_operand): Allow .q - to be used with SVE registers. - (parse_operands): Handle new SVE operands. - (aarch64_features): Make "sve" require F16 rather than FP. Also - require COMPNUM. - * testsuite/gas/aarch64/sve.s: Add tests for new instructions. - Include compnum tests. - * testsuite/gas/aarch64/sve.d: Update accordingly. - * testsuite/gas/aarch64/sve-invalid.s: Add tests for new instructions. - * testsuite/gas/aarch64/sve-invalid.l: Update accordingly. Also - update expected output for new FMOV and MOV alternatives. - -2017-02-24 Richard Sandiford - - * doc/c-aarch64.texi: Add a "compnum" entry. - * config/tc-aarch64.c (aarch64_features): Likewise, - * testsuite/gas/aarch64/advsimd-compnum.s: New test. - * testsuite/gas/aarch64/advsimd-compnum.d: Likewise. - -2017-02-24 Jan Beulich - - * testsuite/gas/i386/opcode.s: Add alternative TEST forms. - * testsuite/gas/i386/x86-64-opcode.s: Likewise. - * testsuite/gas/i386/opcode.d: Adjust accordingly. - * testsuite/gas/i386/opcode-intel.d: Likewise. - * testsuite/gas/i386/x86-64-opcode.d: Likewise. - * testsuite/gas/i386/ilp32/x86-64-opcode.d: Likewise. - -2017-02-24 Sheldon Lobo - - Test cases for the architecture level aware SPARC ASI work. - * gas/testsuite/gas/sparc/sparc.exp: 2 new tests - * gas/testsuite/gas/sparc/asi-bump-warn.s: New test - * gas/testsuite/gas/sparc/asi-bump-warn.l: Likewise - * gas/testsuite/gas/sparc/asi-arch-error.s: Likewise - * gas/testsuite/gas/sparc/asi-arch-error.l: Likewise - -2017-02-23 Maciej W. Rozycki - - * testsuite/gas/mips/jalr4.d: New test. - * testsuite/gas/mips/jalr4-n32.d: New test. - * testsuite/gas/mips/jalr4-n64.d: New test. - * testsuite/gas/mips/jalr4.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-02-23 Sheldon Lobo - - Add support for associating SPARC ASIs with an architecture level. - * config/tc-sparc.c (parse_sparc_asi): New encode SPARC ASIs. - -2017-02-23 Jan Beulich - - * testsuite/gas/all/err-sizeof.s: Don't use sums or differences - of symbols as expression. - -2017-02-23 Jan Beulich - - * gas/testsuite/gas/i386/x86-64-mpx-inval-2.d: Add 32- and 16- - bit GPR forms of BNDCL, BNDCU, and BNDCN. Add RSP-as-index - Intel syntax forms of BNDMK, BNDSTX, and BNDLDX. - * gas/testsuite/gas/i386/x86-64-mpx-inval-2.l: Adjust. - -2017-02-22 Maciej W. Rozycki - - * ecoff.c (ecoff_directive_end) [md_flush_pending_output]: Call - `md_flush_pending_output'. - * config/tc-mips.c (s_mips_end) [md_flush_pending_output]: Call - `md_flush_pending_output' unconditionally. - * testsuite/gas/mips/debug-label-end-1.d: New test. - * testsuite/gas/mips/debug-label-end-2.d: New test. - * testsuite/gas/mips/debug-label-end-3.d: New test. - * testsuite/gas/mips/debug-label-end.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-02-22 Hans-Peter Nilsson - - * testsuite/gas/all/err-sizeof.s: Include cris*-*-* in the list of - targets yielding an error message matching "too complex". - -2017-02-22 Nick Clifton - - * testsuite/gas/arm/vcmp-noprefix-imm.d: Skip for non-ELF targets. - -2017-02-21 Jan Beulich - - * expr.c (operand): Handle missing operand to .startof.() and - .sizeof.(). - * testsuite/gas/all/err-sizeof.s: New. - -2017-02-20 Alan Modra - - PR 21118 - * NEWS: Revise powerpc register check. - * config/tc-ppc.c (ppc_optimize_expr, md_assemble): Make "invalid - register expression" a warning. - -2017-02-17 Maciej W. Rozycki - - * ecoff.c (ecoff_directive_ent, add_procedure): Handle `.aent'. - * config/obj-ecoff.c (obj_pseudo_table): Add "aent" entry. - * config/obj-elf.c (ecoff_debug_pseudo_table): Likewise. - * testsuite/gas/mips/aent-2.d: New test. - * testsuite/gas/mips/aent-mdebug.d: New test. - * testsuite/gas/mips/aent-mdebug-2.d: New test. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-02-15 Richard Sandiford - - * testsuite/gas/aarch64/sve-sysreg.s, - testsuite/gas/aarch64/sve-sysreg.d, - testsuite/gas/aarch64/sve-sysreg-invalid.d, - testsuite/gas/aarch64/sve-sysreg-invalid.l: New tests. - -2017-02-15 Richard Sandiford - - * doc/c-aarch64.texi: Fix sve entry. - -2017-02-15 Claudiu Zissulescu - - * config/tc-arc.c (md_convert_frag): Remove @pcl relocation - information from input expression. - (assemble_insn): Make sure pcrel is correctly set. - (arc_pcrel_adjust): Compensate for PCL rounding. - * testsuite/gas/arc/relax-add01.d: New file. - * testsuite/gas/arc/relax-add01.s: Likewise. - * testsuite/gas/arc/relax-add02.d: Likewise. - * testsuite/gas/arc/relax-add02.s: Likewise. - * testsuite/gas/arc/relax-add03.d: Likewise. - * testsuite/gas/arc/relax-add03.s: Likewise. - * testsuite/gas/arc/relax-add04.d: Likewise. - * testsuite/gas/arc/relax-add04.s: Likewise. - * testsuite/gas/arc/relax-ld01.d: Likewise. - * testsuite/gas/arc/relax-ld01.s: Likewise. - * testsuite/gas/arc/relax-ld02.d: Likewise. - * testsuite/gas/arc/relax-ld02.s: Likewise. - * testsuite/gas/arc/relax-mov01.d: Likewise. - * testsuite/gas/arc/relax-mov01.s: Likewise. - * testsuite/gas/arc/relax-mov02.d: Likewise. - * testsuite/gas/arc/relax-mov02.s: Likewise. - * testsuite/gas/arc/relax-mpy01.d: Likewise. - * testsuite/gas/arc/relax-mpy01.s: Likewise. - * testsuite/gas/arc/relax-sub01.d: Likewise. - * testsuite/gas/arc/relax-sub01.s: Likewise. - * testsuite/gas/arc/relax-sub02.d: Likewise. - * testsuite/gas/arc/relax-sub02.s: Likewise. - * testsuite/gas/arc/relax-sub03.d: Likewise. - * testsuite/gas/arc/relax-sub03.s: Likewise. - * testsuite/gas/arc/relax-sub04.d: Likewise. - * testsuite/gas/arc/relax-sub04.s: Likewise. - -2017-02-09 Vineet Gupta - - * testsuite/gas/arc/st.d: Update for 0xe having a name now - -2017-02-14 Alan Modra - - PR 21118 - * NEWS: Mention powerpc register checks. - * config/tc-ppc.c (struct pd_reg): Make value a short. Add flags. - (pre_defined_registers): Delete fpscr and pmr entries. Set - register type in flags. - (cr_names): Set type in flags. - (reg_name_search): Return pointer to struct pd_reg rather than value. - (register_name): Adjust to suit. Set X_md from flags. - (ppc_parse_name): Likewise. - (ppc_optimize_expr): New function. - (md_assemble): Verify expresion reg flags match operand. - * config/tc-ppc.h (md_optimize_expr): Define. - (ppc_optimize_expr): Declare. - -2017-02-14 Alan Modra - - * testsuite/gas/ppc/cell.s: Correct invalid registers. - * testsuite/gas/ppc/vle-simple-1.s: Likewise. - * testsuite/gas/ppc/vle-simple-2.s: Likewise. - -2017-02-13 Thomas Preud'homme - - * config/tc-arm.c (parse_ifimm_zero): Make prefix optional in unified - syntax. - * testsuite/gas/arm/vcmp-noprefix-imm.d: New file. - * testsuite/gas/arm/vcmp-noprefix-imm.s: New file. - -2017-02-10 Nicholas Piggin - - * testsuite/gas/ppc/power9.d : New tests. - -2017-02-02 Maciej W. Rozycki - - * doc/as.texinfo (Overview): Select MIPS options for man page - inclusion. - -2017-01-30 Maciej W. Rozycki - - * config/tc-mips.c (mips_ignore_branch_isa): New variable. - (options): Add OPTION_IGNORE_BRANCH_ISA and - OPTION_NO_IGNORE_BRANCH_ISA enum values. - (md_longopts): Add "mignore-branch-isa" and - "mno-ignore-branch-isa" options. - (md_parse_option): Handle OPTION_IGNORE_BRANCH_ISA and - OPTION_NO_IGNORE_BRANCH_ISA. - (fix_bad_cross_mode_branch_p): Return FALSE if - `mips_ignore_branch_isa' has been set. - (md_show_usage): Add `-mignore-branch-isa' and - `-mno-ignore-branch-isa'. - - * doc/as.texinfo (Target MIPS options): Add - `-mignore-branch-isa' and `-mno-ignore-branch-isa' options. - (-mignore-branch-isa, -mno-ignore-branch-isa): New options. - * doc/c-mips.texi (MIPS Options): Add `-mignore-branch-isa' and - `-mno-ignore-branch-isa' options. - - * testsuite/gas/mips/branch-local-ignore-2.d: New test. - * testsuite/gas/mips/branch-local-ignore-3.d: New test. - * testsuite/gas/mips/branch-local-ignore-n32-2.d: New test. - * testsuite/gas/mips/branch-local-ignore-n32-3.d: New test. - * testsuite/gas/mips/branch-local-ignore-n64-2.d: New test. - * testsuite/gas/mips/branch-local-ignore-n64-3.d: New test. - * testsuite/gas/mips/mips.exp: Run the new tests. - -2017-01-30 Maciej W. Rozycki - - * testsuite/gas/mips/branch-local-2.d: New test. - * testsuite/gas/mips/branch-local-3.d: New test. - * testsuite/gas/mips/branch-local-n32-2.d: New test. - * testsuite/gas/mips/branch-local-n32-3.d: New test. - * testsuite/gas/mips/branch-local-n64-2.d: New test. - * testsuite/gas/mips/branch-local-n64-3.d: New test. - * testsuite/gas/mips/mips.exp: Fold corresponding list tests - into the new tests. - -2017-01-27 Alexis Deruell - - PR 21056 - * testsuite/gas/tic6x/insns16-parallel.s: New test case. - * testsuite/gas/tic6x/insns16-parallel.d: New test driver. - -2017-01-25 Sebastian Huber - - * configure.tgt (aarch64*-*-rtems*): Remove. - (bfin-*-rtems*): Likewise. - (h8300-*-rtems*): Likewise. - (i386-*-rtems*): Likewise. - (m32c-*-rtems*): Likewise. - (m32r-*-rtems*): Likewise. - (m68k-*-rtems*): Likewise. - (mips-*-rtems*): Likewise. - (nios2-*-rtems*): Likewise. - (ppc-*-rtems*): Likewise. - (sh-*-rtems*): Likewise. - (sparc64-*-rtems*): Likewise. - (sparc-*-rtems*): Likewise. - (*-*-rtems*) Use ELF format. - -2017-01-25 Sebastian Huber - - * configure.tgt (arm-*-rtems*): Move to (arm-*-eabi*). - -2017-01-25 Sebastian Huber - - * configure.tgt (sh-*-rtemscoff*): Remove. - -2017-01-24 Sebastian Huber - - * configure.tgt (riscv*-*-*): Remove em=linux. - -2017-01-23 Sebastian Rasmussen - - PR gas/21072 - * asintl.h: Fix spelling mistakes and typos. - * atof-generic.c: Likewise. - * bit_fix.h: Likewise. - * config/atof-ieee.c: Likewise. - * config/bfin-defs.h: Likewise. - * config/bfin-parse.y: Likewise. - * config/obj-coff-seh.h: Likewise. - * config/obj-coff.c: Likewise. - * config/obj-evax.c: Likewise. - * config/obj-macho.c: Likewise. - * config/rx-parse.y: Likewise. - * config/tc-aarch64.c: Likewise. - * config/tc-alpha.c: Likewise. - * config/tc-arc.c: Likewise. - * config/tc-arm.c: Likewise. - * config/tc-avr.c: Likewise. - * config/tc-bfin.c: Likewise. - * config/tc-cr16.c: Likewise. - * config/tc-cris.c: Likewise. - * config/tc-crx.c: Likewise. - * config/tc-d10v.c: Likewise. - * config/tc-d30v.c: Likewise. - * config/tc-dlx.c: Likewise. - * config/tc-epiphany.c: Likewise. - * config/tc-frv.c: Likewise. - * config/tc-hppa.c: Likewise. - * config/tc-i370.c: Likewise. - * config/tc-i386-intel.c: Likewise. - * config/tc-i386.c: Likewise. - * config/tc-i960.c: Likewise. - * config/tc-ia64.c: Likewise. - * config/tc-m32r.c: Likewise. - * config/tc-m68hc11.c: Likewise. - * config/tc-m68k.c: Likewise. - * config/tc-mcore.c: Likewise. - * config/tc-mep.c: Likewise. - * config/tc-mep.h: Likewise. - * config/tc-metag.c: Likewise. - * config/tc-microblaze.c: Likewise. - * config/tc-mips.c: Likewise. - * config/tc-mmix.c: Likewise. - * config/tc-mn10200.c: Likewise. - * config/tc-mn10300.c: Likewise. - * config/tc-msp430.c: Likewise. - * config/tc-msp430.h: Likewise. - * config/tc-nds32.c: Likewise. - * config/tc-nds32.h: Likewise. - * config/tc-nios2.c: Likewise. - * config/tc-nios2.h: Likewise. - * config/tc-ns32k.c: Likewise. - * config/tc-pdp11.c: Likewise. - * config/tc-ppc.c: Likewise. - * config/tc-pru.c: Likewise. - * config/tc-rx.c: Likewise. - * config/tc-s390.c: Likewise. - * config/tc-score.c: Likewise. - * config/tc-score7.c: Likewise. - * config/tc-sh.c: Likewise. - * config/tc-sh64.c: Likewise. - * config/tc-sparc.c: Likewise. - * config/tc-tic4x.c: Likewise. - * config/tc-tic54x.c: Likewise. - * config/tc-v850.c: Likewise. - * config/tc-vax.c: Likewise. - * config/tc-visium.c: Likewise. - * config/tc-xgate.c: Likewise. - * config/tc-xtensa.c: Likewise. - * config/tc-z80.c: Likewise. - * config/tc-z8k.c: Likewise. - * config/te-vms.c: Likewise. - * config/xtensa-relax.c: Likewise. - * doc/as.texinfo: Likewise. - * doc/c-arm.texi: Likewise. - * doc/c-hppa.texi: Likewise. - * doc/c-i370.texi: Likewise. - * doc/c-i386.texi: Likewise. - * doc/c-m32r.texi: Likewise. - * doc/c-m68k.texi: Likewise. - * doc/c-mmix.texi: Likewise. - * doc/c-msp430.texi: Likewise. - * doc/c-nds32.texi: Likewise. - * doc/c-ns32k.texi: Likewise. - * doc/c-riscv.texi: Likewise. - * doc/c-rx.texi: Likewise. - * doc/c-s390.texi: Likewise. - * doc/c-tic6x.texi: Likewise. - * doc/c-tilegx.texi: Likewise. - * doc/c-tilepro.texi: Likewise. - * doc/c-v850.texi: Likewise. - * doc/c-xgate.texi: Likewise. - * doc/c-xtensa.texi: Likewise. - * dwarf2dbg.c: Likewise. - * ecoff.c: Likewise. - * itbl-ops.c: Likewise. - * listing.c: Likewise. - * macro.c: Likewise. - * po/gas.pot: Likewise. - * read.c: Likewise. - * struc-symbol.h: Likewise. - * symbols.h: Likewise. - * testsuite/gas/arc/relocs-errors.err: Likewise. - * write.c: Likewise. - -2017-01-23 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2017-01-20 Nick Clifton - - * config/tc-i386.c (parse_operands): Check for operand overflow - before setting the unspecified bit. - -2017-01-18 Maciej W. Rozycki - - PR gas/20649 - * config/tc-mips.c (pic_need_relax): Don't check for linkonce - symbols, remove the `segtype' parameter. - (mips_frob_file, md_estimate_size_before_relax): Adjust - accordingly. - (s_is_linkonce): Add an explanatory comment. - * testsuite/gas/mips/comdat-reloc.d: New test. - * testsuite/gas/mips/comdat-reloc.s: New test source. - * testsuite/gas/mips/mips.exp: Run the new test. - -2017-01-18 Szabolcs Nagy - - * testsuite/gas/arm/armv8_3-a-simd.s: Add vcmla tests. - * testsuite/gas/arm/armv8_3-a-simd.d: Update. - -2017-01-18 Bernhard Rosenkranzer - - PR 21059 - * config/bfin-lex.l: Support processing with flex 2.6.3. - * itbl-lex.l: Likewise. - -2017-01-18 Nathan Sidwell - - * as.h (gas_assert): Use abort. - (as_assert): Remove. - (signal_init): Declare. - * as.c (main): Call signal_init. - * messages.c: #include - (as_assert): Delete. - (as_abort): Allow NULL FILE. - (signal_crash): New. - (signal_init): Register fatal signal handlers. - * configure.ac: Check for strsignal. - * config.in: Rebuilt. - * configure: Rebuilt. - -2017-01-17 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2017-01-12 Igor Tsimbalist - - * config/tc-i386.c (cpu_arch): Add .avx512_vpopcntdq. - (cpu_noarch): Add noavx512_vpopcntdq. - * doc/c-i386.texi: Document avx512_vpopcntdq, noavx512_vpopcntdq. - * testsuite/gas/i386/i386.exp: Run AVX512_VPOPCNTDQ tests. - * testsuite/gas/i386/avx512_vpopcntdqd-intel.d: New file. - * testsuite/gas/i386/avx512_vpopcntdqd.d: Ditto. - * testsuite/gas/i386/avx512_vpopcntdqd.s: Ditto. - * testsuite/gas/i386/x86-64-avx512_vpopcntdqd-intel.d: Ditto. - * testsuite/gas/i386/x86-64-avx512_vpopcntdqd.d: Ditto. - * testsuite/gas/i386/x86-64-avx512_vpopcntdqd.s: Ditto. - -2017-01-12 Nick Clifton - - * read.c (temp_ilp): New function. Installs a temporary input - line pointer. - (restore_ilp): New function. Restores the original input line - pointer. - * read.h (temp_ilp): Prototype. - (restore_ilp): Prototype. - * stabs.c (dot_func_p): Use bfd_boolean type. - (generate_asm_file): Use temp_ilp and restore_ilp. - (stabs_generate_asm_lineno): Likewise. - (stabs_generate_asm_endfunc): Likewise. - -2017-01-11 Jeremy Soller - - * configure.tgt: Add entry for i386-redox. - -2017-01-10 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2017-01-10 Tristan Gingold - - * testsuite/gas/all/sleb128-8.d: Adjust test. - * testsuite/gas/all/gas.exp (test_cond): Likewise. - -2017-01-10 Tristan Gingold - - * read.c (emit_leb128_expr): Extended unsigned big number for - sleb128. - * testsuite/gas/all/gas.exp (test_cond): Add sleb128-8 test. - * testsuite/gas/all/sleb128.d: New test. - * testsuite/gas/all/sleb128.s: New test source. - -2017-01-09 Andrew Waterman - - * config/tc-riscv.c (append_insn): Don't eagerly apply relocations - against constants. - (md_apply_fix): Mark relocations against constants as "done." - -2017-01-09 Andrew Waterman - - * config/tc-riscv.c (append_insn): Don't eagerly apply relocations - against constants. - (md_apply_fix): Mark relocations against constants as "done." - -2017-01-09 Palmer Dabbelt - Kito Cheng - - * emulparams/elf32lriscv-defs.sh (INITIAL_READONLY_SECTIONS): - Removed. - (SDATA_START_SYMBOLS): Likewise. - -2017-01-09 Nick Clifton - - * po/sv.po: New Swedish translation. - * configure.ac (ALL_LINGUAS): Add sv. - * configure: Regenerate. - -2017-01-09 Andrew Waterman - - * config/tc-riscv.c (relaxed_branch_length): Use the long - sequence when the target is a weak symbol. - -2017-01-04 Szabolcs Nagy - - * config/tc-aarch64.c (aarch64_features): Add rcpc. - * doc/c-aarch64.texi (AArch64 Extensions): Document rcpc. - * testsuite/gas/aarch64/ldst-exclusive-armv8_3.d: Rename to ... - * testsuite/gas/aarch64/ldst-rcpc.d: This. - * testsuite/gas/aarch64/ldst-exclusive-armv8_3.s: Rename to ... - * testsuite/gas/aarch64/ldst-rcpc.s: This. - * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: New test. - -2017-01-04 Norm Jacobs - - PR gas/20992 - * configure.tgt: Treat sparcv9 as sparc64. - -2017-01-03 Kito Cheng - - * config/tc-riscv.c (riscv_set_arch): Whitelist the "q" ISA - extension. - (riscv_after_parse_args): Set FLOAT_ABI_QUAD when the Q ISA is - enabled and no other ABI is specified. - -2017-01-03 Dimitar Dimitrov - - * config/tc-pru.c (md_number_to_chars): Fix parameter to be - valueT, as declared in tc.h. - (md_apply_fix): Fix to work on 32-bit hosts. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gas/ChangeLog-2017 b/gas/ChangeLog-2017 new file mode 100644 index 00000000000..1aee83c9c73 --- /dev/null +++ b/gas/ChangeLog-2017 @@ -0,0 +1,4419 @@ +2017-12-28 Jim Wilson + + * testsuite/gas/riscv/priv-reg.d, testsuite/gas/riscv/priv-reg.s: New. + +2017-12-20 Jim Wilson + + * config/tc-riscv.c (risc_ip) : Add comment. + * testsuite/gas/riscv/c-nonzero-imm.d, + * testsuite/gas/riscv/c-nonzero-imm.l, + * testsuite/gas/riscv/c-nonzero-imm.s, + * testsuite/gas/riscv/c-nonzero-reg.d, + * testsuite/gas/riscv/c-nonzero-reg.l, + * testsuite/gas/riscv/c-nonzero-reg.s, + * testsuite/gas/riscv/c-zero-imm-64.d, + * testsuite/gas/riscv/c-zero-imm-64.s, + * testsuite/gas/riscv/c-zero-imm.d, testsuite/gas/riscv/c-zero-imm.s, + * testsuite/gas/riscv/c-zero-reg.d, + * testsuite/gas/riscv/c-zero-reg.s: New. + +2017-12-19 Tamar Christina + + PR 22559 + * config/tc-aarch64.c (vectype_to_qualifier): Support AARCH64_OPND_QLF_S_4B. + * gas/testsuite/gas/aarch64/dotproduct.d: Update disassembly. + +2017-12-19 Tamar Christina + + PR 22529 + * config/tc-aarch64.c (vectype_to_qualifier): Support AARCH64_OPND_QLF_V_4B. + * gas/testsuite/gas/aarch64/pr22529.s: New. + * gas/testsuite/gas/aarch64/pr22529.d: New. + * gas/testsuite/gas/aarch64/pr22529.l: New. + +2017-12-18 Nick Clifton + + PR 22493 + * config/tc-arm.c (encode_ldmstm): Do not use A2 encoding of the + PUSH insn when pushing the stack pointer. + +2017-12-18 Jan Beulich + + * config/tc-i386.c (regymm, regzmm): Delete. + (operand_type_register_match). Extend comment. Also handle some + memory operands here. Extend to cover .regsimd. + (build_vex_prefix): Derive vector_length from actual operand + size. + (process_operands, build_modrm_byte): Use .regsimd. + +2017-12-18 Jan Beulich + + * config/tc-i386.c (match_simd_size): New. + (match_mem_size): Use it. + (operand_size_match): Likewise. Split .reg and .acc checks. + (pi, check_VecOperands, match_template, check_byte_reg, + check_long_reg, check_qword_reg, build_modrm_byte, + parse_real_register): Replace .regxmm, .regymm, and .regzmm + checks. + (md_assemble): Qualify .acc check with .xmmword one. + (bad_implicit_operand): Delete. + (process_operands): Replace .firstxmm0 checks with .acc plus + .xmmword ones. Drop now pointless assertions. Convert .acc to + .regsimd. + * config/tc-i386-intel.c (i386_intel_simplify_register): Replace + .regxmm, .regymm, and .regzmm checks. + * testsuite/gas/i386/x86-64-specific-reg.l: Adjust expectations. + +2017-12-18 Jan Beulich + + * config/tc-i386.c (operand_type_check): Extend comment. + (match_reg_size): Also check .tbyte. + (match_mem_size): No longer check .tbyte here. + (md_assemble): Drop .floatacc check. + (check_byte_reg): Drop .floatreg and .floatacc checks. + (process_operands, parse_real_register): Replace .floatreg + check. + +2017-12-18 Jan Beulich + + * config/tc-i386.c (operand_type_check, pi): Switch .reg to + just .reg. + (operand_size_match): Qualify .anysize check with .reg one. + Extend .acc check to also cover .reg. + (operand_type_register_match): Drop m0 and m1 parameters. Switch + .reg to .byte/.word/.dword/.qword. Drop .acc special + handling. + (md_assemble): Expand .reg8 checks to .reg plus .bytes ones. + (optimize_imm, process_suffix, check_byte_reg, check_long_reg, + check_qword_reg, check_word_reg): Expand .reg checks to .reg + plus size ones. + (match_template): Drop arguments from calls to + operand_type_register_match(). + (build_modrm_byte, i386_addressing_mode, i386_index_check, + parse_real_register): Replace .reg checks. + * config/tc-i386-intel.c (i386_intel_simplify, + i386_intel_operand): Switch .reg16 to .word. + +2017-12-17 H.J. Lu + + PR gas/22623 + * gas/config/tc-i386.c (output_insn): Check pseudo prefix + without instruction. + * testsuite/gas/i386/i386.exp: Run inval-pseudo. + * testsuite/gas/i386/inval-pseudo.l: New file. + * testsuite/gas/i386/inval-pseudo.s: Likewise. + +2017-12-15 Jan Beulich + + * config/tc-i386.c (match_template): Add missing ! to + reg{x,y,z}mm checks in q- and l-suffix handling. + +2017-12-15 Jan Beulich + + * config/tc-i386.c (build_modrm_byte): Add missing ! to reg64 + check leading to abort(). + +2017-12-14 Nick Clifton + + * config/tc-m32c.c: Update address of FSF in copyright notice. + * config/tc-m32c.h: Likewise. + * config/tc-mt.c: Likewise. + * config/tc-mt.h: Likewise. + * config/tc-visium.c: Likewise. + * config/tc-visium.h: Likewise. + * testsuite/gas/rx/explode: Likewise. + +2017-12-13 Jim Wilson + + PR 22599 + * testsuite/gas/riscv/fsxxi.d, testsuite/gas/riscv/fsxxi.s: New. + +2017-12-13 Dimitar Dimitrov + + * testsuite/gas/pru/extern.s: New test for print of U16_PMEMM + relocation. + * testsuite/gas/pru/extern.d: New test driver. + +2017-12-12 Alan Modra + + PR 21118 + * config/tc-ppc.c (md_assemble): Don't mask register number. + +2017-12-07 Max Filippov + + * config/tc-xtensa.c (xg_order_trampoline_chain): Replace + xg_order_trampoline_chain_entry call with check for + canonicalized symbol equality and offset equality. + +2017-12-04 Alan Modra + + PR 22544 + * doc/as.texinfo (8byte): Correct. + +2017-12-04 Alan Modra + + * testsuite/gas/ppc/ppc.exp: Don't exclude VLE tests when little-endian. + * testsuite/gas/ppc/efs.d: Add -mbig to assembler options. + * testsuite/gas/ppc/efs2.d: Likewise. + * testsuite/gas/ppc/lsp-checks.d: Likewise. + * testsuite/gas/ppc/lsp.d: Likewise. + * testsuite/gas/ppc/spe.d: Likewise. + * testsuite/gas/ppc/spe2-checks.d: Likewise. + * testsuite/gas/ppc/spe2.d: Likewise. + * testsuite/gas/ppc/spe_ambiguous.d: Likewise. + * testsuite/gas/ppc/vle-mult-ld-st-insns.d: Likewise. + * testsuite/gas/ppc/vle-reloc.d: Likewise. + * testsuite/gas/ppc/vle-simple-1.d: Likewise. + * testsuite/gas/ppc/vle-simple-2.d: Likewise. + * testsuite/gas/ppc/vle-simple-3.d: Likewise. + * testsuite/gas/ppc/vle-simple-4.d: Likewise. + * testsuite/gas/ppc/vle-simple-5.d: Likewise. + * testsuite/gas/ppc/vle-simple-6.d: Likewise. + * testsuite/gas/ppc/vle.d: Likewise. + +2017-12-03 Jim Wilson + + * doc/c-riscv.texi (RISC-V-Directives): Move @section immediately after + @node. + +2017-12-01 Palmer Dabbelt + Jim Wilson + + * doc/as.texinfo (RISC-V): Alphabetize RISC-V entries. Change + RISC-V-Opts to RISC-V-Options. Delete redundant space. Add -fpic + and related options to option list. + * doc/c-riscv.texi: (RISC-V-Options): Renamed from RISC-V-Opts. + (RISC-V Options): Renamed from Options. Add missing period. + (-fpic): Also mention -fPIC. + (RISC-V Directives): New node. + +2017-12-01 Peter Bergner + + * config/tc-ppc.c (last_insn): Update type. + (insn_validate) : Likewise. + (ppc_setup_opcodes) : Likewise. + : Update types and printf format specifiers. + (ppc_insert_operand): Update return and argument types and remove + unneeded type casts. + : Update type. + (md_assemble): Remove unneeded type casts. + : Update type. + +2017-11-29 Jan Beulich + + * config/tc-i386.c (enum i386_error): Remove try_vector_disp8. + (mode_from_disp_size, build_modrm_byte, build_modrm_byte, + disp_size): Remove reference to .vec_disp8. + (output_disp): Likewise. Unconditionally use i.memshift. + (fits_in_vec_disp8): Rename to fits_in_disp8. + (type_names): Remove OPERAND_TYPE_VEC_DISP8 entry. + (optimize_disp): Use fits_in_disp8. + (check_VecOperands): Re-work (simplify) .disp8memshift + conditional handling. + +2017-11-29 Jan Beulich + + PR gas/21874 + * config/tc-i386-intel.c (i386_intel_simplify): Chain together + multiple segment override expressions. + (i386_intel_operand): Issue diagnostic for redundant segment + overrides. + * testsuite/gas/i386/intelok.e: New. + * testsuite/gas/i386/intelok.d: Reference intelok.e. + * testsuite/gas/i386/inval-seg.s: Add redundant override checks. + * testsuite/gas/i386/inval-seg.l: Adjust expectations. + +2017-11-29 Jim Wilson + Palmer Dabbelt + + * config/tc-riscv.c (riscv_frag_align_code): New local insn_alignment. + Early return if bytes less than or equal to insn_alignment. + * testsuite/gas/riscv/align-1.l: New. + * testsuite/gas/riscv/align-1.s: New. + * testsuite/gas/riscv/riscv.exp: Use run_dump_tests. Use run_list_test + for align-1. + + PR gas/22464 + * doc/c-i386.texi (-n): Clarify docs. + +2017-11-29 Renlin Li + + * config/tc-aarch64.c (reg_names): Fix IP1 register alias typo. + * testsuite/gas/aarch64/register_aliases.s: Add IP0 and IP1 tests. + * testsuite/gas/aarch64/register_aliases.d: Update. + +2017-11-29 Stefan Stroe + + * po/Make-in (datadir): Define as @datadir@. + (localedir): Define as @localedir@. + (gnulocaledir, gettextsrcdir): Use @datarootdir@. + +2017-11-29 Nick Clifton + + PR 22492 + * config/obj-elf.c (obj_elf_version): Use record_alignment rather + than bfd_set_section_alignment. + +2017-11-27 Andrew Waterman + Palmer Dabbelt + Jim Wilson + + * config/tc-riscv.c (riscv_handle_implicit_zero_offset): New. + (riscv_ip): Cases 'k', 'l', 'm', 'n', 'M', 'N', add call to + riscv_handle_implicit_zero_offset. At label load_store, replace + existing code with call to riscv_handle_implicit_zero_offset. + * testsuite/gas/riscv/c-ld.d, testsuite/gas/riscv/c-ld.s: New. + * testsuite/gas/riscv/c-lw.d, testsuite/gas/riscv/c-lw.s: New. + * testsuite/gas/riscv/riscv.exp: Run new tests. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (find_trampoline_seg): Add static variable + that caches the result of the most recent search. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (trampoline_chain_entry, trampoline_chain) + (trampoline_chain_index): New structures. + (trampoline_index): Add chain_index field. + (xg_order_trampoline_chain_entry, xg_sort_trampoline_chain) + (xg_find_chain_entry, xg_get_best_chain_entry) + (xg_order_trampoline_chain, xg_get_trampoline_chain) + (xg_find_best_eq_target, xg_add_location_to_chain) + (xg_create_trampoline_chain, xg_get_single_symbol_slot): New + functions. + (xg_relax_fixups): Call xg_find_best_eq_target to adjust jump + target to point to an existing jump. Call + xg_create_trampoline_chain to create new jump target. Call + xg_add_location_to_chain to add newly created trampoline jump + to the corresponding chain. + (add_jump_to_trampoline): Extract loop searching for a single + slot with a symbol into a separate function, replace that code + with a call to that function. + (relax_frag_immed): Call xg_find_best_eq_target to adjust jump + target to point to an existing jump. + * testsuite/gas/xtensa/all.exp: Add trampoline-2 test. + * testsuite/gas/xtensa/trampoline.d: Adjust absolute addresses + as many duplicate trampoline chains are now coalesced. + * testsuite/gas/xtensa/trampoline.s: Add _nop so that objdump + stays in sync with instruction stream. + * testsuite/gas/xtensa/trampoline-2.l: New test result file. + * testsuite/gas/xtensa/trampoline-2.s: New test source file. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (search_trampolines, get_best_trampoline): + Remove definitions. + (xg_find_best_trampoline_for_tinsn): New function. + (relax_frag_immed): Replace call to get_best_trampoline with a + call to xg_find_best_trampoline_for_tinsn. + * testsuite/gas/xtensa/trampoline.d: Adjust absolute addresses + as the placement of trampolines for relaxed branches has been + changed. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (trampoline_index): New structure. + (trampoline_seg): Replace trampoline list with trampoline index. + (xg_find_trampoline, xg_add_trampoline_to_index) + (xg_remove_trampoline_from_index, xg_add_trampoline_to_seg) + (xg_is_trampoline_frag_full, xg_get_fulcrum) + (xg_find_best_trampoline, xg_relax_fixup, xg_relax_fixups) + (xg_is_relaxable_fixup): New functions. + (J_MARGIN): New macro. + (xtensa_create_trampoline_frag): Use xg_add_trampoline_to_seg + instead of open-coded addition to the linked list. + (dump_trampolines): Iterate through the trampoline_seg::index. + (cached_fixupS, cached_fixup, fixup_cacheS, fixup_cache) + (fixup_order, xtensa_make_cached_fixup) + (xtensa_realloc_fixup_cache, xtensa_cache_relaxable_fixups) + (xtensa_find_first_cached_fixup, xtensa_delete_cached_fixup) + (xtensa_add_cached_fixup, check_and_update_trampolines): Remove + definitions. + (xg_relax_trampoline): Extract logic into separate functions, + replace body with a call to xg_relax_fixups. + (search_trampolines): Replace search in linked list with search + in index. Change data type of address-tracking variables from + int to offsetT. Replace abs with labs. + (xg_append_jump): Finish the trampoline frag if it's full. + (add_jump_to_trampoline): Remove trampoline frag from the index + if the frag is full. + * config/tc-xtensa.h (xtensa_frag_type): Remove next_trampoline. + * testsuite/gas/xtensa/trampoline.d: Adjust absolute addresses + as the placement of trampolines has slightly changed. + * testsuite/gas/xtensa/trampoline.s: Add _nop so that objdump + stays in sync with instruction stream. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (init_trampoline_frag): Replace pointer to + struct trampoline_frag parameter with pointer to fragS. + (xg_append_jump): Remove jump_around parameter. + (struct trampoline_frag): Remove. + (struct trampoline_seg): Change type of trampoline_list from + struct trampoline_frag to fragS. + (xtensa_create_trampoline_frag): Don't allocate struct + trampoline_frag. Initialize new fragS::tc_frag_data fields. + (dump_trampolines, xg_relax_trampoline, search_trampolines) + (get_best_trampoline, init_trampoline_frag) + (add_jump_to_trampoline, relax_frag_immed): Replace pointer to + struct trampoline_frag with a pointer to fragS. + (xg_append_jump): Remove jump_around parameter, use + fragS::tc_frag_data.jump_around_fix instead. + (xg_relax_trampoline, init_trampoline_frag) + (add_jump_to_trampoline): Don't pass jump_around parameter to + xg_append_jump. + * config/tc-xtensa.h (struct xtensa_frag_type): Add new fields: + needs_jump_around, next_trampoline and jump_around_fix. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (find_trampoline_seg): Move above the first + use. + (xtensa_create_trampoline_frag): Replace trampoline seg search + code with a call to find_trampoline_seg. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (xg_append_jump): New function. + (xg_relax_trampoline, init_trampoline_frag) + (add_jump_to_trampoline): Replace trampoline jump assembling + code with a call to xg_append_jump. + +2017-11-27 Max Filippov + + * config/tc-xtensa.c (xg_relax_trampoline): New function. + (xtensa_relax_frag): Replace trampoline relaxation code with a + call to xg_relax_trampoline. + +2017-11-27 Nick Clifton + + PR 22492 + * config/obj-elf.c (obj_elf_version): Set the alignment of the + .note section. + +2017-11-26 H.J. Lu + + * testsuite/gas/i386/sse-noavx.s: Add tests for fisttps and + fisttpl. + * testsuite/gas/i386/x86-64-sse-noavx.s: Likewise. + * testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Updated. + * testsuite/gas/i386/sse-noavx.d: Likewise. + * testsuite/gas/i386/x86-64-sse-noavx.d: Likewise. + +2017-11-24 Jim Wilson + + * write.h (FAKE_LABEL_CHAR): Expand comment. + +2017-11-24 Jan Beulich + + * config/tc-i386.c (check_VecOperations): Check register type + for masking. Quote the actual register name in the respective + diagnostic. Check {z} wasn't specified on its own. + * testsuite/gas/i386/inval-avx512f.s, + testsuite/gas/i386/x86-64-inval-avx512f.s: Add further bad + masking tests. + * testsuite/gas/i386/inval-avx512f.l, + testsuite/gas/i386/x86-64-inval-avx512f.l: Adjust expectations. + +2017-11-24 Jan Beulich + + * testsuite/gas/i386/intel.d, testsuite/gas/i386/opcode.d, + testsuite/gas/i386/opcode-suffix.d, testsuite/gas/i386/sse3.d, + testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/x86-64-sse3.d, + testsuite/gas/i386/x86-64-sse-noavx.d, + testsuite/gas/i386/ilp32/x86-64-sse3.d, + testsuite/gas/i386/ilp32/x86-64-sse-noavx.d: Adjust expectations. + +2017-11-23 Jim Wilson + + * testsuite/gas/all/err-fakelabel.s (dg-error): Also accept fatal error + string. + + * as.c (INITIALIZING_EMULS): Define. + * config/obj-multi.h (FAKE_LABEL_NAME): When INITIALIZING_EMULS set, + don't define it. + +2017-11-23 Igor Tsimbalist + + * testsuite/gas/i386/avx512f_vaes-intel.d: Regenerate. + * testsuite/gas/i386/avx512f_vaes.d: Likewise. + * testsuite/gas/i386/avx512f_vaes-wig1-intel.d: Likewise. + * testsuite/gas/i386/avx512f_vaes-wig1.d: Likewise. + * testsuite/gas/i386/avx512vl_vaes-intel.d: Likewise. + * testsuite/gas/i386/avx512vl_vaes.d: Likewise. + * testsuite/gas/i386/x86-64-avx512f_vaes.s: Add instructions with + disp8*N. + * testsuite/gas/i386/x86-64-avx512f_vaes-intel.d: Regenerate. + * testsuite/gas/i386/x86-64-avx512f_vaes.d: Likewise. + * testsuite/gas/i386/x86-64-avx512f_vaes-wig.s: Add instructions with + disp8*N. + * testsuite/gas/i386/x86-64-avx512f_vaes-wig1-intel.d: Regenerate. + * testsuite/gas/i386/x86-64-avx512f_vaes-wig1.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_vaes-intel.d: Regenerate. + * testsuite/gas/i386/x86-64-avx512vl_vaes.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_vaes-wig.s: Add instructions with + disp8*N. + * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1-intel.d: Regenerate. + * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1.d: Regenerate. + +2017-11-23 Jan Beulich + + * tc-i386.c (check_VecOperands): Don't clear .disp16. + * testsuite/gas/i386/avx512f.s: Add 16-bit addressing tests. + * testsuite/gas/i386/avx512f.d, + testsuite/gas/i386/avx512f-intel.d: Adjust expectations. + +2017-11-23 Jan Beulich + + PR gas/22441 + * config/tc-i386.c (build_modrm_byte): Add address override + prefix checks alongside 64-bit mode ones. + * testsuite/gas/i386/reloc64.s: Add 32-bit signed/unsigned + relocation cases. + * testsuite/gas/i386/reloc64.d: Adjust expectations. + +2017-11-23 Jan Beulich + + * config/tc-i386.c (build_modrm_byte): Drop VSIB handling from + code also setting fake_zero_displacement. + +2017-11-23 Jan Beulich + + * testsuite/gas/i386/arch-4.s: Correct ud1 and ud2b. Add ud0. + * testsuite/gas/i386/intel.s: Test ud2 instead of ud2b. + * testsuite/gas/i386/opcode.s: Likewise. + * testsuite/gas/i386/arch-4.d, testsuite/gas/i386/intel.d, + testsuite/gas/i386/opcode.d, testsuite/gas/i386/opcode-intel.d, + testsuite/gas/i386/opcode-suffix.d: Adjust expectations. + +2017-11-23 Jan Beulich + + * config/tc-i386-intel.c (i386_intel_operand): Don't call + as_bad() if a prior error was already reported. + * testsuite/gas/i386/inval-avx512f.l, + testsuite/gas/i386/x86-64-inval-avx512f.l: Adjust expectations. + +2017-11-22 Jim Wilson + + * as.c: Include write.h. + (common_emul_init): Use FAKE_LABEL_NAME. + * ecoff.c (add_file, ecoff_directive_end, ecoff_directive_loc): + Likewise. + (ecoff_build_symbols): Use FAKE_LABEL_CHAR. + * expr.c (get_symbol_name): Use FAKE_LABEL_CHAR. Accept only if + input_from_string is TRUE. + * read.c (input_from_string): New. + (read_symbol_name): Use FAKE_LABEL_CHAR. Accept only if + input_from_string is TRUE. + (temp_ilp): Set input_from_string to TRUE. + (restore_ilp): Set input_from_string to FALSE. + * read.h (input_from_string): Declare. + * symbols.c: Include write.h + (S_IS_LOCAL): Check for FAKE_LABEL_CHAR. + (symbol_relc_make_sym): Fix comment refering to default fake label + string. + * write.h (FAKE_LABEL_CHAR): New. + * config/tc-riscv.h (FAKE_LABEL_CHAR): Define. + * testsuite/gas/all/err-fakelabel.s: New. + + * doc/as.texinfo (.align): Change some to most for text nop fill. + (.balign, .p2align): Likewise. + +2017-11-22 Thomas Preud'homme + + * config/tc-arm.c (arm_reg_type): Comment on the link with + reg_expected_msgs. + (reg_expected_msgs): Initialize using array designators with + arm_reg_type index. + +2017-11-22 Claudiu Zissulescu + + * testsuite/gas/arc/hregs-err.s: New test. + +2017-11-21 H.J. Lu + + PR gas/22464 + * testsuite/gas/i386/align-1.s: New file. + * testsuite/gas/i386/align-1a.d: Likewise. + * testsuite/gas/i386/align-1b.d: Likewise. + * testsuite/gas/i386/i386.exp: Run align-1a and align-1b. + +2017-11-21 Claudiu Zissulescu + + * testsuite/gas/arc/b.d : Update test. + * testsuite/gas/arc/bl.d: Likewise. + * testsuite/gas/arc/jli-1.d: Likewise. + * testsuite/gas/arc/lp.d: Likewise. + * testsuite/gas/arc/pcl-relocs.d: Likewise. + * testsuite/gas/arc/pcrel-relocs.d: Likewise. + * testsuite/gas/arc/pic-relocs.d: Likewise. + * testsuite/gas/arc/plt-relocs.d: Likewise. + * testsuite/gas/arc/pseudos.d: Likewise. + * testsuite/gas/arc/relax-avoid2.d: Likewise. + * testsuite/gas/arc/relax-avoid3.d: Likewise. + * testsuite/gas/arc/relax-b.d: Likewise. + * testsuite/gas/arc/tls-relocs.d: Likewise. + * testsuite/gas/arc/relax-add01.d: Likewise. + * testsuite/gas/arc/relax-add04.d: Likewise. + * testsuite/gas/arc/relax-ld01.d: Likewise. + * testsuite/gas/arc/relax-sub01.d: Likewise. + * testsuite/gas/arc/relax-sub02.d: Likewise. + * testsuite/gas/arc/relax-sub04.d: Likewise. + * testsuite/gas/arc/pcl-print.s: New file. + * testsuite/gas/arc/pcl-print.d: Likewise. + * testsuite/gas/arc/nps400-12.d: Likewise. + +2017-11-21 Alan Modra + + * config/tc-xtensa.c (finish_vinsn): Avoid multiple ngettext calls + in error message. + +2017-11-20 Alan Modra + + * testsuite/gas/i386/x86-64-reg-bad.l: Accept trailing padding. + +2017-11-16 Tamar Christina + + * config/tc-aarch64.c (fp16fml): New. + * doc/c-aarch64.texi (fp16fml): New. + * testsuite/gas/aarch64/armv8_2-a-crypto-fp16.d (fp16): Make fp16fml. + * testsuite/gas/aarch64/armv8_3-a-crypto-fp16.d (fp16): Make fp16fml. + +2017-11-16 Tamar Christina + + * opcodes/aarch64-tbl.h + (aarch64_feature_crypto): Add ARCH64_FEATURE_SIMD and AARCH64_FEATURE_FP. + (aarch64_feature_crypto_v8_2, aarch64_feature_sm4): Likewise. + (aarch64_feature_sha3): Likewise. + +2017-11-16 Tamar Christina + + * doc/c-aarch64.texi (armv8.4-a, sha2, sha3, sm4): New. + (dotprod): Update default note. + +2017-11-16 Tamar Christina + + * testsuite/gas/aarch64/armv8_4-a-illegal.d: New. + * testsuite/gas/aarch64/armv8_4-a-illegal.l: New. + * testsuite/gas/aarch64/armv8_4-a-illegal.s: New. + * testsuite/gas/aarch64/armv8_4-a.d: New. + * testsuite/gas/aarch64/armv8_4-a.s: New. + * testsuite/gas/aarch64/armv8_2-a-crypto-fp16.s: New. + * testsuite/gas/aarch64/armv8_2-a-crypto-fp16.d: New. + * testsuite/gas/aarch64/armv8_3-a-crypto-fp16.d: New. + * testsuite/gas/aarch64/armv8_4-a-crypto-fp16.d: New. + * testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.s: New. + * testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.l: New. + * testsuite/gas/aarch64/armv8_2-a-crypto-fp16-illegal.d: New. + +2017-11-16 Jan Beulich + + * testsuite/gas/i386/noextreg.s: Add tests with register index + bit 3 set. + * testsuite/gas/i386/noextreg.d: Adjust expectations. + +2017-11-16 Jan Beulich + + * config/tc-i386.c (process_suffix): Ignore .no_qsuf outside of + 64-bit mode. + * testsuite/gas/i386/ptwrite.s: Add test for memory operand + without DWORD PTR. + * testsuite/gas/i386/ptwrite.d, + testsuite/gas/i386/ptwrite-intel.d: Adjust expectations. + +2017-11-15 H.J. Lu + + * testsuite/gas/i386/noextreg.s: Replace .code64/.code32 and + 64-bit instructions with .byte. Remove ELF directive. + +2017-11-15 Tamar Christina + + * config/tc-arm.c (arm_ext_fp16_fml, fp16fml): New. + (do_neon_fmac_maybe_scalar_long): Use arm_ext_fp16_fml. + * doc/c-arm.texi (fp16, fp16fml): New. + * testsuite/gas/arm/armv8_2-a-fp16.d (fp16): Make fp16fml. + * testsuite/gas/arm/armv8_3-a-fp16.d (fp16): Make fp16fml. + * testsuite/gas/arm/armv8_2-a-fp16-illegal.d (fp16): Make fp16fml. + * testsuite/gas/arm/armv8_2-a-fp16-thumb2.d (fp16): Make fp16fml. + +2017-11-15 Nick Clifton + + PR 15152 + * testsuite/gas/avr/large-debug-line-table.d: Update expected + output. + * testsuite/gas/elf/dwarf2-11.d: Likewise. + * testsuite/gas/elf/dwarf2-12.d: Likewise. + * testsuite/gas/elf/dwarf2-13.d: Likewise. + * testsuite/gas/elf/dwarf2-14.d: Likewise. + * testsuite/gas/elf/dwarf2-15.d: Likewise. + * testsuite/gas/elf/dwarf2-16.d: Likewise. + * testsuite/gas/elf/dwarf2-17.d: Likewise. + * testsuite/gas/elf/dwarf2-18.d: Likewise. + * testsuite/gas/elf/dwarf2-5.d: Likewise. + * testsuite/gas/elf/dwarf2-6.d: Likewise. + * testsuite/gas/elf/dwarf2-7.d: Likewise. + +2017-11-15 Jan Beulich + + * testsuite/gas/i386/noextreg.s: Add tests for VEX-encoded GPR + insns with VEX.W set. + * testsuite/gas/i386/noextreg.d: Adjust expectations. + +2017-11-15 Jan Beulich + + * testsuite/gas/i386/noextreg.{s,d}: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2017-11-15 Jan Beulich + + * testsuite/gas/i386/x86-64-reg.s: Add extended byte reg tests. + * testsuite/gas/i386/x86-64-reg.d, + testsuite/gas/i386/x86-64-reg-intel.d, + testsuite/gas/i386/ilp32/x86-64-reg.d, + testsuite/gas/i386/ilp32/x86-64-reg-intel.d: Adjust + expectations. + + * testsuite/gas/i386/x86-64-reg-bad.{s,l}: New. + * testsuite/gas/i386/i386.exp: Run new test. + +2017-11-14 Jim Wilson + + * testsuite/gas/lns/lns.exp (lns-common-1): Add riscv*-*-* to alt list. + +2017-11-14 Jan Beulich + + * testsuite/gas/i386/x86-64-xop.d, testsuite/gas/i386/xop.d, + testsuite/gas/i386/xop32reg.d: Adjust expectations. + +2017-11-14 Jan Beulich + + * testsuite/gas/i386/avx512bw.s: Add vpcmp* pseudo tests. + * testsuite/gas/i386/avx512bw_vl.s: Likewise. + * testsuite/gas/i386/avx512bw.d, testsuite/gas/i386/avx512bw-intel.d, + testsuite/gas/i386/avx512bw_vl.d, + testsuite/gas/i386/avx512bw_vl-intel.d: Adjust expectations. + +2017-11-14 Jan Beulich + + * testsuite/gas/i386/string-ok.s: Add a few more valid patterns. + Move bogus tests ... + * testsuite/gas/i386/string-bad.s: ... here. + * testsuite/gas/i386/string-bad.l: Adjust expectations. + * testsuite/gas/i386/string-ok.d: Likewise. + * testsuite/gas/i386/string-ok.e: Likewise. + +2017-11-13 Jan Beulich + + * config/tc-aarch64.c (R_Z_BHSDQ_VZP): Rename to ... + (R_Z_SP_BHSDQ_VZP): ... and include both stack pointer variants. + +2017-11-13 Jan Beulich + + * testsuite/gas/ia64/group-1.d: Adjust expectations. + * testsuite/gas/ia64/group-2.d: Likewise. + * testsuite/gas/ia64/xdata.d: Likewise. + +2017-11-13 Jan Beulich + + * config/tc-i386.c (process_suffix): Treat .shiftcount just like + .inoutportreg. + * testsuite/gas/i386/inval.s: Add ambiguous shift/rotate cases. + * testsuite/gas/i386/inval.l: Adjust expectations. + +2017-11-13 Jan Beulich + + * config/tc-i386-intel.c (i386_intel_simplify_register): Also + recognize RegRiz/RegEiz as index-only registers. + * testsuite/gas/i386/intel.s: Add tests exercising base/index + swapping. + * testsuite/gas/i386/intel.d: Adjust expectations. + +2017-11-13 Jan Beulich + + * config/tc-i386.c (i386_index_check): Break out ... + (i386_addressing_mode): ... this new function. + * config/tc-i386-intel.c (i386_intel_operand): Do base/index + swapping and the setting of .baseindex earlier. Call + i386_addressing_mode. + * testsuite/gas/i386/x86-64-inval.s: Add out of range + displacement case. + * testsuite/gas/i386/x86-64-inval.l: Adjust expectations. + +2017-11-09 Jim Wilson + + * testsuite/gas/elf/dwarf2-10.l: Accept optional line number in error. + +2017-11-06 Tamar Christina + + * gas/testsuite/gas/aarch64/dotproduct_armv8_4.s: New. + * gas/testsuite/gas/aarch64/dotproduct_armv8_4.d: New. + +2017-11-09 Tamar Christina + + * gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.d: New. + * gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.l: New. + * gas/testsuite/gas/aarch64/armv8_4-a-registers-illegal.s: New. + * gas/testsuite/gas/aarch64/armv8_4-a-registers.d: New. + * gas/testsuite/gas/aarch64/armv8_4-a-registers.s: New. + +2017-11-09 Tamar Christina + + * config/tc-aarch64.c (process_omitted_operand): + Add AARCH64_OPND_Va, AARCH64_OPND_SM3_IMM2 + and AARCH64_OPND_IMM_2. + (parse_operands): Add AARCH64_OPND_Va, AARCH64_OPND_SM3_IMM2, + AARCH64_OPND_IMM_2, AARCH64_OPND_MASK + and AARCH64_OPND_ADDR_OFFSET. + +2017-11-09 Tamar Christina + + * config/tc-aarch64.c (aarch64_arch_option_table): Add armv8.4-a. + (aarch64_features): Add SM4 and SHA3. + +2017-11-08 Tamar Christina + + * config/tc-aarch64.c + (aarch64_features): Include AES and SHA2 in CRYPTO. + Add SHA2 and AES. + +2017-11-08 Jiong Wang + Tamar Christina + + * config/tc-arm.c (arm_extensions): + (arm_archs): New entry for "armv8.4-a". + Add FPU_ARCH_DOTPROD_NEON_VFP_ARMV8. + (arm_ext_v8_2): New variable. + (enum arm_reg_type): New enumeration REG_TYPE_NSD. + (reg_expected_msgs): New entry for REG_TYPE_NSD. + (parse_typed_reg_or_scalar): Handle REG_TYPE_NSD. + (parse_scalar): Support REG_TYPE_VFS. + (enum operand_parse_code): New enumerations OP_RNSD and OP_RNSD_RNSC. + (parse_operands): Handle OP_RNSD and OP_RNSD_RNSC. + (NEON_SHAPE_DEF): New entries for DHH and DHS. + (neon_scalar_for_fmac_fp16_long): New function to generate Rm encoding + for new FP16 instructions in ARMv8.2-A. + (do_neon_fmac_maybe_scalar_long): New function to encode new FP16 + instructions in ARMv8.2-A. + (do_neon_vfmal): Wrapper function for vfmal. + (do_neon_vfmsl): Wrapper function for vfmsl. + (insns): New entries for vfmal and vfmsl. + * doc/c-arm.texi (-march): Document "armv8.4-a". + * testsuite/gas/arm/dotprod-mandatory.d: New test. + * testsuite/gas/arm/armv8_2-a-fp16.s: New test source. + * testsuite/gas/arm/armv8_2-a-fp16-illegal.s: New test source. + * testsuite/gas/arm/armv8_2-a-fp16.d: New test. + * testsuite/gas/arm/armv8_3-a-fp16.d: New test. + * testsuite/gas/arm/armv8_4-a-fp16.d: New test. + * testsuite/gas/arm/armv8_2-a-fp16-thumb2.d: New test. + * testsuite/gas/arm/armv8_2-a-fp16-illegal.d: New test. + * testsuite/gas/arm/armv8_2-a-fp16-illegal.l: New error file. + +2017-11-08 Alan Modra + + * config/tc-xtensa.c (finish_vinsn): Properly pluralize error message. + +2017-11-07 Jim Wilson + + * config/tc-riscv.c (append_insn): Call frag_wane and frag_new at + end for linker optimizable relocs. + * testsuite/gas/riscv/eh-relocs.d: New. + * testsuite/gas/riscv/eh-relocs.s: New. + * testsuite/gas/riscv/riscv.exp: Run eh-relocs test. + +2017-11-07 Palmer Dabbelt + + * testsuite/gas/riscv/satp.d: New test. + testsuite/gas/riscv/satp.s: Likewise. + testsuite/gas/riscv/riscv.exp: Likewise. + config/tc-riscv.c (md_begin): Handle CSR aliases. + +2017-11-07 Tamar Christina + + * config/tc-arm.c (arm_cpus): + Change FPU_ARCH_CRYPTO_NEON_VFP_ARMV8 + into FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_DOTPROD. + +2017-11-07 Alan Modra + + * read.c (assemble_one, s_bundle_unlock): Formatting. + Consistently add comma and "bytes" to error message. + * testsuite/gas/i386/bundle-bad.l: Adjust to suit. + +2017-11-07 Alan Modra + + * testsuite/gas/arm/got_prel.d, + * testsuite/gas/elf/dwarf2-1.d, + * testsuite/gas/elf/dwarf2-2.d, + * testsuite/gas/elf/dwarf2-3.d, + * testsuite/gas/elf/dwarf2-5.d, + * testsuite/gas/elf/dwarf2-6.d, + * testsuite/gas/i386/debug1.d, + * testsuite/gas/i386/dw2-compress-1.d, + * testsuite/gas/i386/dw2-compress-3a.d, + * testsuite/gas/i386/dw2-compress-3b.d, + * testsuite/gas/i386/dw2-compressed-1.d, + * testsuite/gas/i386/dw2-compressed-3a.d, + * testsuite/gas/i386/dw2-compressed-3b.d, + * testsuite/gas/i386/ilp32/x86-64-localpic.d, + * testsuite/gas/i386/localpic.d, + * testsuite/gas/i386/x86-64-localpic.d, + * testsuite/gas/ia64/pr13167.d, + * testsuite/gas/mips/loc-swap-2.d, + * testsuite/gas/mips/loc-swap.d, + * testsuite/gas/mips/micromips@loc-swap-2.d, + * testsuite/gas/mips/micromips@loc-swap.d, + * testsuite/gas/mips/mips16-dwarf2-n32.d, + * testsuite/gas/mips/mips16-dwarf2.d, + * testsuite/gas/mips/mips16@loc-swap-2.d, + * testsuite/gas/mips/mips16@loc-swap.d, + * testsuite/gas/mips/mips16e@loc-swap.d, + * testsuite/gas/mmix/bspec-1.d, + * testsuite/gas/mmix/bspec-2.d, + * testsuite/gas/tic6x/unwind-1.d, + * testsuite/gas/tic6x/unwind-2.d, + * testsuite/gas/tic6x/unwind-3.d: Update for pluralization + fixes. + +2017-11-07 Alan Modra + + * as.c (main): Properly pluralize messages. + * frags.c (frag_grow): Likewise. + * read.c (emit_expr_with_reloc, emit_expr_fix): Likewise. + (parse_bitfield_cons): Likewise. + * write.c (fixup_segment, compress_debug, write_contents): Likewise. + (relax_segment): Likewise. + * config/tc-arm.c (s_arm_elf_cons): Likewise. + * config/tc-cr16.c (l_cons): Likewise. + * config/tc-i370.c (i370_elf_cons): Likewise. + * config/tc-m68k.c (m68k_elf_cons): Likewise. + * config/tc-msp430.c (msp430_operands): Likewise. + * config/tc-s390.c (s390_elf_cons, s390_literals): Likewise. + * config/tc-mcore.c (md_apply_fix): Likewise. + * config/tc-tic54x.c (md_assemble): Likewise. + * config/tc-xtensa.c (xtensa_elf_cons): Likewise. + (xg_expand_assembly_insn): Likewise. + * config/xtensa-relax.c (build_transition): Likewise. + +2017-11-07 Alan Modra + + * asintl.h (textdomain, bindtextdomain): Use safer "do nothing". + (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. + +2017-11-03 Siddhesh Poyarekar + Jim Wilson + + * config/tc-aarch64.c (aarch64_cpus): Add saphira. + * doc/c-aarch64.texi: Likewise. + +2017-11-02 Thomas Preud'homme + + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d: Add + --disassembler-options=force-thumb to objdump options. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d: Likewise. + +2017-11-01 James Bowman + + * config/tc-ft32.c (md_assemble): Add relaxation reloc + BFD_RELOC_FT32_RELAX. + (md_longopts): Add "norelax" and "no-relax". + (md_apply_fix): Add reloc BFD_RELOC_FT32_DIFF32. + (relaxable_section, ft32_validate_fix_sub, ft32_force_relocation, + ft32_allow_local_subtract): New function. + * config/tc-ft32.h: Remove unused MD_PCREL_FROM_SECTION. + * testsuite/gas/ft32/insnsc.s: New test exercising all FT32B + shortcodes. + * testsuite/gas/ft32/insnsc.d: New driver file. + * testsuite/gas/all/gas.exp: Update. + * testsuite/gas/ft32/ft32.exp: Run the new test. + * testsuite/gas/ft32/insn.d: Update. + * testsuite/gas/elf/dwarf2-11.d: Update. + * testsuite/gas/elf/dwarf2-12.d: Update. + * testsuite/gas/elf/dwarf2-13.d: Update. + * testsuite/gas/elf/dwarf2-14.d: Update. + * testsuite/gas/elf/dwarf2-15.d: Update. + * testsuite/gas/elf/dwarf2-16.d: Update. + * testsuite/gas/elf/dwarf2-17.d: Update. + * testsuite/gas/elf/dwarf2-18.d: Update. + * testsuite/gas/elf/dwarf2-3.d: Update. + * testsuite/gas/elf/dwarf2-5.d: Update. + * testsuite/gas/elf/dwarf2-7.d: Update. + +2017-11-01 Thomas Preud'homme + + * config/tc-arm.c (arm_ext_v2): Define to ARM_EXT_V2 feature bit. + * testsuite/gas/arm/copro.s: Split into + * testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus.s: This while + changing it to unified syntax and + * testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus.s: this and ... + * testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus.s: This and ... + * testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus.s: This. + * testsuite/gas/arm/copro.d: Split into ... + * testsuite/gas/arm/copro-arm_v2plus-arm_v2.d: This but target ARMv2 + and ... + * testsuite/gas/arm/copro-arm_v5plus-arm_v5.d: this but target ARMv5 + and ... + * testsuite/gas/arm/copro-arm_v5teplus-arm_v5te.d: This but target + ARMv5TE and ... + * testsuite/gas/arm/copro-arm_v6plus-arm_v6.d: This but target ARMv6. + * testsuite/gas/arm/copro-arm_v2plus-arm_v1.d: New testcase. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d: New testcase. + * testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus-unavail.l: Expected + errors for the above two testcases. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d: New testcase. + * testsuite/gas/arm/copro-arm_v5plus-arm_v4.d: New testcase. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d: New testcase. + * testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus-unavail.l: + Expected errors for the above two testcases. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d: New testcase. + * testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d: New testcase. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d: New testcase. + * testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus-unavail.l: + Expected errors for the above two testcases. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-3.d: New testcase. + * testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d: New testcase. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d: New testcase. + * testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus-unavail.l: + Expected errors for the above two testcases. + * testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-4.d: New testcase. + +2017-10-26 H.J. Lu + + PR gas/22352 + * config/tc-i386.c (check_VecOperands): Also check XMM register + for invalid register in AVX512 gathers. + * testsuite/gas/i386/vgather-check.s: Add tests for AVX512 + gathers with XMM register. + * testsuite/gas/i386/x86-64-vgather-check.s: Likewise. + * testsuite/gas/i386/vgather-check-error.l: Updated. + * testsuite/gas/i386/vgather-check-none.d: Likewise. + * testsuite/gas/i386/vgather-check-warn.d: Likewise. + * testsuite/gas/i386/vgather-check-warn.e: Likewise. + * testsuite/gas/i386/vgather-check.d: Likewise. + * testsuite/gas/i386/x86-64-vgather-check-error.l: Likewise. + * testsuite/gas/i386/x86-64-vgather-check-none.d: Likewise. + * testsuite/gas/i386/x86-64-vgather-check-warn.d: Likewise. + * testsuite/gas/i386/x86-64-vgather-check-warn.e: Likewise. + * testsuite/gas/i386/x86-64-vgather-check.d: Likewise. + +2017-10-26 Hans-Peter Nilsson + + * testsuite/gas/all/fill-1.s: Use L2 rather than .L2. + +2017-10-25 Alan Modra + + PR 22348 + * config/tc-crx.c (instruction, output_opcode): Make static. + (relocatable, ins_parse, cur_arg_num): Likewise. + (parse_insn): Adjust for renamed opcodes globals. + (check_range): Likewise + +2017-10-25 Alan Modra + + * testsuite/gas/all/fill-1.d: Exclude tic4x and tic54x. + * testsuite/gas/all/fill-1.s: Use L1 rather than .L1. + +2017-10-24 Andrew Waterman + + * testsuite/gas/riscv/c-addi16sp-fail.d: New test. + * testsuite/gas/riscv/c-addi16sp-fail.l: Likewise. + * testsuite/gas/riscv/c-addi16sp-fail.s: Likewise. + * testsuite/gas/riscv/c-addi4spn-fail.d: Likewise. + * testsuite/gas/riscv/c-addi4spn-fail.l: Likewise. + * testsuite/gas/riscv/c-addi4spn-fail.s: Likewise. + * testsuite/gas/riscv/riscv.exp: Add new tests. + +2017-10-24 Andrew Waterman + + * testsuite/gas/riscv/c-lui-fail.d: New testcase. + * gas/testsuite/gas/riscv/c-lui-fail.l: Likewise. + * gas/testsuite/gas/riscv/c-lui-fail.s: Likewise. + * gas/testsuite/gas/riscv/riscv.exp: Likewise. + +2017-10-24 H.J. Lu + + * config/tc-i386.c (md_pseudo_table): Add .code64 directive + only if BFD64 is defined. + * testsuite/gas/i386/code64-inval.l: New file. + * gas/testsuite/gas/i386/code64-inval.s: Likewise. + * gas/testsuite/gas/i386/code64.d: Likewise. + * gas/testsuite/gas/i386/code64.s: Likewise. + * testsuite/gas/i386/i386.exp: Run mixed-mode-reloc32, + att-regs, intel-regs, intel-expr and string-ok tests only if + assembler supports x86-64. Run code64 and code64-inval. + +2017-10-23 Palmer Dabbelt + + * config/tc-riscv.c (riscv_frag_align_code): Align code by 4 + bytes on non-RVC systems. + +2017-10-23 Maciej W. Rozycki + + * config/tc-mips.c (mips_elf_final_processing): Don't set + EF_MIPS_ABI2 in `e_flags'. + +2017-10-23 Igor Tsimbalist + + * config/tc-i386.c (cpu_arch): Add .avx512_bitalg. + (cpu_noarch): noavx512_bitalg. + * doc/c-i386.texi: Document .avx512_bitalg, noavx512_bitalg. + * testsuite/gas/i386/i386.exp: Add AVX512_BITALG tests. + * testsuite/gas/i386/avx512f_bitalg-intel.d: New test. + * testsuite/gas/i386/avx512f_bitalg.d: Likewise. + * testsuite/gas/i386/avx512f_bitalg.s: Likewise. + * testsuite/gas/i386/avx512vl_bitalg-intel.d: Likewise. + * testsuite/gas/i386/avx512vl_bitalg.d: Likewise. + * testsuite/gas/i386/avx512vl_bitalg.s: Likewise. + * testsuite/gas/i386/x86-64-avx512f_bitalg-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512f_bitalg.d: Likewise. + * testsuite/gas/i386/x86-64-avx512f_bitalg.s: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_bitalg-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_bitalg.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_bitalg.s: Likewise. + +2017-10-23 Igor Tsimbalist + + * config/tc-i386.c (cpu_arch): Add .avx512_vnni. + (cpu_noarch): Add noavx512_vnni. + * doc/c-i386.texi: Document .avx512_vnni. + * testsuite/gas/i386/i386.exp: Add AVX512_VNNI tests. + * testsuite/gas/i386/avx512vnni-intel.d: New test. + * testsuite/gas/i386/avx512vnni.d: Likewise. + * testsuite/gas/i386/avx512vnni.s: Likewise. + * testsuite/gas/i386/avx512vnni_vl-intel.d: Likewise. + * testsuite/gas/i386/avx512vnni_vl.d: Likewise. + * testsuite/gas/i386/avx512vnni_vl.s: Likewise. + * testsuite/gas/i386/x86-64-avx512vnni-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vnni.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vnni.s: Likewise. + * testsuite/gas/i386/x86-64-avx512vnni_vl-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vnni_vl.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vnni_vl.s: Likewise. + +2017-10-23 Igor Tsimbalist + + * config/tc-i386.c (cpu_arch): Add VPCLMULQDQ. + * doc/c-i386.texi: Document VPCLMULQDQ. + * testsuite/gas/i386/i386.exp: Run VPCLMULQDQ tests. + * testsuite/gas/i386/avx512f_vpclmulqdq-intel.d: New test. + * testsuite/gas/i386/avx512f_vpclmulqdq-wig.s: Ditto. + * testsuite/gas/i386/avx512f_vpclmulqdq-wig1-intel.d: Ditto. + * testsuite/gas/i386/avx512f_vpclmulqdq-wig1.d: Ditto. + * testsuite/gas/i386/avx512f_vpclmulqdq.d: Ditto. + * testsuite/gas/i386/avx512f_vpclmulqdq.s: Ditto. + * testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d: Ditto. + * testsuite/gas/i386/avx512vl_vpclmulqdq-wig.s: Ditto. + * testsuite/gas/i386/avx512vl_vpclmulqdq-wig1-intel.d: Ditto. + * testsuite/gas/i386/avx512vl_vpclmulqdq-wig1.d: Ditto. + * testsuite/gas/i386/avx512vl_vpclmulqdq.d: Ditto. + * testsuite/gas/i386/avx512vl_vpclmulqdq.s: Ditto. + * testsuite/gas/i386/vpclmulqdq-intel.d: Ditto. + * testsuite/gas/i386/vpclmulqdq.d: Ditto. + * testsuite/gas/i386/vpclmulqdq.s: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig.s: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig1-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-wig1.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig.s: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig1-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-wig1.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Ditto. + * testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Ditto. + * testsuite/gas/i386/x86-64-vpclmulqdq.d: Ditto. + * testsuite/gas/i386/x86-64-vpclmulqdq.s: Ditto. + +2017-10-23 Igor Tsimbalist + + * config/tc-i386.c (cpu_arch): Add VAES. + * doc/c-i386.texi: Document VAES. + * testsuite/gas/i386/i386.exp: Run VAES tests. + * testsuite/gas/i386/avx512f_vaes-intel.d: New test. + * testsuite/gas/i386/avx512f_vaes-wig.s: Ditto. + * testsuite/gas/i386/avx512f_vaes-wig1-intel.d: Ditto. + * testsuite/gas/i386/avx512f_vaes-wig1.d: Ditto. + * testsuite/gas/i386/avx512f_vaes.d: Ditto. + * testsuite/gas/i386/avx512f_vaes.s: Ditto. + * testsuite/gas/i386/avx512vl_vaes-intel.d: Ditto. + * testsuite/gas/i386/avx512vl_vaes-wig.s: Ditto. + * testsuite/gas/i386/avx512vl_vaes-wig1-intel.d: Ditto. + * testsuite/gas/i386/avx512vl_vaes-wig1.d: Ditto. + * testsuite/gas/i386/avx512vl_vaes.d: Ditto. + * testsuite/gas/i386/avx512vl_vaes.s: Ditto. + * testsuite/gas/i386/vaes-intel.d: Ditto. + * testsuite/gas/i386/vaes.d: Ditto. + * testsuite/gas/i386/vaes.s: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vaes-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vaes-wig.s: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vaes-wig1-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vaes-wig1.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vaes.d: Ditto. + * testsuite/gas/i386/x86-64-avx512f_vaes.s: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vaes-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vaes-wig.s: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vaes-wig1.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vaes.d: Ditto. + * testsuite/gas/i386/x86-64-avx512vl_vaes.s: Ditto. + * testsuite/gas/i386/x86-64-vaes-intel.d: Ditto. + * testsuite/gas/i386/x86-64-vaes.d: Ditto. + * testsuite/gas/i386/x86-64-vaes.s: Ditto. + +2017-10-23 Igor Tsimbalist + + * config/tc-i386.c (cpu_arch): Add .gfni. + * doc/c-i386.texi: Document .gfni. + * testsuite/gas/i386/i386.exp: Add GFNI tests. + * testsuite/gas/i386/avx.s: New GFNI test. + * testsuite/gas/i386/x86-64-avx.s: Likewise. + * testsuite/gas/i386/avx.d: Adjust. + * testsuite/gas/i386/avx-intel.d: Likewise + * testsuite/gas/i386/ilp32/x86-64-avx-intel.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-avx.d: Likewise. + * testsuite/gas/i386/avx512f_gfni-intel.d: New test. + * testsuite/gas/i386/avx512f_gfni.d: Likewise. + * testsuite/gas/i386/avx512f_gfni.s: Likewise. + * testsuite/gas/i386/avx512vl_gfni-intel.d: Likewise. + * testsuite/gas/i386/avx512vl_gfni.d: Likewise. + * testsuite/gas/i386/avx512vl_gfni.s: Likewise. + * testsuite/gas/i386/gfni-intel.d: Likewise. + * testsuite/gas/i386/gfni.d: Likewise. + * testsuite/gas/i386/gfni.s: Likewise. + * testsuite/gas/i386/x86-64-avx512f_gfni-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512f_gfni.d: Likewise. + * testsuite/gas/i386/x86-64-avx512f_gfni.s: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_gfni-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_gfni.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vl_gfni.s: Likewise. + * testsuite/gas/i386/x86-64-avx_gfni-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx_gfni.d: Likewise. + * testsuite/gas/i386/x86-64-avx_gfni.s: Likewise. + * testsuite/gas/i386/x86-64-gfni-intel.d: Likewise. + * testsuite/gas/i386/x86-64-gfni.d: Likewise. + * testsuite/gas/i386/x86-64-gfni.s: Likewise. + +2017-10-23 Igor Tsimbalist + + * config/tc-i386.c (cpu_arch): Add .avx512_vbmi2. + (cpu_noarch): noavx512_vbmi2. + * doc/c-i386.texi: Document .avx512_vbmi2, noavx512_vbmi2. + * testsuite/gas/i386/i386.exp: Add AVX512_VBMI2 tests. + * testsuite/gas/i386/avx512vbmi2-intel.d: New test. + * testsuite/gas/i386/avx512vbmi2.d: Likewise. + * testsuite/gas/i386/avx512vbmi2.s: Likewise. + * testsuite/gas/i386/avx512vbmi2_vl-intel.d: Likewise. + * testsuite/gas/i386/avx512vbmi2_vl.d: Likewise. + * testsuite/gas/i386/avx512vbmi2_vl.s: Likewise. + * testsuite/gas/i386/x86-64-avx512vbmi2-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vbmi2.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vbmi2.s: Likewise. + * testsuite/gas/i386/x86-64-avx512vbmi2_vl-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vbmi2_vl.d: Likewise. + * testsuite/gas/i386/x86-64-avx512vbmi2_vl.s: Likewise. + +2017-10-22 Hans-Peter Nilsson + + PR gas/22304 + * testsuite/gas/cris/range-err-1.s: Remove quotes left from last edit. + +2017-10-20 Nick Clifton + + PR 22324 + * read.c (s_rept): Use size_t type for count parameter. + (do_repeat): Change type of count parameter to size_t. + Issue an error is the count parameter is negative. + (do_repeat_with_expression): Likewise. + * read.h: Update prototypes for do_repeat and + do_repeat_with_expression. + * doc/as.texinfo (Rept): Document that a zero count is allowed but + negative counts are not. + * config/tc-rx.c (rx_rept): Use size_t type for count parameter. + * config/tc-tic54x.c (tic54x_loop): Cast count parameter to size_t + type. + * testsuite/gas/macros/end.s: Add a test using a negative repeat + count. + * testsuite/gas/macros/end.l: Add expected error message. + +2017-10-19 Palmer Dabbelt + + * config/tc-riscv.c (md_apply_fix): Mark + BFD_RELOC_RISCV_PCREL_HI20 as relaxable when relaxations are + enabled. + +2017-10-19 Nick Clifton + + PR 21621 + * config/tc-avr.h (struct avr_frag_data): Add prev_opcode field. + (TC_FRAG_INIT): Define. + (avr_frag_init): Add prototype. + * config/tc-avr.c (avr_frag_init): New function. + (avr_operands): Replace static local 'prev' variable with + prev_opcode field in current frag. + * testsuite/gas/avr/pr21621.s: New test source file. + * testsuite/gas/avr/pr21621.d: New test driver file. + * testsuite/gas/avr/pr21621.s: New test error output file. + +2017-10-19 Andreas Krebbel + + * testsuite/gas/all/fill-1.s: Use normal labels. Change .text to + .data. Pick different values. Use .dc.w instead of .word. + * testsuite/gas/all/fill-1.d: New objdump output check. + * testsuite/gas/all/gas.exp: Use run_dump_test to execute fill-1 + testcase. + +2017-10-18 Palmer Dabbelt + + * testsuite/gas/all/align.d: Mark as unsupported on RISC-V. + testsuite/gas/all/relax.d: Likewise. + testsuite/gas/all/sleb128-2.d: Likewise. + testsuite/gas/all/sleb128-4.d: Likewise. + testsuite/gas/all/sleb128-5.d: Likewise. + testsuite/gas/all/sleb128-7.d: Likewise. + testsuite/gas/elf/section11.d: Likewise. + testsuite/gas/all/gas.exp (diff1.s): Likewise. + +2017-10-18 Nick Clifton + + PR gas/22304 + * testsuite/gas/cris/range-err-1.s: Remove spurious xfails. + * testsuite/gas/cris/cris.exp: Expect the shexpr-1 test to pass. + +2017-10-18 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2017-10-16 Sandra Loosemore + Henry Wong + + * config/tc-nios2.c (nios2_translate_pseudo_insn): Check for + correct number of arguments. + (md_assemble): Handle failure of nios2_translate_pseudo_insn. + * testsuite/gas/nios2/illegal_pseudoinst.l: New file. + * testsuite/gas/nios2/illegal_pseudoinst.s: New file. + * testsuite/gas/nios2/nios2.exp: Add illegal_pseudoinst test. + +2017-10-12 James Bowman + + * config/tc-ft32.c (md_assemble): Replace FT32_FLD_K8 with + K15. + (md_apply_fix, tc_gen_reloc): Add BFD_RELOC_FT32_15. + +2017-10-11 Nick Clifton + + PR 21977 + * listing.c (listing_newline): Use the name of the current + physical input file, rather than the current logical input file, + unless including high level source in the listing. + * input-scrub.c (as_where_physical): New function. Returns the + name of the current physical input file. + * as.h: Add prototype for as_where_physical. + +2017-10-09 Andreas Krebbel + + * testsuite/gas/s390/zarch-arch12.d (prno, tpei, irbm): New + instructions added. + * testsuite/gas/s390/zarch-arch12.s: Likewise. + * testsuite/gas/s390/zarch-z13.d: Rename ppno to prno. + +2017-10-09 Andreas Krebbel + + * testsuite/gas/all/fill-1.s: Replace nop with .word 42 + +2017-10-09 Andreas Krebbel + + * read.c (s_fill): Invoke expression instead of + get_known_segmented_expression. + * testsuite/gas/all/fill-1.s: New testcase. + * testsuite/gas/all/gas.exp: Run fill-1 testcase + +2017-10-05 Nick Clifton + + PR 22133 + * config/tc-msp430.c (parse_exp): Skip an 'h' suffix to constant + expressions. + (msp430_srcoperand): Check that the entire text was parsed by + parse_exp. + (msp430_operands): Likewise. + * testsuite/gas/msp430/pr22133.s: New test file. + * testsuite/gas/msp430/pr22133.d: New test driver. + * testsuite/gas/msp430/pr22133.s: Expected error output. + * testsuite/gas/msp430/msp430.exp: Run the new test. + +2017-10-04 H.J. Lu + + PR gas/21167 + * testsuite/gas/elf/elf.exp: Run group3. + * testsuite/gas/elf/group3.d: New file. + * testsuite/gas/elf/group3.s: Likewise. + +2017-10-05 Alan Modra + + PR 21167 + * config/obj-elf.c (struct group_list): Delete elt_count. + (groups): New static. + (build_group_lists): Don't count elements. + (elf_adjust_symtab): Use "groups" rather than auto "list". Set up + pointer from group member to SHT_GROUP section. Don't size + SHT_GROUP section or clean up here.. + (elf_frob_file_after_relocs): ..do so here instead. + * testsuite/gas/arc/jli-1.d, + * testsuite/gas/elf/groupautob.d, + * testsuite/gas/mips/compact-eh-eb-2.d, + * testsuite/gas/mips/compact-eh-eb-5.d, + * testsuite/gas/mips/compact-eh-el-2.d, + * testsuite/gas/mips/compact-eh-el-5.d: Adjust. + +2017-10-01 Alexander Fedotov + + * testsuite/gas/ppc/vle-mult-ld-st-insns.s: New file: Tests the + support for the VLE multiple load/store instructions. + * testsuite/gas/ppc/vle-mult-ld-st-insns.d: New file: Test + driver. + * testsuite/gas/ppc/ppc.exp: Run it. + +2017-09-27 Nick Clifton + + PR 22179 + * testsuite/gas/riscv/fmv.x.s: New file: Tests the support for the + renamed fmv.x.s and fmv.s.x instructions. + * testsuite/gas/riscv/fmv.x.d: New file: Test driver. + +2017-09-21 Maciej W. Rozycki + + * testsuite/gas/mips/elf_mach_5900.d: New test. + * testsuite/gas/mips/mips.exp: Run it. + +2017-09-21 James Cowgill + + PR gas/21762 + * config/tc-mips.c (s_mips_stab): Insert call to + file_mips_check_options. + * testsuite/gas/mips/micromips@stabs-symbol-type.d: New test. + * testsuite/gas/mips/mips.exp: Run the new tests. + * testsuite/gas/mips/mips16@stabs-symbol-type.d: New test. + * testsuite/gas/mips/stabs-symbol-type.d: New test. + * testsuite/gas/mips/stabs-symbol-type.s: New test source. + +2017-09-21 Alan Modra + + * config/tc-ppc.h (EH_FRAME_ALIGNMENT): Define. + +2017-09-14 Alan Modra + + PR 22127 + * write.c (resolve_reloc_expr_symbols): Don't segfault when + sec has been set to NULL. + +2017-09-09 H.J. Lu + + * config/tc-i386.c (NOTRACK_PREFIX): Removed. + (REX_PREFIX): Updated. + (MAX_PREFIXES): Likewise. + (parse_insn): Remove restriction on NOTRACK prefix position. + * testsuite/gas/i386/notrack.s: Add tests with NOTRACK prefix + before other prefixes. + * testsuite/gas/i386/x86-64-notrack.s: Likewise. + * testsuite/gas/i386/notrackbad.s: Remove tests with NOTRACK + prefix before other prefixes. + * testsuite/gas/i386/x86-64-notrackbad.s: Likewise. + * testsuite/gas/i386/notrack-intel.d: Updated. + * testsuite/gas/i386/notrack.d: Likewise. + * testsuite/gas/i386/notrackbad.l: Likewise. + * testsuite/gas/i386/x86-64-notrack-intel.d: Likewise. + * testsuite/gas/i386/x86-64-notrack.d: Likewise. + * testsuite/gas/i386/x86-64-notrackbad.l: Likewise. + +2017-09-07 Palmer Dabbelt + + * config/tc-riscv.c (riscv_frag_align_code): Emit the entire + alignment sequence inside R_RISCV_ALIGN. + +2017-09-05 Alexander Fedotov + Edmar Wienskoski + + * config/tc-aarch64.c (aarch64_cpus): Enable DOTPROD for + cortex-a55 and cortx-a75. + +2017-08-30 Maciej W. Rozycki + + * testsuite/gas/mips/branch-addend-micromips.d: New test. + * testsuite/gas/mips/branch-addend-micromips-n32.d: New test. + * testsuite/gas/mips/branch-addend-micromips-n64.d: New test. + * testsuite/gas/mips/branch-addend-micromips.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-08-30 Maciej W. Rozycki + + * config/tc-mips.c (md_convert_frag): Respect + `mips_ignore_branch_isa'. + * testsuite/gas/mips/branch-local-5.d: New test. + * testsuite/gas/mips/branch-local-n32-5.d: New test. + * testsuite/gas/mips/branch-local-n64-5.d: New test. + * testsuite/gas/mips/branch-local-6.d: New test. + * testsuite/gas/mips/branch-local-n32-6.d: New test. + * testsuite/gas/mips/branch-local-n64-6.d: New test. + * testsuite/gas/mips/branch-local-7.d: New test. + * testsuite/gas/mips/branch-local-n32-7.d: New test. + * testsuite/gas/mips/branch-local-n64-7.d: New test. + * testsuite/gas/mips/branch-local-ignore-5.d: New test. + * testsuite/gas/mips/branch-local-ignore-n32-5.d: New test. + * testsuite/gas/mips/branch-local-ignore-n64-5.d: New test. + * testsuite/gas/mips/branch-local-ignore-6.d: New test. + * testsuite/gas/mips/branch-local-ignore-n32-6.d: New test. + * testsuite/gas/mips/branch-local-ignore-n64-6.d: New test. + * testsuite/gas/mips/branch-local-5.l: New stderr output. + * testsuite/gas/mips/branch-local-6.l: New stderr output. + * testsuite/gas/mips/branch-local-5.s: New test source. + * testsuite/gas/mips/branch-local-6.s: New test source. + * testsuite/gas/mips/branch-local-7.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-08-30 Maciej W. Rozycki + + * testsuite/gas/mips/branch-local-n32-2.d: Use `branch-local-2.l' + for `error-output'. + * testsuite/gas/mips/branch-local-n64-2.d: Likewise. + * testsuite/gas/mips/branch-local-n32-3.d: Use `branch-local-3.l' + for `error-output'. + * testsuite/gas/mips/branch-local-n64-3.d: Likewise. + * testsuite/gas/mips/branch-local-n32-2.l: Remove file. + * testsuite/gas/mips/branch-local-n64-2.l: Remove file. + * testsuite/gas/mips/branch-local-n32-3.l: Remove file. + * testsuite/gas/mips/branch-local-n64-3.l: Remove file. + +2017-08-29 Jozef Lawrynowicz + + * config/tc-msp430.c (md_parse_option): Define high data and high + bss symbols if -mdata-region is passed. + Define -mdata-region open. + * doc/c-msp430.texi: Document -mdata-region. + * testsuite/gas/msp430/high-data-bss-sym.d: New test. + * testsuite/gas/msp430/high-data-bss-sym.s: New. + * testsuite/gas/msp430/msp430.exp: Add -mdata-region tests. + +2017-08-23 Alexander Fedotov + Edmar Wienskoski + + * config/tc-sparc.c (tc_gen_reloc): Convert BFD_RELOC_8/16/32/64 + into the corresponding BFD_RELOC_8/16/32/64_PCREL relocation + when requested. + * config/tc-sparc.h (DIFF_EXPR_OK): Define to enable PC-relative + diff relocations. + (TC_FORCE_RELOCATION_SUB_LOCAL): Define to ensure only supported + relocations are made PC-relative. + (CFI_DIFF_EXPR_OK): Define to 0 to force BFD_RELOC_32_PCREL to + be used directly, since otherwise BFD_RELOC_SPARC_UA32 will be + used for .eh_frame which cannot in general be converted to a + BFD_RELOC_32_PCREL due to alignment requirements. + +2017-08-22 Alan Modra + + * testsuite/gas/ppc/lsp-checks.d: Assemble with -a32. + * testsuite/gas/ppc/lsp.d: Likewise. + +2017-08-21 Alexander Fedotov + Edmar Wienskoski + + * config/tc-aarch64.c (REGDEF_ALIAS): Define + (reg_names): Update for ip0, ip1, fp, lr to use REGDEF_ALIAS + * doc/c-aarch64.texi: Update documentation on .req. + * testsuite/gas/diagnostic.s: Update + * testsuite/gas/diagnostic.l: Likewise + * testsuite/gas/register_aliases.s: New file. + * testsuite/gas/register_aliases.d: New file. + +2017-08-11 H.J. Lu + + PR gas/21667 + * read.c (pseudo_set): Update error message for alias of common + symbol. + * write.c (write_object_file): Disallow both local and global + aliases of common symbol. + * testsuite/gas/elf/common5a.d: New file. + * testsuite/gas/elf/common5a.l: Likewise. + * testsuite/gas/elf/common5a.s: Likewise. + * testsuite/gas/elf/common5b.d: Likewise. + * testsuite/gas/elf/common5b.l: Likewise. + * testsuite/gas/elf/common5b.s: Likewise. + * testsuite/gas/elf/common5c.d: Likewise. + * testsuite/gas/elf/common5c.s: Likewise. + * testsuite/gas/elf/common5d.d: Likewise. + * testsuite/gas/elf/common5d.s: Likewise. + * testsuite/gas/elf/elf.exp: Run common5a, common5b, common5c + and common5d. + +2017-08-10 Nick Clifton + + PR gas/21939 + * config/obj-macho.c (obj_mach_o_set_indirect_symbols): Increase + size of indirect_syms array so that it is large enough to hold + every symbol if necessary. + +2017-08-09 Jiong Wang + + * config/tc-arm.c (do_crc32_1): Remove warning on REG_SP for thumb_mode. + * testsuite/gas/arm/crc32-armv8-a-bad.d: Update exepcted result. + * testsuite/gas/arm/crc32-armv8-r-bad.d: Likewise. + * testsuite/gas/arm/crc32-armv8-a.d: Likewise. + * testsuite/gas/arm/crc32-armv8-r.d: Likewise. + * testsuite/gas/arm/crc32-armv8-ar-bad.s: Update test case. + * testsuite/gas/arm/crc32-armv8-ar.s: Likewise. + * testsuite/gas/arm/crc32-bad.l: Update expected error message. + +2017-08-02 Nick Clifton + + * testsuite/gas/all/gas.exp: Add am33 to the skip lists of tests + passed over by the mn10300 target. + * testsuite/gas/elf/elf.exp: Likewise. + * testsuite/gas/elf/dwarf2-11.d: Correct skip of am33 target. + * testsuite/gas/elf/dwarf2-12.d: Likewise. + * testsuite/gas/elf/dwarf2-13.d: Likewise. + * testsuite/gas/elf/dwarf2-14.d: Likewise. + * testsuite/gas/elf/dwarf2-15.d: Likewise. + * testsuite/gas/elf/dwarf2-16.d: Likewise. + * testsuite/gas/elf/dwarf2-17.d: Likewise. + * testsuite/gas/elf/dwarf2-18.d: Likewise. + * testsuite/gas/elf/dwarf2-5.d: Likewise. + * testsuite/gas/elf/dwarf2-6.d: Likewise. + * testsuite/gas/elf/dwarf2-7.d: Likewise. + +2017-07-31 John David Anglin + + * config/tc-hppa.c (pa_ip): Clear `d' bit in branch on bit instructions + with a double-word condition and a fixed bit position greater than 31. + +2017-07-28 Andrew Waterman + + * config/tc-riscv.c (riscv_set_arch): Handle the Q subset like + all other subsets. + Obviate use-after-free. + +2017-07-25 Nick Clifton + + PR 21739 + * testsuite/gas/arc/add_s-err.s: Update expected error message. + +2017-07-24 Nick Clifton + + PR 21809 + * config/tc-aarch64.c (aarch64_init_frag): Do not set a mapping + state for frags in debug sections. + * config/tc-arm.c (arm_init_frag): Likewise. + +2017-07-24 Hans-Peter Nilsson + + * dwarf2dbg.c (dwarf2dbg_final_check): Rename local variable exp + from expr. + +2017-07-21 Andreas Krebbel + + * config/tc-s390.c (s390_parse_cpu): Add z14 as alternate CPU + name. + * doc/as.texinfo: Add z14 to CPU string list. + * doc/c-s390.texi: Likewise. + +2017-07-21 Alexandre Oliva + + * dwarf2dbg.c (unused): Check offset of next in struct line_entry. + (current): Initialize view. + (force_reset_view, view_assert_failed): New variables. + (reverse_line_entry_list): New function. + (set_or_check_view): Likewise. + (dwarf2_gen_line_info_1): Call it. + (dwarf2_where): Set view to NULL. + (dwarf2_emit_insn): Return early when called before first file. + (dwarf2_directive_loc): Add view support. Emit insn + immediately when view option is given. + (process_entries): Avoid set_address to reset view when a known + address change already implies the view reset. + (dwarf2dbg_final_check): New function. + * dwarf2dbg.h (struct dwarf2_line_info): Add view. + (dwarf2dbg_final_check): Declare. + * read.c (s_leb128): Parse expression as deferred. + * write.c (write_object_file): Check pending view asserts. + (cvt_frag_to_fill): Complain about undefined leb128 operand. + * doc/as.texinfo (.loc): Document view support. + * NEWS: Mention the new feature. + * testsuite/gas/all/gas.exp: Run sleb128-9. + * testsuite/gas/all/sleb128-9.d: New. + * testsuite/gas/all/sleb128-9.l: New. + * testsuite/gas/all/sleb128-9.s: New. + * testsuite/gas/elf/dwarf2-1.d: Add nonzero views. + * testsuite/gas/elf/dwarf2-2.d: Likewise. + * testsuite/gas/elf/dwarf2-5.d: New. + * testsuite/gas/elf/dwarf2-5.s: New. + * testsuite/gas/elf/dwarf2-6.d: New. + * testsuite/gas/elf/dwarf2-6.s: New. + * testsuite/gas/elf/dwarf2-7.d: New. + * testsuite/gas/elf/dwarf2-7.s: New. + * testsuite/gas/elf/dwarf2-8.d: New. + * testsuite/gas/elf/dwarf2-8.l: New. + * testsuite/gas/elf/dwarf2-8.s: New. + * testsuite/gas/elf/dwarf2-9.d: New. + * testsuite/gas/elf/dwarf2-9.l: New. + * testsuite/gas/elf/dwarf2-9.s: New. + * testsuite/gas/elf/dwarf2-10.d: New. + * testsuite/gas/elf/dwarf2-10.l: New. + * testsuite/gas/elf/dwarf2-10.s: New. + * testsuite/gas/elf/dwarf2-11.d: New. + * testsuite/gas/elf/dwarf2-11.s: New. + * testsuite/gas/elf/dwarf2-12.d: New. + * testsuite/gas/elf/dwarf2-12.s: New. + * testsuite/gas/elf/dwarf2-13.d: New. + * testsuite/gas/elf/dwarf2-13.s: New. + * testsuite/gas/elf/dwarf2-14.d: New. + * testsuite/gas/elf/dwarf2-14.s: New. + * testsuite/gas/elf/dwarf2-15.d: New. + * testsuite/gas/elf/dwarf2-15.s: New. + * testsuite/gas/elf/dwarf2-16.d: New. + * testsuite/gas/elf/dwarf2-16.s: New. + * testsuite/gas/elf/dwarf2-17.d: New. + * testsuite/gas/elf/dwarf2-17.s: New. + * testsuite/gas/elf/dwarf2-18.d: New. + * testsuite/gas/elf/dwarf2-18.s: New. + * testsuite/gas/elf/elf.exp: Run dwarf2-5..18 tests. + * testsuite/gas/i386/dw2-compress-1.d: Add nonzero views. + * testsuite/gas/i386/dw2-compressed-1.d: Likewise. + * testsuite/gas/i386/ilp32/lns/lns-duplicate.d: Likewise. + * testsuite/gas/lns/lns-big-delta.d: Likewise. + * testsuite/gas/lns/lns-duplicate.d: Likewise. + * testsuite/gas/mips/loc-swap-2.d: Likewise. + * testsuite/gas/mips/loc-swap-3.d: Likewise. + * testsuite/gas/mips/loc-swap.d: Likewise. + * testsuite/gas/mips/micromips@loc-swap-2.d: Likewise. + * testsuite/gas/mips/micromips@loc-swap.d: Likewise. + * testsuite/gas/mips/mips16@loc-swap-2.d: Likewise. + * testsuite/gas/mips/mips16@loc-swap.d: Likewise. + * testsuite/gas/mips/mips16e@loc-swap.d: Likewise. + +2017-07-19 Claudiu Zissulescu + + * testsuite/gas/arc/jli-1.d: New file. + * testsuite/gas/arc/jli-1.s: Likewise. + * testsuite/gas/arc/taux.d: Update for jli_base. + +2017-07-19 Tristan Gingold + + * as.c (start_sbrk): Remove. + (main): Remove assignment. + (dump_statistics): Remove display of data size. + +2017-07-19 Tristan Gingold + + * testsuite/gas/pe/seh-x64-err-2.s: New test. + * testsuite/gas/pe/seh-x64-err-2.l: New stderr output. + * testsuite/gas/pe/pe.exp: Add test. + * config/obj-coff-seh.c (obj_coff_seh_do_final): Don't try to end + seh part. + +2017-07-18 Nick Clifton + + PR 21775 + * config/tc-arm.c: Fix spelling typos. + * config/tc-mips.c: Likewise. + * config/tc-msp430.c: Likewise. + * config/tc-sh64.c: Likewise. + * config/tc-tic4x.c: Likewise. + * ecoff.c: Likewise. + * testsuite/gas/arm/ldr-bad.l: Likewise. + * testsuite/gas/arm/ldr-t-bad.l: Likewise. + * testsuite/gas/tic54x/opcodes.s: Likewise. + * testsuite/gas/msp340/errata_warns.l: Likewise. + +2017-07-18 Nick Clifton + + * po/uk.po: Updated Ukranian translation. + +2017-07-17 Georg-Johann Lay + + PR 21472 + * config/tc-avr.c (mcu_types): Add entries for: attiny212, + attiny214, attiny412, attiny414, attiny814, attiny1614, + attiny1616, attiny1617, attiny3214, attiny3216, attiny3217. + (md_show_usage): Adjust doc for "avrxmega3". + * doc/c-avr.texi (AVR options) [-mmcu=]: Adjust doc for avrxmega3. + Add MCUs: attiny212, attiny214, attiny412, attiny414, attiny416, + attiny417, attiny814, attiny816, attiny817, attiny1614, + attiny1616, attiny1617, attiny3214, attiny3216, attiny3217. + +2017-07-13 Jim Wilson + + * config/tc-arch64.c (aarch64_cpus): Add AARCH64_FEATURE_RDMA to + falkor and qdf24xx entries. + +2017-07-12 Alan Modra + + * po/es.po: Update from translationproject.org/latest/gas/. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/id.po: Likewise. + * po/ja.po: Likewise. + * po/ru.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/zh_CN.po: Likewise. + +2017-07-12 Nick Clifton + + Fix compile time warnings using gcc 7.1.1. + * config/tc-pru.c (md_assemble): Add continue statement after + handling 'E' operand character. + * config/tc-v850.c (md_assemble): Initialise the 'insn' variable. + +2017-07-05 James Greenhalgh + + * config/tc-arm.c (arm_cpus): Add Cortex-A55 and Cortex-A75. + * doc/c-arm.texi (-mcpu): Document Cortex-A55 and Cortex-A75. + +2017-07-05 Borislav Petkov + + * testsuite/gas/i386/opcode.s: Add tests for ModRM.reg == 6 variants. + * testsuite/gas/i386/opcode.d: ditto. + * testsuite/gas/i386/x86-64-opcode.s: Add x86_64 variants too. + * testsuite/gas/i386/x86-64-opcode.d: ditto. + +2017-07-04 Ramana Radhakrishnan + + * config/tc-arm.c (arm_regs): Add MVFR2. + (do_vmrs): Constraint for MVFR2 and armv8. + (do_vmsr): Likewise. + * testsuite/gas/arm/armv8-a+fp.d: Update. + * testsuite/gas/arm/armv8-ar+fp.s: Likewise. + * testsuite/gas/arm/armv8-r+fp.d: Likewise. + * testsuite/gas/arm/vfp-bad.s: Likewise. + * testsuite/gas/arm/vfp-bad.l: Likewise. + +2017-07-04 Tristan Gingold + + * configure: Regenerate. + +2017-07-04 Tristan Gingold + + * NEWS: Add marker for 2.29. + +2017-07-03 Alan Modra + + * testsuite/gas/elf/symver.d: Don't run on hppa64-hpux. + +2017-06-30 Maciej W. Rozycki + + * config/tc-mips.c (md_convert_frag): Use a switch on the + microMIPS relaxation type rather than a chain of conditionals. + +2017-06-30 Maciej W. Rozycki + + * config/tc-mips.c (md_convert_frag): Rewrite `fix_new_exp' + calls in terms of `fix_new'. + +2017-06-30 Maciej W. Rozycki + + * config/tc-mips.c (md_convert_frag): Don't make a helper + expression symbol for `fix_new_exp' called with a non-zero + offset. + * testsuite/gas/mips/relax-offset.d: New test. + * testsuite/gas/mips/mips1@relax-offset.d: New test. + * testsuite/gas/mips/r3000@relax-offset.d: New test. + * testsuite/gas/mips/r3900@relax-offset.d: New test. + * testsuite/gas/mips/micromips@relax-offset.d: New test. + * testsuite/gas/mips/relax-offset.l: New stderr output. + * testsuite/gas/mips/relax-offset.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-06-30 Georg-Johann Lay + + PR gas/21683 + * doc/c-avr.texi (AVR Options) <-mgcc-isr>: Document it. + (AVR Pseudo Instructions): New node. + * config/tc-avr.h (md_pre_output_hook): Define to avr_pre_output_hook. + (md_undefined_symbol): Define to avr_undefined_symbol. + (avr_pre_output_hook, avr_undefined_symbol): New protos. + * config/tc-avr.c (struc-symbol.h): Include it. + (ISR_CHUNK_Done, ISR_CHUNK_Prologue, ISR_CHUNK_Epilogue): New enums. + (avr_isr, avr_gccisr_opcode) + (avr_no_sreg_hash, avr_no_sreg): New static variables. + (avr_opt_s) : Add field. + (avr_opt): Add initializer for have_gccisr. + (enum options) : Add enum. + (md_longopts) <"mgcc-isr">: Add entry. + (md_show_usage): Document -mgcc-isr. + (md_parse_option) [OPTION_HAVE_GCCISR]: Handle it. + (md_undefined_symbol): Remove. + (avr_undefined_symbol, avr_pre_output_hook): New fuctions. + (md_begin) : Initialize them. + (avr_operand) : Add argument and set *pregno if function + is called for a register constraint. + [N]: Handle constraint. + (avr_operands) : Pass 5th parameter to calls. + [avr_opt.have_gccisr]: Call avr_update_gccisr. Call + avr_gccisr_operands instead of avr_operands. + (avr_update_gccisr, avr_emit_insn, avr_patch_gccisr_frag) + (avr_gccisr_operands, avr_check_gccisr_done): New static functions. + * testsuite/gas/avr/gccisr-01.d: New test. + * testsuite/gas/avr/gccisr-01.s: New test. + * testsuite/gas/avr/gccisr-02.d: New test. + * testsuite/gas/avr/gccisr-02.s: New test. + * testsuite/gas/avr/gccisr-03.d: New test. + * testsuite/gas/avr/gccisr-03.s: New test. + +2017-06-30 Maciej W. Rozycki + + * config/tc-mips.c (match_float_constant): Update description. + (match_operand): Likewise. + +2017-06-30 Andrew Bennett + Maciej W. Rozycki + + * config/tc-mips.c (mips_ases): Add microMIPS XPA support. + * testsuite/gas/mips/micromips@xpa.d: New test. + * testsuite/gas/mips/mips.exp: Run the new test. Enable + `xpa-virt-err' test for `micromips'. + +2017-06-30 Andrew Bennett + Maciej W. Rozycki + + * testsuite/gas/mips/micromips@r5.d: New test. + * testsuite/gas/mips/mips.exp: Run the new test. + +2017-06-30 Maciej W. Rozycki + Andrew Bennett + + * config/tc-mips.c (mips_set_ase): Handle the ASE_XPA_VIRT flag. + * testsuite/gas/mips/xpa.d: Remove `xpa' from `-M' in `objdump' + flags. Add `-mvirt' to `as' flags. + * testsuite/gas/mips/xpa-err.d: New test. + * testsuite/gas/mips/xpa-virt-err.d: New test. + * testsuite/gas/mips/xpa-err.l: New stderr output. + * testsuite/gas/mips/xpa-virt-err.l: New stderr output. + * testsuite/gas/mips/xpa-err.s: New test source. + * testsuite/gas/mips/xpa-virt-err.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-06-29 Maciej W. Rozycki + + * testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d: Adjust for the + ASE_MIPS16E2_MT flag disassembler fix. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e2-mt-sub.d: + Likewise. + +2017-06-29 Maciej W. Rozycki + + * config/tc-mips.c (mips_set_ase): Clear the ASE_MIPS16E2_MT + flag before recalculating. + * testsuite/gas/mips/mips16e2-mt-err.d: New test. + * testsuite/gas/mips/mips16e2-mt-err.l: New stderr output. + * testsuite/gas/mips/mips16e2-mt-err.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new test. + +2017-06-28 Tamar Christina + + * config/tc-aarch64.c (aarch64_reg_parse_32_64): Accept 4B. + (aarch64_features): Added dotprod. + * doc/c-aarch64.texi: Added dotprod. + * testsuite/gas/aarch64/dotproduct.d: New. + * testsuite/gas/aarch64/dotproduct.s: New. + +2017-06-28 Jiong Wang + + * config/tc-arm.c (fpu_neon_ext_dotprod): New variable. + (neon_scalar_for_mul): Improve comments. + (do_neon_dotproduct): New function to encode Dot Product instructions. + (do_neon_dotproduct_s): Wrapper function for signed Dot Product + instructions. + (do_neon_dotproduct_u): Wrapper function for unsigned Dot Product + instructions. + (insns): New entries for vsdot and vudot. + (arm_extensions): New entry for "dotprod". + * doc/c-arm.texi: Document new "dotprod" extension. + * testsuite/gas/arm/dotprod.s: New test source. + * testsuite/gas/arm/dotprod-illegal.s: New test source. + * testsuite/gas/arm/dotprod.d: New test. + * testsuite/gas/arm/dotprod-thumb2.d: New test. + * testsuite/gas/arm/dotprod-illegal.d: New test. + * testsuite/gas/arm/dotprod-legacy-arch.d: New test. + * testsuite/gas/arm/dotprod-illegal.l: New error file. + * testsuite/gas/arm/dotprod-legacy-arch.l: New error file. + +2017-06-28 Maciej W. Rozycki + + * testsuite/gas/mips/elf_mach_interaptiv-mr2.d: New test. + * testsuite/gas/mips/save-err.d: New test. + * testsuite/gas/mips/save-sub.d: New test. + * testsuite/gas/mips/interaptiv-mr2@save.d: New test. + * testsuite/gas/mips/mips1@save-sub.d: New test. + * testsuite/gas/mips/mips2@save-sub.d: New test. + * testsuite/gas/mips/mips3@save-sub.d: New test. + * testsuite/gas/mips/mips4@save-sub.d: New test. + * testsuite/gas/mips/mips5@save-sub.d: New test. + * testsuite/gas/mips/mips32@save-sub.d: New test. + * testsuite/gas/mips/mips64@save-sub.d: New test. + * testsuite/gas/mips/mips16@save-sub.d: New test. + * testsuite/gas/mips/mips16e@save-sub.d: New test. + * testsuite/gas/mips/r3000@save-sub.d: New test. + * testsuite/gas/mips/r3900@save-sub.d: New test. + * testsuite/gas/mips/r4000@save-sub.d: New test. + * testsuite/gas/mips/vr5400@save-sub.d: New test. + * testsuite/gas/mips/interaptiv-mr2@save-sub.d: New test. + * testsuite/gas/mips/sb1@save-sub.d: New test. + * testsuite/gas/mips/octeon2@save-sub.d: New test. + * testsuite/gas/mips/octeon3@save-sub.d: New test. + * testsuite/gas/mips/xlr@save-sub.d: New test. + * testsuite/gas/mips/r5900@save-sub.d: New test. + * testsuite/gas/mips/mips16e2-copy.d: New test. + * testsuite/gas/mips/mips16e2-copy-err.d: New test. + * testsuite/gas/mips/save.d: Remove `MIPS16e' from the `name' + option. Adjust for trailing padding change. + * testsuite/gas/mips/mips16e2-copy-err.l: New stderr output. + * testsuite/gas/mips/save-sub.s: New test source. + * testsuite/gas/mips/mips16e2-copy.s: New test source. + * testsuite/gas/mips/mips16e2-copy-err.s: New test source. + * testsuite/gas/mips/save.s: Update description, change trailing + padding and remove trailing white space. + * testsuite/gas/mips/mips.exp: Expand `save' and `save-err' + tests across the regular MIPS interAptiv MR2 architecture. Run + the new tests. + +2017-06-28 Maciej W. Rozycki + + * testsuite/gas/mips/mips.exp (interaptiv-mr2): New architecture. + (mips16e2-interaptiv-mr2): Likewise. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.d: New + test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.d: + New test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.d: + New test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.d: + New test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.d: + New test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64.d: New + test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.d: New + test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.d: New + test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.d: + New test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e2-mt-sub.d: + New test. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-asmacro.d: + New test. + * testsuite/gas/mips/interaptiv-mr2@mcu.d: New test. + * testsuite/gas/mips/interaptiv-mr2@isa-override-1.d: New test. + * testsuite/gas/mips/interaptiv-mr2@isa-override-2.d: New test. + * testsuite/gas/mips/attr-gnu-4-5.d: Ignore any number of ASE + flag lines present rather than just one. + * testsuite/gas/mips/attr-gnu-4-6.d: Likewise. + * testsuite/gas/mips/attr-gnu-4-7.d: Likewise. + * testsuite/gas/mips/attr-none-o32-fp64-nooddspreg.d: Likewise. + * testsuite/gas/mips/attr-none-o32-fp64.d: Likewise. + * testsuite/gas/mips/attr-none-o32-fpxx.d: Likewise. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro.l: New + stderr output. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-t.l: + New stderr output. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-macro-e.l: + New stderr output. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-t.l: + New stderr output. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-insn-e.l: + New stderr output. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16-sub.l: New + stderr output. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-sub.l: New + stderr output. + * testsuite/gas/mips/mips16e2-interaptiv-mr2@mips16e-64-sub.l: + New stderr output. + * testsuite/gas/mips/interaptiv-mr2@isa-override-1.l: New stderr + output. + * testsuite/gas/mips/interaptiv-mr2@isa-override-2.l: New stderr + output. + +2017-06-28 Maciej W. Rozycki + Matthew Fortune + + * config/tc-mips.c (validate_mips_insn): Handle + OP_SAVE_RESTORE_LIST specially. + (mips_encode_save_restore, mips16_encode_save_restore): New + functions. + (match_save_restore_list_operand): Factor out SAVE/RESTORE + operand insertion into the instruction word or halfword to these + new functions. + (mips_cpu_info_table): Add "interaptiv-mr2" entry. + + * doc/c-mips.texi (MIPS Options): Add `interaptiv-mr2' to the + `-march=' argument list. + +2017-06-27 Maciej W. Rozycki + + * testsuite/gas/mips/mips16e-save.d: Rename to... + * testsuite/gas/mips/save.d: ... this. + * testsuite/gas/mips/mips16e-save-err.d: Update the + `error-output' option and rename to... + * testsuite/gas/mips/save-err.d: ... this. + * testsuite/gas/mips/mips16e-save-err.l: Rename to... + * testsuite/gas/mips/save-err.l: ... this. + * testsuite/gas/mips/mips16e-save.s: Rename to... + * testsuite/gas/mips/save.s: ... this. + * testsuite/gas/mips/mips16e-save-err.s: Rename to... + * testsuite/gas/mips/save-err.s: ... this. + * testsuite/gas/mips/mips.exp: Rename `mips16e-save' and + `mips16e-save-err' invocations to `save' and `save-err' + respectively and reorder these tests away from MIPS16 tests. + +2017-06-27 Maciej W. Rozycki + + * testsuite/gas/mips/mips16e-save.d: Remove `-mmips:isa32 + -mmips:16' from `objdump' flags and `-march=mips32 -mips16' from + `as' flags. + * testsuite/gas/mips/mips16e-save-err.d: Remove `-march=mips32' + from `as' flags. + * testsuite/gas/mips/mips16e-save.s: Remove the `.set mips16' + pseudo-op. + * testsuite/gas/mips/mips16e-save-err.s: Likewise. + * testsuite/gas/mips/mips.exp: Run SAVE/RESTORE tests across all + MIPS16e architectures. + +2017-06-27 Maciej W. Rozycki + + * testsuite/gas/mips/mips16e-save-err.d: New test. + * gas/testsuite/gas/mips/mips.exp: Fold `mips16e-save-err' list + test into the new test. + +2017-06-27 Maciej W. Rozycki + + * testsuite/gas/mips/mips16e-save.d: Capitalize the `name' + option. + +2017-06-26 Kuan-Lin Chen + + * config/tc-riscv.c (md_apply_fix) [BFD_RELOC_32]: Convert to a + R_RISCV_32_PCREL relocation. + +2017-06-26 H.J. Lu + + PR gas/21661 + * config/obj-elf.c (obj_elf_symver): Don't allow .symver with + common symbol. + (elf_frob_symbol): Likewise. + * testsuite/gas/elf/elf.exp: Run pr21661. + * testsuite/gas/elf/pr21661.d: New file. + * testsuite/gas/elf/pr21661.s: Likewise. + +2017-06-26 Nick Clifton + + * config/tc-arm.c (fpu_any): Only define for ELF based targets. + +2017-06-26 Claudiu Zissulescu + + * /config/tc-arc.c (is_br_jmp_insn_p): Update macro with known + instructions to be accounted as jumps. + (assemble_insn): Check for limms into the delay slots. Emit an + error if so. + * testsuite/gas/arc/asm-errors-3.d: New file. + * testsuite/gas/arc/asm-errors-3.err: Likewise. + * testsuite/gas/arc/asm-errors-3.s: Likewise. + +2017-06-26 Thomas Preud'homme + + * NEWS: Mention support of ARM Cortex-R52 processor. + * config/tc-arm.c (arm_cpus): Add entry for ARM Cortex-R52 processor. + * doc/c-arm.texi: Mention support for -mcpu=cortex-r52. + +2017-06-24 Thomas Preud'homme + + * NEWS: Mention support for ARMv8-R architecture. + * config/tc-arm.c (arm_archs): Add entry for ARMv8-R. + (arm_extensions): Restrict pan, ras and rdma extension to + ARMv8-A and make crypto, fp and simd extensions available to + ARMv8-R. + (cpu_arch_ver): Add entry for ARMv8-R. + (aeabi_set_public_attributes): Update gas_assert for Tag_DIV_use + logic. + * testsuite/gas/arm/armv8-a+fp.s: Rename into ... + * testsuite/gas/arm/armv8-ar+fp.s: This. Remove .arch directive. + * testsuite/gas/arm/armv8-a+fp.d: Specify source to assemble and + architecture to assemble for. + * testsuite/gas/arm/armv8-r+fp.d: New. + * testsuite/gas/arm/armv8-a+simd.s: Rename into ... + * testsuite/gas/arm/armv8-ar+simd.s: This. Remove .arch directive. + * testsuite/gas/arm/armv8-a+simd.d: Specify source to assemble and + architecture to assemble for. + * testsuite/gas/arm/armv8-r+simd.d: New. + * testsuite/gas/arm/armv8-a-bad.s: Rename into ... + * testsuite/gas/arm/armv8-ar-bad.s: This. Remove .arch directive. + * testsuite/gas/arm/armv8-a-bad.l: Rename into ... + * testsuite/gas/arm/armv8-ar-bad.l: This. Decrement line number by 1. + * testsuite/gas/arm/armv8-a-bad.d: Specify source to assemble, + architecture to assemble for and adjust error output file. + * testsuite/gas/arm/armv8-r-bad.d: New. + * testsuite/gas/arm/armv8-a-barrier.s: Rename into ... + * testsuite/gas/arm/armv8-ar-barrier.s: This. + * testsuite/gas/arm/armv8-a-barrier-arm.d: Adjust source. + * testsuite/gas/arm/armv8-a-barrier-thumb.d: Likewise. + * testsuite/gas/arm/armv8-r-barrier-arm.d: New. + * testsuite/gas/arm/armv8-r-barrier-thumb.d: New. + * testsuite/gas/arm/armv8-a-it-bad.s: Rename into ... + * testsuite/gas/arm/armv8-ar-it-bad.s: This. Remove .arch directive. + * testsuite/gas/arm/armv8-a-it-bad.l: Rename into ... + * testsuite/gas/arm/armv8-ar-it-bad.l: This. Decrement line number + by 1. + * testsuite/gas/arm/armv8-a-it-bad.d: Specify source to assemble, + architecture to assemble for and adjust error output file. + * testsuite/gas/arm/armv8-r-it-bad.d: New. + * testsuite/gas/arm/armv8-a.s: Rename into ... + * testsuite/gas/arm/armv8-ar.s: This. Remove .arch directive. + * testsuite/gas/arm/armv8-a.d: Specify source to assemble and + architecture to assemble for. + * testsuite/gas/arm/armv8-r.d: New. + * testsuite/gas/arm/attr-march-armv8-r+crypto.d: New. + * testsuite/gas/arm/attr-march-armv8-r+fp.d: New. + * testsuite/gas/arm/attr-march-armv8-r+simd.d: New. + * testsuite/gas/arm/attr-march-armv8-r.d: New. + * testsuite/gas/arm/crc32.s: Rename into ... + * testsuite/gas/arm/crc32-armv8-ar.s: This. + * testsuite/gas/arm/crc32.d: Rename into ... + * testsuite/gas/arm/crc32-armv8-a.d: This. Specify source to assemble. + * testsuite/gas/arm/crc32-armv8-r.d: New. + * testsuite/gas/arm/crc32-bad.s: Rename into ... + * testsuite/gas/arm/crc32-armv8-ar-bad.s: This. + * testsuite/gas/arm/crc32-bad.d: Rename into ... + * testsuite/gas/arm/crc32-armv8-a-bad.d: This. Specify source to + assemble. + * testsuite/gas/arm/crc32-armv8-r-bad.d: New. + * testsuite/gas/arm/mask_1.s: Rename into ... + * testsuite/gas/arm/mask_1-armv8-ar.s: This. + * testsuite/gas/arm/mask_1.d: Rename into ... + * testsuite/gas/arm/mask_1-armv8-a.d: This. Specify source to + assemble. + * testsuite/gas/arm/mask_1-armv8-r.d: new. + +2017-06-24 Thomas Preud'homme + + * config/tc-arm.c (arm_ext_v6m): Delete. + (arm_ext_v7m): Delete. + (arm_ext_m): Remove ARM_EXT_OS from the set of feature defined M + profile. + (arm_arch_v6m_only): Delete. + (do_t_swi): Remove special case for ARMv6S-M. + (md_assemble): Display error message previously in do_t_swi when + SVC is not available. + (insns): Guard swi and svc by arm_ext_os for Thumb mode. + (aeabi_set_public_attributes): Remove special case for ARMv6S-M. + +2017-05-11 Andrew Waterman + + * config/tc-riscv.c (riscv_ip): Changes as_warn to as_bad for improper + shift amounts. + +2017-06-22 Nick Clifton + + * config/tc-arm.c (arm_ext_v7m): Add ATTRIBUTE_UNUSED. + +2017-06-21 Thomas Preud'homme + + * config/tc-arm.c (fpu_any): Defined from FPU_ANY. + (cpu_arch_ver): Add all architectures and sort by release date. + (have_ext_for_needed_feat_p): New. + (get_aeabi_cpu_arch_from_fset): New. + (aeabi_set_public_attributes): Call above function to determine + Tag_CPU_arch and Tag_CPU_arch_profile values. Adapt Tag_ARM_ISA_use + and Tag_THUMB_ISA_use selection logic to check absence of feature bit + accordingly. + * testsuite/gas/arm/attr-march-armv1.d: Fix expected Tag_CPU_arch build + attribute value. + * testsuite/gas/arm/attr-march-armv2.d: Likewise. + * testsuite/gas/arm/attr-march-armv2a.d: Likewise. + * testsuite/gas/arm/attr-march-armv2s.d: Likewise. + * testsuite/gas/arm/attr-march-armv3.d: Likewise. + * testsuite/gas/arm/attr-march-armv3m.d: Likewise. + * testsuite/gas/arm/pr12198-2.d: Likewise. + +2017-06-21 H.J. Lu + + * testsuite/gas/i386/cet-intel.d: Updated. + * testsuite/gas/i386/cet.d: Likewise. + * testsuite/gas/i386/x86-64-cet-intel.d: Likewise. + * testsuite/gas/i386/x86-64-cet.d: Likewise. + * testsuite/gas/i386/cet.s: Update incsspd and setssbsy tests. + * testsuite/gas/i386/x86-64-cet.s: Likewise. + +2017-06-21 H.J. Lu + + * testsuite/gas/i386/cet-intel.d: Updated. + * testsuite/gas/i386/cet.d: Likewise. + * testsuite/gas/i386/x86-64-cet-intel.d: Likewise. + * testsuite/gas/i386/x86-64-cet.d: Likewise. + * testsuite/gas/i386/cet.s: Replace savessp with saveprevssp. + * testsuite/gas/i386/x86-64-cet.s: Likewise. + +2017-06-21 H.J. Lu + + * config/tc-i386.c (md_assemble): Update NOTRACK prefix check. + * testsuite/gas/i386/notrack-intel.d: Updated. + * testsuite/gas/i386/notrack.d: Likewise. + * testsuite/gas/i386/notrackbad.l: Likewise. + * testsuite/gas/i386/x86-64-notrack-intel.d: Likewise. + * testsuite/gas/i386/x86-64-notrack.d: Likewise. + * testsuite/gas/i386/x86-64-notrackbad.l: Likewise. + * testsuite/gas/i386/notrack.s: Add NOTRACK prefix tests with + memory indirect branch. + * testsuite/gas/i386/x86-64-notrack.s: Likewise. + * testsuite/gas/i386/notrackbad.s: Remove memory indirect branch + with NOTRACK prefix. + * testsuite/gas/i386/x86-64-notrackbad.s: Likewise. + +2017-06-20 Thomas Preud'homme + + * config/tc-arm.c (arm_extensions): New duplicate idiv entry to enable + Thumb division for ARMv7 architecture. + (arm_parse_extension): Document expected behavior for duplicate + entries. + (s_arm_arch_extension): Likewise. + * testsuite/gas/arm/forbid-armv7-idiv-ext.d: New test. + * testsuite/gas/arm/forbid-armv7-idiv-ext.l: New expected output for + above test. + +2017-06-21 Thomas Preud'homme + + * config/tc-arm.c (aeabi_set_public_attributes): Populate flags from + feature bits used or selected_cpu depending on whether a CPU was + selected by the user. + +2017-06-21 Thomas Preud'homme + + * config/tc-arm.c (aeabi_set_public_attributes): Test *mcpu_ext_opt to + decide whether to set Tag_DSP_extension build attribute value. Remove + now useless arm_arch variable. + +2017-06-21 Thomas Preud'homme + + * config/tc-arm.c (dyn_mcpu_ext_opt): New static variable. + (dyn_march_ext_opt): Likewise. + (md_begin): Copy extension feature bits alongside architecture ones. + Merge extensions feature bits in selected_cpu and cpu_variant if there + is some. + (arm_parse_extension): Pass architecture and extension feature bits in + separate parameters, with architecture bits being read only. Update + **opt_p directly rather than *ext_set and initialize it if needed. + (arm_parse_cpu): Stop merging architecture and extension feature bits + and instead use mcpu_cpu_opt and dyn_mcpu_ext_opt to memorize them + respectively. Adapt to change in parameters of arm_parse_extension. + (arm_parse_arch): Adapt to change in parameters of arm_parse_extension. + (aeabi_set_attribute_string): Make function static. + (arm_md_post_relax): New function. + (s_arm_cpu): Stop merging architecture and extension feature bits and + instead use mcpu_cpu_opt and dyn_mcpu_ext_opt to memorize them + respectively. Merge extension feature bits in cpu_variant + if there is any. + (s_arm_arch): Reset extension feature bit. Set selected_cpu from + *mcpu_cpu_opt and cpu_variant from selected_cpu and *mfpu_opt for + consistency with s_arm_cpu. + (s_arm_arch_extension): Update *dyn_mcpu_ext_opt rather than + selected_cpu, allocating it before hand if needed. Set selected_cpu + from it and then cpu_variant. + (s_arm_fpu): Merge *mcpu_ext_opt feature bits if any in cpu_variant. + * config/tc-arm.h (md_post_relax_hook): Set to arm_md_post_relax. + (aeabi_set_public_attributes): Delete external declaration. + (arm_md_post_relax): Declare externally. + +2017-06-21 Thomas Preud'homme + + * config/tc-arm.c (struct arm_cpu_option_table): New ext field. + (ARM_CPU_OPT): Add parameter to set new ext field and reorder canonical + name field just after the name field. + (arm_cpus): Move extension feature bit from value field to ext field, + reorder parameter according to changes in ARM_CPU_OPT and reindent. + (arm_parse_cpu): Point mcpu_cpu_opt to a bitfield merging the value and + ext field from the selected arm_cpus entry. + (s_arm_cpu): Likewise. + +2017-06-21 James Greenhalgh + + * config/tc-aarch64.c (aarch64_cpus): Add cortex-a55 and cortex-a75. + * doc/c-aarch64.texi (-mcpu): Document cortex-a55 and cortex-a75. + +2017-06-15 H.J. Lu + + PR binutils/21594 + * testsuite/gas/i386/mpx.s: Add 2 tests with invalid bnd + register. + * testsuite/gas/i386/x86-64-mpx.s: Likewise. + * testsuite/gas/i386/mpx.d: Updated. + * testsuite/gas/i386/x86-64-mpx.d: Likewise. + +2017-06-14 Max Filippov + + * config/tc-xtensa.c (density_supported, xtensa_fetch_width, + absolute_literals_supported): Leave definitions uninitialized. + (directive_state): Leave entries for directive_density and + directive_absolute_literals initialized to false. + (xg_init_global_config, xtensa_init): New functions. + * config/tc-xtensa.h (TARGET_BYTES_BIG_ENDIAN): Define as 0. + (HOST_SPECIAL_INIT): New definition. + (xtensa_init): New declaration. + +2017-06-07 Michael Collison + + * config/tc-aarch64.c (reg_entry_reg_names): Add IP0, + IP1, FP, and LR as register aliases of register 16, 17, 29 + and 30 respectively. + * testsuite/gas/aarch64/diagnostic.l: Remove diagnostic + prohibiting register 'lr' which is now an alias. + * testsuite/gas/aarch64/diagnostic.s: Remove instruction + utilizing register 'lr' which is now an alias. + +2017-06-06 Jiong Wang + + * config/tc-arm.c (reject_bad_reg): Allow REG_SP on ARMv8-A. + (parse_operands): Allow REG_SP for OP_oRRnpcsp and OP_RRnpcsp on + ARMv8-A. + (do_co_reg): Allow REG_SP for Rd on ARMv8-A. + (do_t_add_sub): Likewise. + (do_t_mov_cmp): Likewise. + (do_t_tb): Likewise. + * testsuite/gas/arm/ld-sp-warn.l: Delete the warning on REG_SP as Rt for + ldrsb. + * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.d: New test. + * testsuite/gas/arm/sp-pc-validations-bad-t-v8a.l: New test. + * testsuite/gas/arm/sp-pc-validations-bad-t.d: Specifies -march=armv7-a. + * testsuite/gas/arm/sp-pc-validations-bad-t.s: Remove ".arch armv7-a". + * testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.d: New test. + * testsuite/gas/arm/sp-usage-thumb2-relax-on-v7.l: New test. + * testsuite/gas/arm/sp-usage-thumb2-relax-on-v8.d: New test. + * testsuite/gas/arm/sp-usage-thumb2-relax.s: New test. + * testsuite/gas/arm/strex-bad-t.d: Specifies -march=armv7-a. + +2017-06-05 Jim Wilson + + * config/tc-arm.c (arm_cpus): Delete falkor and qdf24xx entries. + * doc/c-arm.texi (-mcpu): Likewise. + +2017-05-30 Anton Kolesov + + * config/tc-arc.c (cpu_types): Include arc-cpu.def + +2017-05-23 H.J. Lu + + * gas/testsuite/gas/i386/notrackbad.l: Updated for non-ELF + targets. + * gas/testsuite/gas/i386/x86-64-notrackbad.l: Likewise. + +2017-05-23 Claudiu Zissulescu + + * config/tc-arc.c (md_apply_fix): Use as_bad_where. + (assemble_insn): Use as_bad. + +2017-05-22 H.J. Lu + + * config/tc-i386.c (REX_PREFIX): Changed to 7. + (NOTRACK_PREFIX): New. + (MAX_PREFIXES): Changed to 8. + (_i386_insn): Add notrack_prefix. + (PREFIX_GROUP): Add PREFIX_DS. + (add_prefix): Return PREFIX_DS for DS_PREFIX_OPCODE. + (md_assemble): Check if NOTRACK prefix is supported. + (parse_insn): Set notrack_prefix and issue an error for + other prefixes after NOTRACK prefix. + * testsuite/gas/i386/i386.exp: Run tests for NOTRACK prefix. + * testsuite/gas/i386/notrack-intel.d: New file. + * testsuite/gas/i386/notrack.d: Likewise. + * testsuite/gas/i386/notrack.s: Likewise. + * testsuite/gas/i386/notrackbad.l: Likewise. + * testsuite/gas/i386/notrackbad.s: Likewise. + * testsuite/gas/i386/x86-64-notrack-intel.d: Likewise. + * testsuite/gas/i386/x86-64-notrack.d: Likewise. + * testsuite/gas/i386/x86-64-notrack.s: Likewise. + * testsuite/gas/i386/x86-64-notrackbad.l: Likewise. + * testsuite/gas/i386/x86-64-notrackbad.s: Likewise. + +2017-05-22 Jiong Wang + + * configure.tgt: Set "arch" to "aarch64" if ${cpu} equals "aarch64". + Recognize the new triplet name aarch64*-linux-gnu_ilp32. + * configure.ac: Output DEFAULT_ARCH macro for AArch64. + * configure: Regenerate. + * config/tc-aarch64.h (aarch64_after_parse_args): New declaration. + (md_after_parse_args): New define. + * config/tc-aarch64.c (aarch64_abi_type): New enumeration + AARCH64_ABI_NONE. + (DEFAULT_ARCH): New define. + (aarch64_abi): Set default value to AARCH64_ABI_NONE. + (aarch64_after_parse_args): New function. + +2017-05-19 Jose E. Marchesi + + * config/tc-sparc.c (sparc_arch_table): Entries for `sparc6', + `v9m8' and `v8plusm8'. + (sparc_md_end): Handle SPARC_OPCODE_ARCH_M8. + (get_hwcap_name): Support the M8 hardware capabilities. + (sparc_ip): Handle new operand types. + * doc/c-sparc.texi (Sparc-Opts): Document -Av9m8, -Av8plusm8 and + -Asparc6, and the corresponding -xarch aliases. + * testsuite/gas/sparc/sparc6.s: New file. + * testsuite/gas/sparc/sparc6.d: Likewise. + * testsuite/gas/sparc/sparc6-diag.s: Likewise. + * testsuite/gas/sparc/sparc6-diag.l: Likewise. + * testsuite/gas/sparc/fpcmpshl.s: Likewise. + * testsuite/gas/sparc/fpcmpshl.d: Likewise. + * testsuite/gas/sparc/fpcmpshl-diag.s: Likewise. + * testsuite/gas/sparc/fpcmpshl-diag.l: Likewise. + * testsuite/gas/sparc/ldm-stm.s: Likewise. + * testsuite/gas/sparc/ldm-stm.d: Likewise. + * testsuite/gas/sparc/ldm-stm-diag.s: Likewise. + * testsuite/gas/sparc/ldm-stm-diag.l: Likewise. + * testsuite/gas/sparc/ldmf-stmf.s: Likewise. + * testsuite/gas/sparc/ldmf-stmf.d: Likewise. + * testsuite/gas/sparc/ldmf-stmf-diag.s: Likewise. + * testsuite/gas/sparc/ldmf-stmf-diag.l: Likewise. + * testsuite/gas/sparc/on.s: Likewise. + * testsuite/gas/sparc/on.d: Likewise. + * testsuite/gas/sparc/on-diag.s: Likewise. + * testsuite/gas/sparc/on-diag.l: Likewise. + * testsuite/gas/sparc/rle.s: Likewise. + * testsuite/gas/sparc/rle.d: Likewise. + * testsuite/gas/sparc/sparc.exp (gas_64_check): Run new tests. + * testsuite/gas/sparc/rdasr.s: Add test for RDENTROPY. + * testsuite/gas/sparc/rdasr.d: Likewise. + +2017-05-19 Jose E. Marchesi + + * testsuite/gas/sparc/call-relax.d: Support 32-bit targets. + * testsuite/gas/sparc/sparc.exp (gas_64_check): Use -64 to + run asi-bump-warn. + +2017-05-19 Georg-Johann Lay + + PR ld/21472 + * config/tc-avr.c (mcu_types): Add entries for: attiny416, + attiny417, attiny816, attiny817. + +2017-05-18 Alan Modra + + * config/tc-aarch64.c: Don't compare booleans against TRUE or FALSE. + * config/tc-hppa.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-score7.c: Likewise. + +2017-05-16 Alan Modra + + * write.c (GENERIC_FORCE_RELOCATION_LOCAL): Define. + (TC_FORCE_RELOCATION_LOCAL): Use it. + (GENERIC_FORCE_RELOCATION_SUB_SAME): Define. + (TC_FORCE_RELOCATION_SUB_SAME): Use it. + * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL, + TC_FORCE_RELOCATION_SUB_SAME): Use GENERIC defines. + * config/tc-aarch64.h: Similarly. + * config/tc-avr.h: Similarly. + * config/tc-cris.h: Similarly. + * config/tc-i386.h: Similarly. + * config/tc-i960.h: Similarly. + * config/tc-ia64.h: Similarly. + * config/tc-microblaze.h: Similarly. + * config/tc-mips.h: Similarly. + * config/tc-msp430.h: Similarly. + * config/tc-nds32.h: Similarly. + * config/tc-pru.h: Similarly. + * config/tc-riscv.h: Similarly. + * config/tc-rl78.h: Similarly. + * config/tc-s390.h: Similarly. + * config/tc-sh.h: Similarly. + * config/tc-sh64.h: Similarly. + * config/tc-sparc.h: Similarly. + * config/tc-xtensa.h: Similarly. + * config/tc-mn10300.h: Similarly. + (GENERIC_FORCE_RELOCATION_LOCAL): Define. + * config/tc-msp430.c (msp430_force_relocation_local): Modify to + be addition to rather than replacement of standard + TC_FORCE_RELOCATION_LOCAL. + +2017-05-15 Nick Clifton + + PR gas/21458 + * config/tc-arm.c (do_adr): If the ADR involves a thumb function + symbol, ensure that the T bit will be set. + (do_adrl): Likewise. + (do_t_adr): Likewise. + * testsuite/gas/arm/pr21458.s: New test. + * testsuite/gas/arm/pr21458.d: New test driver. + +2017-05-15 Maciej W. Rozycki + + * testsuite/gas/mips/mips16-pcrel-1.d: Remove `-mips3' from `as' + flags. + * testsuite/gas/mips/mips16-pcrel-pic-1.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-n32-0.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-n32-1.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-n64-0.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-n64-1.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-reloc-4.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-reloc-5.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-reloc-6.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-reloc-7.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-4.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-5.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-6.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-7.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-9.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-pic-9.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-n32-8.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-n32-9.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-n64-8.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-addend-n64-9.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-2.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-3.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-6.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-7.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d: Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d: + Likewise. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d: + Likewise. + * testsuite/gas/mips/mips16e2@mips16-pcrel-0.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-1.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-2.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-2.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-3.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-6.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-7.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-2.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-3.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-6.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-7.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-8.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-9.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-8.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-9.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-8.d: + New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-9.d: + New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute.d: New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-1.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-2.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-3.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-4.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-5.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-6.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-7.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-4.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-6.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-4.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-6.d: New + test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-4.d: + New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-6.d: + New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-4.d: + New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-6.d: + New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-4.d: + New test. + * testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-6.d: + New test. + * testsuite/gas/mips/mips16-pcrel-1.l: Adjust line numbers. + * testsuite/gas/mips/mips16-pcrel-1.s: Adjust for alignment + preservation between MIPS16 and MIPS16e2 code. + * testsuite/gas/mips/mips.exp: Run MIPS16 relaxation tests over + all MIPS16 architectures. + +2017-05-15 Maciej W. Rozycki + + * testsuite/gas/mips/mips16e2.d: New test. + * testsuite/gas/mips/mips16e2-mt.d: New test. + * testsuite/gas/mips/mips16e2-sub.d: New test. + * testsuite/gas/mips/mips16e2@mips16e2-sub.d: New test. + * testsuite/gas/mips/mips16e2-mt-sub.d: New test. + * testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d: New test. + * testsuite/gas/mips/mips16e2-hilo.d: New test. + * testsuite/gas/mips/mips16e2-hilo-n32.d: New test. + * testsuite/gas/mips/mips16e2-reloc-error.d: New test. + * testsuite/gas/mips/mips16e2-imm-error.d: New test. + * testsuite/gas/mips/elf_ase_mips16e2.d: New test. + * testsuite/gas/mips/elf_ase_mips16e2-2.d: New test. + * testsuite/gas/mips/elf-rel9-mips16e2.d: New test. + * testsuite/gas/mips/mips16e2-lui.d: New test. + * testsuite/gas/mips/mips16e2@mips32r2-sync.d: New test. + * testsuite/gas/mips/mips16e2@mips32r2-sync-1.d: New test. + * testsuite/gas/mips/mips16e2@lui-2.d: New test. + * testsuite/gas/mips/mips16e2-reloc-error.l: New stderr output. + * testsuite/gas/mips/mips16e2-imm-error.l: New stderr output. + * testsuite/gas/mips/mips16e2@lui-2.l: New stderr output. + * testsuite/gas/mips/mips16e2.s: New test source. + * testsuite/gas/mips/mips16e2-mt.s: New test source. + * testsuite/gas/mips/mips16e2-sub.s: New test source. + * testsuite/gas/mips/mips16e2-mt-sub.s: New test source. + * testsuite/gas/mips/mips16e2-hilo.s: New test source. + * testsuite/gas/mips/mips16e2-reloc-error.s: New test source. + * testsuite/gas/mips/mips16e2-imm-error.s: New test source. + * testsuite/gas/mips/elf-rel9-mips16e2.s: New test source. + * testsuite/gas/mips/mips16e2-lui.s: New test source. + * testsuite/gas/mips/mips.exp: Expand `mips32r2-sync', + `mips32r2-sync-1', `lui-1' and `lui-2' tests across MIPS16e2 + architectures. Run the new tests. + +2017-05-15 Maciej W. Rozycki + + * testsuite/gas/mips/mips.exp (run_dump_test_arch): Add + `mips16e2@' prefix. + (run_list_test_arch): Likewise. + (mips16e2-32, mips16e2-64): New architectures. + * testsuite/gas/mips/mips16e2-32@mips16-macro.d: New test. + * testsuite/gas/mips/mips16e2-32@mips16-macro-t.d: New test. + * testsuite/gas/mips/mips16e2-32@mips16-macro-e.d: New test. + * testsuite/gas/mips/mips16e2-32@mips16-insn-t.d: New test. + * testsuite/gas/mips/mips16e2-32@mips16-insn-e.d: New test. + * testsuite/gas/mips/mips16e2-32@mips16e-64.d: New test. + * testsuite/gas/mips/mips16e2-32@mips16-sub.d: New test. + * testsuite/gas/mips/mips16e2-32@mips16e-64-sub.d: New test. + * testsuite/gas/mips/mips16e2@relax-swap3.d: New test. + * testsuite/gas/mips/mips16-32@mips16-asmacro.d: Remove `source' + tag. Add `-I$srcdir/$subdir' to `as' flags. + * testsuite/gas/mips/mips16-64@mips16-asmacro.d: Likewise. + * testsuite/gas/mips/mips16e2-32@mips16-macro.l: New stderr + output. + * testsuite/gas/mips/mips16e2-32@mips16-macro-t.l: New stderr + output. + * testsuite/gas/mips/mips16e2-32@mips16-macro-e.l: New stderr + output. + * testsuite/gas/mips/mips16e2-32@mips16-insn-t.l: New stderr + output. + * testsuite/gas/mips/mips16e2-32@mips16-insn-e.l: New stderr + output. + * testsuite/gas/mips/mips16-sub.s: Add `.set nomips16e2'. + * testsuite/gas/mips/mips16e-sub.s: Likewise. + * testsuite/gas/mips/mips16e-64-sub.s: Likewise. + * testsuite/gas/mips/mips16-asmacro.s: Remove `.set mips32'. + * testsuite/gas/mips/mips16-32@mips16-asmacro.s: New test + source. + * testsuite/gas/mips/mips16-64@mips16-asmacro.s: New test + source. + +2017-05-15 Maciej W. Rozycki + Matthew Fortune + Andrew Bennett + + * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add `e2' flag. + (RELAX_MIPS16_E2): New macro. + (RELAX_MIPS16_PIC, RELAX_MIPS16_SYM32, RELAX_MIPS16_NOMACRO) + (RELAX_MIPS16_USER_SMALL, RELAX_MIPS16_USER_EXT) + (RELAX_MIPS16_DSLOT, RELAX_MIPS16_JAL_DSLOT) + (RELAX_MIPS16_EXTENDED, RELAX_MIPS16_MARK_EXTENDED) + (RELAX_MIPS16_CLEAR_EXTENDED, RELAX_MIPS16_ALWAYS_EXTENDED) + (RELAX_MIPS16_MARK_ALWAYS_EXTENDED) + (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED, RELAX_MIPS16_MACRO) + (RELAX_MIPS16_MARK_MACRO, RELAX_MIPS16_CLEAR_MACRO): Shift bits. + (mips16_immed_extend): New prototype. + (options): Add OPTION_MIPS16E2 and OPTION_NO_MIPS16E2 enum + values. + (md_longopts): Add "mmips16e2" and "mno-mips16e2" options. + (mips_ases): Add "mips16e2" entry. + (mips_set_ase): Handle MIPS16e2 ASE. + (insn_insert_operand): Explicitly handle immediates with MIPS16 + instructions that require 32-bit encoding. + (is_opcode_valid_16): Pass enabled ASE bitmask on to + `opcode_is_member'. + (validate_mips_insn): Explicitly handle immediates with MIPS16 + instructions that require 32-bit encoding. + (operand_reg_mask) : Add handler. + (match_reg28_operand): New function. + (match_operand) : Add handler. + (append_insn): Pass ASE_MIPS16E2 setting to RELAX_MIPS16_ENCODE. + (match_mips16_insn): Handle MIPS16 instructions that require + 32-bit encoding and `V' and `u' operand codes. + (mips16_ip): Allow any characters except from `.' in opcodes. + (mips16_immed_extend): Handle 9-bit immediates. Do not shuffle + immediates whose width is not one of these listed. + (md_estimate_size_before_relax): Handle MIPS16e2 relaxation. + (mips_relax_frag): Likewise. + (md_convert_frag): Likewise. + (mips_convert_ase_flags): Handle MIPS16e2 ASE. + + * doc/as.texinfo (Target MIPS options): Add `-mmips16e2' and + `-mno-mips16e2' options. + (-mmips16e2, -mno-mips16e2): New options. + * doc/c-mips.texi (MIPS Options): Add `-mmips16e2' and + `-mno-mips16e2' options. + (MIPS ASE Instruction Generation Overrides): Add `.set mips16e2' + and `.set nomips16e2'. + +2017-05-15 Maciej W. Rozycki + + * config/tc-mips.c (match_int_operand): Call + `match_out_of_range' before returning failure for 0x8000-0xffff + values conditionally allowed. + +2017-05-15 Maciej W. Rozycki + + * config/tc-mips.c (match_int_operand): Call + `match_not_constant' before returning failure for a non-constant + 16-bit immediate conditionally allowed. + +2017-05-15 Maciej W. Rozycki + + * config/tc-mips.c (match_const_int): Call `match_out_of_range' + rather than `match_not_constant' for unrelocated operands + retrieved as an `O_big' expression. + (match_int_operand): Call `match_out_of_range' for relocatable + operands retrieved as an `O_big' expression. + (match_mips16_insn): Call `match_out_of_range' for relaxable + operands retrieved as an `O_big' expression. + * testsuite/gas/mips/addiu-error.d: New test. + * testsuite/gas/mips/mips16@addiu-error.d: New test. + * testsuite/gas/mips/micromips@addiu-error.d: New test. + * testsuite/gas/mips/break-error.d: New test. + * testsuite/gas/mips/lui-1.l: Adjust error message. + * testsuite/gas/mips/addiu-error.l: New stderr output. + * testsuite/gas/mips/mips16@addiu-error.l: New stderr output. + * testsuite/gas/mips/micromips@addiu-error.l: New stderr output. + * testsuite/gas/mips/break-error.l: New stderr output. + * testsuite/gas/mips/addiu-error.s: New test source. + * testsuite/gas/mips/break-error.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-05-15 Maciej W. Rozycki + + * config/tc-mips.c (match_mips16_insn): Remove the explicit + OT_INTEGER check before the `match_expression' call. + * testsuite/gas/mips/mips16-insn-e.l: Adjust messages. + * testsuite/gas/mips/mips16-32@mips16-insn-e.l: Likewise. + * testsuite/gas/mips/mips16-64@mips16-insn-e.l: Likewise. + * testsuite/gas/mips/mips16e-32@mips16-insn-e.l: Likewise. + * testsuite/gas/mips/mips16-reg-error.d: New test. + * testsuite/gas/mips/mips16-reg-error.l: New stderr output. + * testsuite/gas/mips/mips16-reg-error.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new test. + +2017-05-15 Maciej W. Rozycki + + * config/tc-mips.c (match_mips16_insn): Call + `match_not_constant' for a disallowed relocation operation. + * testsuite/gas/mips/mips16-reloc-error.d: New test. + * testsuite/gas/mips/mips16-reloc-error.l: New stderr output. + * testsuite/gas/mips/mips16-reloc-error.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new test. + +2017-05-15 Maciej W. Rozycki + + * testsuite/gas/mips/lui-1.d: New test. + * testsuite/gas/mips/lui-2.d: New test. + * gas/testsuite/gas/mips/mips.exp: Fold corresponding list tests + into the new tests. + +2017-05-15 Maciej W. Rozycki + + * config/tc-mips.c (match_const_int): Update description. + +2017-05-15 Maciej W. Rozycki + + * doc/as.texinfo (-mips16, -no-mips16): Refer to `.module + mips16' rather than `.set mips16'. + (-mmicromips, -mno-micromips): Refer to `.module micromips' and + `.module nomicromips' rather than `.set micromips' and `.set + nomicromips'. + (-msmartmips, -mno-smartmips): Refer to `.module smartmips' + rather than `.set smartmips'. + * doc/c-mips.texi (MIPS Options): Refer to `.module mips16', + `.module micromips', `.module nomicromips' and `.module + smartmips' rather than `.set mips16', `.set micromips', `.set + nomicromips' and `.set smartmips' respectively. + +2017-05-12 Maciej W. Rozycki + Matthew Fortune + + * config/tc-mips.c (mips_percent_op): Add "%gprel". + (mips16_percent_op): Add "%gp_rel". + * testsuite/gas/mips/elf-rel8.s:: Add `%gprel' forms. + * testsuite/gas/mips/elf-rel8-mips16.s: Add `%gp_rel' forms. + * testsuite/gas/mips/elf-rel8.d: Adjust accordingly. + * testsuite/gas/mips/elf-rel8-mips16.d: Likewise. + +2017-05-12 Maciej W. Rozycki + + * testsuite/gas/mips/mips16.d: Adjust BREAK disassembly. + * testsuite/gas/mips/mips16-64@mips16.d: Likewise. + * testsuite/gas/mips/mips16-64.d: Likewise. + * testsuite/gas/mips/mips16-64@mips16-64.d: Likewise. + * testsuite/gas/mips/mips16-macro.d: Likewise. + * testsuite/gas/mips/mips16-64@mips16-macro.d: Likewise. + * testsuite/gas/mips/mips16-sub.d: Likewise. + * testsuite/gas/mips/mips16-32@mips16-sub.d: Likewise. + +2017-05-11 Maciej W. Rozycki + + * testsuite/gas/mips/mips32r2-sync-1.d: New test. + * testsuite/gas/mips/micromips@mips32r2-sync-1.d: New test. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-05-10 Maciej W. Rozycki + + * testsuite/gas/mips/isa-override-2.d: New test. + * testsuite/gas/mips/mips1@isa-override-2.d: New test. + * testsuite/gas/mips/r3000@isa-override-2.d: New test. + * testsuite/gas/mips/r3900@isa-override-2.d: New test. + * testsuite/gas/mips/mips2@isa-override-2.d: New test. + * testsuite/gas/mips/mips32@isa-override-2.d: New test. + * testsuite/gas/mips/mips32r2@isa-override-2.d: New test. + * testsuite/gas/mips/mips32r3@isa-override-2.d: New test. + * testsuite/gas/mips/mips32r5@isa-override-2.d: New test. + * testsuite/gas/mips/mips32r6@isa-override-2.d: New test. + * testsuite/gas/mips/octeon3@isa-override-2.d: New test. + * testsuite/gas/mips/r3000@isa-override-2.l: Remove list test. + * testsuite/gas/mips/mips1@isa-override-2.s: Remove test source. + * testsuite/gas/mips/r3000@isa-override-2.s: Remove test source. + * testsuite/gas/mips/r3900@isa-override-2.s: Remove test source. + * testsuite/gas/mips/mips2@isa-override-2.s: Remove test source. + * testsuite/gas/mips/mips32@isa-override-2.s: Remove test + source. + * testsuite/gas/mips/mips32r2@isa-override-2.s: Remove test + source. + * testsuite/gas/mips/mips32r3@isa-override-2.s: Remove test + source. + * testsuite/gas/mips/mips32r5@isa-override-2.s: Remove test + source. + * testsuite/gas/mips/mips32r6@isa-override-2.s: Remove test + source. + * testsuite/gas/mips/octeon3@isa-override-2.s: Remove test + source. + * gas/testsuite/gas/mips/mips.exp: Fold corresponding list tests + into the new tests. + +2017-05-10 Maciej W. Rozycki + + * testsuite/gas/mips/mips16e-sub.d: Correct test name. + * testsuite/gas/mips/mips16-32@mips16e-sub.d: Likewise. + * testsuite/gas/mips/mips16-64@mips16e-sub.d: Likewise. + * testsuite/gas/mips/mips16e-64-sub.d: Likewise. + * testsuite/gas/mips/mips16-32@mips16e-64-sub.d: Likewise. + * testsuite/gas/mips/mips16-64@mips16e-64-sub.d: Likewise. + * testsuite/gas/mips/mips16e-32@mips16e-64-sub.d: Likewise. + +2017-05-10 Maciej W. Rozycki + + * testsuite/gas/mips/mips16-macro.l: Remove list test. + +2017-05-10 Maciej W. Rozycki + + * testsuite/gas/mips/r3900@ecoff@ld.d: Remove test. + * testsuite/gas/mips/mips2@ecoff@ld.d: Remove test. + * testsuite/gas/mips/mips32@ecoff@ld.d: Remove test. + * testsuite/gas/mips/mips32r2@ecoff@ld.d: Remove test. + * testsuite/gas/mips/r3900@ecoff@ld-forward.d: Remove test. + * testsuite/gas/mips/mips2@ecoff@ld-forward.d: Remove test. + * testsuite/gas/mips/mips32@ecoff@ld-forward.d: Remove test. + * testsuite/gas/mips/mips32r2@ecoff@ld-forward.d: Remove test. + * testsuite/gas/mips/mips1@ecoff@sd.d: Remove test. + * testsuite/gas/mips/r3000@ecoff@sd.d: Remove test. + * testsuite/gas/mips/r3900@ecoff@sd.d: Remove test. + * testsuite/gas/mips/mips2@ecoff@sd.d: Remove test. + * testsuite/gas/mips/mips32@ecoff@sd.d: Remove test. + * testsuite/gas/mips/mips32r2@ecoff@sd.d: Remove test. + * testsuite/gas/mips/mips1@ecoff@sd-forward.d: Remove test. + * testsuite/gas/mips/r3000@ecoff@sd-forward.d: Remove test. + * testsuite/gas/mips/r3900@ecoff@sd-forward.d: Remove test. + * testsuite/gas/mips/mips2@ecoff@sd-forward.d: Remove test. + * testsuite/gas/mips/mips32@ecoff@sd-forward.d: Remove test. + * testsuite/gas/mips/mips32r2@ecoff@sd-forward.d: Remove test. + +2017-05-10 Claudiu Zissulescu + + * testsuite/gas/arc/attr-arc600.d: New file. + * testsuite/gas/arc/attr-arc600_mul32x16.d: Likewise. + * testsuite/gas/arc/attr-arc600_norm.d: Likewise. + * testsuite/gas/arc/attr-arc601.d: Likewise. + * testsuite/gas/arc/attr-arc601_mul32x16.d: Likewise. + * testsuite/gas/arc/attr-arc601_mul64.d: Likewise. + * testsuite/gas/arc/attr-arc601_norm.d: Likewise. + * testsuite/gas/arc/attr-arc700.d: Likewise. + * testsuite/gas/arc/attr-arcem.d: Likewise. + * testsuite/gas/arc/attr-archs.d: Likewise. + * testsuite/gas/arc/attr-autodetect-1.d: Likewise. + * testsuite/gas/arc/attr-autodetect-1.s: Likewise. + * testsuite/gas/arc/attr-cpu-a601.d: Likewise. + * testsuite/gas/arc/attr-cpu-a601.s: Likewise. + * testsuite/gas/arc/attr-cpu-a700.d: Likewise. + * testsuite/gas/arc/attr-cpu-a700.s: Likewise. + * testsuite/gas/arc/attr-cpu-em.d: Likewise. + * testsuite/gas/arc/attr-cpu-em.s: Likewise. + * testsuite/gas/arc/attr-cpu-hs.d: Likewise. + * testsuite/gas/arc/attr-cpu-hs.s: Likewise. + * testsuite/gas/arc/attr-em.d: Likewise. + * testsuite/gas/arc/attr-em4.d: Likewise. + * testsuite/gas/arc/attr-em4_dmips.d: Likewise. + * testsuite/gas/arc/attr-em4_fpuda.d: Likewise. + * testsuite/gas/arc/attr-em4_fpus.d: Likewise. + * testsuite/gas/arc/attr-hs.d: Likewise. + * testsuite/gas/arc/attr-hs34.d: Likewise. + * testsuite/gas/arc/attr-hs38.d: Likewise. + * testsuite/gas/arc/attr-hs38_linux.d: Likewise. + * testsuite/gas/arc/attr-mul64.d: Likewise. + * testsuite/gas/arc/attr-name.d: Likewise. + * testsuite/gas/arc/attr-name.s: Likewise. + * testsuite/gas/arc/attr-nps400.d: Likewise. + * testsuite/gas/arc/attr-override-mcpu.d: Likewise. + * testsuite/gas/arc/attr-override-mcpu.s + * testsuite/gas/arc/attr-quarkse_em.d: Likewise. + * testsuite/gas/arc/blank.s: Likewise. + * testsuite/gas/elf/section2.e-arc: Likewise. + * testsuite/gas/arc/cpu-pseudop-1.d: Update test. + * testsuite/gas/arc/cpu-pseudop-2.d: Likewise. + * testsuite/gas/arc/nps400-0.d: Likewise. + * testsuite/gas/elf/elf.exp: Set target_machine for ARC. + * config/tc-arc.c (opcode/arc-attrs.h): Include. + (ARC_GET_FLAG, ARC_SET_FLAG, streq): Define. + (arc_attribute): Declare new function. + (md_pseudo_table): Add arc_attribute. + (cpu_types): Rename default cpu features. + (selected_cpu): Set the default OSABI flag. + (mpy_option): New variable. + (pic_option): Likewise. + (sda_option): Likewise. + (tls_option): Likewise. + (feature_type, feature_list): Remove. + (arc_initial_eflag): Likewise. + (attributes_set_explicitly): New variable. + (arc_check_feature): Check also for the conflicting features. + (arc_select_cpu): Refactor assignment of selected_cpu.eflags. + (arc_option): Remove setting of private flags and architecture. + (check_cpu_feature): Refactor feature names. + (autodetect_attributes): New function. + (assemble_tokens): Use above function. + (md_parse_option): Refactor feature names. + (arc_attribute): New function. + (arc_set_attribute_int): Likewise. + (arc_set_attribute_string): Likewise. + (arc_stralloc): Likewise. + (arc_set_public_attributes): Likewise. + (arc_md_end): Likewise. + (arc_copy_symbol_attributes): Likewise. + (rc_convert_symbolic_attribute): Likewise. + * config/tc-arc.h (md_end): Define. + (CONVERT_SYMBOLIC_ATTRIBUTE): Likewise. + (TC_COPY_SYMBOL_ATTRIBUTES): Likewise. + * doc/c-arc.texi: Document ARC object attributes. + +2017-05-03 Maciej W. Rozycki + + * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add `pic', `sym32' and + `nomacro' flags. + (RELAX_MIPS16_PIC, RELAX_MIPS16_SYM32, RELAX_MIPS16_NOMACRO): + New macros. + (RELAX_MIPS16_USER_SMALL, RELAX_MIPS16_USER_EXT) + (RELAX_MIPS16_DSLOT, RELAX_MIPS16_JAL_DSLOT) + (RELAX_MIPS16_EXTENDED, RELAX_MIPS16_MARK_EXTENDED) + (RELAX_MIPS16_CLEAR_EXTENDED, RELAX_MIPS16_ALWAYS_EXTENDED) + (RELAX_MIPS16_MARK_ALWAYS_EXTENDED) + (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED): Shift bits. + (RELAX_MIPS16_MACRO, RELAX_MIPS16_MARK_MACRO) + (RELAX_MIPS16_CLEAR_MACRO): New macros. + (append_insn): Pass `mips_pic', HAVE_32BIT_SYMBOLS and + `mips_opts.warn_about_macros' settings to RELAX_MIPS16_ENCODE. + (mips16_macro_frag): New function. + (md_estimate_size_before_relax): Handle HI16/LO16 relaxation. + (mips_relax_frag): Likewise. + (md_convert_frag): Likewise. + + * testsuite/gas/mips/mips16@relax-swap3.d: Remove error output, + add dump patterns. + * testsuite/gas/mips/mips16e@relax-swap3.d: New test + subarchitecture. + * testsuite/gas/mips/micromips@relax-swap3.d: Remove trailing + NOP padding. + * testsuite/gas/mips/mips16-pcrel-reloc-2.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16-pcrel-reloc-3.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16-pcrel-reloc-6.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16-pcrel-reloc-7.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16-pcrel-addend-2.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16-pcrel-addend-3.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16-pcrel-absolute.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16-pcrel-absolute-1.d: Remove error + output, add dump patterns. + * testsuite/gas/mips/mips16@relax-swap3.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-reloc-2.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-reloc-3.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-reloc-6.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-reloc-7.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-addend-2.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-addend-3.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-absolute.l: Remove file. + * testsuite/gas/mips/mips16-pcrel-absolute-1.l: Remove file. + * testsuite/gas/mips/relax-swap3.s: Adjust trailing padding. + + * testsuite/gas/mips/mips16-pcrel-0.d: New test. + * testsuite/gas/mips/mips16-pcrel-1.d: New test. + * testsuite/gas/mips/mips16-pcrel-2.d: New test. + * testsuite/gas/mips/mips16-pcrel-3.d: New test. + * testsuite/gas/mips/mips16-pcrel-4.d: New test. + * testsuite/gas/mips/mips16-pcrel-5.d: New test. + * testsuite/gas/mips/mips16-pcrel-pic-0.d: New test. + * testsuite/gas/mips/mips16-pcrel-pic-1.d: New test. + * testsuite/gas/mips/mips16-pcrel-n32-0.d: New test. + * testsuite/gas/mips/mips16-pcrel-n32-1.d: New test. + * testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: New test. + * testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: New test. + * testsuite/gas/mips/mips16-pcrel-n64-0.d: New test. + * testsuite/gas/mips/mips16-pcrel-n64-1.d: New test. + * testsuite/gas/mips/mips16-pcrel-delay-0.d: New test. + * testsuite/gas/mips/mips16-pcrel-delay-1.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-4.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-5.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-6.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-7.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-8.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-9.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-pic-8.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-pic-9.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-n32-8.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-n32-9.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-n64-8.d: New test. + * testsuite/gas/mips/mips16-pcrel-addend-n64-9.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-2.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-3.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-4.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-5.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-6.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-7.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-4.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d: New + test. + * testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d: New + test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d: New + test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d: New + test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d: New + test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d: New + test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d: + New test. + * testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d: + New test. + * testsuite/gas/mips/mips16-pcrel-0.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-1.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-2.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-3.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-4.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-5.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-delay-0.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-delay-1.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-addend-8.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-addend-9.l: New stderr output. + * testsuite/gas/mips/mips16-pcrel-absolute-4.l: New stderr + output. + * testsuite/gas/mips/mips16-pcrel-absolute-6.l: New stderr + output. + * testsuite/gas/mips/mips16-pcrel-0.s: New test source. + * testsuite/gas/mips/mips16-pcrel-1.s: New test source. + * testsuite/gas/mips/mips16-pcrel-2.s: New test source. + * testsuite/gas/mips/mips16-pcrel-3.s: New test source. + * testsuite/gas/mips/mips16-pcrel-4.s: New test source. + * testsuite/gas/mips/mips16-pcrel-5.s: New test source. + * testsuite/gas/mips/mips16-pcrel-delay-0.s: New test source. + * testsuite/gas/mips/mips16-pcrel-delay-1.s: New test source. + * testsuite/gas/mips/mips16-pcrel-addend-4.s: New test source. + * testsuite/gas/mips/mips16-pcrel-addend-5.s: New test source. + * testsuite/gas/mips/mips16-pcrel-addend-6.s: New test source. + * testsuite/gas/mips/mips16-pcrel-addend-7.s: New test source. + * testsuite/gas/mips/mips16-pcrel-addend-8.s: New test source. + * testsuite/gas/mips/mips16-pcrel-addend-9.s: New test source. + * testsuite/gas/mips/mips16-pcrel-absolute-2.s: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-3.s: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-4.s: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-5.s: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-6.s: New test. + * testsuite/gas/mips/mips16-pcrel-absolute-7.s: New test. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-05-03 Nick Clifton + + PR gas/20941 + * symbols.c (snapshot_symbol): Handle the case where + resolve_expression returns a local symbol. + +2017-05-02 Maciej W. Rozycki + + * config/tc-mips.c (append_insn): Call `symbol_append' for any + expression symbol created for MIPS16 relaxation. + (match_mips16_insn): Don't encode a constant value as an + immediate with a PC-relative operand. + + * testsuite/gas/mips/mips16-pcrel-absolute-1.d: New test. + * testsuite/gas/mips/mips16-branch-absolute-1.d: New test. + * testsuite/gas/mips/mips16-branch-absolute-2.d: New test. + * testsuite/gas/mips/mips16-branch-absolute-addend-1.d: New + test. + * testsuite/gas/mips/mips16-branch-absolute-n32-1.d: New test. + * testsuite/gas/mips/mips16-branch-absolute-n32-2.d: New test. + * testsuite/gas/mips/mips16-branch-absolute-addend-n32-1.d: New + test. + * testsuite/gas/mips/mips16-branch-absolute-n64-1.d: New test. + * testsuite/gas/mips/mips16-branch-absolute-n64-2.d: New test. + * testsuite/gas/mips/mips16-branch-absolute-addend-n64-1.d: New + test. + * testsuite/gas/mips/mips16-pcrel-absolute-1.l: New stderr + output. + * testsuite/gas/mips/mips16-pcrel-absolute-1.s: New test source. + * testsuite/gas/mips/mips16-branch-absolute-1.s: New test + source. + * testsuite/gas/mips/mips16-branch-absolute-2.s: New test + source. + * testsuite/gas/mips/mips16-branch-absolute-addend-1.s: New test + source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-04-27 Maciej W. Rozycki + + * config/tc-mips.c (mips16_pcrel_val): New function, factored + out from... + (mips16_extended_frag): ... here. + (md_convert_frag): Use `mips16_pcrel_val' rather than repeated + code in MIPS16 relaxation, with `stretch' hardcoded to 0. + +2017-04-27 Maciej W. Rozycki + + * config/tc-mips.c (RELAX_MIPS16_LONG_BRANCH): Rename to... + (RELAX_MIPS16_ALWAYS_EXTENDED): ... this. + (RELAX_MIPS16_MARK_LONG_BRANCH): Rename to... + (RELAX_MIPS16_MARK_ALWAYS_EXTENDED): ... this. + (RELAX_MIPS16_CLEAR_LONG_BRANCH): Rename to... + (RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED): ... this. + (mips16_extended_frag): Adjust accordingly. + +2017-04-27 Alan Modra + + * symbols.c (S_FORCE_RELOC): Separate section and symbol tests. + +2017-04-26 Maciej W. Rozycki + + * config/tc-mips.c (RELAX_ENCODE): Add `PIC' flag. + (RELAX_PIC): New macro. + (RELAX_USE_SECOND, RELAX_SECOND_LONGER, RELAX_NOMACRO) + (RELAX_DELAY_SLOT, RELAX_DELAY_SLOT_16BIT) + (RELAX_DELAY_SLOT_SIZE_FIRST, RELAX_DELAY_SLOT_SIZE_SECOND): + Shift bits. + (RELAX_BRANCH_ENCODE): Add `pic' flag. + (RELAX_BRANCH_UNCOND, RELAX_BRANCH_LIKELY, RELAX_BRANCH_LINK) + (RELAX_BRANCH_TOOFAR): Shift bits. + (RELAX_BRANCH_PIC): New macro. + (RELAX_MICROMIPS_ENCODE): Add `pic' flag. + (RELAX_MICROMIPS_PIC): New macro. + (RELAX_MICROMIPS_UNCOND, RELAX_MICROMIPS_COMPACT) + (RELAX_MICROMIPS_LINK, RELAX_MICROMIPS_NODS) + (RELAX_MICROMIPS_RELAX32): Shift bits. + (relax_close_frag): Pass `mips_pic' setting to RELAX_ENCODE. + (append_insn): Pass `mips_pic' setting to RELAX_BRANCH_ENCODE + and RELAX_MICROMIPS_ENCODE, and record it in `fx_tcbit2' of the + first fixup created. + (md_apply_fix) : Use `fx_tcbit2' of the + fixup processed rather than `mips_pic' in choosing to relax an + out of range branch to a jump. + (relaxed_branch_length): Use the `pic' flag of the relaxed frag + rather than `mips_pic'. + (relaxed_micromips_32bit_branch_length): Likewise. + (md_estimate_size_before_relax): Likewise. + (md_convert_frag): Likewise. + + * testsuite/gas/mips/option-pic-relax-0.d: New test. + * testsuite/gas/mips/option-pic-relax-1.d: New test. + * testsuite/gas/mips/option-pic-relax-2.d: New test. + * testsuite/gas/mips/option-pic-relax-3.d: New test. + * testsuite/gas/mips/option-pic-relax-3a.d: New test. + * testsuite/gas/mips/option-pic-relax-4.d: New test. + * testsuite/gas/mips/option-pic-relax-5.d: New test. + * testsuite/gas/mips/option-pic-relax-2.l: New stderr output. + * testsuite/gas/mips/option-pic-relax-3.l: New stderr output. + * testsuite/gas/mips/option-pic-relax-4.l: New stderr output. + * testsuite/gas/mips/option-pic-relax-5.l: New stderr output. + * testsuite/gas/mips/option-pic-relax-0.s: New test source. + * testsuite/gas/mips/option-pic-relax-1.s: New test source. + * testsuite/gas/mips/option-pic-relax-2.s: New test source. + * testsuite/gas/mips/option-pic-relax-3.s: New test source. + * testsuite/gas/mips/option-pic-relax-4.s: New test source. + * testsuite/gas/mips/option-pic-relax-5.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-04-25 Claudiu Zissulescu + + * testsuite/gas/arc/leave_enter.d: Update test. + * testsuite/gas/arc/leave_enter.s: Likewise. + +2017-04-25 Claudiu Zissulescu + + * testsuite/gas/arc/b.d: Update test. + * testsuite/gas/arc/noargs_hs.d: Likewise. + +2017-04-25 Maciej W. Rozycki + + * config/tc-mips.c (md_convert_frag): Correct + BFD_RELOC_MIPS16_16_PCREL_S1 fixup size. + * testsuite/gas/mips/mips16-branch-addend-4.d: New test. + * testsuite/gas/mips/mips16-branch-addend-5.d: New test. + * testsuite/gas/mips/mips16-branch-addend-5.l: New stderr + output. + * testsuite/gas/mips/mips16-branch-addend-4.s: New test source. + * testsuite/gas/mips/mips16-branch-addend-5.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-04-25 Jose E. Marchesi + + PR gas/21407 + * config/tc-sparc.c (md_apply_fix): Do not transform `call' + instructions into branch instructions in fixups generating + additional relocations. + * testsuite/gas/sparc/call-relax.s: New file. + * testsuite/gas/sparc/call-relax.d: Likewise. + * testsuite/gas/sparc/call-relax-aout.d: Likewise. + * testsuite/gas/sparc/sparc.exp: Test call-relax and call-relax-aout. + +2017-04-24 Thomas Preud'homme + + * config/tc-arm.c (move_or_literal_pool): Remove code generating MOVS. + Forbid MOV.W and MOVW if destination is SP or PC. + * testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.s: Explain + expectation of LDR not generating a MOVS for low registers and small + constants. Add tests of MOVW generation. + * testsuite/gas/arm/thumb2_ldr_immediate_highregs_armv6t2.d: Update + expected disassembly. + +2017-04-22 Alan Modra + + * testsuite/gas/ppc/vle.s: Format. Add se_rfgi and e_sc. + * testsuite/gas/ppc/vle.d: Update. + +2017-04-21 Nick Clifton + + PR binutils/21380 + * testsuite/gas/aarch64/illegal-3.s: New file. + * testsuite/gas/aarch64/illegal-3.d: New file. + +2017-04-11 Alan Modra + + * config/tc-ppc.c (md_show_usage): Delete mention of -mhtm. + * testsuite/gas/ppc/htm.d: Pass -mpower8 and -Mpower8. + +2017-04-10 Max Filippov + + * config/tc-xtensa.c (xtensa_maybe_create_literal_pool_frag): + Initialize lps->frag_count with auto_litpool_limit. + (xg_promote_candidate_litpool): New function. + (xtensa_move_literals): Extract candidate litpool promotion code + into separate function. Call it for all possible found + candidates. + (xtensa_switch_to_literal_fragment): Drop 'recursive' flag and + call to xtensa_mark_literal_pool_location that it guards. + Replace it with call to xtensa_maybe_create_literal_pool_frag. + Initialize pool_location with created literal pool candidate. + * testsuite/gas/xtensa/all.exp: Add new tests. + * testsuite/gas/xtensa/auto-litpools-first1.d: New test results. + * testsuite/gas/xtensa/auto-litpools-first1.s: New test. + * testsuite/gas/xtensa/auto-litpools-first2.d: New test results. + * testsuite/gas/xtensa/auto-litpools-first2.s: New test. + * testsuite/gas/xtensa/auto-litpools.d: Fix offsets changed due + to additional jump instruction. + +2017-04-07 Alan Modra + + * testsuite/gas/ppc/altivec2.s: Delete E6500 vector insns. + * testsuite/gas/ppc/altivec2.d: Adjust to suit. + +2017-04-07 Alan Modra + + * testsuite/gas/elf/section12a.d: Don't expect alignment of 1 + for .mbind.text. + +2017-04-06 Pip Cet + + * testsuite/gas/wasm32/allinsn.d: Adjust test for disassembler + changes. + * testsuite/gas/wasm32/disass.d: New test. + * testsuite/gas/wasm32/disass.s: New test. + * testsuite/gas/wasm32/disass-2.d: New test. + * testsuite/gas/wasm32/disass-2.s: New test. + * testsuite/gas/wasm32/reloc.d: Adjust test for changed reloc + names. + * testsuite/gas/wasm32/reloc.s: Update test for changed assembler + syntax. + * testsuite/gas/wasm32/wasm32.exp: Run new tests. Expect allinsn + test to succeed. + +2017-04-04 H.J. Lu + + * NEWS: Mention support for ELF SHF_GNU_MBIND. + * config/obj-elf.c (section_match): New. + (get_section): Match both sh_info and group name. + (obj_elf_change_section): Add argument for sh_info. Pass both + sh_info and group name to get_section. Issue an error for + SHF_GNU_MBIND section without SHF_ALLOC. Set sh_info. + (obj_elf_parse_section_letters): Set SHF_GNU_MBIND for 'd'. + (obj_elf_section): Support SHF_GNU_MBIND section info. + * config/obj-elf.h (obj_elf_change_section): Add argument for + sh_info. + * config/tc-arm.c (start_unwind_section): Pass 0 as sh_info to + obj_elf_change_section. + * config/tc-ia64.c (obj_elf_vms_common): Likewise. + * config/tc-microblaze.c (microblaze_s_data): Likewise. + (microblaze_s_sdata): Likewise. + (microblaze_s_rdata): Likewise. + (microblaze_s_bss): Likewise. + * config/tc-mips.c (s_change_section): Likewise. + * config/tc-msp430.c (msp430_profiler): Likewise. + * config/tc-rx.c (parse_rx_section): Likewise. + * config/tc-tic6x.c (tic6x_start_unwind_section): Likewise. + * doc/as.texinfo: Document 'd' for SHF_GNU_MBIND. + * testsuite/gas/elf/elf.exp: Run section12a, section12b and + section13. + * testsuite/gas/elf/section10.d: Updated. + * testsuite/gas/elf/section10.s: Likewise. + * testsuite/gas/elf/section12.s: New file. + * testsuite/gas/elf/section12a.d: Likewise. + * testsuite/gas/elf/section12b.d: Likewise. + * testsuite/gas/elf/section13.l: Likewise. + * testsuite/gas/elf/section13.d: Likewise. + * testsuite/gas/elf/section13.s: Likewise. + +2017-04-03 Palmer Dabbelt + + * config/tc-riscv.c (riscv_clear_subsets): Cast argument to free to + avoid const warnings. + +2017-03-30 Palmer Dabbelt + + * config/tc-riscv.c (riscv_clear_subsets): New function. + (riscv_add_subset): Call riscv_clear_subsets and riscv_set_rvc to + clear RVC when it's been previously set. + +2017-03-31 Nick Clifton + + PR gas/21333 + * config/tc-s390.c (tc_s390_fix_adjustable): Allow non pc-relative + fixups in mergeable sections to be adjusted. + +2017-03-30 Pip Cet + + * config/tc-wasm32.h: New file: Add WebAssembly assembler target. + * config/tc-wasm32.c: New file: Add WebAssembly assembler target. + * Makefile.am: Add WebAssembly assembler target. + * configure.tgt: Add WebAssembly assembler target. + * doc/c-wasm32.texi: New file: Start documenting WebAssembly + assembler. + * doc/all.texi: Define WASM32. + * doc/as.texinfo: Add WebAssembly entries. + * NEWS: Mention the new support. + * Makefile.in: Regenerate. + * po/gas.pot: Regenerate. + * po/POTFILES.in: Regenerate. + * testsuite/gas/wasm32: New directory. + * testsuite/gas/wasm32/allinsn.d: New file. + * testsuite/gas/wasm32/allinsn.s: New file. + * testsuite/gas/wasm32/illegal.l: New file. + * testsuite/gas/wasm32/illegal.s: New file. + * testsuite/gas/wasm32/illegal-2.l: New file. + * testsuite/gas/wasm32/illegal-2.s: New file. + * testsuite/gas/wasm32/illegal-3.l: New file. + * testsuite/gas/wasm32/illegal-3.s: New file. + * testsuite/gas/wasm32/illegal-4.l: New file. + * testsuite/gas/wasm32/illegal-4.s: New file. + * testsuite/gas/wasm32/illegal-5.l: New file. + * testsuite/gas/wasm32/illegal-5.s: New file. + * testsuite/gas/wasm32/illegal-6.l: New file. + * testsuite/gas/wasm32/illegal-6.s: New file. + * testsuite/gas/wasm32/illegal-7.l: New file. + * testsuite/gas/wasm32/illegal-7.s: New file. + * testsuite/gas/wasm32/illegal-8.l: New file. + * testsuite/gas/wasm32/illegal-8.s: New file. + * testsuite/gas/wasm32/illegal-9.l: New file. + * testsuite/gas/wasm32/illegal-9.s: New file. + * testsuite/gas/wasm32/illegal-10.l: New file. + * testsuite/gas/wasm32/illegal-10.s: New file. + * testsuite/gas/wasm32/illegal-11.l: New file. + * testsuite/gas/wasm32/illegal-11.s: New file. + * testsuite/gas/wasm32/illegal-12.l: New file. + * testsuite/gas/wasm32/illegal-12.s: New file. + * testsuite/gas/wasm32/illegal-13.l: New file. + * testsuite/gas/wasm32/illegal-13.s: New file. + * testsuite/gas/wasm32/illegal-14.l: New file. + * testsuite/gas/wasm32/illegal-14.s: New file. + * testsuite/gas/wasm32/illegal-15.l: New file. + * testsuite/gas/wasm32/illegal-15.s: New file. + * testsuite/gas/wasm32/illegal-16.l: New file. + * testsuite/gas/wasm32/illegal-16.s: New file. + * testsuite/gas/wasm32/illegal-17.l: New file. + * testsuite/gas/wasm32/illegal-17.s: New file. + * testsuite/gas/wasm32/illegal-18.l: New file. + * testsuite/gas/wasm32/illegal-18.s: New file. + * testsuite/gas/wasm32/illegal-19.l: New file. + * testsuite/gas/wasm32/illegal-19.s: New file. + * testsuite/gas/wasm32/illegal-20.l: New file. + * testsuite/gas/wasm32/illegal-20.s: New file. + * testsuite/gas/wasm32/illegal-21.l: New file. + * testsuite/gas/wasm32/illegal-21.s: New file. + * testsuite/gas/wasm32/illegal-22.l: New file. + * testsuite/gas/wasm32/illegal-22.s: New file. + * testsuite/gas/wasm32/illegal-24.l: New file. + * testsuite/gas/wasm32/illegal-24.s: New file. + * testsuite/gas/wasm32/illegal-25.l: New file. + * testsuite/gas/wasm32/illegal-25.s: New file. + * testsuite/gas/wasm32/reloc.d: New file. + * testsuite/gas/wasm32/reloc.s: New file. + * testsuite/gas/wasm32/wasm32.exp: New tests for WebAssembly + architecture. + +2017-03-29 Alan Modra + + * config/tc-ppc.c (md_parse_option): Reject -mraw. + +2017-03-27 Alan Modra + + PR 21303 + * testsuite/gas/ppc/pr21303.d, + * testsuite/gas/ppc/pr21303.s: New test + * testsuite/gas/ppc/ppc.exp: Run it. + +2017-03-27 Rinat Zelig + + * testsuite/gas/arc/nps400-12.s: New file. + * testsuite/gas/arc/nps400-12.d: New file. + +2017-03-24 Thomas preud'homme + + * config/tc-arm.: (md_begin): Set selected_cpu from *mcpu_cpu_opt when + CPU_DEFAULT is defined. + +2017-03-21 Palmer Dabbbelt + + * config/tc-riscv.c (md_show_usage): Remode defuct -m32, -m64, + -msoft-float, -mhard-float, -mno-rvc, and -mrvc options; and don't + print an invalid default ISA string. + * doc/c-riscv.texi (OPTIONS): Add -fpic and -fno-pic options. + +2017-03-22 Max Filippov + + * config/tc-xtensa.c (xtensa_relax_frag): Change fx_size of the + reassigned fixup to size of jump instruction (3) and fx_r_type + to BFD_RELOC_XTENSA_SLOT0_OP, as there's only one slot. + (add_jump_to_trampoline): Search + origfrag->tc_frag_data.slot_symbols for the slot with non-NULL + symbol and use that slot instead of slot 0. + +2017-03-21 Andreas Krebbel + + * config/tc-s390.c (s390_parse_cpu): Remove S390_INSTR_FLAG_VX2 + from cpu_table. Remove vx2, and novx2 from cpu_flags. + +2017-03-21 Rinat Zelig + + * testsuite/gas/arc/nps400-11.s: New file. + * testsuite/gas/arc/nps400-11.d: New file. + +2017-03-20 Nick Clifton + + * doc/as.texinfo (2byte): Note that if no expressions are present + the directive does nothing. Emphasize that the output is + unaligned, and that this can have an effect on the relocations + generated. + (4byte): Simplify description. Refer back to the 2byte + description. + (8byte): Likewise. + +2017-03-20 Richard Earnshaw + + * config/tc-arm.c (arm_fpus): Note entires that should not be + documented. + * doc/c-arm.texi (-mfpu): Add missing FPU entries for neon-vfpv3 and + neon-fp16. Fix spelling error. + +2017-03-20 Richard Earnshaw + + * config/tc-arm.c (arm_fpus): Add neon-vfpv3 as an alias for neon. + +2017-03-16 Rinat Zelig + + * config/tc-arc.c (assemble_insn): Only handle ".t" and ".nt" + specially for ARCv2. + +2017-03-14 Kito Cheng + + * config/tc-riscv.c (validate_riscv_insn): Add 'o' RVC immediate + encoding format, which can accept 0-valued immediates. + (riscv_ip): Likewise. + +2017-03-15 Nick Clifton + + * config/tc-riscv.c (riscv_pre_output_hook): Fix compile time + warning about discarding a const qualifier. + +2017-03-02 Kuan-Lin Chen + + * config/tc-riscv.h (HWARD2_USE_FIXED_ADVANCE_PC): New define. + +2017-03-02 Kuan-Lin Chen + + * config/tc-riscv.c (md_apply_fix): Set fx_frag and + fx_next->fx_frag for CFA_advance_loc relocations. + +2017-03-02 Kuan-Lin Chen + + * config/tc-riscv.c (md_apply_fix): Compute the correct offsets + for CFA relocations. + +2017-03-13 Nick Clifton + + PR binutils/21202 + * config/tc-aarch64.c (reloc_table): Rename + BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC to + BFD_RELOC_AARCH64_TLSDESC_LD64_LO12. Rname + BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC to + BFD_RELOC_AARCH64_TLSDESC_ADD_LO12. + (md_apply_fix): Likewise. + (aarch64_force_relocation): Likewise. + * testsuite/gas/aarch64/tls.d: Update regexp. + +2017-03-10 Tobin C. Harding + Nick Clifton + + * doc/as.texinfo (2byte): Tidy up wording. Add note that + overlarge values will produce a warning message and be trunacted. + (4byte): Likewise. + +2017-03-09 H.J. Lu + + * config/tc-i386.c (_i386_insn): Add dir_encoding and + vec_encoding. Remove swap_operand and need_vrex. + (extra_symbol_chars): Add '}'. + (md_begin): Mark '}' with LEX_BEGIN_NAME. Allow '}' in + mnemonic. + (build_vex_prefix): Don't use 2-byte VEX encoding with + {vex3}. Check dir_encoding and load. + (parse_insn): Check pseudo prefixes. Set dir_encoding. + (VEX_check_operands): Likewise. + (match_template): Check dir_encoding and load. + (parse_real_register): Set vec_encoding instead of need_vrex. + (parse_register): Likewise. + * doc/c-i386.texi: Document {disp8}, {disp32}, {load}, {store}, + {vex2}, {vex3} and {evex}. Remove ".s", ".d8" and ".d32" + * testsuite/gas/i386/i386.exp: Run pseudos and x86-64-pseudos. + * testsuite/gas/i386/pseudos.d: New file. + * testsuite/gas/i386/pseudos.s: Likewise. + * testsuite/gas/i386/x86-64-pseudos.d: Likewise. + * testsuite/gas/i386/x86-64-pseudos.s: Likewise. + +2017-03-08 Peter Bergner + + * testsuite/gas/ppc/altivec2.d (as): Use the -mpower8 option. + (objdump): Use the -Mpower8 option. + +2017-03-08 Peter Bergner + + * testsuite/gas/ppc/power9.d New test. + * testsuite/gas/ppc/power9.s: Likewise. + +2017-03-07 Alan Modra + + * doc/as.texinfo (2byte, 4byte, 8byte): Correct @section placement. + +2017-03-07 Tobin C. Harding + Alan Modra + + * doc/as.texinfo (2byte, 4byte, 8byte): Document. + * doc/c-arm.texi (2byte, 4byte, 8byte): Omit if ELF. + +2017-03-06 H.J. Lu + + * config/tc-i386.c (cpu_arch): Add .cet. + * doc/c-i386.texi: Document cet. + * testsuite/gas/i386/cet-intel.d: New file. + * testsuite/gas/i386/cet.d: Likewise. + * testsuite/gas/i386/cet.s: Likewise. + * testsuite/gas/i386/x86-64-cet-intel.d: Likewise. + * testsuite/gas/i386/x86-64-cet.d: Likewise. + * testsuite/gas/i386/x86-64-cet.s: Likewise. + * testsuite/gas/i386/i386.exp: Run Intel CET tests. + +2017-03-06 H.J. Lu + + * testsuite/gas/i386/x86-64-mpx-inval-2.s: Force a good alignment. + * testsuite/gas/i386/x86-64-mpx-inval-2.l: Expect [0-9A-F]+. + +2017-03-06 Alan Modra + + * dw2gencfi.c (encoding_size): Return unsigned int. + (emit_expr_encoded): Assert size matches reloc bitsize. + (output_fde): Use unsigned for offset_size and addr_size. Set + addr_size earlier and use in place of constant 4 and uses of + DWARF2_FDE_RELOC_SIZE. Assert it matches reloc bitsize. + +2017-03-06 Alan Modra + + * dw2gencfi.c: Wrap overlong lines. Add parens for emacs + auto reformat. Formatting and whitespace fixes. + +2017-03-05 Mark Wielaard + + * dwarf2dbg.c (out_debug_abbrev): Use DW_FORM_strp instead of + DW_FORM_string for DW_AT_name, DW_AT_comp_dir and DW_AT_producer. + (out_debug_info): Accept symbols to name, comp_dir and producer in + the .debug_str section and emit those offsets not full strings. + (out_debug_str): New function that outputs the strings for name, + comp_dir and producer in .debug_str and generates symbols to those + strings. + (out_debug_line): Create a .debug_str section if necessary and call + out_debug_str before calling out_debug_info. + * testsuite/gas/aarch64/dwarf.d: Add extra section symbol to expected + output. + +2017-03-02 Maciej W. Rozycki + + * write.c (relax_segment) : Only bail out if the fixed + part of the frag has overrun the location requested. + + * testsuite/gas/all/org-1.d: New test. + * testsuite/gas/all/org-2.d: New test. + * testsuite/gas/all/org-3.d: New test. + * testsuite/gas/all/org-4.d: New test. + * testsuite/gas/all/org-5.d: New test. + * testsuite/gas/all/org-6.d: New test. + * testsuite/gas/all/org-1.l: New stderr output. + * testsuite/gas/all/org-2.l: New stderr output. + * testsuite/gas/all/org-3.l: New stderr output. + * testsuite/gas/all/org-1.s: New test source. + * testsuite/gas/all/org-2.s: New test source. + * testsuite/gas/all/org-3.s: New test source. + * testsuite/gas/all/org-4.s: New test source. + * testsuite/gas/all/org-5.s: New test source. + * testsuite/gas/all/org-6.s: New test source. + * testsuite/gas/all/gas.exp: Run the new tests. + + * testsuite/gas/mips/org-1.d: New test. + * testsuite/gas/mips/org-2.d: New test. + * testsuite/gas/mips/org-3.d: New test. + * testsuite/gas/mips/org-4.d: New test. + * testsuite/gas/mips/org-5.d: New test. + * testsuite/gas/mips/org-6.d: New test. + * testsuite/gas/mips/org-7.d: New test. + * testsuite/gas/mips/org-8.d: New test. + * testsuite/gas/mips/org-9.d: New test. + * testsuite/gas/mips/org-10.d: New test. + * testsuite/gas/mips/org-11.d: New test. + * testsuite/gas/mips/org-12.d: New test. + * testsuite/gas/mips/org-1.l: New stderr output. + * testsuite/gas/mips/org-4.l: New stderr output. + * testsuite/gas/mips/org-5.l: New stderr output. + * testsuite/gas/mips/org-6.l: New stderr output. + * testsuite/gas/mips/org-10.l: New stderr output. + * testsuite/gas/mips/org-1.s: New test source. + * testsuite/gas/mips/org-2.s: New test source. + * testsuite/gas/mips/org-3.s: New test source. + * testsuite/gas/mips/org-4.s: New test source. + * testsuite/gas/mips/org-5.s: New test source. + * testsuite/gas/mips/org-6.s: New test source. + * testsuite/gas/mips/org-7.s: New test source. + * testsuite/gas/mips/org-8.s: New test source. + * testsuite/gas/mips/org-9.s: New test source. + * testsuite/gas/mips/org-10.s: New test source. + * testsuite/gas/mips/org-11.s: New test source. + * testsuite/gas/mips/org-12.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-03-01 Szabolcs Nagy + + * doc/c-aarch64.texi (AArch64 Extensions): Document rcpc. + +2017-02-28 Jan Beulich + + * testsuite/gas/i386/x86-64-avx.s: Add suffixed variants of + VPCMPESTR{I,M}. + * testsuite/gas/i386/x86-64-sse2avx.s: Likewise. + * testsuite/gas/i386/x86-64-sse4_2.s: Add suffixed variants + of PCMPESTR{I,M}. + * testsuite/gas/i386/ilp32/x86-64-avx-intel.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-avx.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-sse4_2.d: Likewise. + * testsuite/gas/i386/x86-64-avx-intel.d: Likewise. + * testsuite/gas/i386/x86-64-avx.d: Likewise. + * testsuite/gas/i386/x86-64-sse2avx.d: Likewise. + * testsuite/gas/i386/x86-64-sse4_2-intel.d: Likewise. + * testsuite/gas/i386/x86-64-sse4_2.d: Likewise. + +2017-02-28 Alan Modra + + * config/tc-nios2.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define. + +2017-02-28 Alan Modra + + * config/tc-ppc.c (md_assemble): Use BFD_RELOC_PPC_16DX_HA for addpcis. + (md_apply_fix): Remove fx_subsy check. Move code converting to + pcrel reloc earlier and handle BFD_RELOC_PPC_16DX_HA. Remove code + emiiting errors on seeing fx_pcrel set on unexpected relocs, as + that is done now by the generic code via.. + * config/tc-ppc.h (TC_FORCE_RELOCATION_SUB_LOCAL): ..this. Define. + (TC_VALIDATE_FIX_SUB): Define. + +2017-02-28 Maciej W. Rozycki + + * testsuite/gas/mips/jalr4.s: Add `jalr $0, $25' instructions. + * testsuite/gas/mips/jalr4.d: Adjust accordingly. Remove MIPSr6 + encoding patterns. + * testsuite/gas/mips/jalr4-n64.d: Likewise. + * testsuite/gas/mips/mipsr6@jalr4.d: New test. + * testsuite/gas/mips/mipsr6@jalr4-n32.d: New test. + * testsuite/gas/mips/mipsr6@jalr4-n64.d: New test. + +2017-02-25 Alan Modra + + * testsuite/gas/elf/strtab.s: Don't put directives on first + column or continuation with labels not in first column. + +2017-02-24 Richard Sandiford + + * doc/c-aarch64.texi: Document that sve implies fp16, simd and compnum. + * config/tc-aarch64.c (parse_vector_type_for_operand): Allow .q + to be used with SVE registers. + (parse_operands): Handle new SVE operands. + (aarch64_features): Make "sve" require F16 rather than FP. Also + require COMPNUM. + * testsuite/gas/aarch64/sve.s: Add tests for new instructions. + Include compnum tests. + * testsuite/gas/aarch64/sve.d: Update accordingly. + * testsuite/gas/aarch64/sve-invalid.s: Add tests for new instructions. + * testsuite/gas/aarch64/sve-invalid.l: Update accordingly. Also + update expected output for new FMOV and MOV alternatives. + +2017-02-24 Richard Sandiford + + * doc/c-aarch64.texi: Add a "compnum" entry. + * config/tc-aarch64.c (aarch64_features): Likewise, + * testsuite/gas/aarch64/advsimd-compnum.s: New test. + * testsuite/gas/aarch64/advsimd-compnum.d: Likewise. + +2017-02-24 Jan Beulich + + * testsuite/gas/i386/opcode.s: Add alternative TEST forms. + * testsuite/gas/i386/x86-64-opcode.s: Likewise. + * testsuite/gas/i386/opcode.d: Adjust accordingly. + * testsuite/gas/i386/opcode-intel.d: Likewise. + * testsuite/gas/i386/x86-64-opcode.d: Likewise. + * testsuite/gas/i386/ilp32/x86-64-opcode.d: Likewise. + +2017-02-24 Sheldon Lobo + + Test cases for the architecture level aware SPARC ASI work. + * gas/testsuite/gas/sparc/sparc.exp: 2 new tests + * gas/testsuite/gas/sparc/asi-bump-warn.s: New test + * gas/testsuite/gas/sparc/asi-bump-warn.l: Likewise + * gas/testsuite/gas/sparc/asi-arch-error.s: Likewise + * gas/testsuite/gas/sparc/asi-arch-error.l: Likewise + +2017-02-23 Maciej W. Rozycki + + * testsuite/gas/mips/jalr4.d: New test. + * testsuite/gas/mips/jalr4-n32.d: New test. + * testsuite/gas/mips/jalr4-n64.d: New test. + * testsuite/gas/mips/jalr4.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-02-23 Sheldon Lobo + + Add support for associating SPARC ASIs with an architecture level. + * config/tc-sparc.c (parse_sparc_asi): New encode SPARC ASIs. + +2017-02-23 Jan Beulich + + * testsuite/gas/all/err-sizeof.s: Don't use sums or differences + of symbols as expression. + +2017-02-23 Jan Beulich + + * gas/testsuite/gas/i386/x86-64-mpx-inval-2.d: Add 32- and 16- + bit GPR forms of BNDCL, BNDCU, and BNDCN. Add RSP-as-index + Intel syntax forms of BNDMK, BNDSTX, and BNDLDX. + * gas/testsuite/gas/i386/x86-64-mpx-inval-2.l: Adjust. + +2017-02-22 Maciej W. Rozycki + + * ecoff.c (ecoff_directive_end) [md_flush_pending_output]: Call + `md_flush_pending_output'. + * config/tc-mips.c (s_mips_end) [md_flush_pending_output]: Call + `md_flush_pending_output' unconditionally. + * testsuite/gas/mips/debug-label-end-1.d: New test. + * testsuite/gas/mips/debug-label-end-2.d: New test. + * testsuite/gas/mips/debug-label-end-3.d: New test. + * testsuite/gas/mips/debug-label-end.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-02-22 Hans-Peter Nilsson + + * testsuite/gas/all/err-sizeof.s: Include cris*-*-* in the list of + targets yielding an error message matching "too complex". + +2017-02-22 Nick Clifton + + * testsuite/gas/arm/vcmp-noprefix-imm.d: Skip for non-ELF targets. + +2017-02-21 Jan Beulich + + * expr.c (operand): Handle missing operand to .startof.() and + .sizeof.(). + * testsuite/gas/all/err-sizeof.s: New. + +2017-02-20 Alan Modra + + PR 21118 + * NEWS: Revise powerpc register check. + * config/tc-ppc.c (ppc_optimize_expr, md_assemble): Make "invalid + register expression" a warning. + +2017-02-17 Maciej W. Rozycki + + * ecoff.c (ecoff_directive_ent, add_procedure): Handle `.aent'. + * config/obj-ecoff.c (obj_pseudo_table): Add "aent" entry. + * config/obj-elf.c (ecoff_debug_pseudo_table): Likewise. + * testsuite/gas/mips/aent-2.d: New test. + * testsuite/gas/mips/aent-mdebug.d: New test. + * testsuite/gas/mips/aent-mdebug-2.d: New test. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-02-15 Richard Sandiford + + * testsuite/gas/aarch64/sve-sysreg.s, + testsuite/gas/aarch64/sve-sysreg.d, + testsuite/gas/aarch64/sve-sysreg-invalid.d, + testsuite/gas/aarch64/sve-sysreg-invalid.l: New tests. + +2017-02-15 Richard Sandiford + + * doc/c-aarch64.texi: Fix sve entry. + +2017-02-15 Claudiu Zissulescu + + * config/tc-arc.c (md_convert_frag): Remove @pcl relocation + information from input expression. + (assemble_insn): Make sure pcrel is correctly set. + (arc_pcrel_adjust): Compensate for PCL rounding. + * testsuite/gas/arc/relax-add01.d: New file. + * testsuite/gas/arc/relax-add01.s: Likewise. + * testsuite/gas/arc/relax-add02.d: Likewise. + * testsuite/gas/arc/relax-add02.s: Likewise. + * testsuite/gas/arc/relax-add03.d: Likewise. + * testsuite/gas/arc/relax-add03.s: Likewise. + * testsuite/gas/arc/relax-add04.d: Likewise. + * testsuite/gas/arc/relax-add04.s: Likewise. + * testsuite/gas/arc/relax-ld01.d: Likewise. + * testsuite/gas/arc/relax-ld01.s: Likewise. + * testsuite/gas/arc/relax-ld02.d: Likewise. + * testsuite/gas/arc/relax-ld02.s: Likewise. + * testsuite/gas/arc/relax-mov01.d: Likewise. + * testsuite/gas/arc/relax-mov01.s: Likewise. + * testsuite/gas/arc/relax-mov02.d: Likewise. + * testsuite/gas/arc/relax-mov02.s: Likewise. + * testsuite/gas/arc/relax-mpy01.d: Likewise. + * testsuite/gas/arc/relax-mpy01.s: Likewise. + * testsuite/gas/arc/relax-sub01.d: Likewise. + * testsuite/gas/arc/relax-sub01.s: Likewise. + * testsuite/gas/arc/relax-sub02.d: Likewise. + * testsuite/gas/arc/relax-sub02.s: Likewise. + * testsuite/gas/arc/relax-sub03.d: Likewise. + * testsuite/gas/arc/relax-sub03.s: Likewise. + * testsuite/gas/arc/relax-sub04.d: Likewise. + * testsuite/gas/arc/relax-sub04.s: Likewise. + +2017-02-09 Vineet Gupta + + * testsuite/gas/arc/st.d: Update for 0xe having a name now + +2017-02-14 Alan Modra + + PR 21118 + * NEWS: Mention powerpc register checks. + * config/tc-ppc.c (struct pd_reg): Make value a short. Add flags. + (pre_defined_registers): Delete fpscr and pmr entries. Set + register type in flags. + (cr_names): Set type in flags. + (reg_name_search): Return pointer to struct pd_reg rather than value. + (register_name): Adjust to suit. Set X_md from flags. + (ppc_parse_name): Likewise. + (ppc_optimize_expr): New function. + (md_assemble): Verify expresion reg flags match operand. + * config/tc-ppc.h (md_optimize_expr): Define. + (ppc_optimize_expr): Declare. + +2017-02-14 Alan Modra + + * testsuite/gas/ppc/cell.s: Correct invalid registers. + * testsuite/gas/ppc/vle-simple-1.s: Likewise. + * testsuite/gas/ppc/vle-simple-2.s: Likewise. + +2017-02-13 Thomas Preud'homme + + * config/tc-arm.c (parse_ifimm_zero): Make prefix optional in unified + syntax. + * testsuite/gas/arm/vcmp-noprefix-imm.d: New file. + * testsuite/gas/arm/vcmp-noprefix-imm.s: New file. + +2017-02-10 Nicholas Piggin + + * testsuite/gas/ppc/power9.d : New tests. + +2017-02-02 Maciej W. Rozycki + + * doc/as.texinfo (Overview): Select MIPS options for man page + inclusion. + +2017-01-30 Maciej W. Rozycki + + * config/tc-mips.c (mips_ignore_branch_isa): New variable. + (options): Add OPTION_IGNORE_BRANCH_ISA and + OPTION_NO_IGNORE_BRANCH_ISA enum values. + (md_longopts): Add "mignore-branch-isa" and + "mno-ignore-branch-isa" options. + (md_parse_option): Handle OPTION_IGNORE_BRANCH_ISA and + OPTION_NO_IGNORE_BRANCH_ISA. + (fix_bad_cross_mode_branch_p): Return FALSE if + `mips_ignore_branch_isa' has been set. + (md_show_usage): Add `-mignore-branch-isa' and + `-mno-ignore-branch-isa'. + + * doc/as.texinfo (Target MIPS options): Add + `-mignore-branch-isa' and `-mno-ignore-branch-isa' options. + (-mignore-branch-isa, -mno-ignore-branch-isa): New options. + * doc/c-mips.texi (MIPS Options): Add `-mignore-branch-isa' and + `-mno-ignore-branch-isa' options. + + * testsuite/gas/mips/branch-local-ignore-2.d: New test. + * testsuite/gas/mips/branch-local-ignore-3.d: New test. + * testsuite/gas/mips/branch-local-ignore-n32-2.d: New test. + * testsuite/gas/mips/branch-local-ignore-n32-3.d: New test. + * testsuite/gas/mips/branch-local-ignore-n64-2.d: New test. + * testsuite/gas/mips/branch-local-ignore-n64-3.d: New test. + * testsuite/gas/mips/mips.exp: Run the new tests. + +2017-01-30 Maciej W. Rozycki + + * testsuite/gas/mips/branch-local-2.d: New test. + * testsuite/gas/mips/branch-local-3.d: New test. + * testsuite/gas/mips/branch-local-n32-2.d: New test. + * testsuite/gas/mips/branch-local-n32-3.d: New test. + * testsuite/gas/mips/branch-local-n64-2.d: New test. + * testsuite/gas/mips/branch-local-n64-3.d: New test. + * testsuite/gas/mips/mips.exp: Fold corresponding list tests + into the new tests. + +2017-01-27 Alexis Deruell + + PR 21056 + * testsuite/gas/tic6x/insns16-parallel.s: New test case. + * testsuite/gas/tic6x/insns16-parallel.d: New test driver. + +2017-01-25 Sebastian Huber + + * configure.tgt (aarch64*-*-rtems*): Remove. + (bfin-*-rtems*): Likewise. + (h8300-*-rtems*): Likewise. + (i386-*-rtems*): Likewise. + (m32c-*-rtems*): Likewise. + (m32r-*-rtems*): Likewise. + (m68k-*-rtems*): Likewise. + (mips-*-rtems*): Likewise. + (nios2-*-rtems*): Likewise. + (ppc-*-rtems*): Likewise. + (sh-*-rtems*): Likewise. + (sparc64-*-rtems*): Likewise. + (sparc-*-rtems*): Likewise. + (*-*-rtems*) Use ELF format. + +2017-01-25 Sebastian Huber + + * configure.tgt (arm-*-rtems*): Move to (arm-*-eabi*). + +2017-01-25 Sebastian Huber + + * configure.tgt (sh-*-rtemscoff*): Remove. + +2017-01-24 Sebastian Huber + + * configure.tgt (riscv*-*-*): Remove em=linux. + +2017-01-23 Sebastian Rasmussen + + PR gas/21072 + * asintl.h: Fix spelling mistakes and typos. + * atof-generic.c: Likewise. + * bit_fix.h: Likewise. + * config/atof-ieee.c: Likewise. + * config/bfin-defs.h: Likewise. + * config/bfin-parse.y: Likewise. + * config/obj-coff-seh.h: Likewise. + * config/obj-coff.c: Likewise. + * config/obj-evax.c: Likewise. + * config/obj-macho.c: Likewise. + * config/rx-parse.y: Likewise. + * config/tc-aarch64.c: Likewise. + * config/tc-alpha.c: Likewise. + * config/tc-arc.c: Likewise. + * config/tc-arm.c: Likewise. + * config/tc-avr.c: Likewise. + * config/tc-bfin.c: Likewise. + * config/tc-cr16.c: Likewise. + * config/tc-cris.c: Likewise. + * config/tc-crx.c: Likewise. + * config/tc-d10v.c: Likewise. + * config/tc-d30v.c: Likewise. + * config/tc-dlx.c: Likewise. + * config/tc-epiphany.c: Likewise. + * config/tc-frv.c: Likewise. + * config/tc-hppa.c: Likewise. + * config/tc-i370.c: Likewise. + * config/tc-i386-intel.c: Likewise. + * config/tc-i386.c: Likewise. + * config/tc-i960.c: Likewise. + * config/tc-ia64.c: Likewise. + * config/tc-m32r.c: Likewise. + * config/tc-m68hc11.c: Likewise. + * config/tc-m68k.c: Likewise. + * config/tc-mcore.c: Likewise. + * config/tc-mep.c: Likewise. + * config/tc-mep.h: Likewise. + * config/tc-metag.c: Likewise. + * config/tc-microblaze.c: Likewise. + * config/tc-mips.c: Likewise. + * config/tc-mmix.c: Likewise. + * config/tc-mn10200.c: Likewise. + * config/tc-mn10300.c: Likewise. + * config/tc-msp430.c: Likewise. + * config/tc-msp430.h: Likewise. + * config/tc-nds32.c: Likewise. + * config/tc-nds32.h: Likewise. + * config/tc-nios2.c: Likewise. + * config/tc-nios2.h: Likewise. + * config/tc-ns32k.c: Likewise. + * config/tc-pdp11.c: Likewise. + * config/tc-ppc.c: Likewise. + * config/tc-pru.c: Likewise. + * config/tc-rx.c: Likewise. + * config/tc-s390.c: Likewise. + * config/tc-score.c: Likewise. + * config/tc-score7.c: Likewise. + * config/tc-sh.c: Likewise. + * config/tc-sh64.c: Likewise. + * config/tc-sparc.c: Likewise. + * config/tc-tic4x.c: Likewise. + * config/tc-tic54x.c: Likewise. + * config/tc-v850.c: Likewise. + * config/tc-vax.c: Likewise. + * config/tc-visium.c: Likewise. + * config/tc-xgate.c: Likewise. + * config/tc-xtensa.c: Likewise. + * config/tc-z80.c: Likewise. + * config/tc-z8k.c: Likewise. + * config/te-vms.c: Likewise. + * config/xtensa-relax.c: Likewise. + * doc/as.texinfo: Likewise. + * doc/c-arm.texi: Likewise. + * doc/c-hppa.texi: Likewise. + * doc/c-i370.texi: Likewise. + * doc/c-i386.texi: Likewise. + * doc/c-m32r.texi: Likewise. + * doc/c-m68k.texi: Likewise. + * doc/c-mmix.texi: Likewise. + * doc/c-msp430.texi: Likewise. + * doc/c-nds32.texi: Likewise. + * doc/c-ns32k.texi: Likewise. + * doc/c-riscv.texi: Likewise. + * doc/c-rx.texi: Likewise. + * doc/c-s390.texi: Likewise. + * doc/c-tic6x.texi: Likewise. + * doc/c-tilegx.texi: Likewise. + * doc/c-tilepro.texi: Likewise. + * doc/c-v850.texi: Likewise. + * doc/c-xgate.texi: Likewise. + * doc/c-xtensa.texi: Likewise. + * dwarf2dbg.c: Likewise. + * ecoff.c: Likewise. + * itbl-ops.c: Likewise. + * listing.c: Likewise. + * macro.c: Likewise. + * po/gas.pot: Likewise. + * read.c: Likewise. + * struc-symbol.h: Likewise. + * symbols.h: Likewise. + * testsuite/gas/arc/relocs-errors.err: Likewise. + * write.c: Likewise. + +2017-01-23 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2017-01-20 Nick Clifton + + * config/tc-i386.c (parse_operands): Check for operand overflow + before setting the unspecified bit. + +2017-01-18 Maciej W. Rozycki + + PR gas/20649 + * config/tc-mips.c (pic_need_relax): Don't check for linkonce + symbols, remove the `segtype' parameter. + (mips_frob_file, md_estimate_size_before_relax): Adjust + accordingly. + (s_is_linkonce): Add an explanatory comment. + * testsuite/gas/mips/comdat-reloc.d: New test. + * testsuite/gas/mips/comdat-reloc.s: New test source. + * testsuite/gas/mips/mips.exp: Run the new test. + +2017-01-18 Szabolcs Nagy + + * testsuite/gas/arm/armv8_3-a-simd.s: Add vcmla tests. + * testsuite/gas/arm/armv8_3-a-simd.d: Update. + +2017-01-18 Bernhard Rosenkranzer + + PR 21059 + * config/bfin-lex.l: Support processing with flex 2.6.3. + * itbl-lex.l: Likewise. + +2017-01-18 Nathan Sidwell + + * as.h (gas_assert): Use abort. + (as_assert): Remove. + (signal_init): Declare. + * as.c (main): Call signal_init. + * messages.c: #include + (as_assert): Delete. + (as_abort): Allow NULL FILE. + (signal_crash): New. + (signal_init): Register fatal signal handlers. + * configure.ac: Check for strsignal. + * config.in: Rebuilt. + * configure: Rebuilt. + +2017-01-17 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2017-01-12 Igor Tsimbalist + + * config/tc-i386.c (cpu_arch): Add .avx512_vpopcntdq. + (cpu_noarch): Add noavx512_vpopcntdq. + * doc/c-i386.texi: Document avx512_vpopcntdq, noavx512_vpopcntdq. + * testsuite/gas/i386/i386.exp: Run AVX512_VPOPCNTDQ tests. + * testsuite/gas/i386/avx512_vpopcntdqd-intel.d: New file. + * testsuite/gas/i386/avx512_vpopcntdqd.d: Ditto. + * testsuite/gas/i386/avx512_vpopcntdqd.s: Ditto. + * testsuite/gas/i386/x86-64-avx512_vpopcntdqd-intel.d: Ditto. + * testsuite/gas/i386/x86-64-avx512_vpopcntdqd.d: Ditto. + * testsuite/gas/i386/x86-64-avx512_vpopcntdqd.s: Ditto. + +2017-01-12 Nick Clifton + + * read.c (temp_ilp): New function. Installs a temporary input + line pointer. + (restore_ilp): New function. Restores the original input line + pointer. + * read.h (temp_ilp): Prototype. + (restore_ilp): Prototype. + * stabs.c (dot_func_p): Use bfd_boolean type. + (generate_asm_file): Use temp_ilp and restore_ilp. + (stabs_generate_asm_lineno): Likewise. + (stabs_generate_asm_endfunc): Likewise. + +2017-01-11 Jeremy Soller + + * configure.tgt: Add entry for i386-redox. + +2017-01-10 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2017-01-10 Tristan Gingold + + * testsuite/gas/all/sleb128-8.d: Adjust test. + * testsuite/gas/all/gas.exp (test_cond): Likewise. + +2017-01-10 Tristan Gingold + + * read.c (emit_leb128_expr): Extended unsigned big number for + sleb128. + * testsuite/gas/all/gas.exp (test_cond): Add sleb128-8 test. + * testsuite/gas/all/sleb128.d: New test. + * testsuite/gas/all/sleb128.s: New test source. + +2017-01-09 Andrew Waterman + + * config/tc-riscv.c (append_insn): Don't eagerly apply relocations + against constants. + (md_apply_fix): Mark relocations against constants as "done." + +2017-01-09 Andrew Waterman + + * config/tc-riscv.c (append_insn): Don't eagerly apply relocations + against constants. + (md_apply_fix): Mark relocations against constants as "done." + +2017-01-09 Palmer Dabbelt + Kito Cheng + + * emulparams/elf32lriscv-defs.sh (INITIAL_READONLY_SECTIONS): + Removed. + (SDATA_START_SYMBOLS): Likewise. + +2017-01-09 Nick Clifton + + * po/sv.po: New Swedish translation. + * configure.ac (ALL_LINGUAS): Add sv. + * configure: Regenerate. + +2017-01-09 Andrew Waterman + + * config/tc-riscv.c (relaxed_branch_length): Use the long + sequence when the target is a weak symbol. + +2017-01-04 Szabolcs Nagy + + * config/tc-aarch64.c (aarch64_features): Add rcpc. + * doc/c-aarch64.texi (AArch64 Extensions): Document rcpc. + * testsuite/gas/aarch64/ldst-exclusive-armv8_3.d: Rename to ... + * testsuite/gas/aarch64/ldst-rcpc.d: This. + * testsuite/gas/aarch64/ldst-exclusive-armv8_3.s: Rename to ... + * testsuite/gas/aarch64/ldst-rcpc.s: This. + * testsuite/gas/aarch64/ldst-rcpc-armv8_2.d: New test. + +2017-01-04 Norm Jacobs + + PR gas/20992 + * configure.tgt: Treat sparcv9 as sparc64. + +2017-01-03 Kito Cheng + + * config/tc-riscv.c (riscv_set_arch): Whitelist the "q" ISA + extension. + (riscv_after_parse_args): Set FLOAT_ABI_QUAD when the Q ISA is + enabled and no other ABI is specified. + +2017-01-03 Dimitar Dimitrov + + * config/tc-pru.c (md_number_to_chars): Fix parameter to be + valueT, as declared in tc.h. + (md_apply_fix): Fix to work on 32-bit hosts. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/gold/ChangeLog b/gold/ChangeLog index 108631edc83..8debaf0d0fc 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,840 +1,6 @@ -2017-12-15 Alan Modra - - PR 22602 - * powerpc.cc (Target_powerpc::Branch_info::mark_pltcall): Resolve - forwards before replacing __tls_get_addr. - (Target_powerpc::Branch_info::make_stub): Likewise. - -2017-12-11 Stephen Crane - - * plugin.cc (Plugin::load): Include hooks for register_new_input - in transfer vector. - (Plugin::new_input): New function. - (register_new_input): New function. - (Plugin_manager::claim_file): Call Plugin::new_input if in - replacement phase. - * plugin.h (Plugin::set_new_input_handler): New function. - * testsuite/plugin_new_section_layout.c: New plugin to test - new_input plugin API. - * testsuite/plugin_final_layout.sh: Add new input test. - * testsuite/Makefile.am (plugin_layout_new_file): New test case. - * testsuite/Makefile.in: Regenerate. - -2017-12-02 Vladimir Kondratyev - Cary Coutant - - PR gold/22540 - * output.cc (gold_fallocate): Trivial return for len == 0. - Add fallback options when posix_fallocate and fallocate return - not-supported errors. - -2017-12-01 Cary Coutant - - PR gold/21090 - * incremental.cc (Sized_relobj_incr::do_relocate): Fix comment. - * options.cc (General_options::finalize): Disallow -pie with - incremental linking. - * x86_64.cc (Target_x86_64::Scan::local): Don't do mov-to-lea - or callq-to-direct optimizations for incremental links. - (Target_x86_64::Scan::global): Likewise. - (Target_x86_64::Relocate::relocate): Likewise. - * testsuite/Makefile.am (incremental_test): Force -no-pie. - (incremental_test_2): Likewise. - (incremental_test_3): Likewise. - (incremental_test_4): Likewise. - (incremental_test_5): Likewise. - (incremental_test_6): Likewise. - (incremental_copy_test): Likewise. - (incremental_common_test_1): Likewise. - (incremental_comdat_test_1): Likewise. - * testsuite/Makefile.in: Regenerate. - -2017-12-01 Cary Coutant - - PR gold/21841 - * testsuite/debug_msg.sh: Adjust expected line numbers. - * testsuite/odr_violation2.cc (DummyFunction): New function. - -2017-12-01 Cary Coutant - - PR gold/22309 - * testsuite/Makefile.am (two_file_test_1_v1_ndebug.o): Compile with - no EH information. - (two_file_test_1_ndebug.o): Likewise. - * testsuite/Makefile.in: Regenerate. - * testsuite/two_file_test_1.cc: Touch to force recompilation with new - flags. - * testsuite/two_file_test_1_v1.cc: Likewise. - -2017-12-01 Cary Coutant - - PR gold/22042 - * options.h (-fuse-ld): Use NULL instead of empty string. - -2017-12-01 Benjamin Peterson - - PR gold/22406 - * gold.cc (queue_initial_tasks) Check for number of real input files. - * options.cc (Command_line::process) Check for unterminated --start-lib - options. - * testsuite/Makefile.am: Add new test script. - * testsuite/Makefile.in: Regenerate. - * testsuite/check_empty_command_lines.sh: New test script. - -2017-11-17 Stephen Crane - - PR gold/22448 - * symtab.cc (Symbol_table::add_from_object): Only rescan for - undefined symbols in regular, not dynamic, objects. - -2017-11-30 Peter Smith - - PR gold/20765 - * aarch64.cc (Aarch64_relobj::update_erratum_address): New method. - (AArch64_relobj::scan_errata): Update addresses in stub table after - relaxation pass. - -2017-11-30 Peter Smith - Cary Coutant - - PR gold/20765 - * aarch64.cc (Erratum_stub::invalidate_erratum_stub): Use erratum_insn_ - instead of relobj_ to invalidate the stub. - (Erratum_stub::is_invalidated_erratum_stub): Likewise. - -2017-11-30 Peter Smith - - PR gold/22233 - * aarch64.cc (AArch64_relobj::fix_errata_and_relocate_erratum_stubs): - Fix calculation of stub address. - -2017-11-29 Stefan Stroe - - * po/Make-in (datadir): Define as @datadir@. - (localedir): Define as @localedir@. - (gnulocaledir, gettextsrcdir): Use @datarootdir@. - -2017-11-28 Cary Coutant - - * resolve.cc (Symbol_table::resolve): Allow multiply-defined absolute - symbols when they have the same value. - -2017-11-28 Cary Coutant - - * object.h (class Sized_relobj_file): Remove discarded_eh_frame_shndx_. - * object.cc (Sized_relobj_file::Sized_relobj_file): Likewise. - (Sized_relobj_file::layout_eh_frame_section): Likewise. - (Sized_relobj_file::do_count_local_symbols): Check for optimized - .eh_frame section by other means. - (Sized_relobj_file::compute_final_local_value_internal): Likewise. - -2017-11-28 H.J. Lu - - * testsuite/pr22266_a.c: Add a newline at end of file. - -2017-11-27 Cary Coutant - - PR gold/19291 - PR gold/22266 - * object.cc (Sized_relobj_file::compute_final_local_value_internal): - Revert changes from 2017-11-08 patch. Adjust symbol value in - relocatable links for non-section symbols. - (Sized_relobj_file::compute_final_local_value): Revert changes from - 2017-11-08 patch. - (Sized_relobj_file::do_finalize_local_symbols): Likewise. - (Sized_relobj_file::write_local_symbols): Revert changes from - 2015-11-25 patch. - * object.h (Sized_relobj_file::compute_final_local_value_internal): - Revert changes from 2017-11-08 patch. - * powerpc.cc (Target_powerpc::relocate_relocs): Adjust addend for - relocatable links. - * target-reloc.h (relocate_relocs): Adjust addend for relocatable links. - * testsuite/pr22266_a.c (hello): New function. - * testsuite/pr22266_main.c (main): Add test for merge sections. - * testsuite/pr22266_script.t: Add rule for .rodata. - -2017-11-19 Ian Lance Taylor - Cary Coutant - - * dwarf_reader.h (class Dwarf_info_reader): Add ref_addr_size - method. - * dwarf_reader.cc (Dwarf_die::read_attributes): Use ref_addr_size - for DW_FORM_ref_addr_size. - (Dwarf_die::skip_attributes): Likewise. - -2017-11-08 H.J. Lu - - PR gold/22291 - * layout.cc (Layout::define_section_symbols): Use STV_PROTECTED - for __start and __stop symbols. - * symtab.cc (Symbol_table::define_special_symbol): Add an - argument, visibility. Ignore definition and reference from - a dynamic object, depending on visibility. - (Symbol_table::do_define_in_output_data): Pass visibility to - define_special_symbol. - (Symbol_table::do_define_in_output_segment): Likewise. - (Symbol_table::do_define_as_constant): Likewise. - (Symbol_table::add_undefined_symbol_from_command_line): Pass - STV_DEFAULT to define_special_symbol. - * symtab.h (Symbol_table::define_special_symbol): Add an - argument, visibility. - -2017-11-08 James Clarke - - PR gold/22266 - * object.cc (Sized_relobj_file::compute_final_local_value_internal): - Drop relocatable parameter and stop adjusting output value based on - it. - (Sized_relobj_file::compute_final_local_value): Stop passing - relocatable to compute_final_local_value_internal. - (Sized_relobj_file::do_finalize_local_symbols): Ditto. - * object.h (Sized_relobj_file::compute_final_local_value_internal): - Drop relocatable parameter. - -2017-11-08 Kyle Butt - - * object.cc (do_find_special_sections): Fix a thinko with memmem return - values and check for != NULL rather than == 0. - -2017-11-07 Alan Modra - - * system.h (textdomain, bindtextdomain): Use safer "do nothing". - (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. - -2017-10-25 Alan Modra - - * symtab.cc (Symbol_table::add_from_relobj): Match "__gnu_lto_slim" - optionally prefixed with "_". - -2017-10-20 Sriraman Tallam - - * options.h (-z,text_unlikely_segment): New option. - * layout.cc (Layout::layout): Create new output section - for .text.unlikely sections with the new option. - (Layout::segment_precedes): Check for the new option - when segment flags match. - * testsuite/text_unlikely_segment.cc: New test source. - * testsuite/text_unlikely_segment.sh: New test script. - * testsuite/Makefile.am (text_unlikely_segment): New test. - * testsuite/Makefile.in: Regenerate. - -2017-10-19 Umesh Kalappa - - * arm.cc (Stub::do_fixed_endian_write):Far call stubs support for arm - in the be8 mode. - * testsuite/Makefile.am: New test cases. - * testsuite/Makefile.in: Regenerate. - * testsuite/arm_farcall_arm_arm_be8.sh: New script for arm to arm far - call stubs. - * testsuite/arm_farcall_thumb_thumb_be8.sh: New script for thumb to - thumb far call stubs. - -2017-10-18 Kyle Butt - Alan Modra - - * powerpc.cc (Target_powerpc::Scan::local): Correct dst_off - calculation for TOC16 relocs. - (Target_powerpc::Scan::global): Likewise. - -2017-09-26 Cary Coutant - - PR gold/22213 - * sparc.cc (Target_sparc): Fix incorrect register mask. - -2017-09-22 Jim Wilson - - * aarch64.cc (Target_aarch64::aarch64_info): Set - is_default_stack_executable to false. - -2017-09-22 Alan Modra - - * resolve.cc (clone): Fix got_offset_list test. - -2017-09-22 Alan Modra - - * powerpc.cc (Target_powerpc<64,*>::powerpc_info): Set - is_default_stack_executable false. - -2017-09-20 Teresa Johnson - - * plugin.cc (is_visible_from_outside): Check for export dynamic symbol - option and list. - * testsuite/Makefile.am (plugin_test_12): New test. - * testsuite/Makefile.in: Regenerate. - * testsuite/export_dynamic_plugin.cc: New test source. - * testsuite/plugin_test_12.sh: New test script. - -2017-09-20 Alan Modra - - * powerpc.cc (Target_powerpc::Branch_info::make_stub): Put - stubs for ppc32 non-branch relocs in first stub table. - (Target_powerpc::Relocate::relocate): Resolve similarly. - -2017-09-19 Alan Modra - - * options.h (stub-group-multi): Default to true. Add - --no-stub-group-multi. - -2017-08-30 Alan Modra - - * powerpc.cc (Target_powerpc::Relocate::relocate): Nop addis on - TPREL16_HA, and convert insn on TPREL16_LO and TPREL16_LO_DS - relocs to use r2/r13 when addis would add zero. - -2017-08-29 Alan Modra - - * options.h (tls_get_addr_optimize): New option. - * symtab.h (Symbol::clear_in_reg, clone): New functions. - (Sized_symbol::clone): New function. - (Symbol_table::clone): New function. - * resolve.cc (Symbol::clone, Sized_symbol::clone): New functions. - * powerpc.cc (Target_powerpc::has_tls_get_addr_opt_, - tls_get_addr_, tls_get_addr_opt_): New vars. - (Target_powerpc::tls_get_addr_opt, tls_get_addr, - is_tls_get_addr_opt, replace_tls_get_addr, - set_has_tls_get_addr_opt, stk_linker): New functions. - (Target_powerpc::Track_tls::maybe_skip_tls_get_addr_call): Add - target param. Update callers. Compare symbols rather than names. - (Target_powerpc::do_define_standard_symbols): Init tls_get_addr_ - and tls_get_addr_opt_. - (Target_powerpc::Branch_info::mark_pltcall): Translate tls_get_addr - sym to tls_get_addr_opt. - (Target_powerpc::Branch_info::make_stub): Likewise. - (Stub_table::define_stub_syms): Likewise. - (Target_powerpc::Scan::global): Likewise. - (Target_powerpc::Relocate::relocate): Likewise. - (add_3_12_2, add_3_12_13, bctrl, beqlr, cmpdi_11_0, cmpwi_11_0, - ld_11_1, ld_11_3, ld_12_3, lwz_11_3, lwz_12_3, mr_0_3, mr_3_0, - mtlr_11, std_11_1): New constants. - (Stub_table::eh_frame_added_): Delete. - (Stub_table::tls_get_addr_opt_bctrl_, plt_fde_len_, plt_fde_): New vars. - (Stub_table::init_plt_fde): New functions. - (Stub_table::add_eh_frame, replace_eh_frame): Move definition out - of line. Init and use plt_fde_. - (Stub_table::plt_call_size): Return size for tls_get_addr stub. - Extract alignment code to.. - (Stub_table::plt_call_align): ..this new function. Adjust all callers. - (Stub_table::add_plt_call_entry): Set has_tls_get_addr_opt and - tls_get_addr_opt_bctrl, and align after that. - (Stub_table::do_write): Write out tls_get_addr stub. - (Target_powerpc::do_finalize_sections): Emit DT_PPC_OPT - PPC_OPT_TLS/PPC64_OPT_TLS bit. - (Target_powerpc::Relocate::relocate): Don't check for or modify - nop following bl for tls_get_addr stub. - -2017-08-29 Alan Modra - - * symtab.h (Symbol): Split u_ into u1_ and u2_. Adjust accessors - to suit. Move plt_offset_ before got_offsets_. - * symtab.cc (Symbol::init_fields): Adjust for union change. - (Symbol::init_base_output_data): Likewise. - (Symbol::init_base_output_segment): Likewise. - (Symbol::allocate_base_common): Likewise. - (Symbol::output_section): Likewise. - (Symbol::set_output_section): Likewise. - (Symbol::set_output_segment): Likewise. - * resolve.cc (Symbol::override_base): Likewise. - (Symbol::override_base_with_special): Likewise. - -2017-08-28 Igor Kudrin - - * aarch64.cc (Target_aarch64::Relocate::relocate_tls): - Make got_tlsdesc_offset signed and fix its calculation. - * testsuite/Makefile.am (aarch64_tlsdesc): New test. - * testsuite/Makefile.in: Regenerate. - * testsuite/aarch64_tlsdesc.s: New test source file. - * testsuite/aarch64_tlsdesc.sh: New test script. - * testsuite/aarch64_tlsdesc.t: New test linker script. - -2017-08-28 Alan Modra - - PR 21847 - * powerpc.cc (Target_powerpc::is_elfv2_localentry0): Test - non_zero_localentry. - (Target_powerpc::resolve): New function. - (powerpc_info): Set has_resolve for 64-bit. - * target.h (Sized_target::resolve): Return bool. - * resolve.cc (Symbol_table::resolve): Continue with normal - processing when target resolve returns false. - * symtab.h (Symbol::non_zero_localentry, set_non_zero_localentry): - New accessors. - (Symbol::non_zero_localentry_): New flag bit. - * symtab.cc (Symbol::init_fields): Init non_zero_localentry_. - -2017-08-08 Romain Geissler - Alan Modra - - * configure.ac: Add --enable-default-hash-style option. - * options.h (hash_style): Use DEFAULT_HASH_STYLE as default value. - * configure: Regenerate. - * config.in: Regenerate. - -2017-08-03 James Clarke - - * options.h (General_options): Set a non-NULL second help string - argument for relax to allow --no-relax. - -2017-08-01 Alan Modra - - * ehframe.cc (Fde::operator==): New. - (Cie::remove_fde, Eh_frame::remove_ehframe_for_plt): New. - * ehframe.h (Fde::operator==): Declare. - (Cie::remove_fde, Eh_frame::remove_ehframe_for_plt): Likewise. - * layout.cc (Layout::remove_eh_frame_for_plt): New. - * layout.h (Layout::remove_eh_frame_for_plt): Declare. - * powerpc.cc (Target_powerpc::do_relax): Remove old eh_frame FDEs. - (Stub_table::add_eh_frame): Delete eh_frame_added_ condition. - Don't add eh_frame for empty stub section. - (Stub_table::remove_eh_frame): New. - -2017-07-31 Alan Modra - - * options.h (no_tls_optimize): New powerpc option. - * powerpc.cc (Target_powerpc::abiversion, set_abiversion): Formatting. - (Target_powerpc::stk_toc): Formatting, fix comment. - (Target_powerpc::Track_tls::tls_get_addr_state): Rename from - tls_get_addr. - (Target_powerpc::optimize_tls_gd, optimize_tls_ld, optimize_tls_ie): - Return TLSOPT_NONE when !tls_optimize. - (Target_powerpc::add_global_pair_with_rel): Check - for existing reloc before reserving. - (Target_powerpc::add_local_tls_pair): Likewise. - -2017-07-31 Alan Modra - - PR 21847 - * powerpc.cc (Target_powerpc::scan_relocs): Warn on --plt-localentry - without ld.so checks. - -2017-07-29 Alan Modra - - PR 21847 - * powerpc.cc (Target_powerpc::scan_relocs): Default to - --no-plt-localentry. - -2017-07-28 H.J. Lu - - PR gold/21857 - * compressed_output.cc (Output_compressed_section::set_final_data_size): - Call put_ch_reserved to clear the reserved field for 64-bit ELF. - -2017-07-26 H.J. Lu - - * mips.cc (Mips_relocate_functions): Add "llu" suffix to - 0x800080008000. - -2017-07-23 Alan Modra - - * powerpc.cc (glink_eh_frame_fde_64v2): Correct advance to - restore of LR. - (glink_eh_frame_fde_64v1): Advance to restore of LR at latest - possible insn. - -2017-07-18 Nick Clifton - - PR 21775 - * aarch64.cc: Fix spelling typos. - * arm.cc: Likewise. - * layout.cc: Likewise. - * powerpc.cc: Likewise. - * x86_64.cc: Likewise. - -2017-07-12 Alan Modra - - * po/es.po: Update from translationproject.org/latest/gold/. - * po/fi.po: Likewise. - * po/fr.po: Likewise. - * po/id.po: Likewise. - * po/it.po: Likewise. - * po/vi.po: Likewise. - * po/zh_CN.po: Likewise. - * po/ja.po: New file from translationproject.org. - * po/sv.po: Likewise. - * po/uk.po: Likewise. - -2017-07-06 Han Shen - - PR gold/21491 - * aarch64.cc (Erratum_stub::invalidate_erratum_stub): New method. - (Erratum_stub::is_invalidated_erratum_stub): New method. - (Stub_table::relocate_reloc_stub): Renamed from "relocate_stub". - (Stub_table::relocate_reloc_stubs): Renamed from "relocate_stubs". - (Stub_table::relocate_erratum_stub): New method. - (AArch64_relobj::fix_errata_and_relocate_erratum_stubs): Renamed from - "fix_errata". - (Target_aarch64::relocate_reloc_stub): Renamed from "relocate_stub". - -2017-06-23 Alan Modra - - * options.h (General_options): Add plt_localentry. - * powerpc.cc (Target_powerpc::st_other): New function. - (Target_powerpc::plt_localentry0_, plt_localentry0_init_, - has_localentry0_): New vars. - (Target_powerpc::plt_localentry0, set_has_localentry0, - is_elfv2_localentry0): New functions. - (Target_powerpc::Branch_info::mark_pltcall): Don't set tocsave or - return true for localentry:0 calls. - (Stub_table::Plt_stub_ent::localentry0_): New var. - (Stub_table::add_plt_call_entry): Set localentry0_ and has_localentry0_. - Don't set r2save_ for localentry:0 calls. - (Output_data_glink::do_write): Save r2 in __glink_PLTresolve for elfv2. - (Target_powerpc::scan_relocs): Default plt_localentry0_. - (Target_powerpc::do_finalize_sections): Set DT_PPC64_OPT. - (Target_powerpc::Relocate::relocate): Don't require nop following - calls for localentry:0 plt calls, and don't change nop. - -2017-06-23 Alan Modra - - * powerpc.cc (Target_powerpc::tocsave_loc_): New var. - (Target_powerpc::mark_pltcall, add_tocsave, tocsave_loc): New functions. - (Target_powerpc::Branch_info::tocsave_): New var. - (Target_powerpc::Branch_info::mark_pltcall): New function. - (Target_powerpc::Branch_info::make_stub): Pass tocsave_ to - add_plt_call_entry. - (Stub_table::Plt_stub_ent): Make public. Add r2save_. - (Stub_table::add_plt_call_entry): Add bool tocsave_ param. Set - r2save_. - (Stub_table::find_plt_call_entry): Return Plt_stub_ent*. Adjust - use throughout. - (Stub_table::do_write): Conditionally output r2 save in plt stubs. - (Target_powerpc::Scan::local): Handle R_PPC64_TOCSAVE. - (Target_powerpc::Scan::global): Likewise. - (Target_powerpc::Relocate::relocate): Skip r2 save in plt call stub - with tocsave reloc. Replace header tocsave nop with r2 save. - * symtab.h (struct Symbol_location_hash): Make public. - -2017-06-21 Alan Modra - - * powerpc.cc (Plt_stub_key): Rename from Plt_stub_ent. Remove indx_. - (Plt_stub_key_hash): Rename from Plt_stub_ent_hash. - (struct Plt_stub_ent): New. - (Plt_stub_entries): Map from Plt_stub_key to Plt_stub_ent. Adjust - use throughout file. - -2017-06-20 Eric Christopher - - * aarch64.cc (scan_reloc_for_stub): Use plt_address_for_global to - calculate the symbol value. - (scan_reloc_section_for_stubs): Allow stubs to be created for - section symbols. - (maybe_apply_stub): Handle creating stubs for weak symbols to - match the code in scan_reloc_for_stub. - -2017-06-20 James Clarke - - * powerpc.cc (Stub_table::define_stub_syms): Always include object's - uniq_ value. - -2017-06-15 Eric Christopher - - * aarch64.cc: Fix a few typos and grammar-os. - -2017-06-15 Jiong Wang - - * aarch64.cc (Insn_utilities::is_mrs_tpidr_el0): New method. - (AArch64_relobj::try_fix_erratum_843419_optimized): - Return ture for some TLS relaxed sequences. - -2017-06-07 Eric Christopher - - * aarch64.cc (maybe_apply_stub): Add debug logging for looking - up stubs to undefined symbols and early return rather than - fail to look them up. - (scan_reloc_for_stub): Add debug logging for no stub creation - for undefined symbols. - -2017-05-23 Alan Modra - - PR 21503 - * options.h: Add --emit-stub-syms option. - * powerpc.cc (object_id): New. - (Powerpc_relobj): Add uniq_ and accessor. Sort variables for - better packing. - (Powerpc_dynobj): Sort variables for better packing. - (Target_powerpc::define_local): New function. - (Target_powerpc::group_sections): Pass stub table size to - Stub_table constructor. - (Target_powerpc::do_relax): Define stub and glink symbols. - (Stub_table): Add uniq_ variable, and id param to constructor. - (Stub_table::Plt_stub_ent): Add indx_ variable. - (Stub_table::Branch_stub_entries): Move typedef earlier. - (Stub_table::branch_stub_size): Replace "to" parameter with a - Branch_stub_entries iterator. - (Stub_table::add_long_branch_entry): Adjust to suit. - (Stub_table::add_plt_call_entry): Set indx_. - (Stub_table::define_stub_syms): New function. - -2017-05-15 Eric Christopher - - * layout.cc (Layout::segment_precedes): Add a case for testing - pointer equality when determining which segment precedes - another. - -2017-05-13 James Clarke - - PR gold/21444 - * gold.cc (Target_sparc::Relocate::relocate_tls): Local - variables are final for position-independent executables. This - has to be consistent with Target_sparc::Scan::local otherwise - they will disagree as to whether local-exec is used. - -2017-05-12 Igor Kudrin - - PR gold/21430 - * aarch64.cc - (AArch64_relobj::convert_input_section_to_relaxed_section): - Set the section offset to -1ULL. - (Target_aarch64::relocate_section): Adjust the view in case - of a relaxed input section. - * testsuite/Makefile.am (pr21430): New test. - * testsuite/Makefile.in: Regenerate - * testsuite/pr21430.s: New test source file. - * testsuite/pr21430.sh: New test script. - -2017-04-27 Alan Modra - - * testsuite/plugin_section_order.c (onload): Add missing break. - -2017-03-15 Vladimir Radosavljevic - - * mips.cc (Mips_got_entry::hash()): Shift addend to reduce - possibility of collisions. - (Mips_got_entry::equals): Fix case for GOT_TLS_LDM - entries. - -2017-03-15 Vladimir Radosavljevic - - * mips.cc (Mips_relobj::merge_processor_specific_data_): New data - member. - (Mips_relobj::merge_processor_specific_data): New method. - (Mips_relobj::do_read_symbols): Set merge_processor_specific_data_ - to false, only if the input file is a binary or if object has no - contents except the section name string table and an empty symbol - table with the undefined symbol. - (Target_mips::do_finalize_sections): Refactor. Skip empty object files - for merging processor-specific data. - -2017-03-15 Vladimir Radosavljevic - - * mips.cc (Target_mips::Relocate::calculated_value_): New data - member. - (Target_mips::Relocate::calculate_only_): Likewise. - (Target_mips::Relocate::relocate): Handle multiple consecutive - relocations with the same offset. - -2017-03-15 Vladimir Radosavljevic - - * mips.cc (Target_mips::Relocate::relocate): Remove redundant - checks for relocatable link. - (Mips_relocate_functions::reljalr): Likewise. - -2017-03-15 Vladimir Radosavljevic - - * mips.cc (class Mips_output_section_options): New class. - (Target_mips::do_make_output_section): New method. - -2017-03-15 Vladimir Radosavljevic - - * mips.cc (Mips_relocate_functions::rel26): Don't print relocation - overflow error message. - (Target_mips::relocate_special_relocatable): Improve relocation - overflow error message. - (Target_mips::Relocate::relocate): Likewise. - -2017-03-15 Vladimir Radosavljevic - - * mips.cc (symbol_refs_local): Return false if a symbol - is from a dynamic object. - (Target_mips::got_section): Make _GLOBAL_OFFSET_TABLE_ STV_HIDDEN. - (Target_mips::set_gp): Refactor. Make _gp STT_NOTYPE and - STB_LOCAL. - (Target_mips::do_finalize_sections): Set _gp after all the checks - for creating .got are done. - (Target_mips::Scan::global): Remove unused code. - -2017-02-22 Alan Modra - - * powerpc.cc (Target_powerpc::make_iplt_section): Check that - output_section exists before attempting add_output_section_data. - (Target_powerpc::make_brlt_section): Likewise. - -2017-02-15 Vladimir Radosavljevic - - * mips.cc (Target_mips::Scan::get_reference_flags): Remove - gold_unreachable from default case. - -2017-02-15 Vladimir Radosavljevic - - PR gold/21111 - * mips.cc (Mips_relocate_functions::relhigher): New method. - (Mips_relocate_functions::relhighest): Likewise. - (mips_get_size_for_reloc): Add support for relocs: R_MIPS_HIGHER and - R_MIPS_HIGHEST. - (Target_mips::Scan::local): Add support for relocs: R_MIPS_HIGHER, - R_MIPS_HIGHEST, R_MICROMIPS_HIGHER and R_MICROMIPS_HIGHEST. - (Target_mips::Scan::global): Likewise. - (Target_mips::Scan::get_reference_flags): Likewise. - (Target_mips::Relocate::relocate): Call static methods for resolving - HIGHER and HIGHEST relocations. - -2017-02-03 Rahul Chaudhry - - * x86_64.cc (Target_x86_64::do_can_check_for_function_pointers): - Return true even when building pie binaries. - (Target_x86_64::possible_function_pointer_reloc): Check opcode - for R_X86_64_PC32 relocations. - (Target_x86_64::local_reloc_may_be_function_pointer): Pass - extra arguments to local_reloc_may_be_function_pointer. - (Target_x86_64::global_reloc_may_be_function_pointer): Likewise. - * gc.h (gc_process_relocs): Add check for STT_FUNC. - * testsuite/Makefile.am (icf_safe_pie_test): New test case. - * testsuite/Makefile.in: Regenerate. - * testsuite/icf_safe_pie_test.sh: New shell script. - -2017-02-03 Alan Modra - - * powerpc.cc (Powerpc_relobj::make_toc_relative): Don't crash - when no .toc section exists. - -2017-01-31 Cary Coutant - - PR gold/21090 - * x86_64.cc (Target_x86_64::can_convert_mov_to_lea): Add check - for predefined symbol. - (Target_x86_64::Relocate::relocate): Fix formatting. - -2017-01-23 Rahul Chaudhry - - * testsuite/icf_safe_so_test.sh: Use "set -e". - * testsuite/icf_safe_test.sh: Likewise. - * testsuite/icf_test.sh: Likewise. - -2017-01-23 Vladimir Radosavljevic - - * mips.cc (Mips_output_data_plt::rel_plt): Remove const from return - type. - (Target_mips::make_plt_entry): Make the sh_info field of .rel.plt - point to .plt. - -2017-01-23 Vladimir Radosavljevic - - PR gold/21054 - * mips.cc (Mips_got_info::record_global_got_symbol): Don't add symbol - to the dynamic symbol table if it is forced to local visibility. - (Target_mips::do_finalize_sections): Don't add __RLD_MAP symbol to the - dynamic symbol table if it is forced to local visibility. - -2017-01-20 Nick Clifton - - * aarch64.cc (Stub_template_repertoire): Change ST_E_835769_INSNS - from a pointer to an array. - -2017-01-13 H.J. Lu - - PR gold/21040 - * powerpc.cc (Powerpc_relobj::make_toc_relative): - Cast 0x80008000 to uint64_t. - -2017-01-12 Cary Coutant - - * object.cc (Sized_relobj_file): Fix byte counts for calls to memmem. - -2017-01-11 Cary Coutant - - PR gold/21040 - * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry): - Remove unnecessary 'typename' keyword. - (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise. - (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise. - (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise. - (Output_data_plt_x86_64_bnd::do_write): Likewise. - -2017-01-11 Cary Coutant - - PR gold/21040 - * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry): - Remove unnecessary 'typename' keyword. - (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise. - (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise. - (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise. - * testsuite/copy_test_relro_1.cc (p, b, c, q): Add separate extern - declarations. - -2017-01-11 Cary Coutant - - PR gold/21039 - * testsuite/script_test_13.sh: Adjust patterns to work for i386. - * testsuite/script_test_15a.sh: Likewise. - * testsuite/script_test_15b.sh: Likewise. - * testsuite/script_test_15c.sh: Likewise. - -2017-01-11 Alan Modra - - * powerpc.cc (class Powerpc_copy_relocs): New. - (Powerpc_copy_relocs::emit): New function. - (Powerpc_relobj::relatoc_, toc_, no_toc_opt_): New variables. - (Powerpc_relobj::toc_shndx, set_no_toc_opt, no_toc_opt): New inlines. - (Powerpc_relobj::do_relocate_sections): New function. - (Powerpc_relobj::make_toc_relative): Likewise. - (Powerpc_relobj::do_find_special_sections): Stash away .rela.toc - and .toc too. - (ok_lo_toc_insn): Move earlier, and handle more insns. - (Target_powerpc::Scan::local): If optimizing toc accesses, set - no_toc_opt for entries we can't edit. Check insn validity. - Emit "toc optimization is not supported" warning, downgraded - from error. - (Target_powerpc::Scan::global): Likewise. - (Target_powerpc::Relocate::relocate): Edit TOC indirect code - to TOC relative. Don't emit "toc optimization is not supported" - error here. - -2017-01-10 Cary Coutant - - * aarch64.cc (AArch64_relobj::do_relocate_sections): Call - Sized_relobj_file::relocate_section_range(). - * arm.cc (Arm_relobj::do_relocate_sections): Likewise. - * object.h (Sized_relobj_file::relocate_section_range): New method. - * reloc.cc (Sized_relobj_file::do_relocate_sections): Move - implementation... - (Sized_relobj_file::relocate_section_range): ...to new method. - -2017-01-10 Alan Modra - - * testsuite/ver_test_8.sh: Accept .TOC. in lieu of - _GLOBAL_OFFSET_TABLE_. Allow zero count. - * testsuite/copy_test_relro_1.cc (c, q): New vars. - * testsuite/copy_test_relro.cc: Rewrite to test read-only - status of variables directly. Reference new vars in - read-only data. - -2017-01-10 Alan Modra - - * options.h: Add --secure-plt option. - * powerpc.cc (Target_powerpc::Scan::local): Detect and error - on -fPIC -mbss-plt code. - (Target_powerpc::Scan::global): Likewise. - -2017-01-09 Alan Modra - - * powerpc.cc (Target_powerpc::make_plt_section): Point sh_info of - ".rela.plt" at ".plt". - -2017-01-07 Alan Modra - - * powerpc.cc: Use shorter equivalent elfcpp typedef for - Reltype and reloc_size throughout. - (Target_powerpc::symval_for_branch): Exclude dynamic symbols. - (Target_powerpc::Scan::local): Use local var r_sym. - (Target_powerpc::Scan::global: Likewise. - (Target_powerpc::Relocate::relocate): Delete shadowing r_sym. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gold/ChangeLog-2017 b/gold/ChangeLog-2017 new file mode 100644 index 00000000000..b2a47710b5a --- /dev/null +++ b/gold/ChangeLog-2017 @@ -0,0 +1,848 @@ +2017-12-15 Alan Modra + + PR 22602 + * powerpc.cc (Target_powerpc::Branch_info::mark_pltcall): Resolve + forwards before replacing __tls_get_addr. + (Target_powerpc::Branch_info::make_stub): Likewise. + +2017-12-11 Stephen Crane + + * plugin.cc (Plugin::load): Include hooks for register_new_input + in transfer vector. + (Plugin::new_input): New function. + (register_new_input): New function. + (Plugin_manager::claim_file): Call Plugin::new_input if in + replacement phase. + * plugin.h (Plugin::set_new_input_handler): New function. + * testsuite/plugin_new_section_layout.c: New plugin to test + new_input plugin API. + * testsuite/plugin_final_layout.sh: Add new input test. + * testsuite/Makefile.am (plugin_layout_new_file): New test case. + * testsuite/Makefile.in: Regenerate. + +2017-12-02 Vladimir Kondratyev + Cary Coutant + + PR gold/22540 + * output.cc (gold_fallocate): Trivial return for len == 0. + Add fallback options when posix_fallocate and fallocate return + not-supported errors. + +2017-12-01 Cary Coutant + + PR gold/21090 + * incremental.cc (Sized_relobj_incr::do_relocate): Fix comment. + * options.cc (General_options::finalize): Disallow -pie with + incremental linking. + * x86_64.cc (Target_x86_64::Scan::local): Don't do mov-to-lea + or callq-to-direct optimizations for incremental links. + (Target_x86_64::Scan::global): Likewise. + (Target_x86_64::Relocate::relocate): Likewise. + * testsuite/Makefile.am (incremental_test): Force -no-pie. + (incremental_test_2): Likewise. + (incremental_test_3): Likewise. + (incremental_test_4): Likewise. + (incremental_test_5): Likewise. + (incremental_test_6): Likewise. + (incremental_copy_test): Likewise. + (incremental_common_test_1): Likewise. + (incremental_comdat_test_1): Likewise. + * testsuite/Makefile.in: Regenerate. + +2017-12-01 Cary Coutant + + PR gold/21841 + * testsuite/debug_msg.sh: Adjust expected line numbers. + * testsuite/odr_violation2.cc (DummyFunction): New function. + +2017-12-01 Cary Coutant + + PR gold/22309 + * testsuite/Makefile.am (two_file_test_1_v1_ndebug.o): Compile with + no EH information. + (two_file_test_1_ndebug.o): Likewise. + * testsuite/Makefile.in: Regenerate. + * testsuite/two_file_test_1.cc: Touch to force recompilation with new + flags. + * testsuite/two_file_test_1_v1.cc: Likewise. + +2017-12-01 Cary Coutant + + PR gold/22042 + * options.h (-fuse-ld): Use NULL instead of empty string. + +2017-12-01 Benjamin Peterson + + PR gold/22406 + * gold.cc (queue_initial_tasks) Check for number of real input files. + * options.cc (Command_line::process) Check for unterminated --start-lib + options. + * testsuite/Makefile.am: Add new test script. + * testsuite/Makefile.in: Regenerate. + * testsuite/check_empty_command_lines.sh: New test script. + +2017-11-17 Stephen Crane + + PR gold/22448 + * symtab.cc (Symbol_table::add_from_object): Only rescan for + undefined symbols in regular, not dynamic, objects. + +2017-11-30 Peter Smith + + PR gold/20765 + * aarch64.cc (Aarch64_relobj::update_erratum_address): New method. + (AArch64_relobj::scan_errata): Update addresses in stub table after + relaxation pass. + +2017-11-30 Peter Smith + Cary Coutant + + PR gold/20765 + * aarch64.cc (Erratum_stub::invalidate_erratum_stub): Use erratum_insn_ + instead of relobj_ to invalidate the stub. + (Erratum_stub::is_invalidated_erratum_stub): Likewise. + +2017-11-30 Peter Smith + + PR gold/22233 + * aarch64.cc (AArch64_relobj::fix_errata_and_relocate_erratum_stubs): + Fix calculation of stub address. + +2017-11-29 Stefan Stroe + + * po/Make-in (datadir): Define as @datadir@. + (localedir): Define as @localedir@. + (gnulocaledir, gettextsrcdir): Use @datarootdir@. + +2017-11-28 Cary Coutant + + * resolve.cc (Symbol_table::resolve): Allow multiply-defined absolute + symbols when they have the same value. + +2017-11-28 Cary Coutant + + * object.h (class Sized_relobj_file): Remove discarded_eh_frame_shndx_. + * object.cc (Sized_relobj_file::Sized_relobj_file): Likewise. + (Sized_relobj_file::layout_eh_frame_section): Likewise. + (Sized_relobj_file::do_count_local_symbols): Check for optimized + .eh_frame section by other means. + (Sized_relobj_file::compute_final_local_value_internal): Likewise. + +2017-11-28 H.J. Lu + + * testsuite/pr22266_a.c: Add a newline at end of file. + +2017-11-27 Cary Coutant + + PR gold/19291 + PR gold/22266 + * object.cc (Sized_relobj_file::compute_final_local_value_internal): + Revert changes from 2017-11-08 patch. Adjust symbol value in + relocatable links for non-section symbols. + (Sized_relobj_file::compute_final_local_value): Revert changes from + 2017-11-08 patch. + (Sized_relobj_file::do_finalize_local_symbols): Likewise. + (Sized_relobj_file::write_local_symbols): Revert changes from + 2015-11-25 patch. + * object.h (Sized_relobj_file::compute_final_local_value_internal): + Revert changes from 2017-11-08 patch. + * powerpc.cc (Target_powerpc::relocate_relocs): Adjust addend for + relocatable links. + * target-reloc.h (relocate_relocs): Adjust addend for relocatable links. + * testsuite/pr22266_a.c (hello): New function. + * testsuite/pr22266_main.c (main): Add test for merge sections. + * testsuite/pr22266_script.t: Add rule for .rodata. + +2017-11-19 Ian Lance Taylor + Cary Coutant + + * dwarf_reader.h (class Dwarf_info_reader): Add ref_addr_size + method. + * dwarf_reader.cc (Dwarf_die::read_attributes): Use ref_addr_size + for DW_FORM_ref_addr_size. + (Dwarf_die::skip_attributes): Likewise. + +2017-11-08 H.J. Lu + + PR gold/22291 + * layout.cc (Layout::define_section_symbols): Use STV_PROTECTED + for __start and __stop symbols. + * symtab.cc (Symbol_table::define_special_symbol): Add an + argument, visibility. Ignore definition and reference from + a dynamic object, depending on visibility. + (Symbol_table::do_define_in_output_data): Pass visibility to + define_special_symbol. + (Symbol_table::do_define_in_output_segment): Likewise. + (Symbol_table::do_define_as_constant): Likewise. + (Symbol_table::add_undefined_symbol_from_command_line): Pass + STV_DEFAULT to define_special_symbol. + * symtab.h (Symbol_table::define_special_symbol): Add an + argument, visibility. + +2017-11-08 James Clarke + + PR gold/22266 + * object.cc (Sized_relobj_file::compute_final_local_value_internal): + Drop relocatable parameter and stop adjusting output value based on + it. + (Sized_relobj_file::compute_final_local_value): Stop passing + relocatable to compute_final_local_value_internal. + (Sized_relobj_file::do_finalize_local_symbols): Ditto. + * object.h (Sized_relobj_file::compute_final_local_value_internal): + Drop relocatable parameter. + +2017-11-08 Kyle Butt + + * object.cc (do_find_special_sections): Fix a thinko with memmem return + values and check for != NULL rather than == 0. + +2017-11-07 Alan Modra + + * system.h (textdomain, bindtextdomain): Use safer "do nothing". + (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. + +2017-10-25 Alan Modra + + * symtab.cc (Symbol_table::add_from_relobj): Match "__gnu_lto_slim" + optionally prefixed with "_". + +2017-10-20 Sriraman Tallam + + * options.h (-z,text_unlikely_segment): New option. + * layout.cc (Layout::layout): Create new output section + for .text.unlikely sections with the new option. + (Layout::segment_precedes): Check for the new option + when segment flags match. + * testsuite/text_unlikely_segment.cc: New test source. + * testsuite/text_unlikely_segment.sh: New test script. + * testsuite/Makefile.am (text_unlikely_segment): New test. + * testsuite/Makefile.in: Regenerate. + +2017-10-19 Umesh Kalappa + + * arm.cc (Stub::do_fixed_endian_write):Far call stubs support for arm + in the be8 mode. + * testsuite/Makefile.am: New test cases. + * testsuite/Makefile.in: Regenerate. + * testsuite/arm_farcall_arm_arm_be8.sh: New script for arm to arm far + call stubs. + * testsuite/arm_farcall_thumb_thumb_be8.sh: New script for thumb to + thumb far call stubs. + +2017-10-18 Kyle Butt + Alan Modra + + * powerpc.cc (Target_powerpc::Scan::local): Correct dst_off + calculation for TOC16 relocs. + (Target_powerpc::Scan::global): Likewise. + +2017-09-26 Cary Coutant + + PR gold/22213 + * sparc.cc (Target_sparc): Fix incorrect register mask. + +2017-09-22 Jim Wilson + + * aarch64.cc (Target_aarch64::aarch64_info): Set + is_default_stack_executable to false. + +2017-09-22 Alan Modra + + * resolve.cc (clone): Fix got_offset_list test. + +2017-09-22 Alan Modra + + * powerpc.cc (Target_powerpc<64,*>::powerpc_info): Set + is_default_stack_executable false. + +2017-09-20 Teresa Johnson + + * plugin.cc (is_visible_from_outside): Check for export dynamic symbol + option and list. + * testsuite/Makefile.am (plugin_test_12): New test. + * testsuite/Makefile.in: Regenerate. + * testsuite/export_dynamic_plugin.cc: New test source. + * testsuite/plugin_test_12.sh: New test script. + +2017-09-20 Alan Modra + + * powerpc.cc (Target_powerpc::Branch_info::make_stub): Put + stubs for ppc32 non-branch relocs in first stub table. + (Target_powerpc::Relocate::relocate): Resolve similarly. + +2017-09-19 Alan Modra + + * options.h (stub-group-multi): Default to true. Add + --no-stub-group-multi. + +2017-08-30 Alan Modra + + * powerpc.cc (Target_powerpc::Relocate::relocate): Nop addis on + TPREL16_HA, and convert insn on TPREL16_LO and TPREL16_LO_DS + relocs to use r2/r13 when addis would add zero. + +2017-08-29 Alan Modra + + * options.h (tls_get_addr_optimize): New option. + * symtab.h (Symbol::clear_in_reg, clone): New functions. + (Sized_symbol::clone): New function. + (Symbol_table::clone): New function. + * resolve.cc (Symbol::clone, Sized_symbol::clone): New functions. + * powerpc.cc (Target_powerpc::has_tls_get_addr_opt_, + tls_get_addr_, tls_get_addr_opt_): New vars. + (Target_powerpc::tls_get_addr_opt, tls_get_addr, + is_tls_get_addr_opt, replace_tls_get_addr, + set_has_tls_get_addr_opt, stk_linker): New functions. + (Target_powerpc::Track_tls::maybe_skip_tls_get_addr_call): Add + target param. Update callers. Compare symbols rather than names. + (Target_powerpc::do_define_standard_symbols): Init tls_get_addr_ + and tls_get_addr_opt_. + (Target_powerpc::Branch_info::mark_pltcall): Translate tls_get_addr + sym to tls_get_addr_opt. + (Target_powerpc::Branch_info::make_stub): Likewise. + (Stub_table::define_stub_syms): Likewise. + (Target_powerpc::Scan::global): Likewise. + (Target_powerpc::Relocate::relocate): Likewise. + (add_3_12_2, add_3_12_13, bctrl, beqlr, cmpdi_11_0, cmpwi_11_0, + ld_11_1, ld_11_3, ld_12_3, lwz_11_3, lwz_12_3, mr_0_3, mr_3_0, + mtlr_11, std_11_1): New constants. + (Stub_table::eh_frame_added_): Delete. + (Stub_table::tls_get_addr_opt_bctrl_, plt_fde_len_, plt_fde_): New vars. + (Stub_table::init_plt_fde): New functions. + (Stub_table::add_eh_frame, replace_eh_frame): Move definition out + of line. Init and use plt_fde_. + (Stub_table::plt_call_size): Return size for tls_get_addr stub. + Extract alignment code to.. + (Stub_table::plt_call_align): ..this new function. Adjust all callers. + (Stub_table::add_plt_call_entry): Set has_tls_get_addr_opt and + tls_get_addr_opt_bctrl, and align after that. + (Stub_table::do_write): Write out tls_get_addr stub. + (Target_powerpc::do_finalize_sections): Emit DT_PPC_OPT + PPC_OPT_TLS/PPC64_OPT_TLS bit. + (Target_powerpc::Relocate::relocate): Don't check for or modify + nop following bl for tls_get_addr stub. + +2017-08-29 Alan Modra + + * symtab.h (Symbol): Split u_ into u1_ and u2_. Adjust accessors + to suit. Move plt_offset_ before got_offsets_. + * symtab.cc (Symbol::init_fields): Adjust for union change. + (Symbol::init_base_output_data): Likewise. + (Symbol::init_base_output_segment): Likewise. + (Symbol::allocate_base_common): Likewise. + (Symbol::output_section): Likewise. + (Symbol::set_output_section): Likewise. + (Symbol::set_output_segment): Likewise. + * resolve.cc (Symbol::override_base): Likewise. + (Symbol::override_base_with_special): Likewise. + +2017-08-28 Igor Kudrin + + * aarch64.cc (Target_aarch64::Relocate::relocate_tls): + Make got_tlsdesc_offset signed and fix its calculation. + * testsuite/Makefile.am (aarch64_tlsdesc): New test. + * testsuite/Makefile.in: Regenerate. + * testsuite/aarch64_tlsdesc.s: New test source file. + * testsuite/aarch64_tlsdesc.sh: New test script. + * testsuite/aarch64_tlsdesc.t: New test linker script. + +2017-08-28 Alan Modra + + PR 21847 + * powerpc.cc (Target_powerpc::is_elfv2_localentry0): Test + non_zero_localentry. + (Target_powerpc::resolve): New function. + (powerpc_info): Set has_resolve for 64-bit. + * target.h (Sized_target::resolve): Return bool. + * resolve.cc (Symbol_table::resolve): Continue with normal + processing when target resolve returns false. + * symtab.h (Symbol::non_zero_localentry, set_non_zero_localentry): + New accessors. + (Symbol::non_zero_localentry_): New flag bit. + * symtab.cc (Symbol::init_fields): Init non_zero_localentry_. + +2017-08-08 Romain Geissler + Alan Modra + + * configure.ac: Add --enable-default-hash-style option. + * options.h (hash_style): Use DEFAULT_HASH_STYLE as default value. + * configure: Regenerate. + * config.in: Regenerate. + +2017-08-03 James Clarke + + * options.h (General_options): Set a non-NULL second help string + argument for relax to allow --no-relax. + +2017-08-01 Alan Modra + + * ehframe.cc (Fde::operator==): New. + (Cie::remove_fde, Eh_frame::remove_ehframe_for_plt): New. + * ehframe.h (Fde::operator==): Declare. + (Cie::remove_fde, Eh_frame::remove_ehframe_for_plt): Likewise. + * layout.cc (Layout::remove_eh_frame_for_plt): New. + * layout.h (Layout::remove_eh_frame_for_plt): Declare. + * powerpc.cc (Target_powerpc::do_relax): Remove old eh_frame FDEs. + (Stub_table::add_eh_frame): Delete eh_frame_added_ condition. + Don't add eh_frame for empty stub section. + (Stub_table::remove_eh_frame): New. + +2017-07-31 Alan Modra + + * options.h (no_tls_optimize): New powerpc option. + * powerpc.cc (Target_powerpc::abiversion, set_abiversion): Formatting. + (Target_powerpc::stk_toc): Formatting, fix comment. + (Target_powerpc::Track_tls::tls_get_addr_state): Rename from + tls_get_addr. + (Target_powerpc::optimize_tls_gd, optimize_tls_ld, optimize_tls_ie): + Return TLSOPT_NONE when !tls_optimize. + (Target_powerpc::add_global_pair_with_rel): Check + for existing reloc before reserving. + (Target_powerpc::add_local_tls_pair): Likewise. + +2017-07-31 Alan Modra + + PR 21847 + * powerpc.cc (Target_powerpc::scan_relocs): Warn on --plt-localentry + without ld.so checks. + +2017-07-29 Alan Modra + + PR 21847 + * powerpc.cc (Target_powerpc::scan_relocs): Default to + --no-plt-localentry. + +2017-07-28 H.J. Lu + + PR gold/21857 + * compressed_output.cc (Output_compressed_section::set_final_data_size): + Call put_ch_reserved to clear the reserved field for 64-bit ELF. + +2017-07-26 H.J. Lu + + * mips.cc (Mips_relocate_functions): Add "llu" suffix to + 0x800080008000. + +2017-07-23 Alan Modra + + * powerpc.cc (glink_eh_frame_fde_64v2): Correct advance to + restore of LR. + (glink_eh_frame_fde_64v1): Advance to restore of LR at latest + possible insn. + +2017-07-18 Nick Clifton + + PR 21775 + * aarch64.cc: Fix spelling typos. + * arm.cc: Likewise. + * layout.cc: Likewise. + * powerpc.cc: Likewise. + * x86_64.cc: Likewise. + +2017-07-12 Alan Modra + + * po/es.po: Update from translationproject.org/latest/gold/. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/id.po: Likewise. + * po/it.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + * po/ja.po: New file from translationproject.org. + * po/sv.po: Likewise. + * po/uk.po: Likewise. + +2017-07-06 Han Shen + + PR gold/21491 + * aarch64.cc (Erratum_stub::invalidate_erratum_stub): New method. + (Erratum_stub::is_invalidated_erratum_stub): New method. + (Stub_table::relocate_reloc_stub): Renamed from "relocate_stub". + (Stub_table::relocate_reloc_stubs): Renamed from "relocate_stubs". + (Stub_table::relocate_erratum_stub): New method. + (AArch64_relobj::fix_errata_and_relocate_erratum_stubs): Renamed from + "fix_errata". + (Target_aarch64::relocate_reloc_stub): Renamed from "relocate_stub". + +2017-06-23 Alan Modra + + * options.h (General_options): Add plt_localentry. + * powerpc.cc (Target_powerpc::st_other): New function. + (Target_powerpc::plt_localentry0_, plt_localentry0_init_, + has_localentry0_): New vars. + (Target_powerpc::plt_localentry0, set_has_localentry0, + is_elfv2_localentry0): New functions. + (Target_powerpc::Branch_info::mark_pltcall): Don't set tocsave or + return true for localentry:0 calls. + (Stub_table::Plt_stub_ent::localentry0_): New var. + (Stub_table::add_plt_call_entry): Set localentry0_ and has_localentry0_. + Don't set r2save_ for localentry:0 calls. + (Output_data_glink::do_write): Save r2 in __glink_PLTresolve for elfv2. + (Target_powerpc::scan_relocs): Default plt_localentry0_. + (Target_powerpc::do_finalize_sections): Set DT_PPC64_OPT. + (Target_powerpc::Relocate::relocate): Don't require nop following + calls for localentry:0 plt calls, and don't change nop. + +2017-06-23 Alan Modra + + * powerpc.cc (Target_powerpc::tocsave_loc_): New var. + (Target_powerpc::mark_pltcall, add_tocsave, tocsave_loc): New functions. + (Target_powerpc::Branch_info::tocsave_): New var. + (Target_powerpc::Branch_info::mark_pltcall): New function. + (Target_powerpc::Branch_info::make_stub): Pass tocsave_ to + add_plt_call_entry. + (Stub_table::Plt_stub_ent): Make public. Add r2save_. + (Stub_table::add_plt_call_entry): Add bool tocsave_ param. Set + r2save_. + (Stub_table::find_plt_call_entry): Return Plt_stub_ent*. Adjust + use throughout. + (Stub_table::do_write): Conditionally output r2 save in plt stubs. + (Target_powerpc::Scan::local): Handle R_PPC64_TOCSAVE. + (Target_powerpc::Scan::global): Likewise. + (Target_powerpc::Relocate::relocate): Skip r2 save in plt call stub + with tocsave reloc. Replace header tocsave nop with r2 save. + * symtab.h (struct Symbol_location_hash): Make public. + +2017-06-21 Alan Modra + + * powerpc.cc (Plt_stub_key): Rename from Plt_stub_ent. Remove indx_. + (Plt_stub_key_hash): Rename from Plt_stub_ent_hash. + (struct Plt_stub_ent): New. + (Plt_stub_entries): Map from Plt_stub_key to Plt_stub_ent. Adjust + use throughout file. + +2017-06-20 Eric Christopher + + * aarch64.cc (scan_reloc_for_stub): Use plt_address_for_global to + calculate the symbol value. + (scan_reloc_section_for_stubs): Allow stubs to be created for + section symbols. + (maybe_apply_stub): Handle creating stubs for weak symbols to + match the code in scan_reloc_for_stub. + +2017-06-20 James Clarke + + * powerpc.cc (Stub_table::define_stub_syms): Always include object's + uniq_ value. + +2017-06-15 Eric Christopher + + * aarch64.cc: Fix a few typos and grammar-os. + +2017-06-15 Jiong Wang + + * aarch64.cc (Insn_utilities::is_mrs_tpidr_el0): New method. + (AArch64_relobj::try_fix_erratum_843419_optimized): + Return ture for some TLS relaxed sequences. + +2017-06-07 Eric Christopher + + * aarch64.cc (maybe_apply_stub): Add debug logging for looking + up stubs to undefined symbols and early return rather than + fail to look them up. + (scan_reloc_for_stub): Add debug logging for no stub creation + for undefined symbols. + +2017-05-23 Alan Modra + + PR 21503 + * options.h: Add --emit-stub-syms option. + * powerpc.cc (object_id): New. + (Powerpc_relobj): Add uniq_ and accessor. Sort variables for + better packing. + (Powerpc_dynobj): Sort variables for better packing. + (Target_powerpc::define_local): New function. + (Target_powerpc::group_sections): Pass stub table size to + Stub_table constructor. + (Target_powerpc::do_relax): Define stub and glink symbols. + (Stub_table): Add uniq_ variable, and id param to constructor. + (Stub_table::Plt_stub_ent): Add indx_ variable. + (Stub_table::Branch_stub_entries): Move typedef earlier. + (Stub_table::branch_stub_size): Replace "to" parameter with a + Branch_stub_entries iterator. + (Stub_table::add_long_branch_entry): Adjust to suit. + (Stub_table::add_plt_call_entry): Set indx_. + (Stub_table::define_stub_syms): New function. + +2017-05-15 Eric Christopher + + * layout.cc (Layout::segment_precedes): Add a case for testing + pointer equality when determining which segment precedes + another. + +2017-05-13 James Clarke + + PR gold/21444 + * gold.cc (Target_sparc::Relocate::relocate_tls): Local + variables are final for position-independent executables. This + has to be consistent with Target_sparc::Scan::local otherwise + they will disagree as to whether local-exec is used. + +2017-05-12 Igor Kudrin + + PR gold/21430 + * aarch64.cc + (AArch64_relobj::convert_input_section_to_relaxed_section): + Set the section offset to -1ULL. + (Target_aarch64::relocate_section): Adjust the view in case + of a relaxed input section. + * testsuite/Makefile.am (pr21430): New test. + * testsuite/Makefile.in: Regenerate + * testsuite/pr21430.s: New test source file. + * testsuite/pr21430.sh: New test script. + +2017-04-27 Alan Modra + + * testsuite/plugin_section_order.c (onload): Add missing break. + +2017-03-15 Vladimir Radosavljevic + + * mips.cc (Mips_got_entry::hash()): Shift addend to reduce + possibility of collisions. + (Mips_got_entry::equals): Fix case for GOT_TLS_LDM + entries. + +2017-03-15 Vladimir Radosavljevic + + * mips.cc (Mips_relobj::merge_processor_specific_data_): New data + member. + (Mips_relobj::merge_processor_specific_data): New method. + (Mips_relobj::do_read_symbols): Set merge_processor_specific_data_ + to false, only if the input file is a binary or if object has no + contents except the section name string table and an empty symbol + table with the undefined symbol. + (Target_mips::do_finalize_sections): Refactor. Skip empty object files + for merging processor-specific data. + +2017-03-15 Vladimir Radosavljevic + + * mips.cc (Target_mips::Relocate::calculated_value_): New data + member. + (Target_mips::Relocate::calculate_only_): Likewise. + (Target_mips::Relocate::relocate): Handle multiple consecutive + relocations with the same offset. + +2017-03-15 Vladimir Radosavljevic + + * mips.cc (Target_mips::Relocate::relocate): Remove redundant + checks for relocatable link. + (Mips_relocate_functions::reljalr): Likewise. + +2017-03-15 Vladimir Radosavljevic + + * mips.cc (class Mips_output_section_options): New class. + (Target_mips::do_make_output_section): New method. + +2017-03-15 Vladimir Radosavljevic + + * mips.cc (Mips_relocate_functions::rel26): Don't print relocation + overflow error message. + (Target_mips::relocate_special_relocatable): Improve relocation + overflow error message. + (Target_mips::Relocate::relocate): Likewise. + +2017-03-15 Vladimir Radosavljevic + + * mips.cc (symbol_refs_local): Return false if a symbol + is from a dynamic object. + (Target_mips::got_section): Make _GLOBAL_OFFSET_TABLE_ STV_HIDDEN. + (Target_mips::set_gp): Refactor. Make _gp STT_NOTYPE and + STB_LOCAL. + (Target_mips::do_finalize_sections): Set _gp after all the checks + for creating .got are done. + (Target_mips::Scan::global): Remove unused code. + +2017-02-22 Alan Modra + + * powerpc.cc (Target_powerpc::make_iplt_section): Check that + output_section exists before attempting add_output_section_data. + (Target_powerpc::make_brlt_section): Likewise. + +2017-02-15 Vladimir Radosavljevic + + * mips.cc (Target_mips::Scan::get_reference_flags): Remove + gold_unreachable from default case. + +2017-02-15 Vladimir Radosavljevic + + PR gold/21111 + * mips.cc (Mips_relocate_functions::relhigher): New method. + (Mips_relocate_functions::relhighest): Likewise. + (mips_get_size_for_reloc): Add support for relocs: R_MIPS_HIGHER and + R_MIPS_HIGHEST. + (Target_mips::Scan::local): Add support for relocs: R_MIPS_HIGHER, + R_MIPS_HIGHEST, R_MICROMIPS_HIGHER and R_MICROMIPS_HIGHEST. + (Target_mips::Scan::global): Likewise. + (Target_mips::Scan::get_reference_flags): Likewise. + (Target_mips::Relocate::relocate): Call static methods for resolving + HIGHER and HIGHEST relocations. + +2017-02-03 Rahul Chaudhry + + * x86_64.cc (Target_x86_64::do_can_check_for_function_pointers): + Return true even when building pie binaries. + (Target_x86_64::possible_function_pointer_reloc): Check opcode + for R_X86_64_PC32 relocations. + (Target_x86_64::local_reloc_may_be_function_pointer): Pass + extra arguments to local_reloc_may_be_function_pointer. + (Target_x86_64::global_reloc_may_be_function_pointer): Likewise. + * gc.h (gc_process_relocs): Add check for STT_FUNC. + * testsuite/Makefile.am (icf_safe_pie_test): New test case. + * testsuite/Makefile.in: Regenerate. + * testsuite/icf_safe_pie_test.sh: New shell script. + +2017-02-03 Alan Modra + + * powerpc.cc (Powerpc_relobj::make_toc_relative): Don't crash + when no .toc section exists. + +2017-01-31 Cary Coutant + + PR gold/21090 + * x86_64.cc (Target_x86_64::can_convert_mov_to_lea): Add check + for predefined symbol. + (Target_x86_64::Relocate::relocate): Fix formatting. + +2017-01-23 Rahul Chaudhry + + * testsuite/icf_safe_so_test.sh: Use "set -e". + * testsuite/icf_safe_test.sh: Likewise. + * testsuite/icf_test.sh: Likewise. + +2017-01-23 Vladimir Radosavljevic + + * mips.cc (Mips_output_data_plt::rel_plt): Remove const from return + type. + (Target_mips::make_plt_entry): Make the sh_info field of .rel.plt + point to .plt. + +2017-01-23 Vladimir Radosavljevic + + PR gold/21054 + * mips.cc (Mips_got_info::record_global_got_symbol): Don't add symbol + to the dynamic symbol table if it is forced to local visibility. + (Target_mips::do_finalize_sections): Don't add __RLD_MAP symbol to the + dynamic symbol table if it is forced to local visibility. + +2017-01-20 Nick Clifton + + * aarch64.cc (Stub_template_repertoire): Change ST_E_835769_INSNS + from a pointer to an array. + +2017-01-13 H.J. Lu + + PR gold/21040 + * powerpc.cc (Powerpc_relobj::make_toc_relative): + Cast 0x80008000 to uint64_t. + +2017-01-12 Cary Coutant + + * object.cc (Sized_relobj_file): Fix byte counts for calls to memmem. + +2017-01-11 Cary Coutant + + PR gold/21040 + * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry): + Remove unnecessary 'typename' keyword. + (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise. + (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise. + (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise. + (Output_data_plt_x86_64_bnd::do_write): Likewise. + +2017-01-11 Cary Coutant + + PR gold/21040 + * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry): + Remove unnecessary 'typename' keyword. + (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise. + (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise. + (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise. + * testsuite/copy_test_relro_1.cc (p, b, c, q): Add separate extern + declarations. + +2017-01-11 Cary Coutant + + PR gold/21039 + * testsuite/script_test_13.sh: Adjust patterns to work for i386. + * testsuite/script_test_15a.sh: Likewise. + * testsuite/script_test_15b.sh: Likewise. + * testsuite/script_test_15c.sh: Likewise. + +2017-01-11 Alan Modra + + * powerpc.cc (class Powerpc_copy_relocs): New. + (Powerpc_copy_relocs::emit): New function. + (Powerpc_relobj::relatoc_, toc_, no_toc_opt_): New variables. + (Powerpc_relobj::toc_shndx, set_no_toc_opt, no_toc_opt): New inlines. + (Powerpc_relobj::do_relocate_sections): New function. + (Powerpc_relobj::make_toc_relative): Likewise. + (Powerpc_relobj::do_find_special_sections): Stash away .rela.toc + and .toc too. + (ok_lo_toc_insn): Move earlier, and handle more insns. + (Target_powerpc::Scan::local): If optimizing toc accesses, set + no_toc_opt for entries we can't edit. Check insn validity. + Emit "toc optimization is not supported" warning, downgraded + from error. + (Target_powerpc::Scan::global): Likewise. + (Target_powerpc::Relocate::relocate): Edit TOC indirect code + to TOC relative. Don't emit "toc optimization is not supported" + error here. + +2017-01-10 Cary Coutant + + * aarch64.cc (AArch64_relobj::do_relocate_sections): Call + Sized_relobj_file::relocate_section_range(). + * arm.cc (Arm_relobj::do_relocate_sections): Likewise. + * object.h (Sized_relobj_file::relocate_section_range): New method. + * reloc.cc (Sized_relobj_file::do_relocate_sections): Move + implementation... + (Sized_relobj_file::relocate_section_range): ...to new method. + +2017-01-10 Alan Modra + + * testsuite/ver_test_8.sh: Accept .TOC. in lieu of + _GLOBAL_OFFSET_TABLE_. Allow zero count. + * testsuite/copy_test_relro_1.cc (c, q): New vars. + * testsuite/copy_test_relro.cc: Rewrite to test read-only + status of variables directly. Reference new vars in + read-only data. + +2017-01-10 Alan Modra + + * options.h: Add --secure-plt option. + * powerpc.cc (Target_powerpc::Scan::local): Detect and error + on -fPIC -mbss-plt code. + (Target_powerpc::Scan::global): Likewise. + +2017-01-09 Alan Modra + + * powerpc.cc (Target_powerpc::make_plt_section): Point sh_info of + ".rela.plt" at ".plt". + +2017-01-07 Alan Modra + + * powerpc.cc: Use shorter equivalent elfcpp typedef for + Reltype and reloc_size throughout. + (Target_powerpc::symval_for_branch): Exclude dynamic symbols. + (Target_powerpc::Scan::local): Use local var r_sym. + (Target_powerpc::Scan::global: Likewise. + (Target_powerpc::Relocate::relocate): Delete shadowing r_sym. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/gprof/ChangeLog b/gprof/ChangeLog index 11202502bb4..8debaf0d0fc 100644 --- a/gprof/ChangeLog +++ b/gprof/ChangeLog @@ -1,61 +1,6 @@ -2017-11-29 Stefan Stroe - - * po/Make-in (datadir): Define as @datadir@. - (localedir): Define as @localedir@. - (gnulocaledir, gettextsrcdir): Use @datarootdir@. - -2017-10-05 Nick Clifton - - * po/hu.po: Updated Hungarian translation. - -2017-08-31 Nick Clifton - - * po/fr.po: Updated French translation. - -2017-08-08 Nick Clifton - - * po/sr.po: Updated Serbian translation. - -2017-07-12 Alan Modra - - * po/bg.po: Update from translationproject.org/latest/gprof/. - * po/da.po: Likewise. - * po/de.po: Likewise. - * po/eo.po: Likewise. - * po/es.po: Likewise. - * po/fi.po: Likewise. - * po/fr.po: Likewise. - * po/ga.po: Likewise. - * po/hu.po: Likewise. - * po/id.po: Likewise. - * po/it.po: Likewise. - * po/ja.po: Likewise. - * po/ms.po: Likewise. - * po/nl.po: Likewise. - * po/pt_BR.po: Likewise. - * po/ro.po: Likewise. - * po/ru.po: Likewise. - * po/sr.po: Likewise. - * po/sv.po: Likewise. - * po/tr.po: Likewise. - * po/uk.po: Likewise. - * po/vi.po: Likewise. - -2017-07-04 Tristan Gingold - - * configure: Regenerate. - -2017-07-03 Tristan Gingold - - * po/gprof.pot: Regenerate. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gprof/ChangeLog-2017 b/gprof/ChangeLog-2017 new file mode 100644 index 00000000000..11202502bb4 --- /dev/null +++ b/gprof/ChangeLog-2017 @@ -0,0 +1,69 @@ +2017-11-29 Stefan Stroe + + * po/Make-in (datadir): Define as @datadir@. + (localedir): Define as @localedir@. + (gnulocaledir, gettextsrcdir): Use @datarootdir@. + +2017-10-05 Nick Clifton + + * po/hu.po: Updated Hungarian translation. + +2017-08-31 Nick Clifton + + * po/fr.po: Updated French translation. + +2017-08-08 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2017-07-12 Alan Modra + + * po/bg.po: Update from translationproject.org/latest/gprof/. + * po/da.po: Likewise. + * po/de.po: Likewise. + * po/eo.po: Likewise. + * po/es.po: Likewise. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/ga.po: Likewise. + * po/hu.po: Likewise. + * po/id.po: Likewise. + * po/it.po: Likewise. + * po/ja.po: Likewise. + * po/ms.po: Likewise. + * po/nl.po: Likewise. + * po/pt_BR.po: Likewise. + * po/ro.po: Likewise. + * po/ru.po: Likewise. + * po/sr.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + +2017-07-04 Tristan Gingold + + * configure: Regenerate. + +2017-07-03 Tristan Gingold + + * po/gprof.pot: Regenerate. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/include/ChangeLog b/include/ChangeLog index 78b3a6b6d41..8debaf0d0fc 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,863 +1,6 @@ -2017-12-28 Jim Wilson - - * opcode/riscv-opc.h (DECLARE_CSR): Add missing privileged registers. - Sort to match privileged spec documentation order. - (DECLARE_CSR_ALIAS): Add ubadaddr, and comments. - -2017-12-19 Tamar Christina - - PR gas/22559 - * aarch64.h (aarch64_opnd_qualifier): Add AARCH64_OPND_QLF_S_4B. - -2017-12-19 Tamar Christina - - PR gas/22529 - * opcode/aarch64.h (aarch64_opnd_qualifier): Add AARCH64_OPND_QLF_V_4B. - -2017-12-11 Stephen Crane - - * plugin-api.h: Add new plugin hook to allow processing of input - files added by a plugin. - (ld_plugin_new_input_handler): New function hook type. - (ld_plugin_register_new_input): New interface. - (LDPT_REGISTER_NEW_INPUT_HOOK): New enum val. - (tv_register_new_input): New member. - -2017-12-01 Peter Bergner - - * opcode/ppc.h (PPC_INT_FMT): Define. - (struct powerpc_opcode) : Update type. - (struct powerpc_opcode) : Likewise. - (struct powerpc_opcode) : Likewise. - (struct powerpc_opcode) : Likewise. - (struct powerpc_opcode) : Likewise. - (ppc_optional_operand_value): Likewise. - -2017-11-24 H.J. Lu - - PR binutils/22444 - * elf/external.h (ELF_ALIGN_UP): New. - (ELF_NOTE_DESC_OFFSET): Likewise. - (ELF_NOTE_NEXT_OFFSET): Likewise. - -2017-11-16 Tamar Christina - - * opcode/aarch64.h: (AARCH64_FEATURE_F16_FML): New. - (AARCH64_ARCH_V8_4): Enable AARCH64_FEATURE_F16_FML by default. - -2017-11-15 Tamar Christina - - * opcode/arm.h: (ARM_EXT2_FP16_FML): New. - (ARM_AEXT2_V8_4A): Add ARM_EXT2_FP16_FML. - -2017-11-13 Jan Beulich - - * coff/pe.h (COFF_ENCODE_ALIGNMENT): Cap value to maximum one - representable. - (COFF_DECODE_ALIGNMENT): Define. - -2017-11-09 Tamar Christina - - * opcode/aarch64.h (AARCH64_ARCH_V8_4): Enable DOTPROD. - -2017-11-09 Tamar Christina - - * opcode/aarch64.h: - (aarch64_opnd): Add AARCH64_OPND_Va, AARCH64_OPND_MASK, - AARCH64_OPND_IMM_2, AARCH64_OPND_ADDR_OFFSET - and AARCH64_OPND_SM3_IMM2. - (aarch64_insn_class): Add cryptosm3 and cryptosm4. - (arch64_feature_set): Make uint64_t. - -2017-11-09 Tamar Christina - - * opcode/aarch64.h: - (AARCH64_FEATURE_V8_4, AARCH64_FEATURE_SM4): New. - (AARCH64_ARCH_V8_4, AARCH64_FEATURE_SHA3): New. - -2017-11-09 Nick Clifton - - * opcode/aarch64.h (aarch64_feature_set): Change type to unsigned - long long. - -2017-11-08 Tamar Christina - - * opcode/aarch64.h: - (AARCH64_FEATURE_SHA2, AARCH64_FEATURE_AES): New. - -2017-11-08 Jiong Wang - - * opcode/arm.h (ARM_AEXT2_V8_4A): Include Dot Product feature. - (ARM_EXT2_V8_4A): New macro. - (ARM_AEXT2_V8_4A): Likewise. - (ARM_ARCH_V8_4A): Likewise. - -2017-11-07 Palmer Dabbelt - - * opcode/riscv-opc.h (sptbr): Rename to satp. - (CSR_SPTBR): Rename to CSR_SATP. - (sptbr): Alias to CSR_SATP. - -2017-11-07 Tamar Christina - - * opcode/arm.h (FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_DOTPROD): - New macro. - -2017-11-02 Siddhesh Poyarekar - - * include/opcode/aarch64.h (AARCH64_ARCH_V8_2): Drop - AARCH64_FEATURE_F16. - -2017-11-01 James Bowman - - * elf/ft32.h: Add R_FT32_RELAX, SC0, SC1, DIFF32. - -2017-10-25 Alan Modra - - PR 22348 - * opcode/cr16.h (instruction): Delete. - (cr16_words, cr16_allWords, cr16_currInsn): Delete. - * opcode/crx.h (crx_cst4_map): Rename from cst4_map. - (crx_cst4_maps): Rename from cst4_maps. - (crx_no_op_insn): Rename from no_op_insn. - (instruction): Delete. - -2017-10-24 Andrew Waterman - - * opcode/riscv.h (VALID_RVC_LUI_IMM): c.lui can't load the - immediate 0. - -2017-10-12 James Bowman - - * elf/ft32.h: Add R_FT32_15. - * opcode/ft32.h: Replace FT32_FLD_K8 with K15. - (ft32_shortcode, sc_compar, ft32_split_shortcode, - ft32_merge_shortcode, ft32_merge_shortcode): New functions. - -2017-10-05 John Baldwin - - * elf/common.h (AT_FREEBSD_EHDRFLAGS, AT_FREEBSD_HWCAP): Define. - -2017-09-22 Alexandre Oliva - - * dwarf2.def (DW_AT_GNU_locviews): New. - * dwarf2.h (enum dwarf_location_list_entry_type): Add - DW_LLE_GNU_view_pair. - (DW_LLE_view_pair): Define. - -2017-09-15 Pedro Alves - - Sync with mainline gcc sources (r252823) - - 2017-09-15 Yao Qi - Pedro Alves - - * ansidecl.h (DISABLE_COPY_AND_ASSIGN): New macro. - - 2017-09-12 Jiong Wang - - * dwarf2.def (DW_CFA_AARCH64_negate_ra_state): New DW_CFA_DUP. - * dwarf2.h (DW_CFA_DUP): New define. - - 2017-08-21 Richard Biener - - * simple-object.h (simple_object_copy_lto_debug_sections): New - function. - - 2017-05-18 Martin Liska - - * ansidecl.h: Define CONSTEXPR macro. - - 2017-05-24 Nathan Sidwell - - * libiberty.h (ASTRDUP): Adjust cast to avoid warning. - - 2017-01-30 Alexandre Oliva - - Introduce C++ support in libcc1. - * gcc-c-fe.def (int_type_v0): Rename from... - (int_type): ... this. Introduce new version. - (float_type_v0): Rename from... - (float_type): ... this. Introduce new version. - (char_type): New. - * gcc-c-interface.h (gcc_c_api_version): Add GCC_C_FE_VERSION_1. - (gcc_type_array): Move... - * gcc-interface.h: ... here. - * gcc-cp-fe.def: New. - * gcc-cp-interface.h: New. - - 2016-04-29 Oleg Endo - - * longlong.h (umul_ppmm): Remove SHMEDIA checks. - (__umulsidi3, count_leading_zeros): Remove SHMEDIA implementations. - - 2017-09-15 Yao Qi - Pedro Alves - - * ansidecl.h (DISABLE_COPY_AND_ASSIGN): New macro. - - 2017-09-12 Jiong Wang - - * dwarf2.def (DW_CFA_AARCH64_negate_ra_state): New DW_CFA_DUP. - * dwarf2.h (DW_CFA_DUP): New define. - - 2017-08-21 Richard Biener - - * simple-object.h (simple_object_copy_lto_debug_sections): New - function. - - 2017-05-18 Martin Liska - - * ansidecl.h: Define CONSTEXPR macro. - - 2017-05-24 Nathan Sidwell - - * libiberty.h (ASTRDUP): Adjust cast to avoid warning. - - 2017-01-30 Alexandre Oliva - - Introduce C++ support in libcc1. - * gcc-c-fe.def (int_type_v0): Rename from... - (int_type): ... this. Introduce new version. - (float_type_v0): Rename from... - (float_type): ... this. Introduce new version. - (char_type): New. - * gcc-c-interface.h (gcc_c_api_version): Add GCC_C_FE_VERSION_1. - (gcc_type_array): Move... - * gcc-interface.h: ... here. - * gcc-cp-fe.def: New. - * gcc-cp-interface.h: New. - - 2016-04-29 Oleg Endo - - * longlong.h (umul_ppmm): Remove SHMEDIA checks. - (__umulsidi3, count_leading_zeros): Remove SHMEDIA implementations. - -2017-09-06 Kamil Rytarowski - - * opcode/nds32.h: Rename __BIT() to N32_BIT(). - -2017-09-05 Alexander Fedotov - Edmar Wienskoski - Edmar Wienskoski - - * opcode/ppc.h: - (spe2_opcodes, spe2_num_opcodes): New. - (PPC_OPCODE_SPE2): New define. - (PPC_OPCODE_EFS2): Likewise. - (SPE2_XOP): Likewise. - (SPE2_XOP_TO_SEG): Likewise. - -2017-08-23 Jan Kratochvil - - * gcc-interface.h (enum gcc_base_api_version): Update comment for - GCC_FE_VERSION_1. - (struct gcc_base_vtable): Rename set_arguments to set_arguments_v0. - Add set_arguments, set_triplet_regexp and set_driver_filename. - -2017-08-23 Jan Kratochvil - - * gcc-interface.h (enum gcc_base_api_version): Add - GCC_FE_VERSION_1. - (struct gcc_base_vtable): Rename compile to compile_v0. Update - comment for compile. New methods set_verbose and compile. - -2017-08-21 Alexander Fedotov - Edmar Wienskoski - - * opcode/ppc.h (PPC_OPCODE_LSP): New define. - -2017-08-14 Gustavo Romero - - * elf/common.h (NT_PPC_TAR): New macro. - (NT_PPC_PPR): Likewise. - (NT_PPC_DSCR): Likewise. - (NT_PPC_EBB): Likewise. - (NT_PPC_PMU): Likewise. - (NT_PPC_TM_CGPR): Likewise. - (NT_PPC_TM_CFPR): Likewise. - (NT_PPC_TM_CVMX): Likewise. - (NT_PPC_TM_CVSX): Likewise. - (NT_PPC_TM_SPR): Likewise. - (NT_PPC_TM_CTAR): Likewise. - (NT_PPC_TM_CPPR): Likewise. - (NT_PPC_TM_CDSCR): Likewise. - -2017-08-06 H.J. Lu - - PR ld/21903: - * bfdlink.h (bfd_link_info): Add inhibit_common_definition. - -2017-07-31 Nick Clifton - - PR 21850 - * ansidecl.h (OVERRIDE): Protect check of __cplusplus value with - #idef __cplusplus. - -2017-07-19 Claudiu Zissulescu - - * opcode/arc.h (SJLI): Add. - -2017-07-19 Claudiu Zissulescu - John Eric Martin - - * elf/arc-reloc.def: Add JLI relocs howto. - * opcode/arc-func.h (replace_jli): New function. - -2017-07-18 Nick Clifton - - PR 21775 - * aout/adobe.h: Fix spelling typos. - * aout/aout64.h: Likewise. - * aout/hp300hpux.h: Likewise. - * elf/hppa.h: Likewise. - * gdb/remote-sim.h: Likewise. - * libiberty.h: Likewise. - * mach-o/arm.h: Likewise. - * opcode/v850.h: Likewise. - -2017-07-14 Ravi Bangoria - - * dis-asm.h (struct disassemble_info): Change type of buffer_length - field to size_t. - -2017-07-07 John Baldwin - - * elf/common.h (NT_FREEBSD_PTLWPINFO): Define. - -2017-07-02 Jan Kratochvil - - * dwarf2.def (DW_IDX_compile_unit, DW_IDX_type_unit, DW_IDX_die_offset) - (DW_IDX_parent, DW_IDX_type_hash, DW_IDX_lo_user, DW_IDX_hi_user) - (DW_IDX_GNU_internal, DW_IDX_GNU_external): New. - * dwarf2.h (DW_IDX, DW_IDX_DUP, DW_FIRST_IDX, DW_END_IDX): New. - (enum dwarf_name_index_attribute): Remove. - (get_DW_IDX_name): New declaration. - -2017-06-30 Georg-Johann Lay - - PR gas/21683 - * opcode/avr.h (AVR_INSN): Add one for __gcc_isr. - -2017-06-30 Maciej W. Rozycki - Andrew Bennett - - * opcode/mips.h (ASE_XPA_VIRT): New macro. - -2017-06-29 Andreas Arnez - - * elf/common.h (NT_S390_GS_CB): New macro. - (NT_S390_GS_BC): Likewise. - -2017-06-28 Tamar Christina - - * opcode/aarch64.h: (AARCH64_FEATURE_DOTPROD): New. - (aarch64_insn_class): Added dotprod. - -2017-06-28 Jiong Wang - - * opcode/arm.h (FPU_NEON_EXT_DOTPROD): New macro. - (FPU_ARCH_DOTPROD_NEON_VFP_ARMV8): New macro. - -2017-06-28 Maciej W. Rozycki - Matthew Fortune - - * elf/mips.h (E_MIPS_MACH_IAMR2): New macro. - (AFL_EXT_INTERAPTIV_MR2): Likewise. - * opcode/mips.h: Document new operand codes defined. - (INSN_INTERAPTIV_MR2): New macro. - (INSN_CHIP_MASK): Adjust accordingly. - (CPU_INTERAPTIV_MR2): New macro. - (cpu_is_member) : New case. - (MIPS16_ALL_ARGS): Rename to... - (MIPS_SVRS_ALL_ARGS): ... this. - (MIPS16_ALL_STATICS): Rename to... - (MIPS_SVRS_ALL_STATICS): ... this. - -2017-06-26 Kuan-Lin Chen - - * elf/riscv.h (R_RISCV_32_PCREL): New. - -2017-06-24 Thomas Preud'homme - - * elf/arm.h (TAG_CPU_ARCH_V8R): New macro. - * opcode/arm.h (ARM_EXT2_V8A): New macro. - (ARM_AEXT2_V8A): Rename into ... - (ARM_AEXT2_V8AR): This. - (ARM_AEXT2_V8A): New macro. - (ARM_AEXT_V8R): New macro. - (ARM_AEXT2_V8R): New macro. - (ARM_ARCH_V8R): New macro. - -2017-06-24 Thomas Preud'homme - - * opcode/arm.h (ARM_AEXT_V4TxM): Add ARM_EXT_OS bit to the set. - (ARM_AEXT_V4T): Likewise. - (ARM_AEXT_V5TxM): Likewise. - (ARM_AEXT_V5T): Likewise. - (ARM_AEXT_V6M): Mask off ARM_EXT_OS bit. - -2017-06-22 H.J. Lu - - * bfdlink.h (bfd_link_info): Add shstk. - * elf/common.h (GNU_PROPERTY_X86_FEATURE_1_SHSTK): New. - -2017-06-22 H.J. Lu - - * bfdlink.h (bfd_link_info): Add ibtplt and ibt. - * elf/common.h (GNU_PROPERTY_X86_FEATURE_1_AND): New. - (GNU_PROPERTY_X86_FEATURE_1_IBT): Likewise. - -2017-06-21 Thomas Preud'homme - - * opcode/arm.h (FPU_ANY): New macro. - -2017-06-20 Andreas Krebbel - - * elf/s390.h (PT_S390_PGSTE): Define macro. - -2017-06-16 Alan Modra - - PR ld/20022 - PR ld/21557 - PR ld/21562 - PR ld/21571 - * bfdlink.h (struct bfd_link_hash_entry): Delete undef.section. - -2017-06-14 Yao Qi - - * dis-asm.h (print_insn_aarch64): Move it to opcodes/disassemble.h. - (print_insn_big_arm, print_insn_big_mips): Likewise. - (print_insn_i386, print_insn_ia64): Likewise. - (print_insn_little_arm, print_insn_little_mips): Likewise. - (print_insn_spu): Likewise. - -2017-06-06 Andrew Burgess - - * bfdlink.h (struct bfd_link_info): Add new resolve_section_groups - flag. - -2017-06-01 Alan Modra - - * elf/ppc64.h (PPC64_OPT_LOCALENTRY): Define. - -2017-05-31 Eli Zaretskii - - * environ.h: Add #ifndef guard. - -2017-05-30 Anton Kolesov - - * elf/arc-cpu.def: New file. - -2017-05-24 Yao Qi - - * dis-asm.h: Move some function declarations to - opcodes/disassemble.h. - -2017-05-24 Yao Qi - - * dis-asm.h (disassembler): Update declaration. - -2017-05-23 Claudiu Zissulescu - - * opcode/arc.h (MAX_INSN_FLGS): Update to 4. - -2017-05-22 H.J. Lu - - * include/opcode/i386.h (NOTRACK_PREFIX_OPCODE): New. - -2017-05-19 Jose E. Marchesi - - * elf/sparc.h (ELF_SPARC_HWCAP2_SPARC6): Define. - (ELF_SPARC_HWCAP2_ONADDSUB): Likewise. - (ELF_SPARC_HWCAP2_ONMUL): Likewise. - (ELF_SPARC_HWCAP2_ONDIV): Likewise. - (ELF_SPARC_HWCAP2_DICTUNP): Likewise. - (ELF_SPARC_HWCAP2_FPCMPSHL): Likewise. - (ELF_SPARC_HWCAP2_RLE): Likewise. - (ELF_SPARC_HWCAP2_SHA3): Likewise. - * opcode/sparc.h (sparc_opcode_arch_val): Add SPARC_OPCODE_ARCH_M8 - and adjust SPARC_OPCODE_ARCH_MAX. - (HWCAP2_SPARC6): Define. - (HWCAP2_ONADDSUB): Likewise. - (HWCAP2_ONMUL): Likewise. - (HWCAP2_ONDIV): Likewise. - (HWCAP2_DICTUNP): Likewise. - (HWCAP2_FPCMPSHL): Likewise. - (HWCAP2_RLE): Likewise. - (HWCAP2_SHA3): Likewise. - (OPM): Likewise. - (OPMI): Likewise. - (ONFCN): Likewise. - (REVFCN): Likewise. - (SIMM10): Likewise. - -2017-05-16 Alan Modra - - * bfdlink.h (struct bfd_link_hash_entry ): Rename to - non_ir_ref_regular. - -2017-05-16 Alan Modra - - * bfdlink.h (struct bfd_link_hash_entry): Update non_ir_ref - comment. Rename dynamic_ref_after_ir_def to non_ir_ref_dynamic. - -2017-05-15 Maciej W. Rozycki - Matthew Fortune - - * elf/mips.h (AFL_ASE_MIPS16E2): New macro. - (AFL_ASE_MASK): Adjust accordingly. - * opcode/mips.h: Document new operand codes defined. - (mips_operand_type): Add OP_REG28 enum value. - (INSN2_SHORT_ONLY): Update description. - (ASE_MIPS16E2, ASE_MIPS16E2_MT): New macros. - -2017-05-14 John David Anglin - - * opcode/hppa.h: Fix match and mask for 64-bit bb opcode. - -2017-05-10 Claudiu Zissulescu - - * elf/arc.h (SHT_ARC_ATTRIBUTES): Define. - (Tag_ARC_*): Define. - (E_ARC_OSABI_V4): Define. - (E_ARC_OSABI_CURRENT): Reassign it. - (TAG_CPU_*): Define. - * opcode/arc-attrs.h: New file. - * opcode/arc.h (insn_subclass_t): Assign enum values. - (insn_subclass_t): Update enum with QUARKSE1, QUARKSE2, and LL64. - (ARC_EA, ARC_CD, ARC_LLOCK, ARC_ATOMIC, ARC_MPY, ARC_MULT) - (ARC_NPS400, ARC_DPFP, ARC_SPFP, ARC_FPU, ARC_FPUDA, ARC_SWAP) - (ARC_NORM, ARC_BSCAN, ARC_UIX, ARC_TSTAMP, ARC_VBFDW) - (ARC_BARREL, ARC_DSPA, ARC_SHIFT, ARC_INTR, ARC_DIV, ARC_XMAC) - (ARC_CRC): Delete. - -2017-04-20 H.J. Lu - - PR ld/21382 - * bfdlink.h (bfd_link_hash_entry): Add dynamic_ref_after_ir_def. - -2017-04-19 Alan Modra - - * bfdlink.h (struct bfd_link_info ): - Revise comment. - -2017-04-11 Alan Modra - - * opcode/ppc.h (PPC_OPCODE_ALTIVEC2): Delete. - (PPC_OPCODE_VSX3): Delete. - (PPC_OPCODE_HTM): Delete. - (PPC_OPCODE_*): Renumber and order chronologically. - (PPC_OPCODE_SPE): Comment on this and other bits used for APUinfo. - -2017-04-06 Pip Cet - - * dis-asm.h: Add prototypes for wasm32 disassembler. - -2017-04-05 Pedro Alves - - * dis-asm.h (disassemble_info) : Now a - "const char *". - (next_disassembler_option): Constify. - -2017-04-04 H.J. Lu - - * elf/common.h (PT_GNU_MBIND_NUM): New. - (PT_GNU_MBIND_LO): Likewise. - (PT_GNU_MBIND_HI): Likewise. - (SHF_GNU_MBIND): Likewise. - -2017-04-03 Palmer Dabbelt - - * elf/riscv.h (RISCV_GP_SYMBOL): New define. - -2017-03-27 Andrew Waterman - - * opcode/riscv-opc.h (CSR_PMPCFG0): New define. - (CSR_PMPCFG1): Likewise. - (CSR_PMPCFG2): Likewise. - (CSR_PMPCFG3): Likewise. - (CSR_PMPADDR0): Likewise. - (CSR_PMPADDR1): Likewise. - (CSR_PMPADDR2): Likewise. - (CSR_PMPADDR3): Likewise. - (CSR_PMPADDR4): Likewise. - (CSR_PMPADDR5): Likewise. - (CSR_PMPADDR6): Likewise. - (CSR_PMPADDR7): Likewise. - (CSR_PMPADDR8): Likewise. - (CSR_PMPADDR9): Likewise. - (CSR_PMPADDR10): Likewise. - (CSR_PMPADDR11): Likewise. - (CSR_PMPADDR12): Likewise. - (CSR_PMPADDR13): Likewise. - (CSR_PMPADDR14): Likewise. - (CSR_PMPADDR15): Likewise. - (pmpcfg0): Declare register. - (pmpcfg1): Likewise. - (pmpcfg2): Likewise. - (pmpcfg3): Likewise. - (pmpaddr0): Likewise. - (pmpaddr1): Likewise. - (pmpaddr2): Likewise. - (pmpaddr3): Likewise. - (pmpaddr4): Likewise. - (pmpaddr5): Likewise. - (pmpaddr6): Likewise. - (pmpaddr7): Likewise. - (pmpaddr8): Likewise. - (pmpaddr9): Likewise. - (pmpaddr10): Likewise. - (pmpaddr11): Likewise. - (pmpaddr12): Likewise. - (pmpaddr13): Likewise. - (pmpaddr14): Likewise. - (pmpaddr15): Likewise. - -2017-03-30 Pip Cet - - * opcode/wasm.h: New file to support wasm32 architecture. - * elf/wasm32.h: Add R_WASM32_32 relocation. - -2017-03-29 Alan Modra - - * opcode/ppc.h (PPC_OPCODE_RAW): Define. - (PPC_OPCODE_*): Make them all unsigned long long constants. - -2017-03-27 Pip Cet - - * elf/wasm32.h: New file to support wasm32 architecture. - -2017-03-27 Rinat Zelig - - * opcode/arc.h (insn_class_t): Add ULTRAIP and MISC class. - -2017-03-21 Andreas Krebbel - - * opcode/s390.h (S390_INSTR_FLAG_VX2): Remove. - (S390_INSTR_FLAG_FACILITY_MASK): Adjust value. - -2017-03-21 Rinat Zelig - - * opcode/arc.h (insn_class_t): Add DMA class. - -2017-03-16 Nick Clifton - - * elf/common.h (GNU_BUILD_ATTRIBUTE_SHORT_ENUM): New GNU BUILD - note type. - -2017-03-14 Jakub Jelinek - - PR debug/77589 - * dwarf2.def (DW_OP_GNU_variable_value): New opcode. - -2017-03-13 Markus Trippelsdorf - - PR demangler/70909 - PR demangler/67264 - * demangle.h (struct demangle_component): Add d_printing field. - (cplus_demangle_print): Remove const qualifier from tree - parameter. - (cplus_demangle_print_callback): Likewise. - -2017-03-13 Nick Clifton - - PR binutils/21202 - * elf/aarch64.h (R_AARCH64_TLSDESC_LD64_LO12_NC): Rename to - R_AARCH64_TLSDESC_LD64_LO12. - (R_AARCH64_TLSDESC_ADD_LO12_NC): Rename to - R_AARCH64_TLSDESC_ADD_LO12_NC. - -2017-03-10 Nick Clifton - - * elf/common.h (EM_LANAI): New machine number. - (EM_BPF): Likewise. - (EM_WEBASSEMBLY): Likewise. - Move low value, deprecated, numbers to their numerical - equivalents. - -2017-03-08 H.J. Lu - - PR binutils/21231 - * elf/common.h (GNU_PROPERTY_LOPROC): New. - (GNU_PROPERTY_HIPROC): Likewise. - (GNU_PROPERTY_LOUSER): Likewise. - (GNU_PROPERTY_HIUSER): Likewise. - -2017-03-01 Nick Clifton - - * elf/common.h (SHF_GNU_BUILD_NOTE): Define. - (NT_GNU_PROPERTY_TYPE_0): Define. - (NT_GNU_BUILD_ATTRIBUTE_OPEN): Define. - (NT_GNU_BUILD_ATTRIBUTE_FUN): Define. - (GNU_BUILD_ATTRIBUTE_TYPE_NUMERIC): Define. - (GNU_BUILD_ATTRIBUTE_TYPE_STRING): Define. - (GNU_BUILD_ATTRIBUTE_TYPE_BOOL_TRUE): Define. - (GNU_BUILD_ATTRIBUTE_TYPE_BOOL_FALSE): Define. - (GNU_BUILD_ATTRIBUTE_VERSION): Define. - (GNU_BUILD_ATTRIBUTE_STACK_PROT): Define. - (GNU_BUILD_ATTRIBUTE_RELRO): Define. - (GNU_BUILD_ATTRIBUTE_STACK_SIZE): Define. - (GNU_BUILD_ATTRIBUTE_TOOL): Define. - (GNU_BUILD_ATTRIBUTE_ABI): Define. - (GNU_BUILD_ATTRIBUTE_PIC): Define. - (NOTE_GNU_PROPERTY_SECTION_NAME): Define. - (GNU_BUILD_ATTRS_SECTION_NAME): Define. - (GNU_PROPERTY_STACK_SIZE): Define. - (GNU_PROPERTY_NO_COPY_ON_PROTECTED): Define. - (GNU_PROPERTY_X86_ISA_1_USED): Define. - (GNU_PROPERTY_X86_ISA_1_NEEDED): Define. - (GNU_PROPERTY_X86_ISA_1_486): Define. - (GNU_PROPERTY_X86_ISA_1_586): Define. - (GNU_PROPERTY_X86_ISA_1_686): Define. - (GNU_PROPERTY_X86_ISA_1_SSE): Define. - (GNU_PROPERTY_X86_ISA_1_SSE2): Define. - (GNU_PROPERTY_X86_ISA_1_SSE3): Define. - (GNU_PROPERTY_X86_ISA_1_SSSE3): Define. - (GNU_PROPERTY_X86_ISA_1_SSE4_1): Define. - (GNU_PROPERTY_X86_ISA_1_SSE4_2): Define. - (GNU_PROPERTY_X86_ISA_1_AVX): Define. - (GNU_PROPERTY_X86_ISA_1_AVX2): Define. - (GNU_PROPERTY_X86_ISA_1_AVX512F): Define. - (GNU_PROPERTY_X86_ISA_1_AVX512CD): Define. - (GNU_PROPERTY_X86_ISA_1_AVX512ER): Define. - (GNU_PROPERTY_X86_ISA_1_AVX512PF): Define. - (GNU_PROPERTY_X86_ISA_1_AVX512VL): Define. - (GNU_PROPERTY_X86_ISA_1_AVX512DQ): Define. - (GNU_PROPERTY_X86_ISA_1_AVX512BW): Define. - -2017-02-28 Peter Bergner - - * dis-asm.h (disasm_options_t): New typedef. - (parse_arm_disassembler_option): Remove prototype. - (set_arm_regname_option): Likewise. - (get_arm_regnames): Likewise. - (get_arm_regname_num_options): Likewise. - (disassemble_init_s390): New prototype. - (disassembler_options_powerpc): Likewise. - (disassembler_options_arm): Likewise. - (disassembler_options_s390): Likewise. - (remove_whitespace_and_extra_commas): Likewise. - (disassembler_options_cmp): Likewise. - (next_disassembler_option): New inline function. - (FOR_EACH_DISASSEMBLER_OPTION): New macro. - -2017-02-28 Alan Modra - - * elf/ppc64.h (R_PPC64_16DX_HA): New. Expand fake reloc comment. - * elf/ppc.h (R_PPC_16DX_HA): Likewise. - -2017-02-24 Richard Sandiford - - * opcode/aarch64.h (AARCH64_OPND_SVE_ADDR_RI_S4x16) - (AARCH64_OPND_SVE_IMM_ROT1, AARCH64_OPND_SVE_IMM_ROT2) - (AARCH64_OPND_SVE_Zm3_INDEX, AARCH64_OPND_SVE_Zm3_22_INDEX) - (AARCH64_OPND_SVE_Zm4_INDEX): New aarch64_opnds. - -2017-02-24 Richard Sandiford - - * opcode/aarch64.h (AARCH64_FEATURE_COMPNUM): New macro. - (AARCH64_ARCH_V8_3): Include AARCH64_FEATURE_COMPNUM. - -2017-02-22 Andrew Waterman - - * opcode/riscv-opc.h (CSR_SCOUNTEREN): New define. - (CSR_MCOUNTEREN): Likewise. - (scounteren): Declare register. - (mcounteren): Likewise. - -2017-02-14 Andrew Waterman - - * opcode/riscv-opc.h (MATCH_SFENCE_VMA): New define. - (MASK_SFENCE_VMA): Likewise. - (sfence_vma): Declare instruction. - -2017-02-14 Alan Modra - - PR 21118 - * opcode/ppc.h (PPC_OPERAND_*): Reassign values, regs first. - (PPC_OPERAND_SPR, PPC_OPERAND_GQR): Define. - -2017-01-24 Dimitar Dimitrov - - * opcode/hppa.h: Clarify that file is part of GNU opcodes. - * opcode/i860.h: Ditto. - * opcode/nios2.h: Ditto. - * opcode/nios2r1.h: Ditto. - * opcode/nios2r2.h: Ditto. - * opcode/pru.h: Ditto. - -2017-01-24 Alan Hayward - - * elf/common.h (NT_ARM_SVE): Define. - -2017-01-04 Jiong Wang - - * dwarf2.def: Sync with mainline gcc sources. - - 2017-01-04 Richard Earnshaw - Jiong Wang - - * dwarf2.def (DW_OP_AARCH64_operation): Reserve the number 0xea. - (DW_CFA_GNU_window_save): Comments the multiplexing on AArch64. - -2017-01-04 Szabolcs Nagy - - * opcode/aarch64.h (AARCH64_FEATURE_RCPC): Define. - (AARCH64_ARCH_V8_3): Update. - -2017-01-03 Kito Cheng - - * opcode/riscv-opc.h: Add support for the "q" ISA extension. - -2017-01-03 Nick Clifton - - * dwarf2.def: Sync with mainline gcc sources - * dwarf2.h: Likewise. - - 2016-12-21 Jakub Jelinek - - * dwarf2.def (DW_FORM_ref_sup): Renamed to ... - (DW_FORM_ref_sup4): ... this. New form. - (DW_FORM_ref_sup8): New form. - - 2016-10-17 Jakub Jelinek - - * dwarf2.h (enum dwarf_calling_convention): Add new DWARF5 - calling convention codes. - (enum dwarf_line_number_content_type): New. - (enum dwarf_location_list_entry_type): Add DWARF5 DW_LLE_* - codes. - (enum dwarf_source_language): Add new DWARF5 DW_LANG_* codes. - (enum dwarf_macro_record_type): Add DWARF5 DW_MACRO_* codes. - (enum dwarf_name_index_attribute): New. - (enum dwarf_range_list_entry): New. - (enum dwarf_unit_type): New. - * dwarf2.def: Add new DWARF5 DW_TAG_*, DW_FORM_*, DW_AT_*, - DW_OP_* and DW_ATE_* entries. - - 2016-08-15 Jakub Jelinek - - * dwarf2.def (DW_AT_string_length_bit_size, - DW_AT_string_length_byte_size): New attributes. - - 2016-08-12 Alexandre Oliva - - PR debug/63240 - * dwarf2.def (DW_AT_deleted, DW_AT_defaulted): New. - * dwarf2.h (enum dwarf_defaulted_attribute): New. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/include/ChangeLog-2017 b/include/ChangeLog-2017 new file mode 100644 index 00000000000..8f39d6cacf8 --- /dev/null +++ b/include/ChangeLog-2017 @@ -0,0 +1,871 @@ +2017-12-28 Jim Wilson + + * opcode/riscv-opc.h (DECLARE_CSR): Add missing privileged registers. + Sort to match privileged spec documentation order. + (DECLARE_CSR_ALIAS): Add ubadaddr, and comments. + +2017-12-19 Tamar Christina + + PR gas/22559 + * aarch64.h (aarch64_opnd_qualifier): Add AARCH64_OPND_QLF_S_4B. + +2017-12-19 Tamar Christina + + PR gas/22529 + * opcode/aarch64.h (aarch64_opnd_qualifier): Add AARCH64_OPND_QLF_V_4B. + +2017-12-11 Stephen Crane + + * plugin-api.h: Add new plugin hook to allow processing of input + files added by a plugin. + (ld_plugin_new_input_handler): New function hook type. + (ld_plugin_register_new_input): New interface. + (LDPT_REGISTER_NEW_INPUT_HOOK): New enum val. + (tv_register_new_input): New member. + +2017-12-01 Peter Bergner + + * opcode/ppc.h (PPC_INT_FMT): Define. + (struct powerpc_opcode) : Update type. + (struct powerpc_opcode) : Likewise. + (struct powerpc_opcode) : Likewise. + (struct powerpc_opcode) : Likewise. + (struct powerpc_opcode) : Likewise. + (ppc_optional_operand_value): Likewise. + +2017-11-24 H.J. Lu + + PR binutils/22444 + * elf/external.h (ELF_ALIGN_UP): New. + (ELF_NOTE_DESC_OFFSET): Likewise. + (ELF_NOTE_NEXT_OFFSET): Likewise. + +2017-11-16 Tamar Christina + + * opcode/aarch64.h: (AARCH64_FEATURE_F16_FML): New. + (AARCH64_ARCH_V8_4): Enable AARCH64_FEATURE_F16_FML by default. + +2017-11-15 Tamar Christina + + * opcode/arm.h: (ARM_EXT2_FP16_FML): New. + (ARM_AEXT2_V8_4A): Add ARM_EXT2_FP16_FML. + +2017-11-13 Jan Beulich + + * coff/pe.h (COFF_ENCODE_ALIGNMENT): Cap value to maximum one + representable. + (COFF_DECODE_ALIGNMENT): Define. + +2017-11-09 Tamar Christina + + * opcode/aarch64.h (AARCH64_ARCH_V8_4): Enable DOTPROD. + +2017-11-09 Tamar Christina + + * opcode/aarch64.h: + (aarch64_opnd): Add AARCH64_OPND_Va, AARCH64_OPND_MASK, + AARCH64_OPND_IMM_2, AARCH64_OPND_ADDR_OFFSET + and AARCH64_OPND_SM3_IMM2. + (aarch64_insn_class): Add cryptosm3 and cryptosm4. + (arch64_feature_set): Make uint64_t. + +2017-11-09 Tamar Christina + + * opcode/aarch64.h: + (AARCH64_FEATURE_V8_4, AARCH64_FEATURE_SM4): New. + (AARCH64_ARCH_V8_4, AARCH64_FEATURE_SHA3): New. + +2017-11-09 Nick Clifton + + * opcode/aarch64.h (aarch64_feature_set): Change type to unsigned + long long. + +2017-11-08 Tamar Christina + + * opcode/aarch64.h: + (AARCH64_FEATURE_SHA2, AARCH64_FEATURE_AES): New. + +2017-11-08 Jiong Wang + + * opcode/arm.h (ARM_AEXT2_V8_4A): Include Dot Product feature. + (ARM_EXT2_V8_4A): New macro. + (ARM_AEXT2_V8_4A): Likewise. + (ARM_ARCH_V8_4A): Likewise. + +2017-11-07 Palmer Dabbelt + + * opcode/riscv-opc.h (sptbr): Rename to satp. + (CSR_SPTBR): Rename to CSR_SATP. + (sptbr): Alias to CSR_SATP. + +2017-11-07 Tamar Christina + + * opcode/arm.h (FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_DOTPROD): + New macro. + +2017-11-02 Siddhesh Poyarekar + + * include/opcode/aarch64.h (AARCH64_ARCH_V8_2): Drop + AARCH64_FEATURE_F16. + +2017-11-01 James Bowman + + * elf/ft32.h: Add R_FT32_RELAX, SC0, SC1, DIFF32. + +2017-10-25 Alan Modra + + PR 22348 + * opcode/cr16.h (instruction): Delete. + (cr16_words, cr16_allWords, cr16_currInsn): Delete. + * opcode/crx.h (crx_cst4_map): Rename from cst4_map. + (crx_cst4_maps): Rename from cst4_maps. + (crx_no_op_insn): Rename from no_op_insn. + (instruction): Delete. + +2017-10-24 Andrew Waterman + + * opcode/riscv.h (VALID_RVC_LUI_IMM): c.lui can't load the + immediate 0. + +2017-10-12 James Bowman + + * elf/ft32.h: Add R_FT32_15. + * opcode/ft32.h: Replace FT32_FLD_K8 with K15. + (ft32_shortcode, sc_compar, ft32_split_shortcode, + ft32_merge_shortcode, ft32_merge_shortcode): New functions. + +2017-10-05 John Baldwin + + * elf/common.h (AT_FREEBSD_EHDRFLAGS, AT_FREEBSD_HWCAP): Define. + +2017-09-22 Alexandre Oliva + + * dwarf2.def (DW_AT_GNU_locviews): New. + * dwarf2.h (enum dwarf_location_list_entry_type): Add + DW_LLE_GNU_view_pair. + (DW_LLE_view_pair): Define. + +2017-09-15 Pedro Alves + + Sync with mainline gcc sources (r252823) + + 2017-09-15 Yao Qi + Pedro Alves + + * ansidecl.h (DISABLE_COPY_AND_ASSIGN): New macro. + + 2017-09-12 Jiong Wang + + * dwarf2.def (DW_CFA_AARCH64_negate_ra_state): New DW_CFA_DUP. + * dwarf2.h (DW_CFA_DUP): New define. + + 2017-08-21 Richard Biener + + * simple-object.h (simple_object_copy_lto_debug_sections): New + function. + + 2017-05-18 Martin Liska + + * ansidecl.h: Define CONSTEXPR macro. + + 2017-05-24 Nathan Sidwell + + * libiberty.h (ASTRDUP): Adjust cast to avoid warning. + + 2017-01-30 Alexandre Oliva + + Introduce C++ support in libcc1. + * gcc-c-fe.def (int_type_v0): Rename from... + (int_type): ... this. Introduce new version. + (float_type_v0): Rename from... + (float_type): ... this. Introduce new version. + (char_type): New. + * gcc-c-interface.h (gcc_c_api_version): Add GCC_C_FE_VERSION_1. + (gcc_type_array): Move... + * gcc-interface.h: ... here. + * gcc-cp-fe.def: New. + * gcc-cp-interface.h: New. + + 2016-04-29 Oleg Endo + + * longlong.h (umul_ppmm): Remove SHMEDIA checks. + (__umulsidi3, count_leading_zeros): Remove SHMEDIA implementations. + + 2017-09-15 Yao Qi + Pedro Alves + + * ansidecl.h (DISABLE_COPY_AND_ASSIGN): New macro. + + 2017-09-12 Jiong Wang + + * dwarf2.def (DW_CFA_AARCH64_negate_ra_state): New DW_CFA_DUP. + * dwarf2.h (DW_CFA_DUP): New define. + + 2017-08-21 Richard Biener + + * simple-object.h (simple_object_copy_lto_debug_sections): New + function. + + 2017-05-18 Martin Liska + + * ansidecl.h: Define CONSTEXPR macro. + + 2017-05-24 Nathan Sidwell + + * libiberty.h (ASTRDUP): Adjust cast to avoid warning. + + 2017-01-30 Alexandre Oliva + + Introduce C++ support in libcc1. + * gcc-c-fe.def (int_type_v0): Rename from... + (int_type): ... this. Introduce new version. + (float_type_v0): Rename from... + (float_type): ... this. Introduce new version. + (char_type): New. + * gcc-c-interface.h (gcc_c_api_version): Add GCC_C_FE_VERSION_1. + (gcc_type_array): Move... + * gcc-interface.h: ... here. + * gcc-cp-fe.def: New. + * gcc-cp-interface.h: New. + + 2016-04-29 Oleg Endo + + * longlong.h (umul_ppmm): Remove SHMEDIA checks. + (__umulsidi3, count_leading_zeros): Remove SHMEDIA implementations. + +2017-09-06 Kamil Rytarowski + + * opcode/nds32.h: Rename __BIT() to N32_BIT(). + +2017-09-05 Alexander Fedotov + Edmar Wienskoski + Edmar Wienskoski + + * opcode/ppc.h: + (spe2_opcodes, spe2_num_opcodes): New. + (PPC_OPCODE_SPE2): New define. + (PPC_OPCODE_EFS2): Likewise. + (SPE2_XOP): Likewise. + (SPE2_XOP_TO_SEG): Likewise. + +2017-08-23 Jan Kratochvil + + * gcc-interface.h (enum gcc_base_api_version): Update comment for + GCC_FE_VERSION_1. + (struct gcc_base_vtable): Rename set_arguments to set_arguments_v0. + Add set_arguments, set_triplet_regexp and set_driver_filename. + +2017-08-23 Jan Kratochvil + + * gcc-interface.h (enum gcc_base_api_version): Add + GCC_FE_VERSION_1. + (struct gcc_base_vtable): Rename compile to compile_v0. Update + comment for compile. New methods set_verbose and compile. + +2017-08-21 Alexander Fedotov + Edmar Wienskoski + + * opcode/ppc.h (PPC_OPCODE_LSP): New define. + +2017-08-14 Gustavo Romero + + * elf/common.h (NT_PPC_TAR): New macro. + (NT_PPC_PPR): Likewise. + (NT_PPC_DSCR): Likewise. + (NT_PPC_EBB): Likewise. + (NT_PPC_PMU): Likewise. + (NT_PPC_TM_CGPR): Likewise. + (NT_PPC_TM_CFPR): Likewise. + (NT_PPC_TM_CVMX): Likewise. + (NT_PPC_TM_CVSX): Likewise. + (NT_PPC_TM_SPR): Likewise. + (NT_PPC_TM_CTAR): Likewise. + (NT_PPC_TM_CPPR): Likewise. + (NT_PPC_TM_CDSCR): Likewise. + +2017-08-06 H.J. Lu + + PR ld/21903: + * bfdlink.h (bfd_link_info): Add inhibit_common_definition. + +2017-07-31 Nick Clifton + + PR 21850 + * ansidecl.h (OVERRIDE): Protect check of __cplusplus value with + #idef __cplusplus. + +2017-07-19 Claudiu Zissulescu + + * opcode/arc.h (SJLI): Add. + +2017-07-19 Claudiu Zissulescu + John Eric Martin + + * elf/arc-reloc.def: Add JLI relocs howto. + * opcode/arc-func.h (replace_jli): New function. + +2017-07-18 Nick Clifton + + PR 21775 + * aout/adobe.h: Fix spelling typos. + * aout/aout64.h: Likewise. + * aout/hp300hpux.h: Likewise. + * elf/hppa.h: Likewise. + * gdb/remote-sim.h: Likewise. + * libiberty.h: Likewise. + * mach-o/arm.h: Likewise. + * opcode/v850.h: Likewise. + +2017-07-14 Ravi Bangoria + + * dis-asm.h (struct disassemble_info): Change type of buffer_length + field to size_t. + +2017-07-07 John Baldwin + + * elf/common.h (NT_FREEBSD_PTLWPINFO): Define. + +2017-07-02 Jan Kratochvil + + * dwarf2.def (DW_IDX_compile_unit, DW_IDX_type_unit, DW_IDX_die_offset) + (DW_IDX_parent, DW_IDX_type_hash, DW_IDX_lo_user, DW_IDX_hi_user) + (DW_IDX_GNU_internal, DW_IDX_GNU_external): New. + * dwarf2.h (DW_IDX, DW_IDX_DUP, DW_FIRST_IDX, DW_END_IDX): New. + (enum dwarf_name_index_attribute): Remove. + (get_DW_IDX_name): New declaration. + +2017-06-30 Georg-Johann Lay + + PR gas/21683 + * opcode/avr.h (AVR_INSN): Add one for __gcc_isr. + +2017-06-30 Maciej W. Rozycki + Andrew Bennett + + * opcode/mips.h (ASE_XPA_VIRT): New macro. + +2017-06-29 Andreas Arnez + + * elf/common.h (NT_S390_GS_CB): New macro. + (NT_S390_GS_BC): Likewise. + +2017-06-28 Tamar Christina + + * opcode/aarch64.h: (AARCH64_FEATURE_DOTPROD): New. + (aarch64_insn_class): Added dotprod. + +2017-06-28 Jiong Wang + + * opcode/arm.h (FPU_NEON_EXT_DOTPROD): New macro. + (FPU_ARCH_DOTPROD_NEON_VFP_ARMV8): New macro. + +2017-06-28 Maciej W. Rozycki + Matthew Fortune + + * elf/mips.h (E_MIPS_MACH_IAMR2): New macro. + (AFL_EXT_INTERAPTIV_MR2): Likewise. + * opcode/mips.h: Document new operand codes defined. + (INSN_INTERAPTIV_MR2): New macro. + (INSN_CHIP_MASK): Adjust accordingly. + (CPU_INTERAPTIV_MR2): New macro. + (cpu_is_member) : New case. + (MIPS16_ALL_ARGS): Rename to... + (MIPS_SVRS_ALL_ARGS): ... this. + (MIPS16_ALL_STATICS): Rename to... + (MIPS_SVRS_ALL_STATICS): ... this. + +2017-06-26 Kuan-Lin Chen + + * elf/riscv.h (R_RISCV_32_PCREL): New. + +2017-06-24 Thomas Preud'homme + + * elf/arm.h (TAG_CPU_ARCH_V8R): New macro. + * opcode/arm.h (ARM_EXT2_V8A): New macro. + (ARM_AEXT2_V8A): Rename into ... + (ARM_AEXT2_V8AR): This. + (ARM_AEXT2_V8A): New macro. + (ARM_AEXT_V8R): New macro. + (ARM_AEXT2_V8R): New macro. + (ARM_ARCH_V8R): New macro. + +2017-06-24 Thomas Preud'homme + + * opcode/arm.h (ARM_AEXT_V4TxM): Add ARM_EXT_OS bit to the set. + (ARM_AEXT_V4T): Likewise. + (ARM_AEXT_V5TxM): Likewise. + (ARM_AEXT_V5T): Likewise. + (ARM_AEXT_V6M): Mask off ARM_EXT_OS bit. + +2017-06-22 H.J. Lu + + * bfdlink.h (bfd_link_info): Add shstk. + * elf/common.h (GNU_PROPERTY_X86_FEATURE_1_SHSTK): New. + +2017-06-22 H.J. Lu + + * bfdlink.h (bfd_link_info): Add ibtplt and ibt. + * elf/common.h (GNU_PROPERTY_X86_FEATURE_1_AND): New. + (GNU_PROPERTY_X86_FEATURE_1_IBT): Likewise. + +2017-06-21 Thomas Preud'homme + + * opcode/arm.h (FPU_ANY): New macro. + +2017-06-20 Andreas Krebbel + + * elf/s390.h (PT_S390_PGSTE): Define macro. + +2017-06-16 Alan Modra + + PR ld/20022 + PR ld/21557 + PR ld/21562 + PR ld/21571 + * bfdlink.h (struct bfd_link_hash_entry): Delete undef.section. + +2017-06-14 Yao Qi + + * dis-asm.h (print_insn_aarch64): Move it to opcodes/disassemble.h. + (print_insn_big_arm, print_insn_big_mips): Likewise. + (print_insn_i386, print_insn_ia64): Likewise. + (print_insn_little_arm, print_insn_little_mips): Likewise. + (print_insn_spu): Likewise. + +2017-06-06 Andrew Burgess + + * bfdlink.h (struct bfd_link_info): Add new resolve_section_groups + flag. + +2017-06-01 Alan Modra + + * elf/ppc64.h (PPC64_OPT_LOCALENTRY): Define. + +2017-05-31 Eli Zaretskii + + * environ.h: Add #ifndef guard. + +2017-05-30 Anton Kolesov + + * elf/arc-cpu.def: New file. + +2017-05-24 Yao Qi + + * dis-asm.h: Move some function declarations to + opcodes/disassemble.h. + +2017-05-24 Yao Qi + + * dis-asm.h (disassembler): Update declaration. + +2017-05-23 Claudiu Zissulescu + + * opcode/arc.h (MAX_INSN_FLGS): Update to 4. + +2017-05-22 H.J. Lu + + * include/opcode/i386.h (NOTRACK_PREFIX_OPCODE): New. + +2017-05-19 Jose E. Marchesi + + * elf/sparc.h (ELF_SPARC_HWCAP2_SPARC6): Define. + (ELF_SPARC_HWCAP2_ONADDSUB): Likewise. + (ELF_SPARC_HWCAP2_ONMUL): Likewise. + (ELF_SPARC_HWCAP2_ONDIV): Likewise. + (ELF_SPARC_HWCAP2_DICTUNP): Likewise. + (ELF_SPARC_HWCAP2_FPCMPSHL): Likewise. + (ELF_SPARC_HWCAP2_RLE): Likewise. + (ELF_SPARC_HWCAP2_SHA3): Likewise. + * opcode/sparc.h (sparc_opcode_arch_val): Add SPARC_OPCODE_ARCH_M8 + and adjust SPARC_OPCODE_ARCH_MAX. + (HWCAP2_SPARC6): Define. + (HWCAP2_ONADDSUB): Likewise. + (HWCAP2_ONMUL): Likewise. + (HWCAP2_ONDIV): Likewise. + (HWCAP2_DICTUNP): Likewise. + (HWCAP2_FPCMPSHL): Likewise. + (HWCAP2_RLE): Likewise. + (HWCAP2_SHA3): Likewise. + (OPM): Likewise. + (OPMI): Likewise. + (ONFCN): Likewise. + (REVFCN): Likewise. + (SIMM10): Likewise. + +2017-05-16 Alan Modra + + * bfdlink.h (struct bfd_link_hash_entry ): Rename to + non_ir_ref_regular. + +2017-05-16 Alan Modra + + * bfdlink.h (struct bfd_link_hash_entry): Update non_ir_ref + comment. Rename dynamic_ref_after_ir_def to non_ir_ref_dynamic. + +2017-05-15 Maciej W. Rozycki + Matthew Fortune + + * elf/mips.h (AFL_ASE_MIPS16E2): New macro. + (AFL_ASE_MASK): Adjust accordingly. + * opcode/mips.h: Document new operand codes defined. + (mips_operand_type): Add OP_REG28 enum value. + (INSN2_SHORT_ONLY): Update description. + (ASE_MIPS16E2, ASE_MIPS16E2_MT): New macros. + +2017-05-14 John David Anglin + + * opcode/hppa.h: Fix match and mask for 64-bit bb opcode. + +2017-05-10 Claudiu Zissulescu + + * elf/arc.h (SHT_ARC_ATTRIBUTES): Define. + (Tag_ARC_*): Define. + (E_ARC_OSABI_V4): Define. + (E_ARC_OSABI_CURRENT): Reassign it. + (TAG_CPU_*): Define. + * opcode/arc-attrs.h: New file. + * opcode/arc.h (insn_subclass_t): Assign enum values. + (insn_subclass_t): Update enum with QUARKSE1, QUARKSE2, and LL64. + (ARC_EA, ARC_CD, ARC_LLOCK, ARC_ATOMIC, ARC_MPY, ARC_MULT) + (ARC_NPS400, ARC_DPFP, ARC_SPFP, ARC_FPU, ARC_FPUDA, ARC_SWAP) + (ARC_NORM, ARC_BSCAN, ARC_UIX, ARC_TSTAMP, ARC_VBFDW) + (ARC_BARREL, ARC_DSPA, ARC_SHIFT, ARC_INTR, ARC_DIV, ARC_XMAC) + (ARC_CRC): Delete. + +2017-04-20 H.J. Lu + + PR ld/21382 + * bfdlink.h (bfd_link_hash_entry): Add dynamic_ref_after_ir_def. + +2017-04-19 Alan Modra + + * bfdlink.h (struct bfd_link_info ): + Revise comment. + +2017-04-11 Alan Modra + + * opcode/ppc.h (PPC_OPCODE_ALTIVEC2): Delete. + (PPC_OPCODE_VSX3): Delete. + (PPC_OPCODE_HTM): Delete. + (PPC_OPCODE_*): Renumber and order chronologically. + (PPC_OPCODE_SPE): Comment on this and other bits used for APUinfo. + +2017-04-06 Pip Cet + + * dis-asm.h: Add prototypes for wasm32 disassembler. + +2017-04-05 Pedro Alves + + * dis-asm.h (disassemble_info) : Now a + "const char *". + (next_disassembler_option): Constify. + +2017-04-04 H.J. Lu + + * elf/common.h (PT_GNU_MBIND_NUM): New. + (PT_GNU_MBIND_LO): Likewise. + (PT_GNU_MBIND_HI): Likewise. + (SHF_GNU_MBIND): Likewise. + +2017-04-03 Palmer Dabbelt + + * elf/riscv.h (RISCV_GP_SYMBOL): New define. + +2017-03-27 Andrew Waterman + + * opcode/riscv-opc.h (CSR_PMPCFG0): New define. + (CSR_PMPCFG1): Likewise. + (CSR_PMPCFG2): Likewise. + (CSR_PMPCFG3): Likewise. + (CSR_PMPADDR0): Likewise. + (CSR_PMPADDR1): Likewise. + (CSR_PMPADDR2): Likewise. + (CSR_PMPADDR3): Likewise. + (CSR_PMPADDR4): Likewise. + (CSR_PMPADDR5): Likewise. + (CSR_PMPADDR6): Likewise. + (CSR_PMPADDR7): Likewise. + (CSR_PMPADDR8): Likewise. + (CSR_PMPADDR9): Likewise. + (CSR_PMPADDR10): Likewise. + (CSR_PMPADDR11): Likewise. + (CSR_PMPADDR12): Likewise. + (CSR_PMPADDR13): Likewise. + (CSR_PMPADDR14): Likewise. + (CSR_PMPADDR15): Likewise. + (pmpcfg0): Declare register. + (pmpcfg1): Likewise. + (pmpcfg2): Likewise. + (pmpcfg3): Likewise. + (pmpaddr0): Likewise. + (pmpaddr1): Likewise. + (pmpaddr2): Likewise. + (pmpaddr3): Likewise. + (pmpaddr4): Likewise. + (pmpaddr5): Likewise. + (pmpaddr6): Likewise. + (pmpaddr7): Likewise. + (pmpaddr8): Likewise. + (pmpaddr9): Likewise. + (pmpaddr10): Likewise. + (pmpaddr11): Likewise. + (pmpaddr12): Likewise. + (pmpaddr13): Likewise. + (pmpaddr14): Likewise. + (pmpaddr15): Likewise. + +2017-03-30 Pip Cet + + * opcode/wasm.h: New file to support wasm32 architecture. + * elf/wasm32.h: Add R_WASM32_32 relocation. + +2017-03-29 Alan Modra + + * opcode/ppc.h (PPC_OPCODE_RAW): Define. + (PPC_OPCODE_*): Make them all unsigned long long constants. + +2017-03-27 Pip Cet + + * elf/wasm32.h: New file to support wasm32 architecture. + +2017-03-27 Rinat Zelig + + * opcode/arc.h (insn_class_t): Add ULTRAIP and MISC class. + +2017-03-21 Andreas Krebbel + + * opcode/s390.h (S390_INSTR_FLAG_VX2): Remove. + (S390_INSTR_FLAG_FACILITY_MASK): Adjust value. + +2017-03-21 Rinat Zelig + + * opcode/arc.h (insn_class_t): Add DMA class. + +2017-03-16 Nick Clifton + + * elf/common.h (GNU_BUILD_ATTRIBUTE_SHORT_ENUM): New GNU BUILD + note type. + +2017-03-14 Jakub Jelinek + + PR debug/77589 + * dwarf2.def (DW_OP_GNU_variable_value): New opcode. + +2017-03-13 Markus Trippelsdorf + + PR demangler/70909 + PR demangler/67264 + * demangle.h (struct demangle_component): Add d_printing field. + (cplus_demangle_print): Remove const qualifier from tree + parameter. + (cplus_demangle_print_callback): Likewise. + +2017-03-13 Nick Clifton + + PR binutils/21202 + * elf/aarch64.h (R_AARCH64_TLSDESC_LD64_LO12_NC): Rename to + R_AARCH64_TLSDESC_LD64_LO12. + (R_AARCH64_TLSDESC_ADD_LO12_NC): Rename to + R_AARCH64_TLSDESC_ADD_LO12_NC. + +2017-03-10 Nick Clifton + + * elf/common.h (EM_LANAI): New machine number. + (EM_BPF): Likewise. + (EM_WEBASSEMBLY): Likewise. + Move low value, deprecated, numbers to their numerical + equivalents. + +2017-03-08 H.J. Lu + + PR binutils/21231 + * elf/common.h (GNU_PROPERTY_LOPROC): New. + (GNU_PROPERTY_HIPROC): Likewise. + (GNU_PROPERTY_LOUSER): Likewise. + (GNU_PROPERTY_HIUSER): Likewise. + +2017-03-01 Nick Clifton + + * elf/common.h (SHF_GNU_BUILD_NOTE): Define. + (NT_GNU_PROPERTY_TYPE_0): Define. + (NT_GNU_BUILD_ATTRIBUTE_OPEN): Define. + (NT_GNU_BUILD_ATTRIBUTE_FUN): Define. + (GNU_BUILD_ATTRIBUTE_TYPE_NUMERIC): Define. + (GNU_BUILD_ATTRIBUTE_TYPE_STRING): Define. + (GNU_BUILD_ATTRIBUTE_TYPE_BOOL_TRUE): Define. + (GNU_BUILD_ATTRIBUTE_TYPE_BOOL_FALSE): Define. + (GNU_BUILD_ATTRIBUTE_VERSION): Define. + (GNU_BUILD_ATTRIBUTE_STACK_PROT): Define. + (GNU_BUILD_ATTRIBUTE_RELRO): Define. + (GNU_BUILD_ATTRIBUTE_STACK_SIZE): Define. + (GNU_BUILD_ATTRIBUTE_TOOL): Define. + (GNU_BUILD_ATTRIBUTE_ABI): Define. + (GNU_BUILD_ATTRIBUTE_PIC): Define. + (NOTE_GNU_PROPERTY_SECTION_NAME): Define. + (GNU_BUILD_ATTRS_SECTION_NAME): Define. + (GNU_PROPERTY_STACK_SIZE): Define. + (GNU_PROPERTY_NO_COPY_ON_PROTECTED): Define. + (GNU_PROPERTY_X86_ISA_1_USED): Define. + (GNU_PROPERTY_X86_ISA_1_NEEDED): Define. + (GNU_PROPERTY_X86_ISA_1_486): Define. + (GNU_PROPERTY_X86_ISA_1_586): Define. + (GNU_PROPERTY_X86_ISA_1_686): Define. + (GNU_PROPERTY_X86_ISA_1_SSE): Define. + (GNU_PROPERTY_X86_ISA_1_SSE2): Define. + (GNU_PROPERTY_X86_ISA_1_SSE3): Define. + (GNU_PROPERTY_X86_ISA_1_SSSE3): Define. + (GNU_PROPERTY_X86_ISA_1_SSE4_1): Define. + (GNU_PROPERTY_X86_ISA_1_SSE4_2): Define. + (GNU_PROPERTY_X86_ISA_1_AVX): Define. + (GNU_PROPERTY_X86_ISA_1_AVX2): Define. + (GNU_PROPERTY_X86_ISA_1_AVX512F): Define. + (GNU_PROPERTY_X86_ISA_1_AVX512CD): Define. + (GNU_PROPERTY_X86_ISA_1_AVX512ER): Define. + (GNU_PROPERTY_X86_ISA_1_AVX512PF): Define. + (GNU_PROPERTY_X86_ISA_1_AVX512VL): Define. + (GNU_PROPERTY_X86_ISA_1_AVX512DQ): Define. + (GNU_PROPERTY_X86_ISA_1_AVX512BW): Define. + +2017-02-28 Peter Bergner + + * dis-asm.h (disasm_options_t): New typedef. + (parse_arm_disassembler_option): Remove prototype. + (set_arm_regname_option): Likewise. + (get_arm_regnames): Likewise. + (get_arm_regname_num_options): Likewise. + (disassemble_init_s390): New prototype. + (disassembler_options_powerpc): Likewise. + (disassembler_options_arm): Likewise. + (disassembler_options_s390): Likewise. + (remove_whitespace_and_extra_commas): Likewise. + (disassembler_options_cmp): Likewise. + (next_disassembler_option): New inline function. + (FOR_EACH_DISASSEMBLER_OPTION): New macro. + +2017-02-28 Alan Modra + + * elf/ppc64.h (R_PPC64_16DX_HA): New. Expand fake reloc comment. + * elf/ppc.h (R_PPC_16DX_HA): Likewise. + +2017-02-24 Richard Sandiford + + * opcode/aarch64.h (AARCH64_OPND_SVE_ADDR_RI_S4x16) + (AARCH64_OPND_SVE_IMM_ROT1, AARCH64_OPND_SVE_IMM_ROT2) + (AARCH64_OPND_SVE_Zm3_INDEX, AARCH64_OPND_SVE_Zm3_22_INDEX) + (AARCH64_OPND_SVE_Zm4_INDEX): New aarch64_opnds. + +2017-02-24 Richard Sandiford + + * opcode/aarch64.h (AARCH64_FEATURE_COMPNUM): New macro. + (AARCH64_ARCH_V8_3): Include AARCH64_FEATURE_COMPNUM. + +2017-02-22 Andrew Waterman + + * opcode/riscv-opc.h (CSR_SCOUNTEREN): New define. + (CSR_MCOUNTEREN): Likewise. + (scounteren): Declare register. + (mcounteren): Likewise. + +2017-02-14 Andrew Waterman + + * opcode/riscv-opc.h (MATCH_SFENCE_VMA): New define. + (MASK_SFENCE_VMA): Likewise. + (sfence_vma): Declare instruction. + +2017-02-14 Alan Modra + + PR 21118 + * opcode/ppc.h (PPC_OPERAND_*): Reassign values, regs first. + (PPC_OPERAND_SPR, PPC_OPERAND_GQR): Define. + +2017-01-24 Dimitar Dimitrov + + * opcode/hppa.h: Clarify that file is part of GNU opcodes. + * opcode/i860.h: Ditto. + * opcode/nios2.h: Ditto. + * opcode/nios2r1.h: Ditto. + * opcode/nios2r2.h: Ditto. + * opcode/pru.h: Ditto. + +2017-01-24 Alan Hayward + + * elf/common.h (NT_ARM_SVE): Define. + +2017-01-04 Jiong Wang + + * dwarf2.def: Sync with mainline gcc sources. + + 2017-01-04 Richard Earnshaw + Jiong Wang + + * dwarf2.def (DW_OP_AARCH64_operation): Reserve the number 0xea. + (DW_CFA_GNU_window_save): Comments the multiplexing on AArch64. + +2017-01-04 Szabolcs Nagy + + * opcode/aarch64.h (AARCH64_FEATURE_RCPC): Define. + (AARCH64_ARCH_V8_3): Update. + +2017-01-03 Kito Cheng + + * opcode/riscv-opc.h: Add support for the "q" ISA extension. + +2017-01-03 Nick Clifton + + * dwarf2.def: Sync with mainline gcc sources + * dwarf2.h: Likewise. + + 2016-12-21 Jakub Jelinek + + * dwarf2.def (DW_FORM_ref_sup): Renamed to ... + (DW_FORM_ref_sup4): ... this. New form. + (DW_FORM_ref_sup8): New form. + + 2016-10-17 Jakub Jelinek + + * dwarf2.h (enum dwarf_calling_convention): Add new DWARF5 + calling convention codes. + (enum dwarf_line_number_content_type): New. + (enum dwarf_location_list_entry_type): Add DWARF5 DW_LLE_* + codes. + (enum dwarf_source_language): Add new DWARF5 DW_LANG_* codes. + (enum dwarf_macro_record_type): Add DWARF5 DW_MACRO_* codes. + (enum dwarf_name_index_attribute): New. + (enum dwarf_range_list_entry): New. + (enum dwarf_unit_type): New. + * dwarf2.def: Add new DWARF5 DW_TAG_*, DW_FORM_*, DW_AT_*, + DW_OP_* and DW_ATE_* entries. + + 2016-08-15 Jakub Jelinek + + * dwarf2.def (DW_AT_string_length_bit_size, + DW_AT_string_length_byte_size): New attributes. + + 2016-08-12 Alexandre Oliva + + PR debug/63240 + * dwarf2.def (DW_AT_deleted, DW_AT_defaulted): New. + * dwarf2.h (enum dwarf_defaulted_attribute): New. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/ld/ChangeLog b/ld/ChangeLog index cbd772cdba6..8debaf0d0fc 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,4030 +1,6 @@ -2017-12-14 Nick Clifton - - * testsuite/ld-mn10300/mn10300.exp: Update address of FSF in - copyright notice. - -2017-12-13 Renlin Li - - * testsuite/ld-aarch64/aarch64-elf.exp: Run new test cases. - * testsuite/ld-aarch64/emit-relocs-258-dyn-bad.d: New. - * testsuite/ld-aarch64/emit-relocs-258.s: New. - * testsuite/ld-aarch64/emit-relocs-259-dyn-bad.d: New. - * testsuite/ld-aarch64/emit-relocs-259.s: New. - * testsuite/ld-aarch64/gc-relocs-257.s: Put R_AARCH64_ABS32, - R_AARCH64_ABS16 data into data section. - -2017-12-07 Alan Modra - - PR 22465 - * testsuite/ld-elf/interleave.s: Use .data sections and provide - section attrs. - * testsuite/ld-elf/interleave.ld: Discard other sections. Adjust - for changed section names. - -2017-12-07 Alan Modra - - * emulparams/elf32mcore.sh (GENERATE_SHLIB_SCRIPT): Don't define. - -2017-12-07 Alan Modra - - * testsuite/lib/ld-lib.exp (check_shared_lib_support): Ask ld - under test whether -shared is supported. - -2017-12-06 Jim Wilson - - * testsuite/ld-elf/interleave-0.d, testsuite/ld-elf/interleave-4.d, - * testsuite/ld-elf/interleave.ld, testsuite/ld-elf/interleave.s: New. - -2017-12-06 Nick Clifton - - * testsuite/lib/ld-lib.exp (check_shared_lib_support): Return - false for lm32-rtems targets. - -2017-12-06 Alan Modra - - * testsuite/lib/ld-lib.exp (check_shared_lib_support): Return true - for frv, lm32, m32r, microblaze, nds32 and or1k linux targets. - -2017-12-05 Jim Wilson - Andrew Waterman - - * emulparams/elf32lriscv-defs.sh (SDATA_START_SYMBOLS): Remove HIDDEN. - Don't define __global_pointer$ when CREATE_SHLIB. - * testsuite/ld-riscv-elf/gp-hidden-64.rd, - * testsuite/ld-riscv-elf/gp-hidden-lib.rd, - * testsuite/ld-riscv-elf/gp-hidden-lib.s, - * testsuite/ld-riscv-elf/gp-hidden-ver-64.rd, - * testsuite/ld-riscv-elf/gp-hidden-ver.rd, - * testsuite/ld-riscv-elf/gp-hidden-ver.s, - * testsuite/ld-riscv-elf/gp-hidden-ver.ver, - * testsuite/ld-riscv-elf/gp-hidden.rd, - * testsuite/ld-riscv-elf/gp-hidden.s, - * testsuite/ld-riscv-elf/gp-hidden.sd: Delete. - * testsuite/ld-riscv-elf/gp-test-lib.sd, - * testsuite/ld-riscv-elf/gp-test.s, - * testsuite/ld-riscv-elf/gp-test.sd: New. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Rewrite gp tests. - -2017-12-04 Jim Wilson - - * emulparams/elf32lriscv-defs.sh (SDATA_START_SYMBOLS): Mark - __global_pointer$ as HIDDEN. - * testsuite/ld-riscv-elf/gp-hidden-64.rd: New. - * testsuite/ld-riscv-elf/gp-hidden-lib.rd: New. - * testsuite/ld-riscv-elf/gp-hidden-lib.s: New. - * testsuite/ld-riscv-elf/gp-hidden-ver-64.rd: New. - * testsuite/ld-riscv-elf/gp-hidden-ver.rd: New. - * testsuite/ld-riscv-elf/gp-hidden-ver.s: New. - * testsuite/ld-riscv-elf/gp-hidder-ver.ver: New. - * testsuite/ld-riscv-elf/gp-hidden.rd: New. - * testsuite/ld-riscv-elf/gp-hidden.s: New. - * testsuite/ld-riscv-elf/gp-hidden.sd: New. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Change riscv to riscv*. - Run the new tests with run_ld_link_tests. - -2017-12-04 Alan Modra - - * testsuite/ld-i386/pr17935-1.d: Adjust expected error. - * testsuite/ld-i386/pr17935-2.d: Likewise. - * testsuite/ld-x86-64/pr17935-1.d: Likewise. - * testsuite/ld-x86-64/pr17935-2.d: Likewise. - -2017-12-04 Alan Modra - - * testsuite/ld-powerpc/powerpc.exp (ppceabitests): Add -a32 -mbig - to assembler options, and -melf32ppc to linker options. Always - run these tests. - -2017-12-01 Tobias Ulmer - - * ldwrite.c (build_link_order): Check return value of all - bfd_new_link_order calls. - -2017-12-01 Alan Modra - - * testsuite/ld-elfweak/alias.c, - * testsuite/ld-elfweak/alias.dat, - * testsuite/ld-elfweak/aliasmain.c, - * testsuite/ld-elfweak/weakref1.c, - * testsuite/ld-elfweak/weakref2.c: New test. - * testsuite/ld-elfweak/elfweak.exp: Run it. Don't return on fails, - attempt other tests. - -2017-12-01 Alan Modra - - * testsuite/ld-elf/shared.exp: Run new textrel tests. - * testsuite/ld-elf/textrel.map: New file. - * testsuite/ld-elf/textrel.rd: New file. - * testsuite/ld-elf/textrel.s: New file. - * testsuite/ld-elf/textrel.warn: New file. - -2017-11-30 Alan Modra - - PR 22471 - * testsuite/ld-elf/shared.exp: Save and restore ASFLAGS. - -2017-11-29 H.J. Lu - - PR ld/22471 - * testsuite/ld-elf/pr22471.t: New file. - * testsuite/ld-elf/pr22471a.s: Likewise. - * testsuite/ld-elf/pr22471b.s: Likewise. - * testsuite/ld-elf/shared.exp (ASFLAGS): Define UNDERSCORE for - underscore targets. - Run PR ld/22471 tests. - -2017-11-29 Stefan Stroe - - * po/Make-in (datadir): Define as @datadir@. - (localedir): Define as @localedir@. - (gnulocaledir, gettextsrcdir): Use @datarootdir@. - -2017-11-28 Alan Modra - - PR 22471 - * ldexp.c (struct definedness_hash_entry): Delete "by_script". Make - "iteration" an 8-bit field, and update mask in all uses. - (definedness_newfunc): Don't init "by_script". - (update_definedness): Test ldscript_def rather than by_script. - (is_sym_value): Likewise. - (fold_name ): Return a result for first phase. Test - ldscript_def. - (fold_name ): Return a result for first phase. - * ldlang.c (open_input_bfds): Process all assignments, not just - defsym. - (lang_process): Increment lang_statement_iteration before - open_input_bfds. - * testsuite/ld-mips-elf/tlsdyn-o32-1.d: Adjust for larger .dynsym. - * testsuite/ld-mips-elf/tlsdyn-o32-1.got: Likewise. - * testsuite/ld-mips-elf/tlsdyn-o32-2.d: Likewise. - * testsuite/ld-mips-elf/tlsdyn-o32-2.got: Likewise. - * testsuite/ld-mips-elf/tlsdyn-o32-3.d: Likewise. - * testsuite/ld-mips-elf/tlsdyn-o32-3.got: Likewise. - -2017-11-28 Alan Modra - - * ldexp.h (struct ldexp_control): Add "assign_src". - * ldexp.c (fold_trinary): Save and restore assign_src around - condition evaluation. - (fold_name ): Set expld.assign_src. - (try_copy_symbol_type): Delete. - (exp_fold_tree_1): Set symbol type using expld.assign_src. - -2017-11-28 H.J. Lu - - PR ld/22502 - * testsuite/ld-plugin/lto.exp: Run PR ld/22502 test. - * testsuite/ld-plugin/pr22502a.c: New file. - * testsuite/ld-plugin/pr22502b.c: Likewise. - -2017-11-24 H.J. Lu - - * testsuite/ld-elf/pr21562c.t: Also provide ___start_scnfoo and - ___stop_scnfoo. - * testsuite/ld-elf/pr21562d.t: Likewise. - -2017-11-23 Martin Storsjo - - * pe-dll.c (autofilter_liblist): Add libmsvcrt, libmsvcrt-os and - libucrtbase. - -2017-11-23 Jan Beulich - - PR gas/22441 - * testsuite/ld-x86-64/apic.{s,d}: New. - * testsuite/ld-x86-64/x86-64.exp: Run new test. - -2017-11-21 Nick Clifton - - PR 22419 - * emultempl/v850elf.em (v850_create_output_section_statements): - New function. Generate an error if attempting to convert the - format of the output file. - * testsuite/ld-unique/pr21529.d: Skip for the V850. - * testsuite/ld-elf/pr21884.d: Skip for the V850. - -2017-11-21 Claudiu Zissulescu - - * testsuite/ld-arc/jli-simple.d: Update test. - -2017-11-20 Nick Clifton - - PR 22450 - * testsuite/ld-elf/elf.exp: Add --defsym ALIGN=2|3 to assembler - command line depending upon the size of the target address space. - * testsuite/ld-elf/pr22450.s: New test file. - * testsuite/ld-elf/pr22450.d: New test driver. - * testsuite/config/default.exp: Add note that LD_CLASS refers to - the size of the host linker not the size of the target linker. - -2017-11-15 Nick Clifton - - PR 15152 - * testsuite/ld-avr/gc-section-debugline.d: Update expected - output. - -2017-11-15 Alan Modra - - * ldmisc.c (vfinfo): Support up to 9 positional args. - -2017-11-14 Jim Wilson - - * testsuite/ld-elf/compress1-alt.s: New. - * testsuite/ld-elf/compressed1d-alt.d: New. - * testsuite/ld-elf/compressed1d.d: Add riscv*-*-* to notarget list. - -2017-11-14 Alan Modra - - * testsuite/ld-elf/note-3.t: Don't discard .got. - -2017-11-14 Alan Modra - - * testsuite/ld-ifunc/ifunc.exp: Ensure non-PIC tests are really - not PIE by default gcc options. - -2017-11-13 H.J. Lu - - * emultempl/ppc32elf.em (ppc_before_allocation): Replace - exp_dataseg_none with exp_seg_none. - * emultempl/ppc64elf.em (prelim_size_sections): Likewise. - * emultempl/spuelf.em (spu_before_allocation): Likewise. - -2017-11-12 H.J. Lu - - * ldlang.c (lang_size_sections_1): Extract GNU_RELRO region check - into ... - (ldlang_check_relro_region): New function. - (lang_find_relro_sections_1): Add an argument for pointer to - seg_align_type and replace expld.dataseg with the pointer. - (lang_find_relro_sections): Pass address of expld.dataseg to - lang_find_relro_sections_1. - -2017-11-12 H.J. Lu - - * ldlang.c (lang_size_segment): New function. - (lang_size_relro_segment_1): Likewise. - (lang_size_relro_segment): Likewise. - (lang_size_sections): Rewrite to call lang_size_relro_segment. - -2017-11-12 H.J. Lu - - * ldexp.c (fold_unary): Extract the DATA_SEGMENT_END case to ... - (fold_segment_end): New function. - (fold_binary): Extract the DATA_SEGMENT_ALIGN case to ... - (fold_segment_align): New function. - (fold_binary): Extract the DATA_SEGMENT_RELRO_END case to ... - (fold_segment_relro_end): New function. - -2017-11-12 H.J. Lu - - * ldexp.h (phase_enum): Rename exp_dataseg_none, - exp_dataseg_align_seen, exp_dataseg_relro_seen, - exp_dataseg_end_seen, exp_dataseg_relro_adjust, - exp_dataseg_adjust and exp_dataseg_done to exp_seg_none, - exp_seg_align_seen, exp_seg_relro_seen, exp_seg_end_seen, - exp_seg_relro_adjust, exp_seg_adjust and exp_seg_done. - (relro_enum): Rename exp_dataseg_relro_none, - exp_dataseg_relro_start and exp_dataseg_relro_end to - exp_seg_relro_none, exp_seg_relro_start and exp_seg_relro_end. - (seg_align_type): New struct type. - (ldexp_control): Use seg_align_type. - * ldexp.c (fold_unary): Updated. - (fold_binary): Likewise. - * ldlang.c (strip_excluded_output_sections): Likewise. - (lang_size_sections_1): Likewise. - (lang_size_sections): Likewise. - -2017-11-12 H.J. Lu - - PR ld/22423 - * testsuite/ld-alpha/tlsbin.rd: Replace "R E " with "R +" for - PT_PHDR segment. - * testsuite/ld-alpha/tlsbinr.rd: Likewise. - * testsuite/ld-ia64/tlsbin.rd: Likewise. - * testsuite/ld-powerpc/tlsexe.r: Likewise. - * testsuite/ld-powerpc/tlsexe32.r: Likewise. - * testsuite/ld-powerpc/tlsexetoc.r: Likewise. - * testsuite/ld-s390/tlsbin.rd: Likewise. - * testsuite/ld-s390/tlsbin_64.rd: Likewise. - * testsuite/ld-sparc/tlssunbin32.rd: Likewise. - * testsuite/ld-sparc/tlssunbin64.rd: Likewise. - * testsuite/ld-elf/pr22423.d: New test. - -2017-11-12 H.J. Lu - - * emulparams/elf32_x86_64.sh (TINY_READONLY_SECTION): Renamed - to ... - (OTHER_PLT_SECTIONS): This. - * emulparams/elf_i386.sh: Likewise. - * emulparams/elf_iamcu.sh: Likewise. - * emulparams/elf_x86_64.sh: Likewise. - * scripttempl/elf.sc: Place ${OTHER_PLT_SECTIONS} just after - .plt. - -2017-11-09 H.J. Lu - - * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Reformat - to generate consistent codes. - -2017-11-07 Alan Modra - - * testsuite/ld-aarch64/ifunc-13.d, - * testsuite/ld-aarch64/ifunc-15.d, - * testsuite/ld-aarch64/ifunc-20.d, - * testsuite/ld-alpha/tlsbin.rd, - * testsuite/ld-alpha/tlspic.rd, - * testsuite/ld-arm/ifunc-3.rd, - * testsuite/ld-arm/ifunc-9.rd, - * testsuite/ld-arm/unwind-mix.d, - * testsuite/ld-arm/unwind-rel.d, - * testsuite/ld-cris/hiddef1.d, - * testsuite/ld-cris/libdso-13.d, - * testsuite/ld-cris/libdso-2.d, - * testsuite/ld-cris/pr16044.d, - * testsuite/ld-cris/tls-local-63.d, - * testsuite/ld-cris/tls-local-64.d, - * testsuite/ld-cris/tls-und-38.d, - * testsuite/ld-cris/tls-und-42.d, - * testsuite/ld-cris/tls-und-46.d, - * testsuite/ld-cris/tls-und-50.d, - * testsuite/ld-cris/weakref3.d, - * testsuite/ld-cris/weakref4.d, - * testsuite/ld-elf/comm-data2r.rd, - * testsuite/ld-elf/discard1.d, - * testsuite/ld-elf/discard2.d, - * testsuite/ld-elf/pr19539.d, - * testsuite/ld-elf/pr22374-1.r, - * testsuite/ld-elf/pr22374-2.r, - * testsuite/ld-i386/combreloc.d, - * testsuite/ld-i386/emit-relocs-nacl.rd, - * testsuite/ld-i386/emit-relocs.rd, - * testsuite/ld-i386/pr13302.d, - * testsuite/ld-i386/pr17709-nacl.rd, - * testsuite/ld-i386/pr17709.rd, - * testsuite/ld-i386/pr19539.d, - * testsuite/ld-i386/pr19615.d, - * testsuite/ld-i386/pr19636-1a.d, - * testsuite/ld-i386/pr19636-1e.d, - * testsuite/ld-i386/pr19636-1f.d, - * testsuite/ld-i386/pr19636-2a.d, - * testsuite/ld-i386/pr19636-2b.d, - * testsuite/ld-i386/pr19636-2d-nacl.d, - * testsuite/ld-i386/pr19636-2e-nacl.d, - * testsuite/ld-i386/pr19636-3a.d, - * testsuite/ld-i386/pr19636-3d.d, - * testsuite/ld-i386/pr19636-3e.d, - * testsuite/ld-i386/pr19636-4a.d, - * testsuite/ld-i386/pr19645.d, - * testsuite/ld-i386/pr19827-nacl.rd, - * testsuite/ld-i386/pr19827.rd, - * testsuite/ld-i386/pr20253-4a.d, - * testsuite/ld-i386/pr20253-4b.d, - * testsuite/ld-i386/pr20253-5.d, - * testsuite/ld-i386/tlsbin-nacl.rd, - * testsuite/ld-i386/tlsbin.rd, - * testsuite/ld-i386/tlspic-nacl.rd, - * testsuite/ld-i386/tlspic.rd, - * testsuite/ld-i386/undefweakb.d, - * testsuite/ld-ia64/tlsbin.rd, - * testsuite/ld-ia64/tlspic.rd, - * testsuite/ld-ifunc/ifunc-13-i386.d, - * testsuite/ld-ifunc/ifunc-13-x86-64.d, - * testsuite/ld-ifunc/ifunc-15-i386.d, - * testsuite/ld-ifunc/ifunc-15-x86-64.d, - * testsuite/ld-ifunc/ifunc-20-i386.d, - * testsuite/ld-ifunc/ifunc-20-x86-64.d, - * testsuite/ld-ifunc/ifunc-23a-x86.d, - * testsuite/ld-ifunc/ifunc-23b-x86.d, - * testsuite/ld-ifunc/ifunc-23c-x86.d, - * testsuite/ld-ifunc/ifunc-24a-x86.d, - * testsuite/ld-ifunc/ifunc-24b-x86.d, - * testsuite/ld-ifunc/ifunc-24c-x86.d, - * testsuite/ld-ifunc/ifunc-25a-x86.d, - * testsuite/ld-ifunc/ifunc-25b-x86.d, - * testsuite/ld-ifunc/ifunc-25c-x86.d, - * testsuite/ld-m68k/got-1.d, - * testsuite/ld-mips-elf/vxworks1.rd, - * testsuite/ld-powerpc/ambiguousv1.d, - * testsuite/ld-powerpc/ambiguousv1b.d, - * testsuite/ld-powerpc/ambiguousv2.d, - * testsuite/ld-powerpc/ambiguousv2b.d, - * testsuite/ld-powerpc/tlsexe.r, - * testsuite/ld-powerpc/tlsexe32.r, - * testsuite/ld-powerpc/tlsexetoc.r, - * testsuite/ld-powerpc/tlsso.r, - * testsuite/ld-powerpc/tlsso32.r, - * testsuite/ld-powerpc/tlstocso.r, - * testsuite/ld-powerpc/vle-multiseg-1.d, - * testsuite/ld-powerpc/vle-multiseg-2.d, - * testsuite/ld-powerpc/vle-multiseg-3.d, - * testsuite/ld-s390/tlsbin.rd, - * testsuite/ld-s390/tlsbin_64.rd, - * testsuite/ld-s390/tlspic.rd, - * testsuite/ld-s390/tlspic_64.rd, - * testsuite/ld-sh/ld-r-1.d, - * testsuite/ld-sh/sh64/gotplt.d, - * testsuite/ld-sh/shared-1.d, - * testsuite/ld-sh/tlsbin-2.d, - * testsuite/ld-sh/tlspic-2.d, - * testsuite/ld-sparc/gotop32.rd, - * testsuite/ld-sparc/gotop64.rd, - * testsuite/ld-sparc/tlssunpic32.rd, - * testsuite/ld-sparc/tlssunpic64.rd, - * testsuite/ld-sparc/vxworks1-lib.rd, - * testsuite/ld-tic6x/shlib-app-1.rd, - * testsuite/ld-tic6x/shlib-app-1b.rd, - * testsuite/ld-tic6x/shlib-app-1r.rd, - * testsuite/ld-tic6x/shlib-app-1rb.rd, - * testsuite/ld-tic6x/shlib-noindex.rd, - * testsuite/ld-vax-elf/export-class-data.rd, - * testsuite/ld-x86-64/pr13082-1a.d, - * testsuite/ld-x86-64/pr13082-1b.d, - * testsuite/ld-x86-64/pr13082-2a.d, - * testsuite/ld-x86-64/pr13082-2b.d, - * testsuite/ld-x86-64/pr13082-3a.d, - * testsuite/ld-x86-64/pr13082-3c.d, - * testsuite/ld-x86-64/pr13082-4a.d, - * testsuite/ld-x86-64/pr13082-5a.d, - * testsuite/ld-x86-64/pr13082-5b.d, - * testsuite/ld-x86-64/pr13082-6a.d, - * testsuite/ld-x86-64/pr13082-6b.d, - * testsuite/ld-x86-64/pr17709-nacl.rd, - * testsuite/ld-x86-64/pr17709.rd, - * testsuite/ld-x86-64/pr19539a.d, - * testsuite/ld-x86-64/pr19539b.d, - * testsuite/ld-x86-64/pr19615.d, - * testsuite/ld-x86-64/pr19636-1a.d, - * testsuite/ld-x86-64/pr19636-1d.d, - * testsuite/ld-x86-64/pr19636-1e.d, - * testsuite/ld-x86-64/pr19636-2a.d, - * testsuite/ld-x86-64/pr19636-2e.d, - * testsuite/ld-x86-64/pr19636-2f.d, - * testsuite/ld-x86-64/pr19636-3a.d, - * testsuite/ld-x86-64/pr19645.d, - * testsuite/ld-x86-64/pr19807-2b.d, - * testsuite/ld-x86-64/pr19807-2d.d, - * testsuite/ld-x86-64/pr19827-nacl.rd, - * testsuite/ld-x86-64/pr19827.rd, - * testsuite/ld-x86-64/pr20253-4a.d, - * testsuite/ld-x86-64/pr20253-4b.d, - * testsuite/ld-x86-64/pr20253-4d.d, - * testsuite/ld-x86-64/pr20253-4e.d, - * testsuite/ld-x86-64/pr20253-5a.d, - * testsuite/ld-x86-64/pr20253-5b.d, - * testsuite/ld-x86-64/tlsbin-nacl.rd, - * testsuite/ld-x86-64/tlsbin.rd, - * testsuite/ld-x86-64/tlspic-nacl.rd, - * testsuite/ld-x86-64/tlspic.rd, - * testsuite/ld-x86-64/tlspic2-nacl.rd: Update for - pluralization fixes. - -2017-11-07 Alan Modra - - * ldlang.c (lang_size_sections_1): Properly pluralize messages. - (lang_check_section_addresses): Likewise. - -2017-11-07 Alan Modra - - * ld.h (textdomain, bindtextdomain): Use safer "do nothing". - (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. - -2017-11-01 Alan Modra - - * testsuite/ld-powerpc/ambiguousv2.d: Remove FIXME. - -2017-11-01 Alan Modra - - PR 22374 - * testsuite/ld-elf/pr22374a.s, - * testsuite/ld-elf/pr22374b.s, - * testsuite/ld-elf/pr22374-1.r, - * testsuite/ld-elf/pr22374-2.r: New test. - * testsuite/ld-elf/elf.exp: Run it. - -2017-11-01 Alan Modra - - * testsuite/ld-elf/elf.exp: Merge some conditionals, a better - name than "shared library for next test", and use xfail arg - of run_ld_link_tests in a few places. - -2017-10-26 Renlin Li - - * testsuite/ld-elf/elf.exp: xfail pr21703 tests on specific targets. - Only run shared lib test for targets which support it. - * testsuite/ld-elf/pr21703-r.sd: Adjust the expected output. - * testsuite/ld-elf/pr21703-shared.sd: Likewise. - -2017-10-26 James Greenhalgh - - * testsuite/ld-arm/cortex-a8-far.d: Update expected disassembly. - * testsuite/ld-arm/farcall-group-size2: Likewise. - * testsuite/ld-arm/farcall-group.d: Likewise. - -2017-10-25 H.J. Lu - - * ld.texinfo: Correct -z ibt. - -2017-10-25 Alan Modra - - * testsuite/ld-plugin/lto-3r.d: Match "__gnu_lto_v" optionally - prefixed with "_". - * testsuite/ld-plugin/lto-5r.d: Likewise. - -2017-10-25 Hans-Peter Nilsson - - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Fix typo for istarget. - -2017-10-24 Andrew Waterman - - * testsuite/ld-riscv-elf/c-lui.d: New testcase. - * testsuite/ld-riscv-elf/c-lui.s: Likewise. - * testsuite/ld-riscv-elf/ld-riscv-elf.exp: New test suite. - -2017-10-24 Renlin Li - - PR ld/21703 - * testsuite/ld-elf/elf.exp: Run new tests. - * testsuite/ld-elf/pr21703-1.s: New. - * testsuite/ld-elf/pr21703-2.s: New. - * testsuite/ld-elf/pr21703-3.s: New. - * testsuite/ld-elf/pr21703-4.s: New. - * testsuite/ld-elf/pr21703-r.sd: New. - * testsuite/ld-elf/pr21703-shared.sd: New. - * testsuite/ld-elf/pr21703.sd: New. - * testsuite/ld-elf/pr21703.ver: New. - -2017-10-23 H.J. Lu - - * configure.tgt (i[3-7]86-*-linux-*): Move elf32_x86_64 from - targ_extra_libpath to targ64_extra_libpath. - -2017-10-23 Nick Clifton - - PR 22310 - * testsuite/ld-elf/pr22310.s: New test source file. - * testsuite/ld-elf/pr22310.d: New test driver. - * testsuite/ld-mmix/undef-3.d: Update expected output from readelf. - -2017-10-21 Hans-Peter Nilsson - - PR ld/21233 - * testsuite/ld-elf/shared.exp: Remove kfails. - -2017-10-20 H.J. Lu - - PR ld/22269 - * testsuite/ld-elf/pr22269-1.rd: New file. - * testsuite/ld-elf/pr22269-1.c: Likewise. - * testsuite/ld-elf/shared.exp: Run pr22269-1. - -2017-10-19 Palmer Dabbelt - - * emultempl/riscvelf.em (riscv_elf_before_allocation): Add a - third relaxation pass. - -2017-10-17 Alan Modra - - * ld.texinfo (-z): Combine negative options with corresponding - positive option. Sort the table. Expand and correct "combreloc", - "common", "common-page-size", "interpose", "loadfltr", - "max-page-size", "muldefs", "nodefaultlib", "nodelete", "nodlopen", - "nodump", "noextern-protected-data", "now", "origin", and "text". - -2017-10-16 H.J. Lu - - * emulparams/elf32_x86_64.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Removed. - * emulparams/elf_i386_be.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/elf_i386_chaos.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/elf_i386_ldso.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/elf_i386_vxworks.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/elf_iamcu.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/elf_k1om.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/elf_l1om.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/elf_x86_64.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/i386lynx.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/i386moss.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/i386nto.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/i386nw.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/shelf.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/shelf32.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/shelf_nto.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/shelf_vxworks.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/shlelf32_linux.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/shlelf_linux.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/shlelf_nto.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emultempl/aarch64elf.em (gld${EMULATION_NAME}_before_parse): - Set link_info.check_relocs_after_open_input to TRUE. - * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): - Likewise. - * emultempl/scoreelf.em (gld${EMULATION_NAME}_before_parse): - Likewise. - * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Add - after_parse_default. - * emultempl/armcoff.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/beos.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/gld960.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/gld960c.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/lnk960.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/m68kcoff.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/msp430.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/pe.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/pep.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/ticoff.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/vanilla.em (ld_${EMULATION_NAME}_emulation): Likewise. - * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Always - set link_info.check_relocs_after_open_input to TRUE. - (ld_${EMULATION_NAME}_emulation): Add $LDEMUL_AFTER_CHECK_RELOCS. - * emultempl/linux.em (gld${EMULATION_NAME}_before_parse): - Set link_info.check_relocs_after_open_input to TRUE. - (ld_${EMULATION_NAME}_emulation): Add after_check_relocs_default. - * emultempl/mmix-elfnmmo.em (mmix_before_parse): New function. - (LDEMUL_BEFORE_PARSE): New. - * emultempl/mmixelf.em (elfmmix_before_parse): Replace - gld${EMULATION_NAME}_before_parse with mmix_before_parse. - * emultempl/ppc32elf.em (ppc_after_open): Renamed to ... - (ppc_after_check_relocs): This. Call after_check_relocs_default - instead of gld${EMULATION_NAME}_after_open. - (LDEMUL_AFTER_OPEN): Removed. - (LDEMUL_AFTER_CHECK_RELOCS): New. - * ldemul.c (ldemul_after_check_relocs): New. - (after_check_relocs_default): Likewise. - * ldemul.h (ldemul_after_check_relocs): Likewise. - (after_check_relocs_default): Likewise. - (ld_emulation_xfer_struct): Add after_check_relocs. - * ldlang.c (lang_process): Call ldemul_after_check_relocs after - lang_check_relocs. - * testsuite/ld-aarch64/gc-got-relocs.d: Don't expect GOT section. - * testsuite/ld-aarch64/gc-tls-relocs.d: Likewise. - * testsuite/ld-cris/tls-gc-68.d: Likewise. - * testsuite/ld-cris/tls-gc-69.d: Likewise. - * testsuite/ld-cris/tls-gc-70.d: Likewise. - * testsuite/ld-cris/tls-gc-75.d: Likewise. - * testsuite/ld-cris/tls-gc-79.d: Likewise. - * testsuite/ld-mmix/bpo-10.d: Don't expect .MMIX.reg_contents - section. - -2017-10-14 H.J. Lu - - PR ld/22269 - * testsuite/ld-cris/weakhiddso.d: Update and remove R_CRIS_NONE. - -2017-10-13 Alan Modra - - PR ld/22263 - * testsuite/ld-elf/tls.exp: Link with -z text. - * testsuite/ld-elf/pr22263-1.rd: Test for tprel relocs. - -2017-10-12 H.J. Lu - - PR ld/22263 - * testsuite/ld-elf/pr22263-1.rd: New file. - * testsuite/ld-elf/pr22263-1a.c: Likewise. - * testsuite/ld-elf/pr22263-1b.c: Likewise. - * testsuite/ld-elf/tls.exp: Likewise. - -2017-10-12 Nick Clifton - - * testsuite/ld-aarch64/pcrel_pic_defined.d: Expect errors not - warnings. Expect errors about unsupported relocations. - * testsuite/ld-aarch64/pcrel_pic_undefined.d: Likewise. - -2017-10-12 H.J. Lu - - * testsuite/ld-elf/pr22269b.d: Expect warning of - "-z dynamic-undefined-weak ignored". - * testsuite/ld-i386/pr19636-1j.d: Likewise. - * testsuite/ld-i386/pr19636-1k.d: Likewise. - * testsuite/ld-i386/pr19636-1l.d: Likewise. - * testsuite/ld-x86-64/pr19636-2j.d: Likewise. - * testsuite/ld-x86-64/pr19636-2k.d: Likewise. - * testsuite/ld-x86-64/pr19636-2l.d: Likewise. - * testsuite/ld-x86-64/pr19636-2m.d: Likewise. - -2017-10-12 Alan Modra - - PR 22269 - * emultempl/elf32.em (after_parse): Warn on --no-dynamic-linker - -z dynamic-undefined-weak combination. Set dynamic_undefined_weak - to zero when nointerp. - -2017-10-12 Alan Modra - - * emultempl/elf32.em (before_allocation): Call - elf_backend_hide_symbol, not _bfd_elf_link_hash_hide_symbol. - Formatting. - -2017-10-11 H.J. Lu - - * PR ld/22269 - * testsuite/ld-elf/pr22269.s: New file. - * testsuite/ld-elf/pr22269a.d: Likewise. - * testsuite/ld-elf/pr22269b.d: Likewise. - -2017-10-11 H.J. Lu - - * testsuite/ld-i386/i386.exp: Run pr19636-1j, pr19636-1k, - pr19636-1l, pr19636-3h and pr19636-3i. - * testsuite/ld-i386/pr19636-1j.d: New file. - * testsuite/ld-i386/pr19636-1k.d: Likewise. - * testsuite/ld-i386/pr19636-1l.d: Likewise. - * testsuite/ld-i386/pr19636-3h.d: Likewise. - * testsuite/ld-i386/pr19636-3i.d: Likewise. - * testsuite/ld-x86-64/pr19636-1h.d: Likewise. - * testsuite/ld-x86-64/pr19636-1i.d: Likewise. - * testsuite/ld-x86-64/pr19636-1j.d: Likewise. - * testsuite/ld-x86-64/pr19636-2j.d: Likewise. - * testsuite/ld-x86-64/pr19636-2k.d: Likewise. - * testsuite/ld-x86-64/pr19636-2l.d: Likewise. - * testsuite/ld-x86-64/pr19636-2m.d: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run pr19636-1h, pr19636-1i, - pr19636-1j, pr19636-2j, pr19636-2k, pr19636-2l and pr19636-2m. - -2017-10-11 Alan Modra - - * emultempl/aarch64elf.em: Wrap einfo strings in _(). Formatting. - * emultempl/aix.em: Likewise. - * emultempl/armcoff.em: Likewise. - * emultempl/armelf.em: Likewise. - * emultempl/avrelf.em: Likewise. - * emultempl/beos.em: Likewise. - * emultempl/cr16elf.em: Likewise. - * emultempl/elf-generic.em: Likewise. - * emultempl/elf32.em: Likewise. - * emultempl/genelf.em: Likewise. - * emultempl/hppaelf.em: Likewise. - * emultempl/linux.em: Likewise. - * emultempl/lnk960.em: Likewise. - * emultempl/m68hc1xelf.em: Likewise. - * emultempl/m68kcoff.em: Likewise. - * emultempl/m68kelf.em: Likewise. - * emultempl/metagelf.em: Likewise. - * emultempl/mipself.em: Likewise. - * emultempl/mmix-elfnmmo.em: Likewise. - * emultempl/mmo.em: Likewise. - * emultempl/msp430.em: Likewise. - * emultempl/nds32elf.em: Likewise. - * emultempl/nios2elf.em: Likewise. - * emultempl/pe.em: Likewise. - * emultempl/pep.em: Likewise. - * emultempl/ppc32elf.em: Likewise. - * emultempl/ppc64elf.em: Likewise. - * emultempl/riscvelf.em: Likewise. - * emultempl/s390.em: Likewise. - * emultempl/scoreelf.em: Likewise. - * emultempl/spuelf.em: Likewise. - * emultempl/sunos.em: Likewise. - * emultempl/tic6xdsbt.em: Likewise. - * emultempl/v850elf.em: Likewise. - * emultempl/vms.em: Likewise. - * emultempl/vxworks.em: Likewise. - * ldcref.c: Likewise. - * ldlang.c: Likewise. - * ldlex.l: Likewise. - * ldmain.c: Likewise. - * pe-dll.c: Likewise. - * plugin.c: Likewise. - -2017-10-10 Renlin Li - - PR ld/21402 - * testsuite/ld-arm/tls-app.d: Update address. - * testsuite/ld-arm/tls-app.r: Remove relocations. - * testsuite/ld-arm/unresolved-1-dyn.d: Update. - -2017-10-10 Alan Modra - - * Makefile.am (earmelfb_fuchsia.c): Rename rule from earmelf_fuchsia.c. - * Makefile.in: Regenerate. - -2017-10-09 Nick Clifton - - * testsuite/ld-srec/srec.exp (run_srec_test): Set start address. - - PR ld/19874 - * testsuite/ld-x86-64/pr19784c.c (bar): Change return type to void. - -2017-10-09 H.J. Lu - - PR ld/22267 - * ldlex.l (SYMBOLNAMECHAR1) New. - (DEFSYMEXP): Replace FILENAMECHAR1 with SYMBOLNAMECHAR1. - (EXPRESSION): Likewise. - * testsuite/ld-scripts/expr.exp: Run pr22267. - * testsuite/ld-scripts/pr22267.d: New file. - * testsuite/ld-scripts/pr22267.s: Likewise. - * testsuite/ld-scripts/pr22267.t: Likewise. - -2017-10-07 H.J. Lu - - * testsuite/ld-elf/merge.d: Don't expect to fail for sparc. - -2017-10-05 Nick Clifton - - * po/tr.po: Updated Turkish translation. - -2017-10-05 Nick Clifton - - PR 22262 - * testsuite/ld-powerpc/relocsort.d: Update expected output (for - longer reloc names). - -2017-10-05 Alan Modra - - PR 21167 - * testsuite/ld-elf/group9b.d: Adjust for relocs included in group. - -2017-10-03 Alan Modra - - PR 21294 - * NEWS: Note that defaulting to -z relro results in increased - memory and disk size. - -2017-10-03 Alan Modra - - * ld.texinfo (-z relro): Expand description. - (DATA_SEGMENT_ALIGN): Note that -z relro is not effective when - running with system page size larger than commonpagesize. - (DATA_SEGMENT_RELRO_END): Be explicit about the alignment. - -2017-10-01 Alan Modra - - PR 21970 - * ldlang.c (lang_leave_overlay): Reset overlay_subalign. - -2017-09-30 H.J. Lu - - PR binutils/21978 - * testsuite/ld-elf/pr21978.od: New file. - * testsuite/ld-elf/pr21978a.c: Likewise. - * testsuite/ld-elf/pr21978b.c: Likewise. - * testsuite/ld-elf/shared.exp: Run PR binutils/21978 test. - -2017-09-28 Nick Clifton - - PR 14918 - * testsuite/ld-plugin/lto.exp (link_elf_tests): Skip the pr14918 - test for ARM targets as they always link with libgcc. - -2017-09-28 Alan Modra - - * testsuite/ld-plugin/pr22220.h, - * testsuite/ld-plugin/pr22220lib.cc, - * testsuite/ld-plugin/pr22220lib.ver, - * testsuite/ld-plugin/pr22220main.cc: New test. - * testsuite/ld-plugin/lto.exp: Run it. - -2017-09-26 Maciej W. Rozycki - - * testsuite/ld-undefined/undefined.exp: Correct the dyn reloc - test for MIPS and S+core targets. - -2017-09-22 H.J. Lu - - PR ld/22150 - * testsuite/ld-elf/pr22150.vd: New file. - * testsuite/ld-elf/pr22150.ver: Likewise. - * testsuite/ld-elf/pr22150a.s: Likewise. - * testsuite/ld-elf/pr22150b.s: Likewise. - * testsuite/ld-elf/shared.exp: Run PR ld/22150 tests. - -2017-09-21 Alan Modra - - * testsuite/ld-powerpc/tlsopt5.wf: Update for reduced alignment. - -2017-09-19 Maciej W. Rozycki - - * configure.tgt : New - targets. - -2017-09-15 Alan Modra - - PR 22118 - * testsuite/ld-aarch64/erratum843419.d: Correct regexp. - -2017-09-14 H.J. Lu - - PR ld/22139 - * testsuite/ld-elf/globalaudit.rd: Allow additional bits in - DT_FLAGS_1. - -2017-09-14 H.J. Lu - - PR ld/22135 - * testsuite/ld-i386/i386.exp: Run pr22135. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr22135.d: New file. - * testsuite/ld-i386/pr22135.s: Likewise. - * testsuite/ld-x86-64/pr22135.d: Likewise. - * testsuite/ld-x86-64/pr22135.s: Likewise. - -2017-09-09 Alan Modra - - * ld.texinfo (--plt-align): Describe new behaviour of option. - * emultempl/ppc64elf.em (params): Default plt_stub_align to 5. - * testsuite/ld-powerpc/powerpc.exp: Pass --no-plt-align for - selected tests. - * testsuite/ld-powerpc/relbrlt.d: Pass --no-plt-align. - * testsuite/ld-powerpc/elfv2so.d: Adjust expected output. - -2017-09-09 H.J. Lu - - PR ld/22115 - * ld-i386/i386.exp: Run PR ld/22115 tests, - * ld/testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr22115-1.s: New file. - * testsuite/ld-i386/pr22115-1a.d: Likewise. - * testsuite/ld-i386/pr22115-1b.d: Likewise. - * testsuite/ld-i386/pr22115-1c.d: Likewise. - * testsuite/ld-i386/pr22115-1d.d: Likewise. - * testsuite/ld-x86-64/pr22115-1.s: Likewise. - * testsuite/ld-x86-64/pr22115-1a-x32.d: Likewise. - * testsuite/ld-x86-64/pr22115-1a.d: Likewise. - * testsuite/ld-x86-64/pr22115-1b-x32.d: Likewise. - * testsuite/ld-x86-64/pr22115-1b.d: Likewise. - * testsuite/ld-x86-64/pr22115-1c-x32.d: Likewise. - * testsuite/ld-x86-64/pr22115-1c.d: Likewise. - * testsuite/ld-x86-64/pr22115-1d-x32.d: Likewise. - * testsuite/ld-x86-64/pr22115-1d.d: Likewise. - -2017-09-06 H.J. Lu - - * testsuite/ld-x86-64/pr19609-2a.d: Updated. - * testsuite/ld-x86-64/pr19609-2b.d: Likewise. - * testsuite/ld-x86-64/pr19609-4a.d: Likewise. - * testsuite/ld-x86-64/pr19609-4c.d: Likewise. - -2017-09-05 H.J. Lu - - * testsuite/ld-x86-64/pr19609-5d.d: Updated. - * testsuite/ld-x86-64/pr19609-7a.d: Likewise. - * testsuite/ld-x86-64/pr19609-7c.d: Likewise. - -2017-09-05 H.J. Lu - - * testsuite/ld-x86-64/pr19609-4e.d: Updated. - * testsuite/ld-x86-64/pr19609-6a.d: Likewise. - -2017-09-03 H.J. Lu - - PR ld/22071 - * testsuite/ld-x86-64/pr22071.d: New file. - * testsuite/ld-x86-64/pr22071.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run pr22071. - -2017-09-02 Alan Modra - - * ldlang.h (lang_input_statement_type): Expand comments. - (LANG_FOR_EACH_INPUT_STATEMENT): Rewrite without casts. - * ldlang.c (lang_for_each_input_file): Likewise. - (load_symbols): Set usrdata for archives. - (find_rescan_insertion): New function. - (lang_process): Trim off and reinsert entries added to file chain - when rescanning archives for LTO. - * ldmain.c (add_archive_element): Set my_archive input_statement - next pointer to last element added. - -2017-09-01 H.J. Lu - - PR ld/22064 - * testsuite/ld-x86-64/pr22064a.S: New file. - * testsuite/ld-x86-64/pr22064b.c: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run PR ld/22064 test. - -2017-09-02 Alan Modra - - * emultempl/msp430.em (eval_upper_either_sections): Make base_sec_name - a const char*. - (eval_lower_either_sections): Likewise. - (msp430_elf_after_allocation): Likewise, and don't needlessly concat - and free. Warning fix. - -2017-09-01 H.J. Lu - - PR ld/22061 - * testsuite/ld-i386/ibt-plt-1.d: Updated. - * testsuite/ld-i386/ibt-plt-2a.d: Likewise. - * testsuite/ld-i386/ibt-plt-2c.d: Likewise. - * testsuite/ld-i386/ibt-plt-3a.d: Likewise. - * testsuite/ld-i386/ibt-plt-3c.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise. - * testsuite/ld-i386/ibt-plt-2b.d: Pass --hash-style=sysv to ld - and dump unwind information. - * testsuite/ld-i386/ibt-plt-2d.d: Likewise. - * testsuite/ld-i386/ibt-plt-3b.d: Likewise. - * testsuite/ld-i386/ibt-plt-3d.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2b-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2b.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2d-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2d.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3b-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3b.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3d-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3d.d: Likewise. - -2017-08-31 H.J. Lu - - PR ld/22048 - * testsuite/ld-x86-64/pr22048.d: New file. - * testsuite/ld-x86-64/pr22048a.s: Likewise. - * testsuite/ld-x86-64/pr22048b.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run pr22048. - -2017-08-31 Alan Modra - - * testsuite/ld-elf/eh3.d: Update. - * testsuite/ld-elf/eh4.d: Update. - -2017-08-30 Maciej W. Rozycki - - * testsuite/ld-elf/orphan-11.ld: Also discard `.MIPS.options' - sections. - -2017-08-30 Maciej W. Rozycki - - * testsuite/ld-mips-elf/bal-jalx-addend-micromips.d: New test. - * testsuite/ld-mips-elf/bal-jalx-addend-micromips-n32.d: New - test. - * testsuite/ld-mips-elf/bal-jalx-addend-micromips-n64.d: New - test. - * testsuite/ld-mips-elf/bal-jalx-local-micromips.d: New test. - * testsuite/ld-mips-elf/bal-jalx-local-micromips-n32.d: New - test. - * testsuite/ld-mips-elf/bal-jalx-local-micromips-n64.d: New - test. - * testsuite/ld-mips-elf/bal-jalx-pic-micromips.d: New test. - * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d: New test. - * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d: New test. - * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips.d: New - test. - * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n32.d: New - test. - * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n64.d: New - test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2017-08-30 Alan Modra - - * testsuite/ld-powerpc/tls.s: Add calls with tls markers. - * testsuite/ld-powerpc/tls32.s: Likewise. - * testsuite/ld-powerpc/powerpc.exp: Run tls marker tests. - * testsuite/ld-powerpc/tls.d: Adjust for TPREL16_HA/LO optimization. - * testsuite/ld-powerpc/tlsexe.d: Likewise. - * testsuite/ld-powerpc/tlsexetoc.d: Likewise. - * testsuite/ld-powerpc/tlsld.d: Likewise. - * testsuite/ld-powerpc/tlsmark.d: Likewise. - * testsuite/ld-powerpc/tlsopt4.d: Likewise. - * testsuite/ld-powerpc/tlstoc.d: Likewise. - -2017-08-30 Alan Modra - - * testsuite/ld-powerpc/tls.d: Update. - * testsuite/ld-powerpc/tlsexe.d: Update. - * testsuite/ld-powerpc/tlsexetoc.d: Update. - * testsuite/ld-powerpc/tlsld.d: Update. - * testsuite/ld-powerpc/tlsmark.d: Update. - * testsuite/ld-powerpc/tlsopt4.d: Update. - * testsuite/ld-powerpc/tlstoc.d: Update. - -2017-08-30 Hans-Peter Nilsson - - * testsuite/ld-cris/dso-pltdis1.d: Run ld with --hash-style=sysv. - * testsuite/ld-cris/dso-pltdis2.d, - testsuite/ld-cris/dso12-pltdis.d, testsuite/ld-cris/expdyn1.d, - testsuite/ld-cris/expdyn5.d, testsuite/ld-cris/expdyn6.d, - testsuite/ld-cris/expdyn7.d, testsuite/ld-cris/gotplt1.d, - testsuite/ld-cris/gotplt2.d, testsuite/ld-cris/gotplt3.d, - testsuite/ld-cris/hiddef1.d, testsuite/ld-cris/libdso-11.d, - testsuite/ld-cris/libdso-12.d, testsuite/ld-cris/libdso-12b.d, - testsuite/ld-cris/libdso-12c.d, testsuite/ld-cris/libdso-13.d, - testsuite/ld-cris/libdso-13b.d, testsuite/ld-cris/libdso-14.d, - testsuite/ld-cris/libdso-15.d, testsuite/ld-cris/libdso-15b.d, - testsuite/ld-cris/libdso-1b.d, testsuite/ld-cris/libdso-1c.d, - testsuite/ld-cris/libdso-1d.d, testsuite/ld-cris/libdso-4.d, - testsuite/ld-cris/pr16044.d, testsuite/ld-cris/pv32-1.d, - testsuite/ld-cris/tls-dso-dtpoffd2.d, - testsuite/ld-cris/tls-dso-dtpoffd4.d, - testsuite/ld-cris/tls-dso-tpoffgotcomm1.d, - testsuite/ld-cris/tls-dso-x1x2-1.d, testsuite/ld-cris/tls-gc-71.d, - testsuite/ld-cris/tls-ie-78.d, testsuite/ld-cris/tls-js1.d, - testsuite/ld-cris/tls-ldgdex-14.d, - testsuite/ld-cris/tls-ldgdex-15.d, - testsuite/ld-cris/tls-legdx-16.d, - testsuite/ld-cris/tls-legdx-17.d, - testsuite/ld-cris/tls-local-63.d, - testsuite/ld-cris/tls-local-64.d, testsuite/ld-cris/tls-ok-30.d, - testsuite/ld-cris/tls-ok-32.d, testsuite/ld-cris/tls-ok-34.d, - testsuite/ld-cris/tls-und-38.d, testsuite/ld-cris/tls-und-42.d, - testsuite/ld-cris/tls-und-46.d, testsuite/ld-cris/tls-und-50.d, - testsuite/ld-cris/weakref2.d, testsuite/ld-cris/weakref3.d, - testsuite/ld-cris/weakref4.d: Likewise. - -2017-08-29 Jozef Lawrynowicz - - * emultempl/msp430.em (change_output_section): New function. - (move_prefixed_section): New function. - (add_region_prefix): New function. - (msp430_elf_after_open): New function. - (gld${EMULATION_NAME}_add_options): Implement. - (gld${EMULATION_NAME}_list_options): Implement. - (gld${EMULATION_NAME}_handle_option): Implement. - * ld.texinfo: Document new options. - * testsuite/ld-msp430-elf/main-bss-lower.d: New. - * testsuite/ld-msp430-elf/main-bss-upper.d: New. - * testsuite/ld-msp430-elf/main-const-lower.d: New. - * testsuite/ld-msp430-elf/main-const-upper.d: New. - * testsuite/ld-msp430-elf/main-text-lower.d: New. - * testsuite/ld-msp430-elf/main-text-upper.d: New. - * testsuite/ld-msp430-elf/main-var-lower.d: New. - * testsuite/ld-msp430-elf/main-var-upper.d: New. - * testsuite/ld-msp430-elf/main-with-data-bss-unique-sec.s: New. - * testsuite/ld-msp430-elf/main-with-data-bss.s: New. - * testsuite/ld-msp430-elf/main-with-text-rodata-unique-sec.s: New. - * testsuite/ld-msp430-elf/main-with-text-rodata.s: New. - * testsuite/ld-msp430-elf/msp430-elf.exp: New. - * testsuite/ld-msp430-elf/msp430-no-lower.ld: New. - * testsuite/ld-msp430-elf/msp430.ld: New. - * emultempl/msp430.em (data_statement_size): New. - (eval_upper_either_sections): New. - (eval_lower_either_sections): New. - (intermediate_relax_sections): New. - (msp430_elf_after_allocation): New. - * emultempl/msp430.em (gld${EMULATION_NAME}_place_orphan): Always - place sections in the lower region. - -2017-08-26 H.J. Lu - - PR ld/21997 - * testsuite/ld-i386/i386.exp: Run PR ld/21997 tests. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr21997-1a.S: New file. - * testsuite/ld-i386/pr21997-1b.c: Likewise. - * testsuite/ld-i386/pr21997-1c.S: Likewise. - * testsuite/ld-x86-64/pr21997-1a.S: Likewise. - * testsuite/ld-x86-64/pr21997-1a.err: Likewise. - * testsuite/ld-x86-64/pr21997-1b.c: Likewise. - * testsuite/ld-x86-64/pr21997-1b.err: Likewise. - * testsuite/ld-x86-64/pr21997-1c.c: Likewise. - -2017-08-24 H.J. Lu - - * testsuite/ld-elf/pr21903c.d: Remove '\' before --. - * testsuite/ld-elf/pr21903d.d: Likewise. - * testsuite/ld-elf/pr21903e.d: Likewise. - * testsuite/lib/ld-lib.exp (run_dump_test): Add "--" after - regexp. - -2017-08-24 H.J. Lu - - * testsuite/ld-i386/i386.exp (undefined_weak): Replace regexp - with string match. - * testsuite/ld-x86-64/x86-64.exp (undefined_weak): Likewise. - -2017-08-24 H.J. Lu - - * testsuite/ld-x86-64/x86-64.exp: Run pr22001-1b on x32. - -2017-08-24 H.J. Lu - - PR ld/22001 - * testsuite/ld-i386/i386.exp: Run -z nocopyreloc tests. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr22001-1a.c: New file. - * testsuite/ld-i386/pr22001-1b.c: Likewise. - * testsuite/ld-i386/pr22001-1c.S: Likewise. - * testsuite/ld-x86-64/pr22001-1a.c: Likewise. - * testsuite/ld-x86-64/pr22001-1a.err: Likewise. - * testsuite/ld-x86-64/pr22001-1b.c: Likewise. - * testsuite/ld-x86-64/pr22001-1b.err: Likewise. - * testsuite/ld-x86-64/pr22001-1c.c: Likewise. - -2017-08-17 Andrew Burgess - - PR 21961 - * ldlang.c (lang_discard_section_p): New function. - (lang_add_section): Checks moved out into new function, which is - now called. - (lang_place_orphans): Call lang_discard_section_p instead of - duplicating some of the checks from lang_add_section. - * testsuite/ld-elf/orphan-11.d: New file. - * testsuite/ld-elf/orphan-11.ld: New file. - * testsuite/ld-elf/orphan-11.s: New file. - * testsuite/ld-elf/orphan-12.d: New file. - * testsuite/ld-elf/orphan-12.s: New file. - -2017-08-24 Alan Modra - - * testsuite/ld-undefined/fundef.s: New test. - * testsuite/ld-undefined/undefined.exp: Test that undefined - symbols in shared libraries are made dynamic. - -2017-08-23 H.J. Lu - - * testsuite/ld-elf/pr21903c.d: Add '\' before --. - * testsuite/ld-elf/pr21903d.d: Likewise. - * testsuite/ld-elf/pr21903e.d: Likewise. - -2017-08-23 H.J. Lu - - * testsuite/ld-x86-64/pie2.d: Updated. - * testsuite/ld-x86-64/pr19719.d: Likewise. - * testsuite/ld-x86-64/pr19807-2a.d: Likewise. - * testsuite/ld-x86-64/pr19969.d: Likewise. - -2017-08-23 H.J. Lu - - * testsuite/ld-i386/i386.exp: Run protected7. - * testsuite/ld-i386/protected7.d: New file. - * testsuite/ld-i386/protected7.s: Likewise. - * testsuite/ld-x86-64/protected8.d: Likewise. - * testsuite/ld-x86-64/protected8.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run protected8. - -2017-08-23 Alan Modra - - * testsuite/ld-gc/pr19161.d: Don't xfail hppa. - -2017-08-22 H.J. Lu - Alan Modra - - * testsuite/ld-elf/pr21964-1a.c (foo): Renamed to ... - (foo1): This. - * testsuite/ld-elf/pr21964-1b.c: Rewrite. - * testsuite/ld-elf/pr21964-1c.c: New file. - * testsuite/ld-elf/pr21964-2c.c: Likewise. - * testsuite/ld-elf/pr21964-2a.c (foo): Renamed to ... - (foo1): This. - * testsuite/ld-elf/pr21964-2b.c: Rewrite. - * testsuite/ld-elf/shared.exp: Update PR ld/21964 tests. - -2017-08-21 H.J. Lu - Alan Modra - - PR ld/21964 - * testsuite/ld-elf/pr21562a.d: Update for changed start/stop symbols. - * testsuite/ld-elf/pr21562b.d: Likewise. - * testsuite/ld-elf/pr21562c.d: Likewise. - * testsuite/ld-elf/pr21562d.d: Likewise. - * testsuite/ld-elf/pr21562e.d: Likewise. - * testsuite/ld-elf/pr21562f.d: Likewise. - * testsuite/ld-elf/pr21562g.d: Likewise. - * testsuite/ld-elf/pr21562h.d: Likewise. - * testsuite/ld-elf/pr21562i.d: Likewise. - * testsuite/ld-elf/pr21562j.d: Likewise. - * testsuite/ld-elf/pr21562k.d: Likewise. - * testsuite/ld-elf/pr21562l.d: Likewise. - * testsuite/ld-elf/pr21562m.d: Likewise. - * testsuite/ld-elf/pr21562n.d: Likewise. - * testsuite/ld-elf/sizeofa.d: Likewise. - * testsuite/ld-elf/sizeofb.d: Likewise. - * testsuite/ld-elf/startofa.d: Likewise. - * testsuite/ld-elf/startofb.d: Likewise. - * testsuite/ld-gc/pr20022.d: Likewise. - * testsuite/ld-gc/start.d: Likewise. - * testsuite/ld-elf/pr21964-1a.c: New file. - * testsuite/ld-elf/pr21964-1b.c: New file. - * testsuite/ld-elf/pr21964-2a.c: New file. - * testsuite/ld-elf/pr21964-2b.c: New file. - * testsuite/ld-elf/shared.exp: Run PR ld/21964 tests. - -2017-08-21 Hans-Peter Nilsson - - PR ld/20125 - * testsuite/ld-mmix/pr20125.d, testsuite/ld-mmix/pr20125.s: New - test. - -2017-08-20 A. Wilcox - - PR ld/21976 - * testsuite/ld-x86-64/plt-main-bnd.dd: Accept '_' in symbol - name. - -2017-08-17 Nick Clifton - - * po/pt_BR.po: New Brazilian Portuguese translation. - * configure.ac (ALL_LINGUAS): Add pt_BR. - * configure: Regenerate. - -2017-08-14 Alan Modra - - PR 21441 - * testsuite/ld-x86-64/pr21038a.d: Adjust. - * testsuite/ld-x86-64/pr21038a-now.d: Adjust. - -2017-08-13 H.J. Lu - - * testsuite/ld-i386/i386.exp: Run pr21884-nacl. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr21884.d: Don't run on nacl targets. - * testsuite/ld-x86-64/pr21884.d: Likewise. - * testsuite/ld-i386/pr21884.t: Revert the last change. - * testsuite/ld-x86-64/pr21884.t: Likewise. - * testsuite/ld-i386/pr21884-nacl.d: New file. - * testsuite/ld-i386/pr21884-nacl.t: Likewise. - * testsuite/ld-x86-64/pr21884-nacl.d: Likewise. - * testsuite/ld-x86-64/pr21884-nacl.t: Likewise. - -2017-08-13 Alan Modra - - * testsuite/ld-i386/pr21884.t: Remove unneeded format, arch and entry. - * testsuite/ld-x86-64/pr21884.t: Likewise. - -2017-08-11 Nick Clifton - - * emultempl/elf32.em (handle_option): Accept the -z globalaudit - command line option. - * lexsup.c (elf_static_list_options): Add -z globalaudit. - * ld.texinfo: Document the support for the new command line - option. - * NEWS: Mention the new feature. - * testsuite/ld-elf/audit.exp: Add a test of the -z globalaudit - command line option. - * testsuite/ld-elf/globalaudit.rd: New file: Expected output from - readelf. - -2017-08-11 H.J. Lu - - PR ld/21884 - * testsuite/ld-i386/i386.exp: Run pr21884. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr21884.d: New file. - * testsuite/ld-i386/pr21884.t: Likewise. - * testsuite/ld-x86-64/pr21884.d: Likewise. - * testsuite/ld-x86-64/pr21884.t: Likewise. - -2017-08-10 Nick Clifton - - * scripttempl/pep.sc: Enclose __CTOR_LIST__, ___CTOR_LIST__, - __DTOR_LIST__ and ___DTOR_LIST__ in PROVIDE statements so that - they can be overrridden by crt input files. - * scripttempl/pe.sc: Likewise. - -2017-08-09 H.J. Lu - - * testsuite/config/default.exp (LD_CLASS): Check .libs/ld-new - for linker first. - -2017-08-09 H.J. Lu - - * testsuite/config/default.exp (LD_CLASS): New. Set to "64bit" - for 64-bit ELF linker. - * testsuite/ld-x86-64/pr17618.d (#notarget): Removed. - * testsuite/ld-x86-64/x86-64.exp: Run pr17618 only for 64-bit - linker. - -2017-08-08 H.J. Lu - - PR ld/21924 - * testsuite/ld-i386/i386.exp: Require GCC 5 or above for - "weakundef1 with PIE" test. - * testsuite/ld-x86-64/tls.exp: Require GCC 5 or above for - "tlsdesc1" and "tlsdesc1 with PIE" tests. - -2017-08-08 H.J. Lu - - * configure.ac (TESTBFDLIB): Add a ',' after -Wl,--rpath. - * configure: Regenerated. - -2017-08-08 H.J. Lu - - PR ld/21923 - * configure.ac (TESTBFDLIB): Replace --rpath with -Wl,--rpath - for --disable-static. - * configure: Regenerated. - -2017-08-08 Romain Geissler - Alan Modra - - * configure.ac: Add --enable-default-hash-style option. - * ldmain.c (main): Set link_info.emit_hash to DEFAULT_EMIT_SYSV_HASH. - Set link_info.emit_gnu_hash to DEFAULT_EMIT_GNU_HASH. - * configure: Regenerate. - * config.in: Regenerate. - -2017-08-08 Alan Modra - - * testsuite/ld-aarch64/ifunc-1-local.d: Run ld with --hash-style=sysv. - * testsuite/ld-aarch64/ifunc-2-local.d: Likewise. - * testsuite/ld-aarch64/ifunc-3a.d: Likewise. - * testsuite/ld-frv/fdpic-pie-1.d: Likewise. - * testsuite/ld-frv/fdpic-pie-2.d: Likewise. - * testsuite/ld-frv/fdpic-pie-7.d: Likewise. - * testsuite/ld-frv/fdpic-pie-8.d: Likewise. - * testsuite/ld-arm/arm-elf.exp: Add --hash-style=sysv to "Using - Thumb lib by another lib" test's ld options. - * testsuite/ld-elf/note-3.l: Match .gnu.hash. - * testsuite/ld-elf/note-3.t: Add .gnu.hash output section. - -2017-08-07 H.J. Lu - - * testsuite/ld-elf/pr21903.s (start): Removed. - (_start): Likewise. - (__start): Likewise. - (main): Likewise. - (bar): New. - -2017-08-07 Alan Modra - - * testsuite/ld-alpha/alpha.exp: Add --hash-style=sysv to various - test's ld options. - * testsuite/ld-arm/arm-elf.exp: Likewise. - * testsuite/ld-elf/elf.exp: Likewise. - * testsuite/ld-elf/readelf.exp: Likewise. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - * testsuite/ld-i386/i386.exp: Likewise. - * testsuite/ld-ia64/ia64.exp: Likewise. - * testsuite/ld-m68k/m68k.exp: Likewise. - * testsuite/ld-metag/metag.exp: Likewise. - * testsuite/ld-powerpc/powerpc.exp: Likewise. - * testsuite/ld-s390/s390.exp: Likewise. - * testsuite/ld-sh/sh-vxworks.exp: Likewise. - * testsuite/ld-shared/shared.exp: Likewise. - * testsuite/ld-sparc/sparc.exp: Likewise. - * testsuite/ld-tic6x/tic6x.exp: Likewise. - * testsuite/ld-vax-elf/vax-elf.exp: Likewise. - * testsuite/ld-x86-64/mpx.exp: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-xtensa/xtensa.exp: Likewise. - - * testsuite/ld-elf/comm-data2.ld: Add .gnu.hash output section. - * testsuite/ld-elf/pr20828-v.ld: Likewise. - * testsuite/ld-elf/pr20828.ld: Likewise. - * testsuite/ld-elf/pr21233.ld: Likewise. - * testsuite/ld-elf/pr21384.ld: Likewise. - * testsuite/ld-elf/provide-hidden-1.ld: Likewise. - * testsuite/ld-elf/provide-hidden-2.ld: Likewise. - * testsuite/ld-elf/provide-hidden-s.ld: Likewise. - * testsuite/ld-scripts/cross1.t: Likewise. - - * testsuite/ld-elf/stab.d: Adjust allowed section indices. - - * testsuite/ld-i386/pie1.d: Don't match addresses. - * testsuite/ld-i386/plt-pic2.dd: Likewise. - * testsuite/ld-i386/pr19636-1d.d: Likewise. - * testsuite/ld-i386/pr19636-2c.d: Likewise. - * testsuite/ld-powerpc/elfv2so.d: Likewise. - * testsuite/ld-powerpc/tlsopt5.d: Likewise. - * testsuite/ld-powerpc/tlsopt5.wf: Likewise. - * testsuite/ld-powerpc/tlsopt5_32.d: Likewise. - - * testsuite/ld-i386/pr19636-2b.d: Don't match _start. - - * testsuite/ld-powerpc/ambiguousv1.d: Relax symbol count, index - and address match. - * testsuite/ld-powerpc/ambiguousv1b.d: Likewise. - * testsuite/ld-powerpc/ambiguousv2.d: Likewise. - * testsuite/ld-powerpc/ambiguousv2b.d: Likewise. - - * testsuite/ld-aarch64/gc-plt-relocs.d: Run ld with --hash-style=sysv. - * testsuite/ld-aarch64/ifunc-1.d: Likewise. - * testsuite/ld-aarch64/ifunc-2.d: Likewise. - * testsuite/ld-aarch64/ifunc-21.d: Likewise. - * testsuite/ld-aarch64/relasz.d: Likewise. - * testsuite/ld-aarch64/tls-small-ld.d: Likewise. - * testsuite/ld-aarch64/tls-tiny-ld.d: Likewise. - * testsuite/ld-arc/tls_gd-01.d: Likewise. - * testsuite/ld-cris/libdso-10.d: Likewise. - * testsuite/ld-cris/libdso-2.d: Likewise. - * testsuite/ld-cris/pic-gc-72.d: Likewise. - * testsuite/ld-cris/pic-gc-73.d: Likewise. - * testsuite/ld-cris/tls-gd-1.d: Likewise. - * testsuite/ld-cris/tls-gd-1h.d: Likewise. - * testsuite/ld-cris/tls-gd-2.d: Likewise. - * testsuite/ld-cris/tls-gd-2h.d: Likewise. - * testsuite/ld-cris/tls-ie-10.d: Likewise. - * testsuite/ld-cris/tls-ie-11.d: Likewise. - * testsuite/ld-cris/tls-ie-8.d: Likewise. - * testsuite/ld-cris/tls-ie-9.d: Likewise. - * testsuite/ld-cris/tls-ld-4.d: Likewise. - * testsuite/ld-cris/tls-ld-5.d: Likewise. - * testsuite/ld-cris/tls-ld-6.d: Likewise. - * testsuite/ld-cris/tls-ld-7.d: Likewise. - * testsuite/ld-cris/tls-ldgd-14.d: Likewise. - * testsuite/ld-cris/tls-ldgd-15.d: Likewise. - * testsuite/ld-cris/tls-ldgdx-14.d: Likewise. - * testsuite/ld-cris/tls-ldgdx-15.d: Likewise. - * testsuite/ld-cris/tls-local-54.d: Likewise. - * testsuite/ld-cris/tls-local-60.d: Likewise. - * testsuite/ld-cris/tls-local-61.d: Likewise. - * testsuite/ld-cris/weakhiddso.d: Likewise. - * testsuite/ld-elf/linkinfo1a.d: Likewise. - * testsuite/ld-elf/linkinfo1b.d: Likewise. - * testsuite/ld-elf/pr19617a.d: Likewise. - * testsuite/ld-elfvsb/hidden2.d: Likewise. - * testsuite/ld-frv/fdpic-pie-6.d: Likewise. - * testsuite/ld-frv/fdpic-shared-2.d: Likewise. - * testsuite/ld-frv/fdpic-shared-5.d: Likewise. - * testsuite/ld-frv/fdpic-shared-6.d: Likewise. - * testsuite/ld-frv/fdpic-shared-8.d: Likewise. - * testsuite/ld-frv/fdpic-shared-local-2.d: Likewise. - * testsuite/ld-frv/fdpic-shared-local-8.d: Likewise. - * testsuite/ld-frv/tls-dynamic-2.d: Likewise. - * testsuite/ld-i386/ibt-plt-1.d: Likewise. - * testsuite/ld-i386/ibt-plt-2a.d: Likewise. - * testsuite/ld-i386/ibt-plt-2c.d: Likewise. - * testsuite/ld-i386/ibt-plt-3a.d: Likewise. - * testsuite/ld-i386/ibt-plt-3c.d: Likewise. - * testsuite/ld-i386/pr20830.d: Likewise. - * testsuite/ld-ia64/merge1.d: Likewise. - * testsuite/ld-ia64/merge2.d: Likewise. - * testsuite/ld-ia64/merge3.d: Likewise. - * testsuite/ld-ia64/merge4.d: Likewise. - * testsuite/ld-ia64/merge5.d: Likewise. - * testsuite/ld-ifunc/ifunc-1-local-x86.d: Likewise. - * testsuite/ld-ifunc/ifunc-1-x86.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise. - * testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise. - * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-i386.d: Likewise. - * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-x86-64.d: Likewise. - * testsuite/ld-m68k/got-1.d: Likewise. - * testsuite/ld-m68k/got-multigot-12-13-14-34-35-ok.d: Likewise. - * testsuite/ld-m68k/got-multigot-14-ok.d: Likewise. - * testsuite/ld-m68k/got-multigot-15-er.d: Likewise. - * testsuite/ld-m68k/got-negative-12-13-14-34-ok.d: Likewise. - * testsuite/ld-m68k/got-negative-12-13-14-35-er.d: Likewise. - * testsuite/ld-m68k/got-negative-14-ok.d: Likewise. - * testsuite/ld-m68k/got-negative-15-er.d: Likewise. - * testsuite/ld-m68k/got-single-12-ok.d: Likewise. - * testsuite/ld-m68k/got-single-13-er.d: Likewise. - * testsuite/ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: Likewise. - * testsuite/ld-m68k/got-xgot-15-ok.d: Likewise. - * testsuite/ld-m68k/tls-gd-1.d: Likewise. - * testsuite/ld-m68k/tls-gd-2.d: Likewise. - * testsuite/ld-m68k/tls-gd-ie-1.d: Likewise. - * testsuite/ld-m68k/tls-ie-1.d: Likewise. - * testsuite/ld-m68k/tls-ld-1.d: Likewise. - * testsuite/ld-m68k/tls-ld-2.d: Likewise. - * testsuite/ld-sh/shared-2.d: Likewise. - * testsuite/ld-sh/tlsbin-2.d: Likewise. - * testsuite/ld-sh/tlspic-2.d: Likewise. - * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-1.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise. - * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-plt-1.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-1.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2a.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2c.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3a.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3c.d: Likewise. - * testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise. - * testsuite/ld-x86-64/ilp32-4.d: Likewise. - * testsuite/ld-x86-64/load1c-nacl.d: Likewise. - * testsuite/ld-x86-64/load1c.d: Likewise. - * testsuite/ld-x86-64/load1d-nacl.d: Likewise. - * testsuite/ld-x86-64/load1d.d: Likewise. - * testsuite/ld-x86-64/pie3-nacl.d: Likewise. - * testsuite/ld-x86-64/pie3.d: Likewise. - * testsuite/ld-x86-64/pr14207.d: Likewise. - * testsuite/ld-x86-64/pr19162.d: Likewise. - * testsuite/ld-x86-64/pr19636-2d-nacl.d: Likewise. - * testsuite/ld-x86-64/pr19636-2d.d: Likewise. - * testsuite/ld-x86-64/pr20253-1d.d: Likewise. - * testsuite/ld-x86-64/pr20253-1f.d: Likewise. - * testsuite/ld-x86-64/pr20253-1j.d: Likewise. - * testsuite/ld-x86-64/pr20253-1l.d: Likewise. - * testsuite/ld-x86-64/pr20830a-now.d: Likewise. - * testsuite/ld-x86-64/pr20830a.d: Likewise. - * testsuite/ld-x86-64/pr20830b-now.d: Likewise. - * testsuite/ld-x86-64/pr20830b.d: Likewise. - * testsuite/ld-x86-64/pr21038a-now.d: Likewise. - * testsuite/ld-x86-64/pr21038a.d: Likewise. - * testsuite/ld-x86-64/pr21038b-now.d: Likewise. - * testsuite/ld-x86-64/pr21038b.d: Likewise. - * testsuite/ld-x86-64/pr21038c-now.d: Likewise. - * testsuite/ld-x86-64/pr21038c.d: Likewise. - -2017-08-06 H.J. Lu - - PR ld/21903: - * ld.h (command_line): Remove inhibit_common_definition. - * ldgram.y: Replace command_line.inhibit_common_definition with - link_info.inhibit_common_definition. - * ldlang.c (lang_common): Likewise. - * lexsup.c (parse_args): Likewise. - * ldmain.c (main): Only allow --no-define-common with -shared. - * testsuite/ld-elf/pr21903.s: New file. - * testsuite/ld-elf/pr21903a.d: Likewise. - * testsuite/ld-elf/pr21903b.d: Likewise. - * testsuite/ld-elf/pr21903c.d: Likewise. - * testsuite/ld-elf/pr21903d.d: Likewise. - * testsuite/ld-elf/pr21903e.d: Likewise. - -2017-08-05 Alan Modra - - * testsuite/ld-unique/pr21529.d: Don't xfail hppa. - -2017-08-04 H.J. Lu - - PR ld/21904 - * testsuite/ld-elf/pr21904.d: New file. - * testsuite/ld-elf/pr21904.s: Likewise. - -2017-08-03 Nick Clifton - - PR ld/21884 - * testsuite/ld-elf/pr21884.d: Add AVR, HPPA, IA64, M68HC1x and - SCORE to list of targets not supporting file format changes during - linking. - * testsuite/ld-unique/pr21529.d: Likewise. - * emultempl/avrelf.em (_before_allocation): Skip for non-ELF - output formats. - (avr_elf_create_output_section_statements): Fail if the output - format is not ELF. - (avr_finish): Do not access the ELF header in non-ELF format - output bfds. - * emultempl/m68hc1xelf.em (_before_allocation): Skip for non-ELF - output formats. - (m68hc11elf_create_output_section_statements): Fail if the putput - format is not ELF. - (m68hc11elf_after_allocation): Skip for non-ELF output formats. - -2017-08-03 Alan Modra - - PR ld/21884 - * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Revert - last change. Rename iself to elfinput. Expand comments. Condition - ELF checks on having both input and output ELF files. Extract.. - (elf_orphan_compatible): ..this new function. - -2017-08-02 H.J. Lu - - PR ld/21884 - * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Check - ELF section header only for ELF output. - * testsuite/ld-elf/pr21884.d: New test. - * testsuite/ld-elf/pr21884.t: Likewise. - * testsuite/ld-elf/pr21884a.s: Likewise. - * testsuite/ld-elf/pr21884b.s: Likewise. - -2017-08-02 H.J. Lu - - * emultempl/elf32.em (_place_orphan): Revert the last change. - -2017-08-02 Max Filippov - - * emultempl/xtensaelf.em (xtensa_wild_group_interleave_callback): - Only check for by_name sorting. - -2017-08-02 Nick Clifton - - PR 21884 - * emultempl/elf32.em (_place_orphan): Skip non-ELF binaries when - looking for sections to merge. - -2017-07-31 Alan Modra - - * ld.texinfo (plt-localentry): Revise. - -2017-07-29 Alan Modra - - * ld.texinfo (plt-localentry): Document. - -2017-07-28 Andrew Burgess - - * ldgram.y (ldgram_had_keep): Make static. - (ldgram_vers_current_lang): Likewise. - (filename_spec): New rule. - (input_section_spec_no_keep): Use filename_spec. - (wildcard_maybe_exclude): New rule. - (wildcard_spec): Rename to... - (section_name_spec): ...this. - (section_NAME_list): Rename to... - (section_name_list): ...this. - (section_name_spec): Simplifiy and use wildcard_maybe_exclude. - * ldlang.c (placed_commons): Delete. - (lang_add_wild): No longer set placed_commons. - (print_wild_statement): Use full names for SORT specifiers. - * testsuite/ld-scripts/align.exp: Run new tests. - * testsuite/ld-scripts/align3.d: New file. - * testsuite/ld-scripts/align3.t: New file. - * testsuite/ld-scripts/align4.d: New file. - * testsuite/ld-scripts/align4.t: New file. - * testsuite/ld-scripts/align5.d: New file. - * testsuite/ld-scripts/align5.t: New file. - * testsuite/ld-scripts/exclude-file-5.d: New file. - * testsuite/ld-scripts/exclude-file-5.map: New file. - * testsuite/ld-scripts/exclude-file-5.t: New file. - * testsuite/ld-scripts/exclude-file-6.d: New file. - * testsuite/ld-scripts/exclude-file-6.map: New file. - * testsuite/ld-scripts/exclude-file-6.t: New file. - * NEWS: Mention the changes. - -2017-07-27 Georg-Johann Lay - - PR ld/21849 - * scripttempl/avr.sc: Split .progmemx.* from .progmem.* and locate - former at a higher address. - -2017-07-25 Alan Modra - - * testsuite/ld-powerpc/tlsopt5.s: Add cfi. - * testsuite/ld-powerpc/tlsopt5.d: Update. - * testsuite/ld-powerpc/tlsopt5.wf: New file. - * testsuite/ld-powerpc/powerpc.exp: Perform new tlsopt5 test. - -2017-07-24 Claudiu Zissulescu - - * testsuite/ld-arc/jli-overflow.d: Force testing for little - endian. - * testsuite/ld-arc/tls_gd-01.d: Fix string to match bigendian - systems. - * testsuite/ld-arc/tls_ie-01.d: Fix test for bigendian systems. - -2017-07-19 Maciej W. Rozycki - - * testsuite/ld-scripts/fill.d: Adjust `xfail' entries. Add - `notarget' entries. Update comments. - * testsuite/ld-scripts/fill16.d: New test. - * testsuite/ld-scripts/fill16_0.s: New test source. - * testsuite/ld-scripts/fill16_1.s: New test source. - * testsuite/ld-scripts/fill16_2.s: New test source. - * testsuite/ld-scripts/data.exp: Run the new test. - -2017-07-19 Claudiu Zissulescu - John Eric Martin - - * emulparams/arcelf.sh (JLI_START_TABLE): Define. - * scripttempl/elfarc.sc: Handle jlitab section. - * scripttempl/elfarcv2.sc: Likewise. - * testsuite/ld-arc/arc.exp: Add JLI test. - * testsuite/ld-arc/jli-script.ld: New file. - * testsuite/ld-arc/jli-simple.dd: Likewise. - * testsuite/ld-arc/jli-simple.rd: Likewise. - * testsuite/ld-arc/jli-simple.s: Likewise. - * testsuite/ld-arc/jli-overflow.s: Likewise. - * testsuite/ld-arc/jli-overflow.d: Likewise. - * testsuite/ld-arc/jli-overflow.err: Likewise. - -2017-07-19 Tristan Gingold - - * ldmain.c (main): Remove display of data size. - -2017-07-18 Maciej W. Rozycki - - PR ld/16656 - * testsuite/ld-elf/binutils.exp (binutils_test): Make the - expectation for `.got' in GNU_RELRO segment target-specific. - Handle `.got.plt' separately. - -2017-07-18 Maciej W. Rozycki - - PR ld/16656 - * testsuite/ld-elf/binutils.exp (binutils_test): Make the - expectation for `.dynamic' in GNU_RELRO segment target-specific. - -2017-07-18 Nick Clifton - - PR 21775 - * ld.texinfo: Fix spelling typos. - * testsuite/ld-elfcomm/elfcomm.exp: Likewise. - -2017-07-17 H.J. Lu - - * testsuite/ld-i386/i386.exp: Run pie1 and pie1-nacl. - * testsuite/ld-i386/pie1-nacl.d: New file. - * testsuite/ld-i386/pie1.d: Likewise. - * testsuite/ld-i386/pie1.s: Likewise. - -2017-07-17 H.J. Lu - - PR ld/21782 - * testsuite/ld-x86-64/pie3-nacl.d: New file. - * testsuite/ld-x86-64/pie3.d: Likewise. - * testsuite/ld-x86-64/pie3.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run pie3 and pie3-nacl. - -2017-07-14 Alan Modra - - * testsuite/ld-powerpc/powerpc.exp: Add -shared to tlsop5 tests. - * testsuite/ld-powerpc/tlsopt5.d: Adjust. - * testsuite/ld-powerpc/tlsopt1_32.s: Use r30 as GOT pointer. - * testsuite/ld-powerpc/tlsopt2_32.s: Likewise. - * testsuite/ld-powerpc/tlsopt3_32.s: Likewise. - * testsuite/ld-powerpc/tlsopt4_32.s: Likewise. - * testsuite/ld-powerpc/tlsopt5_32.s: Rewrite. - * testsuite/ld-powerpc/tlsopt1_32.d: Adjust. - * testsuite/ld-powerpc/tlsopt2_32.d: Adjust. - * testsuite/ld-powerpc/tlsopt3_32.d: Adjust. - * testsuite/ld-powerpc/tlsopt5_32.d: Adjust. - -2016-07-14 Maciej W. Rozycki - - * testsuite/ld-unique/pr21529.ld: New test linker script. - * testsuite/ld-unique/pr21529.d: Use it. - -2017-07-12 Alan Modra - - * po/bg.po: Update from translationproject.org/latest/ld/. - * po/da.po: Likewise. - * po/es.po: Likewise. - * po/fi.po: Likewise. - * po/fr.po: Likewise. - * po/id.po: Likewise. - * po/it.po: Likewise. - * po/ja.po: Likewise. - * po/tr.po: Likewise. - * po/uk.po: Likewise. - * po/vi.po: Likewise. - * po/zh_CN.po: Likewise. - * po/zh_TW.po: Likewise. - * po/de.po: New file from translationproject.org. - * po/ru.po: Likewise. - * configure.ac (ALL_LINGUAS): Add de, ru. Sort. - * configure: Regenerate. - -2017-07-12 Alan Modra - - * testsuite/ld-scripts/align.exp: Exclude powerpc*-*-aix*. - * testsuite/ld-scripts/assign-loc.d: Likewise. - * testsuite/ld-scripts/defined3.d: Likewise. - * testsuite/ld-scripts/defined4.d: Likewise. - * testsuite/ld-scripts/defined5.d: Likewise. - * testsuite/ld-scripts/expr2.d: Likewise. - * testsuite/ld-scripts/provide.exp: Likewise. - * testsuite/ld-scripts/sane1.d: Likewise. - * testsuite/ld-scripts/size.exp: Likewise. - * testsuite/ld-scripts/defined2.d: Don't xfail rs6000-*-aix*. - -2017-07-12 Alan Modra - - * testsuite/ld-arc/nps-1b.err: Update. - * testsuite/ld-x86-64/ilp32-11.d: Update. - -2017-07-11 H.J. Lu - - * testsuite/ld-selective/selective.exp: Support single digit - GCC version. - -2017-07-11 Jiong Wang - - * testsuite/ld-aarch64/dt_textrel.d: Use "#pass" instead of ".*" to - filter out remaining lines. - -2017-07-07 Maciej W. Rozycki - - * emultempl/mipself.em (mips_before_allocation): Avoid ELF - processing if not MIPS ELF. - * testsuite/ld-mips-elf/binary.d: New test. - * testsuite/ld-mips-elf/binary.ld: New test linker script. - * testsuite/ld-mips-elf/binary.s: New test source. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new test. - -2017-07-07 Alan Modra - - * testsuite/ld-powerpc/ppc476-shared.lnk: Align .bss. - * testsuite/ld-powerpc/ppc476-shared.d: Adjust. - * testsuite/ld-powerpc/ppc476-shared2.d: Adjust. - -2017-07-07 Alan Modra - - * Makefile.am (eelf64_s390.c): Depend on emultempl/s390.em. - -2017-07-04 Tristan Gingold - - * configure: Regenerate. - -2017-07-04 Tristan Gingold - - * NEWS: Add marker for 2.29. - -2017-07-03 Tristan Gingold - - * po/ld.pot: Regenerate. - -2017-06-30 Maciej W. Rozycki - - * testsuite/ld-mips-elf/relax-offset.dd: New test. - * testsuite/ld-mips-elf/relax-offset.gd: New test. - * testsuite/ld-mips-elf/relax-offset-umips.dd: New test. - * testsuite/ld-mips-elf/relax-offset-umips.gd: New test. - * testsuite/ld-mips-elf/relax-offset.ld: New test linker script. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - (prune_warnings): New temporary procedure. - -2017-06-28 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips-elf-flags.exp: Add interAptiv MR2 - tests. - -2017-06-27 Senthil Kumar Selvaraj - - PR ld/13402 - * testsuite/ld-avr/pr13402.d: New test. - * testsuite/ld-avr/pr13402.s: New test. - -2017-06-27 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): - Add an `args' final argument and examination code for `readelf - -A' output. Update procedure description accordingly. - -2017-06-27 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): - Use `remote_exec' to call `readelf'. Log the command issued. - -2017-06-27 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): - Use `readelf -h' rather than `readelf --headers'. - -2017-06-26 Maciej W. Rozycki - - * testsuite/ld-mips-elf/lsi-4010-isa.d: New test. - * ld/testsuite/ld-mips-elf/mips-elf.exp: Run the new test. - -2017-06-26 Maciej W. Rozycki - - * testsuite/ld-elf/sizeofa.d: Also accept the OBJECT type for - the symbols examined. - * testsuite/ld-elf/sizeofc.d: Likewise. - * testsuite/ld-elf/startofa.d: Likewise. - * testsuite/ld-elf/startofc.d: Likewise. - -2017-06-26 Alan Modra - - * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Skip - --just-syms bfds when looking for a place to attach .note.gnu.build-id - and .eh_frame_hdr sections. Delete dead code. - -2017-06-24 Thomas Preud'homme - - * testsuite/ld-arm/arm-elf.exp (EABI attribute merging 11): New test. - (EABI attribute merging 12): Likewise. - * testsuite/ld-arm/attr-merge-11a.s: New file. - * testsuite/ld-arm/attr-merge-11b.s: New file. - * testsuite/ld-arm/attr-merge-11.attr: New file. - * testsuite/ld-arm/attr-merge-12a.s: New file. - * testsuite/ld-arm/attr-merge-12b.s: New file. - * testsuite/ld-arm/attr-merge-12.attr: New file. - -2017-06-22 H.J. Lu - - * testsuite/ld-i386/i386.exp: Run weakundef1 tests. - * testsuite/ld-i386/weakundef1.c: New file. - -2017-06-22 H.J. Lu - - PR ld/21090 - * testsuite/ld-elfvsb/elfvsb.exp (visibility_run): Pass - $NOPIE_CFLAGS if non-PIE is required. - -2017-06-22 H.J. Lu - - PR ld/21090 - * testsuite/ld-i386/i386.exp: Pass $NOPIE_CFLAGS and - $NOPIE_LDFLAGS to "Run pr19031". - -2017-06-22 H.J. Lu - - PR ld/21090 - * testsuite/ld-gc/gc.exp: Compile tmpdir/pr14265.o with - $NOPIE_CFLAGS. - * testsuite/ld-i386/i386.exp: Pass $NOPIE_CFLAGS and - $NOPIE_LDFLAGS if non-PIE is required. - * testsuite/ld-i386/no-plt.exp (NOPIE_CFLAGS): New. - (NOPIE_LDFLAGS): Likewise. - Pass $NOPIE_LDFLAGS if non-PIE is required. - * testsuite/ld-shared/shared.exp: Compile tmpdir/sh1np.o with - $NOPIE_CFLAGS. - -2017-06-22 H.J. Lu - - * NEWS: Mention -z shstk and GNU_PROPERTY_X86_FEATURE_1_SHSTK. - * emulparams/cet.sh (PARSE_AND_LIST_OPTIONS_CET): Add "-z shstk". - (PARSE_AND_LIST_ARGS_CASE_Z_CET): Support "-z shstk". - * ld.texinfo: Document -z shstk. - * testsuite/ld-i386/i386.exp: Run SHSTK tests. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/property-x86-shstk.s: New file. - * testsuite/ld-i386/property-x86-shstk1a.d: Likewise. - * testsuite/ld-i386/property-x86-shstk1b.d: Likewise. - * testsuite/ld-i386/property-x86-shstk2.d: Likewise. - * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. - * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. - * testsuite/ld-i386/property-x86-shstk4.d: Likewise. - * testsuite/ld-i386/property-x86-shstk5.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk.s: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk2.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk4.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-shstk5.d: Likewise. - -2017-06-22 H.J. Lu - - * Makefile.am (ELF_X86_DEPS): Add $(srcdir)/emulparams/cet.sh. - * Makefile.in: Regenerated. - * NEWS: Mention GNU_PROPERTY_X86_FEATURE_1_IBT, -z ibtplt - and -z ibt. - * emulparams/cet.sh: New file. - * testsuite/ld-i386/ibt-plt-1.d: Likewise. - * testsuite/ld-i386/ibt-plt-1.s: Likewise. - * testsuite/ld-i386/ibt-plt-2.s: Likewise. - * testsuite/ld-i386/ibt-plt-2a.d: Likewise. - * testsuite/ld-i386/ibt-plt-2b.d: Likewise. - * testsuite/ld-i386/ibt-plt-2c.d: Likewise. - * testsuite/ld-i386/ibt-plt-2d.d: Likewise. - * testsuite/ld-i386/ibt-plt-3.s: Likewise. - * testsuite/ld-i386/ibt-plt-3a.d: Likewise. - * testsuite/ld-i386/ibt-plt-3b.d: Likewise. - * testsuite/ld-i386/ibt-plt-3c.d: Likewise. - * testsuite/ld-i386/ibt-plt-3d.d: Likewise. - * testsuite/ld-i386/plt-main-ibt.dd: Likewise. - * testsuite/ld-i386/plt-pie-ibt.dd: Likewise. - * testsuite/ld-i386/property-x86-empty.s: Likewise. - * testsuite/ld-i386/property-x86-ibt.s: Likewise. - * testsuite/ld-i386/property-x86-ibt1a.d: Likewise. - * testsuite/ld-i386/property-x86-ibt1b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt2.d: Likewise. - * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. - * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. - * testsuite/ld-i386/property-x86-ibt4.d: Likewise. - * testsuite/ld-i386/property-x86-ibt5.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-1.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-1.s: Likewise. - * testsuite/ld-x86-64/ibt-plt-2.s: Likewise. - * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2a.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2b-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2b.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2c.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2d-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-2d.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3.s: Likewise. - * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3a.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3b-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3b.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3c.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3d-x32.d: Likewise. - * testsuite/ld-x86-64/ibt-plt-3d.d: Likewise. - * testsuite/ld-x86-64/plt-main-ibt-now.rd: Likewise. - * testsuite/ld-x86-64/plt-main-ibt-x32.dd: Likewise. - * testsuite/ld-x86-64/plt-main-ibt.dd: Likewise. - * testsuite/ld-x86-64/property-x86-empty.s: Likewise. - * testsuite/ld-x86-64/property-x86-ibt.s: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt2.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt4.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-ibt5.d: Likewise. - * emulparams/elf32_x86_64.sh: Source emulparams/cet.sh. - (TINY_READONLY_SECTION): Add .plt.sec. - * emulparams/elf_i386.sh: Likewise. - * emulparams/elf_x86_64.sh: Source emulparams/cet.sh. - * ld.texinfo: Document -z ibtplt and -z ibt. - * testsuite/ld-i386/i386.exp: Run IBT and IBT PLT tests. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-x86-64/pr21481b.S (check): Updated for x32. - -2017-06-21 H.J. Lu - - PR ld/21090 - * testsuite/ld-elf/shared.exp: Pass $NOPIE_CFLAGS and - $NOPIE_LDFLAGS if non-PIE is required. - -2017-06-21 H.J. Lu - - PR ld/21090 - * testsuite/ld-scripts/crossref.exp: Also pass $NOPIE_CFLAGS - to CC. - -2017-06-21 H.J. Lu - - PR ld/21090 - * testsuite/ld-size/size.exp: Pass $NOPIE_LDFLAGS to size-4a, - size-4b, size-5a, size-5b, size-6 and size-8 tests. - * testsuite/ld-srec/srec.exp (NOPIE_CFLAGS): New. - (NOPIE_LDFLAGS): Likewise. - (CC): Add $NOPIE_CFLAGS $NOPIE_LDFLAGS. - (CXX): Likewise. - * testsuite/ld-x86-64/no-plt.exp (NOPIE_CFLAGS): New. - (NOPIE_LDFLAGS): Likewise. - Pass $NOPIE_LDFLAGS to "No PLT (dynamic 1a)", - "No PLT (dynamic 1c)" and "Run pr20253-2f". - * testsuite/ld-x86-64/x86-64.exp: Pass $NOPIE_LDFLAGS to - "Build gotpcrel1" and "Run pr19031". - -2017-06-21 Alan Modra - - * testsuite/ld-powerpc/powerpc.exp: Run TOCSAVE tests. - * testsuite/ld-powerpc/tocsave1.s, - * testsuite/ld-powerpc/tocsave1a.d, - * testsuite/ld-powerpc/tocsave1s.d, - * testsuite/ld-powerpc/tocsave2.s, - * testsuite/ld-powerpc/tocsave2a.d, - * testsuite/ld-powerpc/tocsave2s.d, - * testsuite/ld-powerpc/tocsavelib.s: New files. - -2017-06-20 Andreas Krebbel - - * Makefile.in: Add s390.em as build dependency. - * emulparams/elf64_s390.sh (EXTRA_EM_FILE): Add s390.em. - * emultempl/s390.em: New file. - * gen-doc.texi: Add documentation for --s390-pgste option. - * ld.texinfo: Likewise. - -2017-06-19 H.J. Lu - - PR ld/21626 - * testsuite/ld-i386/i386.exp: Run ld/21626 tests. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - -2017-06-18 Alan Modra - - * testsuite/lib/ld-lib.exp (is_underscore_target): New. - * testsuite/ld-elf/elf.exp (ASFLAGS): Define UNDERSCORE. - * testsuite/ld-elf/pr21562a.s: If UNDERSCORE defined, - reference sym with prefix. - * testsuite/ld-elf/pr21562b.s: Likewise. - * testsuite/ld-elf/sizeof.s: Likewise. - * testsuite/ld-elf/startof.s: Likewise. - * testsuite/ld-elf/pr14156a.d: Adjust for extra symbols. - * testsuite/ld-elf/pr21562a.d: Remove underscore target from - xfails, and match prefixed symbol. - * testsuite/ld-elf/pr21562b.d: Likewise. - * testsuite/ld-elf/pr21562c.d: Likewise. - * testsuite/ld-elf/pr21562d.d: Likewise. - * testsuite/ld-elf/pr21562e.d: Likewise. - * testsuite/ld-elf/pr21562f.d: Likewise. - * testsuite/ld-elf/pr21562g.d: Likewise. - * testsuite/ld-elf/pr21562h.d: Likewise. - * testsuite/ld-elf/pr21562i.d: Likewise. - * testsuite/ld-elf/pr21562j.d: Likewise. - * testsuite/ld-elf/pr21562k.d: Likewise. - * testsuite/ld-elf/pr21562l.d: Likewise. - * testsuite/ld-elf/pr21562m.d: Likewise. - * testsuite/ld-elf/pr21562n.d: Likewise. - * testsuite/ld-elf/sizeofa.d: Likewise. - * testsuite/ld-elf/sizeofb.d: Likewise. - * testsuite/ld-elf/sizeofc.d: Likewise. - * testsuite/ld-elf/startofa.d: Likewise. - * testsuite/ld-elf/startofb.d: Likewise. - * testsuite/ld-elf/startofc.d: Likewise. - -2017-06-16 Alan Modra - - PR ld/20022 - PR ld/21557 - PR ld/21562 - PR ld/21571 - * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't set - __start/__stop syms here. - * ldlang.c (lang_set_startof): Delete. - (start_stop_syms, start_stop_count, start_stop_alloc): New vars. - (lang_define_start_stop, lang_init_start_stop, foreach_start_stop, - undef_start_stop, lang_undef_start_stop, lang_init_startof_sizeof, - set_start_stop, lang_finalize_start_stop): New functions. - (lang_process): Call _start_stop functions. - * testsuite/ld-elf/pr21562a.d: Use xfail rather than notarget. - Correct typos and list of xfail targets. - * testsuite/ld-elf/pr21562b.d: Likewise. - * testsuite/ld-elf/pr21562c.d: Likewise. - * testsuite/ld-elf/pr21562d.d: Likewise. - * testsuite/ld-elf/pr21562e.d: Likewise. - * testsuite/ld-elf/pr21562f.d: Likewise. - * testsuite/ld-elf/pr21562g.d: Likewise. - * testsuite/ld-elf/pr21562h.d: Likewise. - * testsuite/ld-elf/pr21562i.d: Likewise. - * testsuite/ld-elf/pr21562j.d: Likewise. - * testsuite/ld-elf/pr21562k.d: Likewise. - * testsuite/ld-elf/pr21562l.d: Likewise. - * testsuite/ld-elf/pr21562m.d: Likewise. - * testsuite/ld-elf/pr21562n.d: Likewise. - * testsuite/ld-elf/sizeofa.d: Likewise. Adjust to pass for generic ELF. - * testsuite/ld-elf/sizeofb.d: Likewise. - * testsuite/ld-elf/startofa.d: Likewise. - * testsuite/ld-elf/startofb.d: Likewise. - -2017-06-16 Jiong Wang - - * testsuite/ld-aarch64/aarch64-elf.exp: Update test name - * testsuite/ld-aarch64/pcrel.s: Add new testcases. - * testsuite/ld-aarch64/pcrel_pic_undefined.d: Update the expected - warnings. - * testsuite/ld-aarch64/pcrel_pic_defined_local.d: Rename ... - * testsuite/ld-aarch64/pcrel_pic_defined.d: ... to this. - Update expected warnings. - -2017-06-15 H.J. Lu - - * exsup.c (elf_shlib_list_options): Display "-z stack-size=SIZE" - instead of "-z stacksize=SIZE". - -2017-06-15 Jiong Wang - - * testsuite/ld-aarch64/copy-reloc-exe-2.s: New test source file. - * testsuite/ld-aarch64/copy-reloc-2.d: New test. - * testsuite/ld-aarch64/copy-reloc-exe-eliminate.s: New test source file. - * testsuite/ld-aarch64/copy-reloc-eliminate.d: New test. - * testsuite/ld-aarch64/copy-reloc-so.s: Define new global objects. - * testsuite/ld-aarch64/aarch64-elf.exp: Run new tests. - -2017-06-14 Nick Clifton - - PR binutils/21580 - * testsuite/ld-nds32/diff.d: Adjust expected output. - -2017-06-14 H.J. Lu - - PR ld/20022 - * testsuite/ld-gc/pr20022.d: Skip on targets without dynamic - relocations in .text section. - -2017-06-14 H.J. Lu - - * testsuite/ld-elf/pr21562a.d: Skip on targets with leading char - in in symbol name or without --gc-sections. - * testsuite/ld-elf/pr21562b.d: Likewise. - * testsuite/ld-elf/pr21562c.d: Likewise. - * testsuite/ld-elf/pr21562d.d: Likewise. - * testsuite/ld-elf/pr21562i.d: Likewise. - * testsuite/ld-elf/pr21562j.d: Likewise. - * testsuite/ld-elf/pr21562k.d: Likewise. - * testsuite/ld-elf/pr21562l.d: Likewise. - * testsuite/ld-elf/pr21562m.d: Likewise. - * testsuite/ld-elf/pr21562n.d: Likewise. - * testsuite/ld-elf/pr21562e.d: Skip on targets with leading char - in symbol name. - * testsuite/ld-elf/pr21562f.d: Likewise. - * testsuite/ld-elf/pr21562g.d: Likewise. - * testsuite/ld-elf/pr21562h.d: Likewise. - -2017-06-14 H.J. Lu - - * testsuite/ld-gc/pr20022a.s: Add size to bar. - -2017-06-14 H.J. Lu - - * testsuite/ld-elf/sizeofa.d: Skip on targets with leading char - in symbol name. - * testsuite/ld-elf/sizeofb.d: Likewise. - * testsuite/ld-elf/startofa.d: Likewise. - * testsuite/ld-elf/startofb.d: Likewise. - -2017-06-14 Georg-Johann Lay - - PR ld/21583 - * scripttempl/avr.sc (.jumptables): Move down in text section. - (.hightext): New in text. - -2017-06-14 Sebastian Huber - - * configure.tgt (epiphany-*-elf): Accept epiphany-*-*. - -2017-06-13 H.J. Lu - - * ldlang.c (lang_set_startof): Skip if config.build_constructors - is FALSE. - * testsuite/ld-elf/sizeofc.d: New file. - * testsuite/ld-elf/startofc.d: Likewise. - -2017-06-13 H.J. Lu - - * testsuite/ld-elf/sizeof.d: Renamed to ... - * testsuite/ld-elf/sizeofa.d: This. Updated. - * testsuite/ld-elf/startof.d: Renamed to ... - * testsuite/ld-elf/startofa.d: This. Updated. - * testsuite/ld-elf/sizeofb.d: New file. - * testsuite/ld-elf/startofb.d: Likewise. - -2017-06-13 H.J. Lu - - PR ld/20022 - PR ld/21557 - PR ld/21562 - PR ld/21571 - * ld.texinfo: Update __start_SECNAME/__stop_SECNAME symbols. - * ldlang.c (lang_insert_orphan): Move handling of __start_SECNAME - and __stop_SECNAME symbols to ... - (lang_set_startof): Here. Also define __start_SECNAME and - __stop_SECNAME for -Ur. - * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Mark - referenced __start_SECNAME and __stop_SECNAME symbols as hidden - and set start_stop for garbage collection. - * testsuite/ld-elf/pr21562a.d: New file. - * testsuite/ld-elf/pr21562a.s: Likewise. - * testsuite/ld-elf/pr21562a.t: Likewise. - * testsuite/ld-elf/pr21562b.d: Likewise. - * testsuite/ld-elf/pr21562b.s: Likewise. - * testsuite/ld-elf/pr21562b.t: Likewise. - * testsuite/ld-elf/pr21562c.d: Likewise. - * testsuite/ld-elf/pr21562c.t: Likewise. - * testsuite/ld-elf/pr21562d.d: Likewise. - * testsuite/ld-elf/pr21562d.t: Likewise. - * testsuite/ld-elf/pr21562e.d: Likewise. - * testsuite/ld-elf/pr21562f.d: Likewise. - * testsuite/ld-elf/pr21562g.d: Likewise. - * testsuite/ld-elf/pr21562h.d: Likewise. - * testsuite/ld-elf/pr21562i.d: Likewise. - * testsuite/ld-elf/pr21562j.d: Likewise. - * testsuite/ld-elf/pr21562k.d: Likewise. - * testsuite/ld-elf/pr21562l.d: Likewise. - * testsuite/ld-elf/pr21562m.d: Likewise. - * testsuite/ld-elf/pr21562n.d: Likewise. - * testsuite/ld-gc/pr20022.d: Likewise. - * testsuite/ld-gc/pr20022a.s: Likewise. - * testsuite/ld-gc/pr20022b.s: Likewise. - * testsuite/ld-gc/gc.exp: Run PR ld/20022 tests. - * testsuite/ld-gc/pr19161.d: Also accept local __start_SECNAME - symbol. - * testsuite/ld-gc/start.d: Likewise. - * testsuite/ld-x86-64/lea1a.d: Updated. - * testsuite/ld-x86-64/lea1b.d: Updated. - * testsuite/ld-x86-64/lea1d.d: Updated. - * testsuite/ld-x86-64/lea1e.d: Likewise. - -2017-06-13 H.J. Lu - - * testsuite/ld-elf/sizeof.d: New file. - * testsuite/ld-elf/sizeof.s: Likewise. - * testsuite/ld-elf/startof.d: Likewise. - * testsuite/ld-elf/startof.s: Likewise. - -2017-06-13 Renlin Li - - * testsuite/ld-elf/shared.exp (build_tests): Add --no-dynamic-linker - option to rdynamic-1 and dynamic-1 tests. - -2017-06-09 H.J. Lu - - * testsuite/ld-x86-64/property-x86-3-x32.d: New file. - * testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-4b-x32.d: Likewise. - * testsuite/ld-x86-64/property-x86-3.d: Also pass - -defsym __64_bit__=1 to asssembler. - * testsuite/ld-x86-64/property-x86-4a.d: Likewise. - * testsuite/ld-x86-64/property-x86-4b.d: Likewise. - * testsuite/ld-x86-64/property-x86-3.s: Align to 4 bytes if - __64_bit__ isn't defined. - * testsuite/ld-x86-64/property-x86-4a.s: Likewise. - * testsuite/ld-x86-64/property-x86-4b.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run property-x86-3-x32, - property-x86-4a-x32 and property-x86-4b-x32. - -2017-06-08 Cupertino Miranda - - * testsuite/ld-arc/tls_ie-01.d: Changed expected result. - -2017-06-08 H.J. Lu - - * testsuite/ld-ifunc/ifunc-1-local-x86.d: Pass - "-Map tmpdir/ifunc-1-local-x86.map" to ld and check - ifunc-1-local-x86.map. - * testsuite/ld-ifunc/ifunc-1-x86.d: Pass - "-Map tmpdir/ifunc-1-x86.map" to ld and check ifunc-1-x86.map. - * testsuite/ld-ifunc/ifunc-1-local-x86.map: New file. - * testsuite/ld-ifunc/ifunc-1-x86.map: Likewise. - -2017-06-07 Alan Modra - - * testsuite/ld-unique/pr21529.d: xfail aarch64, arm, hppa, ia64, - nds32, and score. Match any output. - -2017-06-06 Andrew Burgess - - * ld.h (struct args_type): Fix typo in comment. - -2017-06-06 Andrew Burgess - - * ld.h (struct args_type): Add force_group_allocation field. - * ldgram.y: Add support for FORCE_GROUP_ALLOCATION. - * ldlex.h: Likewise. - * ldlex.l: Likewise. - * lexsup.c: Likewise. - * ldlang.c (unique_section_p): Check resolve_section_groups flag - not the relaxable link flag. - (lang_add_section): Discard section groups when we're resolving - groups. Clear the SEC_LINK_ONCE flag if we're resolving section - groups. - * ldmain.c (main): Initialise resolve_section_groups flag in - link_info based on command line flags. - * testsuite/ld-elf/group11.d: New file. - * testsuite/ld-elf/group12.d: New file. - * testsuite/ld-elf/group12.ld: New file. - * NEWS: Mention new features. - * ld.texinfo (Options): Document --force-group-allocation. - (Miscellaneous Commands): Document FORCE_GROUP_ALLOCATION. - -2017-06-05 H.J. Lu - - PR ld/21529 - * testsuite/ld-unique/pr21529.d: New file. - * testsuite/ld-unique/pr21529.s: Likewise. - * testsuite/ld-unique/unique.exp: Run *.d. - -2017-06-05 Alan Modra - - * ldmain.c (main): Correct setting of link_indo.new_dtags. - * testsuite/ld-elf/now-3.d: Pass --disable-new-dtags to ld - * testsuite/ld-elf/now-4.d: Likewise. - * testsuite/ld-elf/rpath-1.d: Likewise. - * testsuite/ld-elf/rpath-2.d: Likewise. - -2017-06-05 Slava Barinov - - * configure.ac: Add --enable-new-dtags option. - * ldmain.c (main): Set link_info.new_dtags to 1 if when - --enable-new-dtags is switched on. - * configure: Regenerate. - * config.in: Regenerate. - -2017-06-02 H.J. Lu - - * emulparams/call_nop.sh: Remove -z prefix-nop. - * ld.texinfo: Likewise. - * testsuite/ld-i386/call3c.d: Check for linker error. - * testsuite/ld-x86-64/call1c.d: Likewise. - -2017-06-01 Alan Modra - - * emultempl/ppc64elf.em (params): Init plt_localentry0 field. - (enum ppc64_opt): New, replacing OPTION_* defines. Add - OPTION_PLT_LOCALENTRY, and OPTION_NO_PLT_LOCALENTRY. - (PARSE_AND_LIST_*): Support --plt-localentry and --no-plt-localentry. - * testsuite/ld-powerpc/elfv2so.d: Update. - * testsuite/ld-powerpc/powerpc.exp (TLS opt 5): Use --no-plt-localentry. - * testsuite/ld-powerpc/tlsopt5.d: Update. - -2017-05-31 Alan Modra - - * emultempl/ppc64elf.em (plt-static-chain help): Fix quoting. - -2017-05-22 Jiong Wang - - * configure.tgt: Set "targ_emul" to "aarch64linux32b" for - aarch64_be-*-linux-gnu_ilp32. Set "targ_emul" to "aarch64linux32" for - aarch64-*-linux-gnu_ilp32. - -2017-05-19 H.J. Lu - - * testsuite/ld-i386/i386.exp: Run property-x86-4a and - property-x86-4b. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/property-x86-4a.d: New file. - * testsuite/ld-i386/property-x86-4a.s: Likewise. - * testsuite/ld-i386/property-x86-4b.d: Likewise. - * testsuite/ld-i386/property-x86-4b.s: Likewise. - * testsuite/ld-x86-64/property-x86-4a.d: Likewise. - * testsuite/ld-x86-64/property-x86-4a.s: Likewise. - * testsuite/ld-x86-64/property-x86-4b.d: Likewise. - * testsuite/ld-x86-64/property-x86-4b.s: Likewise. - -2017-05-19 Georg-Johann Lay - - PR ld/21472 - * emulparams/avrxmega3.sh (RODATA_PM_OFFSET): Set to 0x8000. - * scripttempl/avr.sc (__RODATA_PM_OFFSET__) [RODATA_PM_OFFSET]: - Use RODATA_PM_OFFSET as default if not already defined. - (.data) [!RODATA_PM_OFFSET]: Don't include .rodata and friends. - (.rodata) [RODATA_PM_OFFSET]: Put at an offset of - __RODATA_PM_OFFSET__. - -2017-05-18 Nick Clifton - - PR ld/21251 - * ldfile.c (ldfile_add_library_path): If the path starts with - $SYSROOT then use the sysroot as the real prefix. - * ldlang.c (lang_add_input_file): Treat $SYSROOT in the same - way as =. - * ldlex.l: Add $SYSROOT as allow prefix for a filename. - * ld.texinfo (-L): Document that $SYSROOT acts like = when - prefixing a library search path. - (INPUT): Likewise. - * testsuite/ld-scripts/sysroot-prefix.exp: Add $SYSROOT prefix - tests. - -2017-05-18 Alan Modra - - * emultempl/elf32.em: Don't compare boolean values against TRUE or FALSE. - * emultempl/pe.em: Likewise. - * emultempl/pep.em: Likewise. - * emultempl/xtensaelf.em (xtensa_wild_group_interleave_callback): - Don't compare enum against TRUE. - -2017-05-18 Alan Modra - - PR ld/20882 - * testsuite/ld-gc/pr20882.d: Don't pass -gdwarf-sections to gas. - Allow for 16-bit address targets and match expected data fully. - * testsuite/ld-gc/pr20882a.s: Delete .debug_line section. - * testsuite/ld-gc/pr20882b.s: Likewise. - * testsuite/ld-gc/pr20882c.s: Likewise. - -2017-05-17 H.J. Lu - - PR ld/20882 - * testsuite/ld-gc/gc.exp: Run pr20882. - * testsuite/ld-gc/pr20882.d: New file. - * testsuite/ld-gc/pr20882a.s: Likewise. - * testsuite/ld-gc/pr20882b.s: Likewise. - * testsuite/ld-gc/pr20882c.s: Likewise. - -2017-05-16 H.J. Lu - - PR ld/21481 - * testsuite/ld-x86-64/x86-64.exp: Run PR ld/21481 tests only - if IFUNC is supported by run-time. - -2017-05-16 Alan Modra - - * plugin.c: Rename occurrences of non_ir_ref. - -2017-05-16 Alan Modra - - * plugin.c (is_visible_from_outside): Use non_ir_ref_dynamic. - (plugin_notice): Set non_ir_ref for references from regular - objects, non_ir_ref_dynamic for references from dynamic objects. - -2017-05-15 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips16e2-pcrel-0.d: New test. - * testsuite/ld-mips-elf/mips16e2-pcrel-1.d: New test. - * testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d: New test. - * testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d: New test. - * testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d: New test. - * testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d: New test. - * testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d: New test. - * testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d: New test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2017-05-15 Nick Clifton - - PR ld/21459 - * scripttempl/pe.sc: Add .debug_gdb_scripts section. - * scripttempl/pep.sc: Likewise. - -2017-05-12 H.J. Lu - - * testsuite/ld-i386/i386.exp: Run property-x86-3. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/property-x86-3.d: New file. - * testsuite/ld-i386/property-x86-3.s: Likewise. - * testsuite/ld-x86-64/property-x86-3.d: Likewise. - * testsuite/ld-x86-64/property-x86-3.s: Likewise. - -2017-05-11 H.J. Lu - - * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): Replace - .plt.bnd with .plt.sec. - * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise. - * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-plt-1.d: Likewise. - * testsuite/ld-x86-64/mpx3.dd: Likewise. - * testsuite/ld-x86-64/mpx3n.dd: Likewise. - * testsuite/ld-x86-64/mpx4.dd: Likewise. - * testsuite/ld-x86-64/mpx4n.dd: Likewise. - * testsuite/ld-x86-64/plt-main-bnd-now.rd: Likewise. - * testsuite/ld-x86-64/pr21038b-now.d: Likewise. - * testsuite/ld-x86-64/pr21038b.d: Likewise. - * testsuite/ld-x86-64/pr21038c-now.d: Likewise. - * testsuite/ld-x86-64/pr21038c.d: Likewise. - -2017-05-11 H.J. Lu - - * testsuite/ld-i386/plt-pic2.dd: Updated. - * testsuite/ld-i386/plt2.dd: Likewise. - * testsuite/ld-i386/plt2.rd: Likewise. - * testsuite/ld-i386/pr17689now.rd: Likewise. - * testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-16-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. - * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. - * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. - * testsuite/ld-x86-64/plt2.dd: Likewise. - * testsuite/ld-x86-64/plt2.rd: Likewise. - * testsuite/ld-x86-64/pr17689now.rd: Likewise. - * testsuite/ld-x86-64/pr21038b-now.d: Likewise. - * testsuite/ld-x86-64/pr21038c-now.d: Likewise. - -2017-05-10 H.J. Lu - - * emulparams/i386lynx.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): Set - to yes. - * emulparams/i386moss.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): - Likewise. - * emulparams/i386nw.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): Likewise. - -2017-05-10 H.J. Lu - - PR ld/21481 - * testsuite/ld-x86-64/pr21481a.c: New file. - * testsuite/ld-x86-64/pr21481b.S: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run PR ld/21481 tests. - -2017-05-10 Claudiu Zissulescu - - * testsuite/ld-arc/attr-merge-0.d: New file. - * testsuite/ld-arc/attr-merge-0.s: Likewise. - * testsuite/ld-arc/attr-merge-0e.s: Likewise. - * testsuite/ld-arc/attr-merge-1.d: Likewise. - * testsuite/ld-arc/attr-merge-1.s: Likewise. - * testsuite/ld-arc/attr-merge-1e.s: Likewise. - * testsuite/ld-arc/attr-merge-2.d: Likewise. - * testsuite/ld-arc/attr-merge-2.s: Likewise. - * testsuite/ld-arc/attr-merge-3.d: Likewise. - * testsuite/ld-arc/attr-merge-3.s: Likewise. - * testsuite/ld-arc/attr-merge-3e.s: Likewise. - * testsuite/ld-arc/attr-merge-4.s: Likewise. - * testsuite/ld-arc/attr-merge-5.d: Likewise. - * testsuite/ld-arc/attr-merge-5a.s: Likewise. - * testsuite/ld-arc/attr-merge-5b.s: Likewise. - * testsuite/ld-arc/attr-merge-conflict-isa.d: Likewise. - * testsuite/ld-arc/attr-merge-err-isa.d: Likewise. - * testsuite/ld-arc/attr-merge-incompatible-cpu.d: Likewise. - * testsuite/ld-arc/got-01.d: Update test. - * testsuite/ld-arc/attr-merge-err-quarkse.d: New file. - * testsuite/ld-arc/attr-quarkse.s: Likewise. - * testsuite/ld-arc/attr-quarkse2.s: Likewise. - -2017-05-09 Awson - - PR ld/21471 - * pe-dll.c (pe_detail_list): Add entry for pe-bigobj-x86-64. - -2017-05-09 Benjamin Peterson - - * ld.texinfo (orphan sections): Grammar fix. - -2017-05-08 H.J. Lu - - * testsuite/ld-ifunc/ifunc-16-x86-64-now.d: New file. - * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. - * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise. - * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. - * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. - * testsuite/ld-x86-64/mpx3n.dd: Likewise. - * testsuite/ld-x86-64/mpx4n.dd: Likewise. - * testsuite/ld-x86-64/plt-main-bnd-now.rd: Likewise. - * testsuite/ld-x86-64/plt2.dd: Likewise. - * testsuite/ld-x86-64/plt2.rd: Likewise. - * testsuite/ld-x86-64/plt2.s: Likewise. - * testsuite/ld-x86-64/pr20830a-now.d: Likewise. - * testsuite/ld-x86-64/pr20830b-now.d: Likewise. - * testsuite/ld-x86-64/pr21038a-now.d: Likewise. - * testsuite/ld-x86-64/pr21038b-now.d: Likewise. - * testsuite/ld-x86-64/pr21038c-now.d: Likewise. - * testsuite/ld-x86-64/load1b-nacl.d: Updated. - * testsuite/ld-x86-64/load1b.d: Likewise. - * testsuite/ld-x86-64/plt-main-bnd.dd: Likewise. - * testsuite/ld-x86-64/pr20253-1h.d: Likewise. - * testsuite/ld-x86-64/pr20830a.d: Update the .plt.got section - with func@plt. - * testsuite/ld-x86-64/pr20830b.d: Likewise. - * testsuite/ld-x86-64/pr21038a.d: Likewise. - * testsuite/ld-x86-64/pr21038c.d: Likewise. - * testsuite/ld-x86-64/mpx.exp: Add some -z now tests. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - -2017-05-08 H.J. Lu - - * testsuite/ld-i386/i386.exp: Add some -z now tests. - * testsuite/ld-i386/plt-pic2.dd: New file. - * testsuite/ld-i386/plt2.dd: Likewise. - * testsuite/ld-i386/plt2.rd: Likewise. - * testsuite/ld-i386/plt2.s: Likewise. - * testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise. - * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise. - * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. - * testsuite/ld-i386/pr20830.d: Update the .plt.got section - with func@plt. - -2017-05-08 Thomas Preud'homme - - * testsuite/ld-arm/arm-elf.exp - (Secure gateway import library generation): Check e_type field - of import library and executable produced. - * testsuite/ld-arm/cmse-implib.type: Expectations for e_type field. - -2017-04-28 Senthil Kumar Selvaraj - - PR ld/21404 - * testsuite/ld-avr/pr21404-1.d: New test. - * testsuite/ld-avr/pr21404-1.s: New test. - * testsuite/ld-avr/pr21404-2.d: New test. - * testsuite/ld-avr/pr21404-2.s: New test. - * testsuite/ld-avr/pr21404-3.d: New test. - * testsuite/ld-avr/pr21404-3.s: New test. - * testsuite/ld-avr/pr21404-4.d: New test. - * testsuite/ld-avr/pr21404-4.s: New test. - * testsuite/ld-avr/pr21404-5.d: New test. - * testsuite/ld-avr/pr21404-5.s: New test. - * testsuite/ld-avr/pr21404-6.d: New test. - * testsuite/ld-avr/pr21404-6.s: New test. - * testsuite/ld-avr/pr21404-7.d: New test. - * testsuite/ld-avr/pr21404-7.s: New test. - * testsuite/ld-avr/pr21404-8.d: New test. - * testsuite/ld-avr/pr21404-8.s: New test. - -2017-05-03 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips16-pcrel-0.d: New test. - * testsuite/ld-mips-elf/mips16-pcrel-1.d: New test. - * testsuite/ld-mips-elf/mips16-pcrel-addend-2.d: New test. - * testsuite/ld-mips-elf/mips16-pcrel-addend-6.d: New test. - * testsuite/ld-mips-elf/mips16-pcrel-n32-0.d: New test. - * testsuite/ld-mips-elf/mips16-pcrel-n32-1.d: New test. - * testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-0.d: New test. - * testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-1.d: New test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2017-05-03 H.J. Lu - - * testsuite/ld-elf/pr21384.d: Adjusted to accommodate - additional dynamic symbols on some targets. - -2017-05-02 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips16-branch-absolute-1.d: New test. - * testsuite/ld-mips-elf/mips16-branch-absolute-2.d: New test. - * testsuite/ld-mips-elf/mips16-branch-absolute-addend-1.d: New - test. - * testsuite/ld-mips-elf/mips16-branch-absolute-n32-1.d: New - test. - * testsuite/ld-mips-elf/mips16-branch-absolute-n32-2.d: New - test. - * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32-1.d: - New test. - * testsuite/ld-mips-elf/mips16-branch-absolute-n64-1.d: New - test. - * testsuite/ld-mips-elf/mips16-branch-absolute-n64-2.d: New - test. - * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64-1.d: - New test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2017-05-02 H.J. Lu - - * testsuite/ld-i386/tls.exp: Add -Wl,--no-as-needed to - "TLS without PLT (1)" and "TLS without PLT (3)". - * testsuite/ld-x86-64/tls.exp: Add -Wl,--no-as-needed to - to "TLS without PLT (3)". - -2017-05-02 H.J. Lu - - PR ld/21384 - * testsuite/ld-elf/pr21384.d: New file. - * testsuite/ld-elf/pr21384.dl: Likewise. - * testsuite/ld-elf/pr21384.ld: Likewise. - * testsuite/ld-elf/pr21384.s: Likewise. - -2017-05-01 H.J. Lu - - * testsuite/ld-i386/tls.exp: Run GNU2 TLS tests only if there - is working GNU2 TLS support. - * testsuite/ld-x86-64/tls.exp: Likewise. - * testsuite/lib/ld-lib.exp (check_gnu2_tls_available): New proc. - -2017-04-28 H.J. Lu - - * testsuite/config/default.exp (GNU2_CFLAGS): New. Set - to -mtls-dialect=gnu2 if target compiler supports it. - * testsuite/ld-i386/tls.exp: Run -mtls-dialect=gnu2 tests. - * testsuite/ld-x86-64/tls.exp: Likewise. - * testsuite/ld-i386/tlsdesc1a.c: New file. - * testsuite/ld-i386/tlsdesc1b.c: Likewise. - * testsuite/ld-x86-64/tlsdesc1a.c: Likewise. - * testsuite/ld-x86-64/tlsdesc1b.c: Likewise. - -2017-04-28 H.J. Lu - - * testsuite/ld-elf/shared.exp: Add run-time tests for -z now. - * testsuite/ld-i386/tls.exp: Likewise. - * testsuite/ld-ifunc/ifunc.exp: Likewise. - * testsuite/ld-x86-64/tls.exp: Likewise. - -2017-04-27 H.J. Lu - - * testsuite/ld-x86-64/pr21038a.d: Update DW_CFA_nop paddings - in .eh_frame section. - * testsuite/ld-x86-64/pr21038c.d: Update .eh_frame order. - -2017-04-26 H.J. Lu - - * testsuite/ld-i386/tlsdesc2.d: New test. - * testsuite/ld-x86-64/tlsdesc2.d: Likewise. - -2017-04-26 Maciej W. Rozycki - - PR ld/21334 - * testsuite/ld-mips-elf/pr21334.dd: New test. - * testsuite/ld-mips-elf/pr21334.gd: New test. - * testsuite/ld-mips-elf/pr21334.ld: New test linker script. - * testsuite/ld-mips-elf/pr21334.s: New test source. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2017-04-24 H.J. Lu - - * testsuite/ld-x86-64/no-plt.exp: Also check no-plt-1e.nd. - * testsuite/ld-x86-64/no-plt-1e.nd: New file. - -2017-04-24 H.J. Lu - - * testsuite/ld-i386/pr12570a.d: Skip for nacl targets. - * testsuite/ld-i386/pr12570b.d: Likewise. - -2017-04-24 H.J. Lu - - PR ld/20815 - * testsuite/ld-i386/vxworks2.sd: Add space for program headers. - -2017-04-24 Jose E. Marchesi - - * testsuite/ld-sparc/tlssunbin64.dd: Expect `return' instructions - instead of `rett' in V9. - * testsuite/ld-sparc/tlssunnopic64.dd: Likewise. - * testsuite/ld-sparc/tlssunpic64.dd: Likewise. - -2017-04-21 H.J. Lu - - PR ld/21402 - * testsuite/ld-elf/indirect.exp: Don't skip PIE indirect5 and - indirect6 tests on i386. - -2017-04-21 H.J. Lu - - PR ld/19617 - PR ld/21086 - * testsuite/ld-elf/pr19617a.d: Pass --no-dynamic-linker to ld. - * testsuite/ld-elf/pr19617b.d: Likewise. - * testsuite/ld-elf/pr19617c.d: Likewise. - *testsuite/ld-i386/pr19636-4d.d: Likewise. - * testsuite/ld-elf/readelf.exp: Pass --no-dynamic-linker to ld - with --export-dynamic. - * testsuite/ld-elf/shared.exp: Pass --no-dynamic-linker to ld - with -E. - -2017-04-20 H.J. Lu - - PR ld/21402 - * testsuite/ld-elf/indirect.exp: Pass $NOPIE_LDFLAGS and - $NOPIE_CFLAGS to non-PIE indirect5 and indirect6 tests. Skip - PIE indirect5 and indirect6 tests on i386. - -2017-04-20 Maciej W. Rozycki - - * testsuite/ld-mips-elf/mips-elf.exp: Join `__ehdr_start' tests. - -2017-04-20 H.J. Lu - - PR ld/21382 - * plugin.c (is_visible_from_outside): Symbol may be visible - from outside if dynamic_ref_after_ir_def is set. - (plugin_notice): Set dynamic_ref_after_ir_def if the symbol is - defined in an IR object and referenced in a dynamic object. - * testsuite/ld-plugin/lto.exp: Run PR ld/21382 tests. - * testsuite/ld-plugin/pr21382a.c: New file. - * testsuite/ld-plugin/pr21382b.c: Likewise. - -2017-04-19 H.J. Lu - - PR ld/21401 - * testsuite/ld-ifunc/ifunc.exp: Add a libtest-2-now.so test with - -z now. - -2017-04-19 Alan Modra - - * ld.texinfo (dynamic-undefined-weak): Document. - (nodynamic-undefined-weak): Document that this option now can - be used with shared libs. - * emulparams/dynamic_undefined_weak.sh: Support -z - dynamic-undefined-weak. - * emulparams/elf32ppccommon.sh: Include dynamic_undefined_weak.sh. - * testsuite/ld-undefined/weak-undef.exp (undef_weak_so), - (undef_weak_exe): New. Use them. Add -z dynamic-undefined-weak - and -z nodynamic-undefined-weak tests. - * Makefile.am: Update powerpc dependencies. - * Makefile.in: Regenerate. - -2017-04-17 H.J. Lu - - PR ld/21389 - * testsuite/ld-elf/pr21389.map: New file. - * testsuite/ld-elf/pr21389.s: Likewise. - * testsuite/ld-elf/pr21389a.d: Likewise. - * testsuite/ld-elf/pr21389b.d: Likewise. - * testsuite/ld-elf/pr21389c.d: Likewise. - -2017-04-17 Alan Modra - - * testsuite/ld-elf/indirect5a.c, - * testsuite/ld-elf/indirect5b.c, - * testsuite/ld-elf/indirect5.map, - * testsuite/ld-elf/indirect5.out: New test. - * testsuite/ld-elf/indirect6a.c: Likewise. - * testsuite/ld-elf/indirect.exp (check_dynamic_syms): New proc. - Run new tests and check dynsyms. - -2017-04-11 Alan Modra - - PR 21274 - PR 18466 - * emultempl/pe.em (pe_find_data_imports): Don't use fixed size - symbol buffer. Instead, xmalloc max size needed with space for - prefix. Wrap overlong lines. Formatting. Pass symbol buffer - copy of name to pe_walk_relocs_of_symbol. - (make_inport_fixup): Add "name" param, pass to pe_create_import_fixup. - * emultempl/pe.em (pep_find_data_imports): As for pe_find_data_imports. - (make_import_fixup): Add "name" param, pass to pep_create_import_fixup. - Use bfd_get_signed_* and remove unnecessary casts. Formatting. - * pe-dll.c (pe_walk_relocs_of_symbol): Add "name" param. Pass to - callback. - (make_import_fixup_mark): Add "name" param. Make use of prefix - space rather than xmalloc here. - (pe_create_import_fixup): Likewise. - * pe-dll.h (pe_walk_relocs_of_symbol): Update prototype. - (pe_create_import_fixup): Likewise. - * pep-dll.h (pep_walk_relocs_of_symbol): Likewise. - (pep_create_import_fixup): Likewise. - -2017-04-10 Nick Clifton - - * ld.texinfo (--strip-discarded): Document. - (--embedded-relocs): Document. - (--spare-dynamic-tags): Document. - (--task-link): Document. - -2017-04-10 Alan Modra - - PR 21287 - * testsuite/ld-elf/init-fini-arrays.d: Match INIT_ARRAY and FINI_ARRAY. - * testsuite/ld-elf/init-fini-arrays.s: Use %init_array and %fini_array - section types. - * testsuite/lib/ld-lib.exp (default_ld_compile): Trim assembler - warnings about "ignoring incorrect section type". - (run_ld_link_exec_tests, run_cc_link_tests): Delete old comment. - -2017-04-10 Alan Modra - - * testsuite/ld-elfvsb/elfvsb.exp (visibility_run): Delete - sh1p.o, sh2p.o, sh1np.o and sh2np.o before compiling. Use - remote_file host exists rather than file exists. - -2017-04-07 H.J. Lu - - PR ld/21090 - * testsuite/ld-x86-64/x86-64.exp (undefined_weak): Use - NOPIE_CFLAGS and NOPIE_LDFLAGS to disable PIE for the non-pie - version of the test. - -2017-04-07 H.J. Lu - - PR ld/19579 - PR ld/21306 - * testsuite/ld-elf/pr19579a.c (main): Updated. - -2017-04-07 Nick Clifton - - PR 21090 - * testsuite/ld-x86-64/x86-64.exp (undefined_weak): Explicitly - disable PIE for the non-pie version of the test. - -2017-04-07 Alan Modra - - * testsuite/ld-elf/mbind2a.s: Don't use @, the ARM comment char. - -2017-04-07 gingold - - * testsuite/ld-pe/pe.exp: New test. - * testsuite/ld-pe/weakdef-1.s: New test source. - * testsuite/ld-pe/weakdef-1.d: New test. - -2017-04-07 Alan Modra - - * testsuite/ld-elf/mbind1a.d: Remove matches for PT_LOAD segments. - * testsuite/ld-elf/mbind1b.d: Likewise. - * testsuite/ld-elf/mbind1c.d: Likewise. - -2017-04-05 Hans-Peter Nilsson - - PR ld/21233 - * testsuite/ld-elf/shared.exp: Change xfails to kfails and fix - indentation issue introduced with last commit. - -2017-04-05 Hans-Peter Nilsson - - PR ld/21233 - * testsuite/ld-elf/shared.exp: Xfail all PR21233 tests but the - first test for cris*-*-*. - -2017-04-04 Maciej W. Rozycki - - PR ld/21233 - * ldlang.c (insert_undefined): Set `mark' for ELF symbols. - * testsuite/ld-elf/pr21233.sd: New test. - * testsuite/ld-elf/pr21233-l.sd: New test. - * testsuite/ld-elf/pr21233.ld: New test linker script. - * testsuite/ld-elf/pr21233-e.ld: New test linker script. - * testsuite/ld-elf/pr21233.s: New test source. - * testsuite/ld-elf/pr21233-l.s: New test source. - * testsuite/ld-elf/shared.exp: Run the new tests. - -2017-04-04 H.J. Lu - - * NEWS: Mention support for ELF SHF_GNU_MBIND and - PT_GNU_MBIND_XXX. - * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place - input GNU_MBIND sections with the same type, attributes and - sh_info field into a single output GNU_MBIND section. - * testsuite/ld-elf/elf.exp: Run mbind2a and mbind2b. - * testsuite/ld-elf/mbind1.s: New file. - * testsuite/ld-elf/mbind1a.d: Likewise. - * testsuite/ld-elf/mbind1b.d: Likewise. - * testsuite/ld-elf/mbind1c.d: Likewise. - * testsuite/ld-elf/mbind2a.s: Likewise. - * testsuite/ld-elf/mbind2b.c: Likewise. - -2017-04-03 H.J. Lu - - * NEWS: Mention support for ELF GNU program properties. - * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Call - ELF setup_gnu_properties. - * testsuite/ld-i386/i386.exp: Run property tests for Linux/i386. - * testsuite/ld-i386/pass.c: New file. - * testsuite/ld-i386/property-1.r: Likewise. - * testsuite/ld-i386/property-2.r: Likewise. - * testsuite/ld-i386/property-3.r: Likewise. - * testsuite/ld-i386/property-4.r: Likewise. - * testsuite/ld-i386/property-5.r: Likewise. - * testsuite/ld-i386/property-6.r: Likewise. - * testsuite/ld-i386/property-6a.c: Likewise. - * testsuite/ld-i386/property-6b.c: Likewise. - * testsuite/ld-i386/property-6c.S: Likewise. - * testsuite/ld-i386/property-7.r: Likewise. - * testsuite/ld-i386/property-no-copy.S: Likewise. - * testsuite/ld-i386/property-stack.S: Likewise. - * testsuite/ld-i386/property-unsorted-1.S: Likewise. - * testsuite/ld-i386/property-unsorted-2.S: Likewise. - * testsuite/ld-i386/property-x86-1.S: Likewise. - * testsuite/ld-i386/property-x86-2.S: Likewise. - * testsuite/ld-x86-64/pass.c: Likewise. - * testsuite/ld-x86-64/property-1.r: Likewise. - * testsuite/ld-x86-64/property-2.r: Likewise. - * testsuite/ld-x86-64/property-3.r: Likewise. - * testsuite/ld-x86-64/property-4.r: Likewise. - * testsuite/ld-x86-64/property-5.r: Likewise. - * testsuite/ld-x86-64/property-6.r: Likewise. - * testsuite/ld-x86-64/property-6a.c: Likewise. - * testsuite/ld-x86-64/property-6b.c: Likewise. - * testsuite/ld-x86-64/property-6c.S: Likewise. - * testsuite/ld-x86-64/property-7.r: Likewise. - * testsuite/ld-x86-64/property-no-copy.S: Likewise. - * testsuite/ld-x86-64/property-stack.S: Likewise. - * testsuite/ld-x86-64/property-unsorted-1.S: Likewise. - * testsuite/ld-x86-64/property-unsorted-2.S: Likewise. - * testsuite/ld-x86-64/property-x86-1.S: Likewise. - * testsuite/ld-x86-64/property-x86-2.S: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run property tests for - Linux/x86-64. - -2017-03-28 Hans-Peter Nilsson - - PR ld/16044 - * testsuite/ld-cris/pr16044.d, testsuite/ld-cris/dso-1c.s, - testsuite/ld-cris/dso-2b.s, testsuite/ld-cris/dso-4.s: New test. - -2017-03-21 Sandra Loosemore - - * testsuite/lib/ld-lib.exp (check_shared_lib_support): Return - false for nios2-*-elf. - -2017-03-21 gingold - - * ldlang.c (lang_check_section_addresses): Check only for - allocated sections. - -2017-03-17 Alan Modra - - * testsuite/ld-elf/sec64k.exp: Don't run on h8300 and ip2k. - -2017-03-15 Tristan Gingold - - * testsuite/ld-checks/checks.exp (overflow_check): Disable for - non-elf targets. - -2017-03-14 H.J. Lu - - * ldlang.c (lang_check_section_addresses): Use addr_mask to - check VMA and LMA. - -2017-03-13 Nick Clifton - - PR binutils/21202 - * testsuite/ld-aarch64/ifunc-5r-local.d: Update regexp. - -2017-03-13 Tristan Gingold - - * ldlang.c (lang_check_section_addresses): Check for address space - overflow. - * testsuite/ld-checks/checks.exp (overflow_check): New procedure - * testsuite/ld-checks/over.s: New test source. - * testsuite/ld-checks/over.d: New test. - * testsuite/ld-checks/over2.s: New test source. - * testsuite/ld-checks/over2.d: New test. - -2017-03-13 Alexey Neyman - - * emulparams/elf32ppccommon.sh (LIBPATH_SUFFIX): Set from target - cpu, not host. - -2017-03-11 Alan Modra - - * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Add - sysroot for -rpath search. - -2017-03-11 Alan Modra - - * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Rewrite. - Only prefix absolute paths with sysroot. Handle DOS paths. - (gld${EMULATION_NAME}_check_ld_elf_hints): Constify variable. - (gld${EMULATION_NAME}_check_ld_so_conf): Likewise. - (gld${EMULATION_NAME}_after_open): Short-circuit NULL path - searches. Rename variable. Simplify get_runpath search. - -2017-03-11 Alan Modra - - * testsuite/ld-elf/shared.exp: Use -Wl,-export-dynamic rather - than -rdynamic. - -2017-03-11 Alan Modra - - * ld.texinfo (Orphan Sections): Mention that not all targets - handle orphans well. - * testsuite/ld-elf/orphan-9.d: Don't run for i860 and i960. - * testsuite/ld-elf/orphan-10.d: Likewise. - -2017-03-09 Andrew Burgess - - * ldlang.c (lang_size_sections_1): Shortcut loop only after - tracking changes to the default regions LMA. - * testsuite/ld-elf/orphan-9.ld: Extend header comment. - * testsuite/ld-elf/orphan-10.d: New file. - * testsuite/ld-elf/orphan-10.s: New file. - * NEWS: Mention change in behaviour. - -2017-03-09 Andrew Burgess - - * ldlang.c (lang_leave_output_section_statement): Move lma_region - logic to... - (lang_propagate_lma_regions): ...this new function. - (lang_process): Call new function. - * testsuite/ld-elf/orphan-9.d: New file. - * testsuite/ld-elf/orphan-9.ld: New file. - * testsuite/ld-elf/orphan-9.s: New file. - * NEWS: Mention change in behaviour. - -2017-03-07 Alan Modra - - * ldlang.c (open_input_bfds): Check that lang_assignment_statement - is not an assert before referencing defsym. - -2017-03-05 Alan Modra - - * testsuite/ld-elf/eh3.d: Adjust for eh_frame alignment change. - * testsuite/ld-elf/eh6.d: Likewise. - * testsuite/ld-alpha/tlsbin.dd: Likewise. - * testsuite/ld-alpha/tlsbin.td: Likewise. - * testsuite/ld-alpha/tlsbinr.dd: Likewise. - * testsuite/ld-alpha/tlspic.dd: Likewise. - * testsuite/ld-alpha/tlspic.rd: Likewise. - * testsuite/ld-alpha/tlspic.sd: Likewise. - * testsuite/ld-alpha/tlspic.td: Likewise. - * testsuite/ld-mips-elf/eh-frame1-n64.d: Likewise. - * testsuite/ld-mips-elf/eh-frame2-n64.d: Likewise. - * testsuite/ld-mips-elf/eh-frame3.d: Likewise. - * testsuite/ld-x86-64/pr20830a.d: Likewise. - * testsuite/ld-x86-64/pr21038a.d: Likewise. - * testsuite/ld-x86-64/pr21038b.d: Likewise. - * testsuite/ld-x86-64/pr21038c.d: Likewise. - -2017-03-03 Max Bolingbroke - - PR 12969 - * pe-dll.c (generate_edata): Fail if the input file(s) require too - many ordinals. - -2017-03-02 Alan Modra - - * testsuite/ld-elf/shared.exp: Pass -ansi when compiling new.cc - and dl3.cc. - -2017-02-28 Alan Modra - - * testsuite/ld-elf/merge.d: xfail for nios. - -2017-02-28 Alan Modra - - * testsuite/ld-powerpc/addpcis.d: Define ext1 and ext2 at - limits of addpcis range. - -2017-02-28 Maciej W. Rozycki - - * testsuite/ld-mips-elf/jalr4.dd: Adjust for `jalr $0, $25' - instructions. - * testsuite/ld-mips-elf/jalr4-r6.dd: New test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new test. - -2017-02-27 Georg-Johann Lay - - PR target/20849 - * scripttempl/avrtiny.sc (__RODATA_PM_OFFSET__): New define. - (.rodata): New section. - (.data): Remove .rodata*. - -2017-02-25 Alan Modra - - * testsuite/ld-elf/elf.exp: Xfail pr20995 tests on hppa64-hpux. - Set up HPUX defsym. Run pr14170 tests and build symbol3 objects, - defining HPUX where necessary. Define HPUX for implib tests. - * testsuite/ld-elf/comm-data4.d: Run for hpux. - * testsuite/ld-elf/endsym.d: Likewise. - * testsuite/ld-elf/linkoncerdiff.d: Likewise. - * testsuite/ld-elf/comm-data4.s: Add alternate .comm when HPUX. - * testsuite/ld-elf/comm-data5.s: Likewise. - * testsuite/ld-elf/endsym.s: Likewise. - * testsuite/ld-elf/pr14170c.s: Likewise. - * testsuite/ld-elf/symbol3.s: Likewise. - * testsuite/ld-elf/implib.s: Likewise. Don't start directives - in first column. - * testsuite/ld-elf/linkoncerdiff2.s: Don't use numeric labels. - * testsuite/ld-elf/warn3.d: Run for hpux. - * testsuite/ld-scripts/rgn-at10.d: Xfail for hpux. - * testsuite/ld-scripts/rgn-at11.d: Likewise. - * testsuite/ld-scripts/size-2.d: Remove xfail for hpux. - -2017-02-24 Maciej W. Rozycki - - * testsuite/ld-elf/ver_def.vd: New test. - * testsuite/ld-elf/ver_def-tic6x.vd: New test. - * testsuite/ld-elf/ver_def.ld: New test linker script. - * testsuite/ld-elf/ver_def.ver: New test version script. - * testsuite/ld-elf/ver_def.s: New test source. - * testsuite/ld-elf/readelf.exp: New test script. - -2017-02-23 Maciej W. Rozycki - - * testsuite/ld-mips-elf/relax-jalr-n32.d: Remove `--relax' - option. - * testsuite/ld-mips-elf/relax-jalr-n32-shared.d: Likewise. - * testsuite/ld-mips-elf/relax-jalr-n64.d: Likewise. - * testsuite/ld-mips-elf/relax-jalr-n64-shared.d: Likewise. - -2017-02-23 Maciej W. Rozycki - - * testsuite/ld-mips-elf/jalr4.dd: New test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new test. - -2017-02-23 Alan Modra - - PR 20744 - * testsuite/ld-powerpc/vle-reloc-2.s: Use r6 for last insn of - each group. - * testsuite/ld-powerpc/vle-reloc-2.d: Update for above change - and sdarel reloc fix. - -2017-02-22 Maciej W. Rozycki - - PR ld/20828 - * testsuite/ld-elf/pr20828-d.sd: New test. - * testsuite/ld-elf/pr20828-e.sd: New test. - * testsuite/ld-elf/pr20828-v.od: New test. - * testsuite/ld-elf/pr20828-v.ver: New test version script. - * testsuite/ld-elf/pr20828-v.ld: New test linker script. - * testsuite/ld-elf/pr20828.ld: Add `.gnu.version' and - `.gnu.version_d'. - * testsuite/ld-elf/shared.exp: Run the new tests. - -2017-02-21 Nick Clifton - - * testsuite/ld-ifunc/pr18808b.c (bar): Fix compile time warning - about non-void function returning without a result. - -2017-02-17 Alan Modra - - PR 15041 - * scripttempl/pe.sc: Don't combine sections for ld -r. - * scripttempl/pep.sc: Likewise. - -2017-02-17 Alan Modra - - PR 21099 - * emulparams/elf32m32c.sh: Define STACK_ADDR and STACK_SENTINEL - rather than using OTHER_SECTIONS. - * emulparams/elf32mt.sh: Likewise. - * emulparams/elf32rx.sh: Likewise. - * emulparams/elf32rl78.sh: Likewise. Use OTHER_SYMBOLS to - define __rl78_abs__. - * emulparams/shelf.sh: Define STACK_ADDR and STACK_SENTINEL - rather than using OTHER_SECTIONS. - * emulparams/shelf32.sh: Likewise. Use OTHER_SECTIONS for .cranges. - * emulparams/shelf64.sh: Unset OTHER_SECTIONS. - * emulparams/shelf_nbsd.sh: Unset STACK_ADDR not OTHER_SECTIONS. - * emulparams/shelf_uclinux.sh: Likewise. - * emulparams/shlsymbian.sh: Unset STACK_ADDR. Use OTHER_SYMBOLS - to define _stack, not OTHER_SECTIONS. - * scripttempl/elf.sc: Move STACK, TINY_DATA_SECTION, and - TINY_BSS_SECTION before debug sections. Add STACK_SENTINEL. - * scripttempl/arclinux.sc: Likewise. - * scripttempl/elf64hppa.sc: Likewise. - * scripttempl/elfxtensa.sc: Likewise. - * scripttempl/nds32elf.sc: Likewise. - * scripttempl/armbpabi.sc: Move STACK before debug sections. - * scripttempl/elf_chaos.sc: Likewise. - * scripttempl/elfarc.sc: Delete STACK. - * scripttempl/epiphany_4x4.sc: Delete STACK. Move TINY_DATA_SECTION, - TINY_BSS_SECTION, and .stack before debug sections. - -2017-02-17 Nick Clifton - - PR ld/20825 - * ld.texinfo (Options): Add missing @item entry for --pop-state. - -2017-02-17 Alan Modra - - * testsuite/ld-elf/dwarf2.err: Accept other errors between the - multiple definition errors. - -2017-02-17 Alan Modra - - * testsuite/ld-elf/dwarf2.err: Add missing newline at end. - * testsuite/ld-elf/dwarf3.err: Likewise. Allow match without filename. - -2017-02-16 Andrew Burgess - - * testsuite/ld-elf/shared.exp: Update expected results. - * testsuite/ld-elf/dwarf2.err: Likewise - -2017-02-16 Andrew Burgess - - * testsuite/ld-elf/dwarf.exp (build_tests): Add new tests. - * testsuite/ld-elf/dwarf2.err: New file. - * testsuite/ld-elf/dwarf2a.c: New file. - * testsuite/ld-elf/dwarf2b.c: New file. - * testsuite/ld-elf/dwarf3.c: New file. - * testsuite/ld-elf/dwarf3.err: New file. - -2017-02-16 Andrew Burgess - - * testsuite/lib/ld-lib.exp (run_cc_link_tests): Add warning, - error, warning_output, and error_output actions. Remove separate - warnings parameter. - * testsuite/ld-elf/shared.exp (build_tests): Updated to use - 'warning' action. - * testsuite/ld-plugin/lto.exp (lto_link_tests): Likewise. - -2017-02-16 Alan Modra - - * testsuite/ld-elf/check-ptr-eq.c (check_ptr_eq): Change params - from void pointers to function pointers. - * testsuite/ld-elf/pr18718.c: Update to suit. - * testsuite/ld-elf/pr18720a.c: Update to suit. - -2017-02-16 Alan Modra - - PR 21000 - * testsuite/ld-elf/loadaddr1.d: Adjust for hppa file offsets. - * testsuite/ld-elf/loadaddr2.d: Likewise. - * testsuite/ld-elf/loadaddr3a.d: Likewise. - * testsuite/ld-scripts/rgn-at5.d: Likewise. - -2017-02-16 Alan Modra - - * testsuite/ld-powerpc/vxworks1-lib.s: Correct addi to addic. - * testsuite/ld-powerpc/vxworks1-lib.dd: Adjust to suit. - -2017-02-15 H.J. Lu - - PR ld/21168 - * testsuite/ld-i386/i386.exp: Run pr21168. - * testsuite/ld-i386/pr21168a.c: New file. - * testsuite/ld-i386/pr21168b.S: Likewise. - -2017-02-15 H.J. Lu - - PR ld/20244 - * testsuite/ld-i386/i386.exp: Run pr20244-4a, pr20244-4b and - pr20244-4c. - * testsuite/ld-i386/pr20244-4.s: New file. - * testsuite/ld-i386/pr20244-4a.d: Likewise. - * testsuite/ld-i386/pr20244-4b.d: Likewise. - * testsuite/ld-i386/pr20244-4c.d: Likewise. - -2017-02-15 Maciej W. Rozycki - - * ldmisc.c (vfinfo): Don't print the function name again either - if no source file name has been found both now and previously. - * testsuite/ld-cris/tls-err-20x.d: Adjust accordingly. - * testsuite/ld-mips-elf/mode-change-error-1.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch-mips16.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch-micromips.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch-r6-1.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch-2.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch-r6-2.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: Likewise. - * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d: - Likewise. - * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d: - Likewise. - * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d: - Likewise. - * testsuite/ld-mips-elf/unaligned-jalx-addend-1.d: Likewise. - * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d: - Likewise. - * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d: - Likewise. - * testsuite/ld-mips-elf/unaligned-jalx-addend-3.d: Likewise. - * testsuite/ld-mips-elf/unaligned-jump.d: Likewise. - * testsuite/ld-mips-elf/unaligned-jump-mips16.d: Likewise. - * testsuite/ld-mips-elf/unaligned-jump-micromips.d: Likewise. - * testsuite/ld-mips-elf/unaligned-lwpc-1.d: Likewise. - * testsuite/ld-mips-elf/unaligned-ldpc-1.d: Likewise. - * testsuite/ld-powerpc/tocopt.out: Likewise. - * testsuite/ld-powerpc/tocopt7.out: Likewise. - -2017-02-15 Maciej W. Rozycki - - * ldmisc.c (vfinfo) <'H'>: Remove static NULL initializers. - -2017-02-15 Igor Kudrin - - * testsuite/ld-scripts/sysroot-prefix.exp - (get_base_dir_for_scripts): New function. - (run_sysroot_prefix_test): Use get_base_dir_for_scripts. - -2017-02-13 Palmer Dabbelt - - * emulparams/elf32lriscv-defs.sh (SDATA_START_SYMBOLS): Change - _gp to __global_pointer$ - -2017-02-08 Andrew Burgess - - * configure.tgt (arc*-*-linux*): Change the default linker - emulation based on --with-cpu selection. - * NEWS: Mention new configuration option. - -2017-02-06 Jiong Wang - - * testsuite/ld-elf/compress.exp: Don't print to stdout for all - "readelf -w". - -2017-02-02 Maciej W. Rozycki - - * testsuite/ld-cris/tls-err-20x.d: Fix a typo, s/n/\n/. - -2017-02-02 Maciej W. Rozycki - - * ld/testsuite/lib/ld-lib.exp (run_dump_test): Fix a typo, - s/regexp/regex/. - -2017-02-02 Jiong Wang - - * testsuite/lib/ld-lib.exp (check_libdl_available): New function. - * testsuite/ld-elf/shared.exp (run_tests): Split tests which require - dlopen support into "dlopen_run_tests". These tests include dl1*main - and dl6*main. - (dlopen_run_tests): New and only run it when check_libdl_available - returns true. XFAIL on *-*-netbsdelf*. - -2017-02-01 Maciej W. Rozycki - - * testsuite/ld-mips-elf/vxworks-forced-local-1.d: Correct the - presentation of relocation addends. - * testsuite/ld-mips-elf/vxworks1-lib.rd: Likewise. - * testsuite/ld-mips-elf/vxworks1.dd: Likewise. - * testsuite/ld-mips-elf/vxworks1.rd: Likewise. - -2017-02-01 Maciej W. Rozycki - - * testsuite/ld-mips-elf/tls-multi-got-1-1.s: Place `tlsvar_ld' - in `.tdata' section. - * testsuite/ld-mips-elf/tls-multi-got-1.got: Adjust accordingly. - * testsuite/ld-mips-elf/tls-multi-got-1.r: Likewise. - -2017-02-01 Jiong Wang - - * testsuite/ld-unique/unique.exp (Could not link a dynamic executable): - Append $board_cflags to link commands. - -2017-02-01 Senthil Kumar Selvaraj - - * testsuite/ld-scripts/print-memory-usage-1.l: Relax - check for digit in second decimal place. - -2017-02-01 Maciej W. Rozycki - - PR ld/20828 - * testsuite/ld-elf/shared.exp: Correct PR ld/20828 test - indentation. - -2017-01-31 Nick Clifton - - * ldmain.c (add_archive_element): Eliminate string buffer. - * ldlang.c (lang_print_asneeded): Likewise. - -2017-01-30 Maciej W. Rozycki - - * emultempl/mipself.em (ignore_branch_isa): New variable. - (mips_create_output_section_statements): Rename - `_bfd_mips_elf_insn32' called to `_bfd_mips_elf_linker_flags', - add `ignore_branch_isa' argument. - (PARSE_AND_LIST_PROLOGUE): Add OPTION_IGNORE_BRANCH_ISA and - OPTION_NO_IGNORE_BRANCH_ISA enum values. - (PARSE_AND_LIST_LONGOPTS): Add "ignore-branch-isa" and - "no-ignore-branch-isa" options. - (PARSE_AND_LIST_OPTIONS): Add `--ignore-branch-isa' and - `--no-ignore-branch-isa'. - (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_IGNORE_BRANCH_ISA and - OPTION_NO_IGNORE_BRANCH_ISA. - - * ld.texinfo (Options specific to MIPS targets): Add - `--ignore-branch-isa' and `--no-ignore-branch-isa' options. - (ld and the MIPS family): Likewise. - - * testsuite/ld-mips-elf/bal-jalx-pic-ignore.d: New test. - * testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d: New test. - * testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d: New test. - * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: New test. - * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1: New test. - * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16: New - test. - * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips: New - test. - * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. - -2017-01-29 Hans-Peter Nilsson - - PR binutils/19935 - Fix long-standing buglet and fallout from now-default initfini-array. - * emulparams/criself.sh (USER_LABEL_PREFIX): Define. - (OTHER_END_SYMBOLS, ENTRY): Delete now-redundant defines. - -2017-01-27 Jiong Wang - - * testsuite/ld-elf/elf.exp ("pr20995-2", "Build pr20995-2.so"): XFAIL on - arm*-*-eabi*. - -2017-01-27 Dilyan Palauzov - Nick Clifton - - PR 20343 - * ld.texinfo (Options): Extend documentation of the --plugin - option. Include a description of where the plugins should be - located. - -2017-01-27 Nick Clifton - - * po/sr.po: New Serbian translation. - * configure.ac (ALL_LINGUAS): Add sr. - * configure: Regenerate. - -2017-01-25 Sebastian Huber - - * configure.tgt (arm-*-rtems*): Move to (arm*-*-eabi*). - (bfin-*-rtems*): Move to (bfin*-*-elf*). - (i[3-7]86-*-rtems*): Move to (i[3-7]86*-*-elf*). - (m68*-*-rtems*): Move to (m68*-*-elf*). - (mips*-*-rtems*): Move to (mips*-*-elf*). - (or1k*-*-rtems*): Move to (or1k*-*-elf*). - (powerpc*-*-rtems*): Move to (powerpc*-*-elf*). - (sparc*-*-rtems*): Move to (sparc*-*-elf*). - (sparc64*-*-rtems*): Move to (sparc64*-*-elf*). - -2017-01-25 Sebastian Huber - - * configure.tgt (h8300-*-rtemscoff*): Remove. - (i960-*-rtems*): Likewise. - (m68*-*-rtemscoff*): Likewise. - (sh-*-rtemscoff*): Likewise. - -2017-01-24 Maciej W. Rozycki - - * emultempl/solaris2.em (elf_solaris2_before_allocation): Do not - add implicit version nodes if an anonymous version tag is being - used. - -2017-01-24 Jiong Wang - - * testsuite/ld-plugin/lto.exp (lto_link_elf_tests): Move "Compile 7", - "Compile 8a", "Compile 8b"... - (lto_compile_elf_tests): ...to here. Always run these tests. - (lto_run_elf_tests): Move "LTO 7"... - (lto_run_elf_shared_tests): ...to here. Restrict these tests on - environment where share library is supported. - -2017-01-24 Alan Modra - - * testsuite/ld-powerpc/tlsexe.r: Update for fewer dynamic relocs - and symbols. - * testsuite/ld-powerpc/tlsexe.d: Likewise. - * testsuite/ld-powerpc/tlsexe.g: Likewise. - -2017-01-23 Yury Norov - - * testsuite/ld-aarch64/aarch64-elf.exp: Run new tests. - * testsuite/ld-aarch64/tls-desc-ie-ilp32.d: New test. - * testsuite/ld-aarch64/tls-relax-all-ilp32.d: New test. - * testsuite/ld-aarch64/tls-relax-gd-le-ilp32.d: New test. - * testsuite/ld-aarch64/tls-relax-gdesc-le-2-ilp32.d: New test. - * testsuite/ld-aarch64/tls-relax-gdesc-le-ilp32.d: New test. - * testsuite/ld-aarch64/tls-relax-ie-le-2-ilp32.d: New test. - * testsuite/ld-aarch64/tls-relax-ie-le-3-ilp32.d: New test. - * testsuite/ld-aarch64/tls-relax-ie-le-ilp32.d: New test. - * testsuite/ld-aarch64/tls-tiny-desc-ie-ilp32.d: New test. - * testsuite/ld-aarch64/tls-tiny-desc-le-ilp32.d: New test. - * testsuite/ld-aarch64/tls-tiny-gd-ie-ilp32.d: New test. - * testsuite/ld-aarch64/tls-tiny-gd-le-ilp32.d: New test. - -2017-01-23 Nick Clifton - - * po/ga.po: Updated Irish translation. - -2017-01-23 Maciej W. Rozycki - - PR ld/20828 - * testsuite/ld-elf/pr20828.ld: Add `.plt'. - -2017-01-23 Maciej W. Rozycki - - PR ld/20828 - * testsuite/ld-elf/pr20828.ld: Rename `_fdata' and `_edata' to - `fdata' and `edata' respectively. - * testsuite/ld-elf/pr20828.ver: Adjust accordingly. - * testsuite/ld-elf/pr20828-a.sd: Likewise. - * testsuite/ld-elf/pr20828-b.sd: Likewise. - * testsuite/ld-elf/pr20828-c.sd: Likewise. - -2017-01-23 Maciej W. Rozycki - - PR ld/20828 - * testsuite/ld-elf/pr20828-1.sd: Remove test. - * testsuite/ld-elf/pr20828-a.sd: New test. - * testsuite/ld-elf/pr20828-2a.sd: Rename test to... - * testsuite/ld-elf/pr20828-b.sd: ... this. - * testsuite/ld-elf/pr20828-2b.sd: Rename test to... - * testsuite/ld-elf/pr20828-c.sd: ... this. - * testsuite/ld-elf/shared.exp: Adjust accordingly. - -2017-01-23 Jiong Wang - - * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Append - board_cflags as gcc is used as linker driver. - * testsuite/ld-unique/unique.exp: Likewise - -2017-01-20 Jiong Wang - - * testsuite/ld-aarch64/aarch64-elf.exp (aarch64elflinktests): New tests. - * testsuite/ld-aarch64/func-in-so.s: New test source file. - * testsuite/ld-aarch64/func-sym-hash-opt.s: Likewise. - * testsuite/ld-aarch64/func-sym-hash-opt.d: New expected test result. - -2017-01-20 Andrew Burgess - - * testsuite/ld-elf/eh-frame-hdr.d: Update expected results. - -2017-01-18 Maciej W. Rozycki - - PR ld/20995 - * testsuite/ld-elf/elf.exp: Set GAS flags correctly for the - `mips*-*-*' target and `pr20995' and `pr20995-2' tests. - -2017-01-18 Maciej W. Rozycki - - PR ld/20828 - * testsuite/ld-elf/pr20828-1.sd: New test. - * testsuite/ld-elf/pr20828-2a.sd: New test. - * testsuite/ld-elf/pr20828-2b.sd: New test. - * testsuite/ld-elf/pr20828.ld: New test linker script. - * testsuite/ld-elf/pr20828.ver: New test version script. - * testsuite/ld-elf/pr20828.s: New test source. - * testsuite/ld-elf/shared.exp: Run the new test. - -2017-01-18 Maciej W. Rozycki - - PR gas/20649 - * testsuite/ld-mips-elf/mips-elf.exp: Add PIC comdat GOT16/LO16 - relocation pairing link test. - -2017-01-17 Dimitar Dimitrov - - * testsuite/ld-unique/unique.exp: Filter shared lib cases in - uniqeue.exp, as not all targets have such support. - -2017-01-16 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2017-01-12 H.J. Lu - - PR ld/21038 - * testsuite/ld-x86-64/pr21038b.d: Updated. - * testsuite/ld-x86-64/pr21038c.d: New file. - * testsuite/ld-x86-64/pr21038c.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run pr21038c. - -2017-01-11 H.J. Lu - - PR ld/21038 - * testsuite/ld-x86-64/pr21038a.d: New file. - * testsuite/ld-x86-64/pr21038a.s: Likewise. - * testsuite/ld-x86-64/pr21038b.d: Likewise. - * testsuite/ld-x86-64/pr21038b.s: Likewise. - * testsuite/ld-x86-64/x86-64.exp: Run pr21038a and pr21038b. - -2017-01-11 Jeremy Soller - - * configure.tgt: Add entries for x86-redox and x86_64-redox. - -2017-01-10 H.J. Lu - - * testsuite/ld-x86-64/pr20830b.d: Updated. - -2017-01-10 H.J. Lu - - * emulparams/elf32_x86_64.sh (TINY_READONLY_SECTION): New. - * testsuite/ld-x86-64/pr20830.d: Renamed to ... - * testsuite/ld-x86-64/pr20830a.d: This. Updated. - * testsuite/ld-x86-64/pr20830b.d: New file. - * testsuite/ld-x86-64/x86-64.exp: Rename pr20830 to pr20830a. - Run pr20830b. - -2017-01-10 H.J. Lu - - PR ld/20830 - * testsuite/ld-i386/i386.exp: Run pr20830. - * testsuite/ld-x86-64/x86-64.exp: Likewise. - * testsuite/ld-i386/pr20830.d: New file. - * testsuite/ld-i386/pr20830.s: Likewise. - * testsuite/ld-x86-64/pr20830.d: Likewise. - * testsuite/ld-x86-64/pr20830.s: Likewise. - -2017-01-10 H.J. Lu - - * testsuite/ld-i386/i386.exp: Pass -Wl,-R,tmpdir and - -Wl,--as-needed to $CC. - * testsuite/ld-i386/tls.exp: Likewise. - -2017-01-10 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2016-12-09 Graham Markall - Andrew Burgess - - * Makefile.am: Add earclinux_nps.c target and add to - ALL_EMULATION_SOURCES. - * Makefile.in: Likewise, regenerated. - * configure.tgt: Add arclinux_nps as an extra emulation for - arc*-*-elf* and arc*-*-linux*. - * emulparams/arc-nps.sh: New file. - * emulparams/arclinux_nps.sh: New file. - * testsuite/ld-arc/arclinux-nps.d, - * testsuite/ld-arc/arclinux-nps.s: New test. - -2017-01-04 Dilan Palauzov - - PR 20958 - * ldlex.l (option): Add noyywrap - (yywrap): Delete. - * ldlex.h (yywrap): Delete prototype. - -2017-01-04 Alan Modra - - * testsuite/ld-elf/audit.exp: Check for shared lib support. - * testsuite/ld-elf/compress.exp: Likewise. - * testsuite/ld-elf/dwarf.exp: Likewise. - * testsuite/ld-elf/shared.exp: Likewise. - * testsuite/ld-elf/wrap.exp: Likewise. - * testsuite/ld-ifunc/ifunc.exp: Likewise. - * testsuite/ld-plugin/lto.exp: Check $CXX exists. - -2017-01-03 Alan Modra - - * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Do not - allow test to continue after compilation errors. - (run_cc_link_tests): Likewise. - -2017-01-03 Dimitar Dimitrov - - * Makefile.am (ALL_EMULATION_SOURCES): Add epruelf.c. - (epruelf.c): Remove unneeded dependencies. - * Makefile.in: Regenerate - -2017-01-03 Alan Modra - - * testsuite/ld-elf/shared.exp: Add -rpath-link and -no-as-needed - to various tests. - * testsuite/ld-elfweak/elfweak.exp: Likewise. - * testsuite/ld-elfvers/vers.exp (vers19): Fix -rpath-link option. - -2017-01-03 Alan Modra - - * testsuite/ld-elf/elf.exp: Check that $CC exists before C tests. - * testsuite/ld-pie/pie.exp: Likewise. - * testsuite/ld-plugin/lto.exp: Likewise. - -2017-01-02 Alan Modra - - * Makefile.am (bootstrap): Delete rule. - (ld-partial, ld1, ld1-full, ld2, ld3): Likewise. - (HOSTING_CRT0, HOSTING_SCRT0): Don't define. - (HOSTING_LIBS, HOSTING_SLIBS, HOSTING_EMU): Likewise. - * configure.ac (HOSTING_CRT0, HOSTING_SCRT0): Don't define. - (HOSTING_LIBS, HOSTING_SLIBS): Likewise. - * configure.host (HOSTING_CRT0, HOSTING_LIBS): Don't define. - * Makefile.in: Regenerate. - * configure: Regenerate. - * testsuite/config/default.exp (get_link_files): Delete. - (HOSTING_CRT0, HOSTING_SCRT0, HOSTING_LIBS, HOSTING_SLIBS): Don't - define. - (ld_simple_link): Delete. - * testsuite/lib/ld-lib.exp (default_ld_link): Delete - (default_ld_simple_link): Rename to default_ld_link. - (ld_simple_link_defsyms): Rename to ld_link_defsyms. - (run_ld_link_tests): Use ld_link, not ld_simple_link. - (run_cc_link_tests): Likewise. - (run_ld_link_exec_tests): Use $CC or $CXX to link, not $ld. - Don't run exe when not native, and return unsupported. - * testsuite/ld-bootstrap/bootstrap.exp: Create gccld1 etc. dirs. - Link ld1 etc. using $CC. - * testsuite/ld-cdtest/cdtest.exp: Link cdtest using $CC. - * testsuite/ld-checks/checks.exp: Use ld_link, not ld_simple_link. - * testsuite/ld-cygwin/exe-export.exp: Likewise. - * testsuite/ld-elf/binutils.exp: Likewise. - * testsuite/ld-elf/eh-group.exp: Likewise. - * testsuite/ld-elf/exclude.exp: Likewise. - * testsuite/ld-elf/frame.exp: Likewise. - * testsuite/ld-elf/sec-to-seg.exp: Likewise. - * testsuite/ld-elf/tls_common.exp: Likewise. - * testsuite/ld-elfcomm/elfcomm.exp: Likewise. - * testsuite/ld-fastcall/fastcall.exp: Likewise. - * testsuite/ld-gc/gc.exp: Likewise. - * testsuite/ld-ifunc/binutils.exp: Likewise. - * testsuite/ld-mep/mep.exp: Likewise. - * testsuite/ld-mips-elf/mips-elf-flags.exp: Likewise. - * testsuite/ld-mn10300/mn10300.exp: Likewise. - * testsuite/ld-nios2/nios2.exp: Likewise. - * testsuite/ld-pe/pe-compile.exp: Likewise. - * testsuite/ld-pe/pe-run.exp: Likewise. - * testsuite/ld-pe/pe-run2.exp: Likewise. - * testsuite/ld-plugin/plugin.exp: Likewise. - * testsuite/ld-scripts/align.exp: Likewise. - * testsuite/ld-scripts/alignof.exp: Likewise. - * testsuite/ld-scripts/assert.exp: Likewise. - * testsuite/ld-scripts/defined.exp: Likewise. - * testsuite/ld-scripts/extern.exp: Likewise. - * testsuite/ld-scripts/log2.exp: Likewise. - * testsuite/ld-scripts/map-address.exp: Likewise. - * testsuite/ld-scripts/phdrs.exp: Likewise. - * testsuite/ld-scripts/phdrs2.exp: Likewise. - * testsuite/ld-scripts/script.exp: Likewise. - * testsuite/ld-scripts/section-flags.exp: Likewise. - * testsuite/ld-scripts/sizeof.exp: Likewise. - * testsuite/ld-scripts/sysroot-prefix.exp: Likewise. - * testsuite/ld-scripts/weak.exp: Likewise. - * testsuite/ld-selective/selective.exp: Likewise. - * testsuite/ld-sh/sh.exp: Likewise. - * testsuite/ld-sh/sh64/relax.exp: Likewise. - * testsuite/ld-sh/sh64/relfail.exp: Likewise. - * testsuite/ld-srec/srec.exp: Likewise. - * testsuite/ld-tic6x/tic6x.exp: Likewise. - * testsuite/ld-undefined/weak-undef.exp: Likewise. - * testsuite/ld-versados/versados.exp: Likewise. - * testsuite/ld-x86-64/dwarfreloc.exp: Likewise. - * testsuite/ld-xtensa/coalesce.exp: Likewise. - * testsuite/ld-xtensa/diff_overflow.exp: Likewise. - * testsuite/ld-xtensa/lcall.exp: Likewise. - * testsuite/ld-elf/audit.exp: Run non-native too. - * testsuite/ld-elf/compress.exp: Likewise. Replace ld options with - gcc -Wl, options. - * testsuite/ld-elf/dwarf.exp: Run non-native too. Use ld_link, - not ld_simple_link. Add -Wl,--no-as-needed to some tests. - * testsuite/ld-elf/elf.exp: Run non-native too. Formatting. - * testsuite/ld-elf/indirect.exp: Run non-native too. Add - -Wl,--no-as-needed to most tests. - * testsuite/ld-elf/shared.exp: Run non-native too. Use braces - to simplify quoting. Set run_tests using [list] rather than - brace assignment to expand $extralibs. Add -Wl,--no-as-needed - to many test. Prefix ld options with -Wl,. - (mix_pic_and_non_pic): Don't run exe if not native. - * testsuite/ld-elf/wrap.exp: Run non-native too. Add - -Wl,--no-as-needed and prefix ld options with -Wl,. - * testsuite/ld-elfvers/vers.exp: Run non-native too. Use ld_link, - not ld_simple_link. - * testsuite/ld-elfvsb/elfvsb.exp: Likewise. - (visibility_test): Don't run exe if not native. - * testsuite/ld-elfweak/elfweak.exp: Run non-native too. Use ld_link, - not ld_simple_link. - (build_exec): Don't run exe if not native. - * testsuite/ld-ifunc/ifunc.exp: Run non-native too. Use ld_link, - not ld_simple_link. Link using $CC. Add -Wl,--no-as-needed - to some tests and prefix ld options with -Wl,. Expect GNU - for hppa-linux even when no ifuncs. Delete cleanup. - * testsuite/ld-pie/pie.exp: Run non-native too. - * testsuite/ld-plugin/lto.exp: Likewise. - * testsuite/ld-shared/shared.exp: Likewise. Use ld_link, - not ld_simple_link. - (shared_test): Don't run exe if not native. - * testsuite/ld-size/size.exp: Run non-native too. Add - -Wl,--no-as-needed to some tests. Prefix ld options with -Wl,. - * testsuite/ld-unique/unique.exp: Run non-native too. Use ld_link, - not ld_simple_link. Link using $CC. Add -Wl,--no-as-needed - to some tests and prefix ld options with -Wl,. Expect GNU - for hppa-linux even when no unique syms. Delete cleanup. - * testsuite/ld-x86-64/tls.exp: Add -Wl,--no-as-needed to some - tests and prefix ld options with -Wl,. - * testsuite/ld-x86-64/x86-64.exp: Use ld_link, not ld_simple_link. - Add -Wl,--no-as-needed to some tests. Prefix ld options with -Wl,. - -2017-01-02 Alan Modra - - * emulparams/elf32metag.sh (COMMONPAGESIZE): Define. - -2017-01-02 Alan Modra - - PR ld/21000 - * emulparams/hppalinux.sh (DATA_ADDR, SHLIB_DATA_ADDR): Don't define. - (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END, DATA_SEGMENT_RELRO_END): Define. - * scripttempl/elf.sc: Don't define the above if DATA_SEGMENT_ALIGN - is already defined. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/ld/ChangeLog-2017 b/ld/ChangeLog-2017 new file mode 100644 index 00000000000..cbd772cdba6 --- /dev/null +++ b/ld/ChangeLog-2017 @@ -0,0 +1,4038 @@ +2017-12-14 Nick Clifton + + * testsuite/ld-mn10300/mn10300.exp: Update address of FSF in + copyright notice. + +2017-12-13 Renlin Li + + * testsuite/ld-aarch64/aarch64-elf.exp: Run new test cases. + * testsuite/ld-aarch64/emit-relocs-258-dyn-bad.d: New. + * testsuite/ld-aarch64/emit-relocs-258.s: New. + * testsuite/ld-aarch64/emit-relocs-259-dyn-bad.d: New. + * testsuite/ld-aarch64/emit-relocs-259.s: New. + * testsuite/ld-aarch64/gc-relocs-257.s: Put R_AARCH64_ABS32, + R_AARCH64_ABS16 data into data section. + +2017-12-07 Alan Modra + + PR 22465 + * testsuite/ld-elf/interleave.s: Use .data sections and provide + section attrs. + * testsuite/ld-elf/interleave.ld: Discard other sections. Adjust + for changed section names. + +2017-12-07 Alan Modra + + * emulparams/elf32mcore.sh (GENERATE_SHLIB_SCRIPT): Don't define. + +2017-12-07 Alan Modra + + * testsuite/lib/ld-lib.exp (check_shared_lib_support): Ask ld + under test whether -shared is supported. + +2017-12-06 Jim Wilson + + * testsuite/ld-elf/interleave-0.d, testsuite/ld-elf/interleave-4.d, + * testsuite/ld-elf/interleave.ld, testsuite/ld-elf/interleave.s: New. + +2017-12-06 Nick Clifton + + * testsuite/lib/ld-lib.exp (check_shared_lib_support): Return + false for lm32-rtems targets. + +2017-12-06 Alan Modra + + * testsuite/lib/ld-lib.exp (check_shared_lib_support): Return true + for frv, lm32, m32r, microblaze, nds32 and or1k linux targets. + +2017-12-05 Jim Wilson + Andrew Waterman + + * emulparams/elf32lriscv-defs.sh (SDATA_START_SYMBOLS): Remove HIDDEN. + Don't define __global_pointer$ when CREATE_SHLIB. + * testsuite/ld-riscv-elf/gp-hidden-64.rd, + * testsuite/ld-riscv-elf/gp-hidden-lib.rd, + * testsuite/ld-riscv-elf/gp-hidden-lib.s, + * testsuite/ld-riscv-elf/gp-hidden-ver-64.rd, + * testsuite/ld-riscv-elf/gp-hidden-ver.rd, + * testsuite/ld-riscv-elf/gp-hidden-ver.s, + * testsuite/ld-riscv-elf/gp-hidden-ver.ver, + * testsuite/ld-riscv-elf/gp-hidden.rd, + * testsuite/ld-riscv-elf/gp-hidden.s, + * testsuite/ld-riscv-elf/gp-hidden.sd: Delete. + * testsuite/ld-riscv-elf/gp-test-lib.sd, + * testsuite/ld-riscv-elf/gp-test.s, + * testsuite/ld-riscv-elf/gp-test.sd: New. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Rewrite gp tests. + +2017-12-04 Jim Wilson + + * emulparams/elf32lriscv-defs.sh (SDATA_START_SYMBOLS): Mark + __global_pointer$ as HIDDEN. + * testsuite/ld-riscv-elf/gp-hidden-64.rd: New. + * testsuite/ld-riscv-elf/gp-hidden-lib.rd: New. + * testsuite/ld-riscv-elf/gp-hidden-lib.s: New. + * testsuite/ld-riscv-elf/gp-hidden-ver-64.rd: New. + * testsuite/ld-riscv-elf/gp-hidden-ver.rd: New. + * testsuite/ld-riscv-elf/gp-hidden-ver.s: New. + * testsuite/ld-riscv-elf/gp-hidder-ver.ver: New. + * testsuite/ld-riscv-elf/gp-hidden.rd: New. + * testsuite/ld-riscv-elf/gp-hidden.s: New. + * testsuite/ld-riscv-elf/gp-hidden.sd: New. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Change riscv to riscv*. + Run the new tests with run_ld_link_tests. + +2017-12-04 Alan Modra + + * testsuite/ld-i386/pr17935-1.d: Adjust expected error. + * testsuite/ld-i386/pr17935-2.d: Likewise. + * testsuite/ld-x86-64/pr17935-1.d: Likewise. + * testsuite/ld-x86-64/pr17935-2.d: Likewise. + +2017-12-04 Alan Modra + + * testsuite/ld-powerpc/powerpc.exp (ppceabitests): Add -a32 -mbig + to assembler options, and -melf32ppc to linker options. Always + run these tests. + +2017-12-01 Tobias Ulmer + + * ldwrite.c (build_link_order): Check return value of all + bfd_new_link_order calls. + +2017-12-01 Alan Modra + + * testsuite/ld-elfweak/alias.c, + * testsuite/ld-elfweak/alias.dat, + * testsuite/ld-elfweak/aliasmain.c, + * testsuite/ld-elfweak/weakref1.c, + * testsuite/ld-elfweak/weakref2.c: New test. + * testsuite/ld-elfweak/elfweak.exp: Run it. Don't return on fails, + attempt other tests. + +2017-12-01 Alan Modra + + * testsuite/ld-elf/shared.exp: Run new textrel tests. + * testsuite/ld-elf/textrel.map: New file. + * testsuite/ld-elf/textrel.rd: New file. + * testsuite/ld-elf/textrel.s: New file. + * testsuite/ld-elf/textrel.warn: New file. + +2017-11-30 Alan Modra + + PR 22471 + * testsuite/ld-elf/shared.exp: Save and restore ASFLAGS. + +2017-11-29 H.J. Lu + + PR ld/22471 + * testsuite/ld-elf/pr22471.t: New file. + * testsuite/ld-elf/pr22471a.s: Likewise. + * testsuite/ld-elf/pr22471b.s: Likewise. + * testsuite/ld-elf/shared.exp (ASFLAGS): Define UNDERSCORE for + underscore targets. + Run PR ld/22471 tests. + +2017-11-29 Stefan Stroe + + * po/Make-in (datadir): Define as @datadir@. + (localedir): Define as @localedir@. + (gnulocaledir, gettextsrcdir): Use @datarootdir@. + +2017-11-28 Alan Modra + + PR 22471 + * ldexp.c (struct definedness_hash_entry): Delete "by_script". Make + "iteration" an 8-bit field, and update mask in all uses. + (definedness_newfunc): Don't init "by_script". + (update_definedness): Test ldscript_def rather than by_script. + (is_sym_value): Likewise. + (fold_name ): Return a result for first phase. Test + ldscript_def. + (fold_name ): Return a result for first phase. + * ldlang.c (open_input_bfds): Process all assignments, not just + defsym. + (lang_process): Increment lang_statement_iteration before + open_input_bfds. + * testsuite/ld-mips-elf/tlsdyn-o32-1.d: Adjust for larger .dynsym. + * testsuite/ld-mips-elf/tlsdyn-o32-1.got: Likewise. + * testsuite/ld-mips-elf/tlsdyn-o32-2.d: Likewise. + * testsuite/ld-mips-elf/tlsdyn-o32-2.got: Likewise. + * testsuite/ld-mips-elf/tlsdyn-o32-3.d: Likewise. + * testsuite/ld-mips-elf/tlsdyn-o32-3.got: Likewise. + +2017-11-28 Alan Modra + + * ldexp.h (struct ldexp_control): Add "assign_src". + * ldexp.c (fold_trinary): Save and restore assign_src around + condition evaluation. + (fold_name ): Set expld.assign_src. + (try_copy_symbol_type): Delete. + (exp_fold_tree_1): Set symbol type using expld.assign_src. + +2017-11-28 H.J. Lu + + PR ld/22502 + * testsuite/ld-plugin/lto.exp: Run PR ld/22502 test. + * testsuite/ld-plugin/pr22502a.c: New file. + * testsuite/ld-plugin/pr22502b.c: Likewise. + +2017-11-24 H.J. Lu + + * testsuite/ld-elf/pr21562c.t: Also provide ___start_scnfoo and + ___stop_scnfoo. + * testsuite/ld-elf/pr21562d.t: Likewise. + +2017-11-23 Martin Storsjo + + * pe-dll.c (autofilter_liblist): Add libmsvcrt, libmsvcrt-os and + libucrtbase. + +2017-11-23 Jan Beulich + + PR gas/22441 + * testsuite/ld-x86-64/apic.{s,d}: New. + * testsuite/ld-x86-64/x86-64.exp: Run new test. + +2017-11-21 Nick Clifton + + PR 22419 + * emultempl/v850elf.em (v850_create_output_section_statements): + New function. Generate an error if attempting to convert the + format of the output file. + * testsuite/ld-unique/pr21529.d: Skip for the V850. + * testsuite/ld-elf/pr21884.d: Skip for the V850. + +2017-11-21 Claudiu Zissulescu + + * testsuite/ld-arc/jli-simple.d: Update test. + +2017-11-20 Nick Clifton + + PR 22450 + * testsuite/ld-elf/elf.exp: Add --defsym ALIGN=2|3 to assembler + command line depending upon the size of the target address space. + * testsuite/ld-elf/pr22450.s: New test file. + * testsuite/ld-elf/pr22450.d: New test driver. + * testsuite/config/default.exp: Add note that LD_CLASS refers to + the size of the host linker not the size of the target linker. + +2017-11-15 Nick Clifton + + PR 15152 + * testsuite/ld-avr/gc-section-debugline.d: Update expected + output. + +2017-11-15 Alan Modra + + * ldmisc.c (vfinfo): Support up to 9 positional args. + +2017-11-14 Jim Wilson + + * testsuite/ld-elf/compress1-alt.s: New. + * testsuite/ld-elf/compressed1d-alt.d: New. + * testsuite/ld-elf/compressed1d.d: Add riscv*-*-* to notarget list. + +2017-11-14 Alan Modra + + * testsuite/ld-elf/note-3.t: Don't discard .got. + +2017-11-14 Alan Modra + + * testsuite/ld-ifunc/ifunc.exp: Ensure non-PIC tests are really + not PIE by default gcc options. + +2017-11-13 H.J. Lu + + * emultempl/ppc32elf.em (ppc_before_allocation): Replace + exp_dataseg_none with exp_seg_none. + * emultempl/ppc64elf.em (prelim_size_sections): Likewise. + * emultempl/spuelf.em (spu_before_allocation): Likewise. + +2017-11-12 H.J. Lu + + * ldlang.c (lang_size_sections_1): Extract GNU_RELRO region check + into ... + (ldlang_check_relro_region): New function. + (lang_find_relro_sections_1): Add an argument for pointer to + seg_align_type and replace expld.dataseg with the pointer. + (lang_find_relro_sections): Pass address of expld.dataseg to + lang_find_relro_sections_1. + +2017-11-12 H.J. Lu + + * ldlang.c (lang_size_segment): New function. + (lang_size_relro_segment_1): Likewise. + (lang_size_relro_segment): Likewise. + (lang_size_sections): Rewrite to call lang_size_relro_segment. + +2017-11-12 H.J. Lu + + * ldexp.c (fold_unary): Extract the DATA_SEGMENT_END case to ... + (fold_segment_end): New function. + (fold_binary): Extract the DATA_SEGMENT_ALIGN case to ... + (fold_segment_align): New function. + (fold_binary): Extract the DATA_SEGMENT_RELRO_END case to ... + (fold_segment_relro_end): New function. + +2017-11-12 H.J. Lu + + * ldexp.h (phase_enum): Rename exp_dataseg_none, + exp_dataseg_align_seen, exp_dataseg_relro_seen, + exp_dataseg_end_seen, exp_dataseg_relro_adjust, + exp_dataseg_adjust and exp_dataseg_done to exp_seg_none, + exp_seg_align_seen, exp_seg_relro_seen, exp_seg_end_seen, + exp_seg_relro_adjust, exp_seg_adjust and exp_seg_done. + (relro_enum): Rename exp_dataseg_relro_none, + exp_dataseg_relro_start and exp_dataseg_relro_end to + exp_seg_relro_none, exp_seg_relro_start and exp_seg_relro_end. + (seg_align_type): New struct type. + (ldexp_control): Use seg_align_type. + * ldexp.c (fold_unary): Updated. + (fold_binary): Likewise. + * ldlang.c (strip_excluded_output_sections): Likewise. + (lang_size_sections_1): Likewise. + (lang_size_sections): Likewise. + +2017-11-12 H.J. Lu + + PR ld/22423 + * testsuite/ld-alpha/tlsbin.rd: Replace "R E " with "R +" for + PT_PHDR segment. + * testsuite/ld-alpha/tlsbinr.rd: Likewise. + * testsuite/ld-ia64/tlsbin.rd: Likewise. + * testsuite/ld-powerpc/tlsexe.r: Likewise. + * testsuite/ld-powerpc/tlsexe32.r: Likewise. + * testsuite/ld-powerpc/tlsexetoc.r: Likewise. + * testsuite/ld-s390/tlsbin.rd: Likewise. + * testsuite/ld-s390/tlsbin_64.rd: Likewise. + * testsuite/ld-sparc/tlssunbin32.rd: Likewise. + * testsuite/ld-sparc/tlssunbin64.rd: Likewise. + * testsuite/ld-elf/pr22423.d: New test. + +2017-11-12 H.J. Lu + + * emulparams/elf32_x86_64.sh (TINY_READONLY_SECTION): Renamed + to ... + (OTHER_PLT_SECTIONS): This. + * emulparams/elf_i386.sh: Likewise. + * emulparams/elf_iamcu.sh: Likewise. + * emulparams/elf_x86_64.sh: Likewise. + * scripttempl/elf.sc: Place ${OTHER_PLT_SECTIONS} just after + .plt. + +2017-11-09 H.J. Lu + + * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Reformat + to generate consistent codes. + +2017-11-07 Alan Modra + + * testsuite/ld-aarch64/ifunc-13.d, + * testsuite/ld-aarch64/ifunc-15.d, + * testsuite/ld-aarch64/ifunc-20.d, + * testsuite/ld-alpha/tlsbin.rd, + * testsuite/ld-alpha/tlspic.rd, + * testsuite/ld-arm/ifunc-3.rd, + * testsuite/ld-arm/ifunc-9.rd, + * testsuite/ld-arm/unwind-mix.d, + * testsuite/ld-arm/unwind-rel.d, + * testsuite/ld-cris/hiddef1.d, + * testsuite/ld-cris/libdso-13.d, + * testsuite/ld-cris/libdso-2.d, + * testsuite/ld-cris/pr16044.d, + * testsuite/ld-cris/tls-local-63.d, + * testsuite/ld-cris/tls-local-64.d, + * testsuite/ld-cris/tls-und-38.d, + * testsuite/ld-cris/tls-und-42.d, + * testsuite/ld-cris/tls-und-46.d, + * testsuite/ld-cris/tls-und-50.d, + * testsuite/ld-cris/weakref3.d, + * testsuite/ld-cris/weakref4.d, + * testsuite/ld-elf/comm-data2r.rd, + * testsuite/ld-elf/discard1.d, + * testsuite/ld-elf/discard2.d, + * testsuite/ld-elf/pr19539.d, + * testsuite/ld-elf/pr22374-1.r, + * testsuite/ld-elf/pr22374-2.r, + * testsuite/ld-i386/combreloc.d, + * testsuite/ld-i386/emit-relocs-nacl.rd, + * testsuite/ld-i386/emit-relocs.rd, + * testsuite/ld-i386/pr13302.d, + * testsuite/ld-i386/pr17709-nacl.rd, + * testsuite/ld-i386/pr17709.rd, + * testsuite/ld-i386/pr19539.d, + * testsuite/ld-i386/pr19615.d, + * testsuite/ld-i386/pr19636-1a.d, + * testsuite/ld-i386/pr19636-1e.d, + * testsuite/ld-i386/pr19636-1f.d, + * testsuite/ld-i386/pr19636-2a.d, + * testsuite/ld-i386/pr19636-2b.d, + * testsuite/ld-i386/pr19636-2d-nacl.d, + * testsuite/ld-i386/pr19636-2e-nacl.d, + * testsuite/ld-i386/pr19636-3a.d, + * testsuite/ld-i386/pr19636-3d.d, + * testsuite/ld-i386/pr19636-3e.d, + * testsuite/ld-i386/pr19636-4a.d, + * testsuite/ld-i386/pr19645.d, + * testsuite/ld-i386/pr19827-nacl.rd, + * testsuite/ld-i386/pr19827.rd, + * testsuite/ld-i386/pr20253-4a.d, + * testsuite/ld-i386/pr20253-4b.d, + * testsuite/ld-i386/pr20253-5.d, + * testsuite/ld-i386/tlsbin-nacl.rd, + * testsuite/ld-i386/tlsbin.rd, + * testsuite/ld-i386/tlspic-nacl.rd, + * testsuite/ld-i386/tlspic.rd, + * testsuite/ld-i386/undefweakb.d, + * testsuite/ld-ia64/tlsbin.rd, + * testsuite/ld-ia64/tlspic.rd, + * testsuite/ld-ifunc/ifunc-13-i386.d, + * testsuite/ld-ifunc/ifunc-13-x86-64.d, + * testsuite/ld-ifunc/ifunc-15-i386.d, + * testsuite/ld-ifunc/ifunc-15-x86-64.d, + * testsuite/ld-ifunc/ifunc-20-i386.d, + * testsuite/ld-ifunc/ifunc-20-x86-64.d, + * testsuite/ld-ifunc/ifunc-23a-x86.d, + * testsuite/ld-ifunc/ifunc-23b-x86.d, + * testsuite/ld-ifunc/ifunc-23c-x86.d, + * testsuite/ld-ifunc/ifunc-24a-x86.d, + * testsuite/ld-ifunc/ifunc-24b-x86.d, + * testsuite/ld-ifunc/ifunc-24c-x86.d, + * testsuite/ld-ifunc/ifunc-25a-x86.d, + * testsuite/ld-ifunc/ifunc-25b-x86.d, + * testsuite/ld-ifunc/ifunc-25c-x86.d, + * testsuite/ld-m68k/got-1.d, + * testsuite/ld-mips-elf/vxworks1.rd, + * testsuite/ld-powerpc/ambiguousv1.d, + * testsuite/ld-powerpc/ambiguousv1b.d, + * testsuite/ld-powerpc/ambiguousv2.d, + * testsuite/ld-powerpc/ambiguousv2b.d, + * testsuite/ld-powerpc/tlsexe.r, + * testsuite/ld-powerpc/tlsexe32.r, + * testsuite/ld-powerpc/tlsexetoc.r, + * testsuite/ld-powerpc/tlsso.r, + * testsuite/ld-powerpc/tlsso32.r, + * testsuite/ld-powerpc/tlstocso.r, + * testsuite/ld-powerpc/vle-multiseg-1.d, + * testsuite/ld-powerpc/vle-multiseg-2.d, + * testsuite/ld-powerpc/vle-multiseg-3.d, + * testsuite/ld-s390/tlsbin.rd, + * testsuite/ld-s390/tlsbin_64.rd, + * testsuite/ld-s390/tlspic.rd, + * testsuite/ld-s390/tlspic_64.rd, + * testsuite/ld-sh/ld-r-1.d, + * testsuite/ld-sh/sh64/gotplt.d, + * testsuite/ld-sh/shared-1.d, + * testsuite/ld-sh/tlsbin-2.d, + * testsuite/ld-sh/tlspic-2.d, + * testsuite/ld-sparc/gotop32.rd, + * testsuite/ld-sparc/gotop64.rd, + * testsuite/ld-sparc/tlssunpic32.rd, + * testsuite/ld-sparc/tlssunpic64.rd, + * testsuite/ld-sparc/vxworks1-lib.rd, + * testsuite/ld-tic6x/shlib-app-1.rd, + * testsuite/ld-tic6x/shlib-app-1b.rd, + * testsuite/ld-tic6x/shlib-app-1r.rd, + * testsuite/ld-tic6x/shlib-app-1rb.rd, + * testsuite/ld-tic6x/shlib-noindex.rd, + * testsuite/ld-vax-elf/export-class-data.rd, + * testsuite/ld-x86-64/pr13082-1a.d, + * testsuite/ld-x86-64/pr13082-1b.d, + * testsuite/ld-x86-64/pr13082-2a.d, + * testsuite/ld-x86-64/pr13082-2b.d, + * testsuite/ld-x86-64/pr13082-3a.d, + * testsuite/ld-x86-64/pr13082-3c.d, + * testsuite/ld-x86-64/pr13082-4a.d, + * testsuite/ld-x86-64/pr13082-5a.d, + * testsuite/ld-x86-64/pr13082-5b.d, + * testsuite/ld-x86-64/pr13082-6a.d, + * testsuite/ld-x86-64/pr13082-6b.d, + * testsuite/ld-x86-64/pr17709-nacl.rd, + * testsuite/ld-x86-64/pr17709.rd, + * testsuite/ld-x86-64/pr19539a.d, + * testsuite/ld-x86-64/pr19539b.d, + * testsuite/ld-x86-64/pr19615.d, + * testsuite/ld-x86-64/pr19636-1a.d, + * testsuite/ld-x86-64/pr19636-1d.d, + * testsuite/ld-x86-64/pr19636-1e.d, + * testsuite/ld-x86-64/pr19636-2a.d, + * testsuite/ld-x86-64/pr19636-2e.d, + * testsuite/ld-x86-64/pr19636-2f.d, + * testsuite/ld-x86-64/pr19636-3a.d, + * testsuite/ld-x86-64/pr19645.d, + * testsuite/ld-x86-64/pr19807-2b.d, + * testsuite/ld-x86-64/pr19807-2d.d, + * testsuite/ld-x86-64/pr19827-nacl.rd, + * testsuite/ld-x86-64/pr19827.rd, + * testsuite/ld-x86-64/pr20253-4a.d, + * testsuite/ld-x86-64/pr20253-4b.d, + * testsuite/ld-x86-64/pr20253-4d.d, + * testsuite/ld-x86-64/pr20253-4e.d, + * testsuite/ld-x86-64/pr20253-5a.d, + * testsuite/ld-x86-64/pr20253-5b.d, + * testsuite/ld-x86-64/tlsbin-nacl.rd, + * testsuite/ld-x86-64/tlsbin.rd, + * testsuite/ld-x86-64/tlspic-nacl.rd, + * testsuite/ld-x86-64/tlspic.rd, + * testsuite/ld-x86-64/tlspic2-nacl.rd: Update for + pluralization fixes. + +2017-11-07 Alan Modra + + * ldlang.c (lang_size_sections_1): Properly pluralize messages. + (lang_check_section_addresses): Likewise. + +2017-11-07 Alan Modra + + * ld.h (textdomain, bindtextdomain): Use safer "do nothing". + (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. + +2017-11-01 Alan Modra + + * testsuite/ld-powerpc/ambiguousv2.d: Remove FIXME. + +2017-11-01 Alan Modra + + PR 22374 + * testsuite/ld-elf/pr22374a.s, + * testsuite/ld-elf/pr22374b.s, + * testsuite/ld-elf/pr22374-1.r, + * testsuite/ld-elf/pr22374-2.r: New test. + * testsuite/ld-elf/elf.exp: Run it. + +2017-11-01 Alan Modra + + * testsuite/ld-elf/elf.exp: Merge some conditionals, a better + name than "shared library for next test", and use xfail arg + of run_ld_link_tests in a few places. + +2017-10-26 Renlin Li + + * testsuite/ld-elf/elf.exp: xfail pr21703 tests on specific targets. + Only run shared lib test for targets which support it. + * testsuite/ld-elf/pr21703-r.sd: Adjust the expected output. + * testsuite/ld-elf/pr21703-shared.sd: Likewise. + +2017-10-26 James Greenhalgh + + * testsuite/ld-arm/cortex-a8-far.d: Update expected disassembly. + * testsuite/ld-arm/farcall-group-size2: Likewise. + * testsuite/ld-arm/farcall-group.d: Likewise. + +2017-10-25 H.J. Lu + + * ld.texinfo: Correct -z ibt. + +2017-10-25 Alan Modra + + * testsuite/ld-plugin/lto-3r.d: Match "__gnu_lto_v" optionally + prefixed with "_". + * testsuite/ld-plugin/lto-5r.d: Likewise. + +2017-10-25 Hans-Peter Nilsson + + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Fix typo for istarget. + +2017-10-24 Andrew Waterman + + * testsuite/ld-riscv-elf/c-lui.d: New testcase. + * testsuite/ld-riscv-elf/c-lui.s: Likewise. + * testsuite/ld-riscv-elf/ld-riscv-elf.exp: New test suite. + +2017-10-24 Renlin Li + + PR ld/21703 + * testsuite/ld-elf/elf.exp: Run new tests. + * testsuite/ld-elf/pr21703-1.s: New. + * testsuite/ld-elf/pr21703-2.s: New. + * testsuite/ld-elf/pr21703-3.s: New. + * testsuite/ld-elf/pr21703-4.s: New. + * testsuite/ld-elf/pr21703-r.sd: New. + * testsuite/ld-elf/pr21703-shared.sd: New. + * testsuite/ld-elf/pr21703.sd: New. + * testsuite/ld-elf/pr21703.ver: New. + +2017-10-23 H.J. Lu + + * configure.tgt (i[3-7]86-*-linux-*): Move elf32_x86_64 from + targ_extra_libpath to targ64_extra_libpath. + +2017-10-23 Nick Clifton + + PR 22310 + * testsuite/ld-elf/pr22310.s: New test source file. + * testsuite/ld-elf/pr22310.d: New test driver. + * testsuite/ld-mmix/undef-3.d: Update expected output from readelf. + +2017-10-21 Hans-Peter Nilsson + + PR ld/21233 + * testsuite/ld-elf/shared.exp: Remove kfails. + +2017-10-20 H.J. Lu + + PR ld/22269 + * testsuite/ld-elf/pr22269-1.rd: New file. + * testsuite/ld-elf/pr22269-1.c: Likewise. + * testsuite/ld-elf/shared.exp: Run pr22269-1. + +2017-10-19 Palmer Dabbelt + + * emultempl/riscvelf.em (riscv_elf_before_allocation): Add a + third relaxation pass. + +2017-10-17 Alan Modra + + * ld.texinfo (-z): Combine negative options with corresponding + positive option. Sort the table. Expand and correct "combreloc", + "common", "common-page-size", "interpose", "loadfltr", + "max-page-size", "muldefs", "nodefaultlib", "nodelete", "nodlopen", + "nodump", "noextern-protected-data", "now", "origin", and "text". + +2017-10-16 H.J. Lu + + * emulparams/elf32_x86_64.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Removed. + * emulparams/elf_i386_be.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/elf_i386_chaos.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/elf_i386_ldso.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/elf_i386_vxworks.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/elf_iamcu.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/elf_k1om.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/elf_l1om.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/elf_x86_64.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/i386lynx.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/i386moss.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/i386nto.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/i386nw.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/shelf.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/shelf32.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/shelf_nto.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/shelf_vxworks.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/shlelf32_linux.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/shlelf_linux.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/shlelf_nto.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emultempl/aarch64elf.em (gld${EMULATION_NAME}_before_parse): + Set link_info.check_relocs_after_open_input to TRUE. + * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): + Likewise. + * emultempl/scoreelf.em (gld${EMULATION_NAME}_before_parse): + Likewise. + * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Add + after_parse_default. + * emultempl/armcoff.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/beos.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/gld960.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/gld960c.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/lnk960.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/m68kcoff.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/msp430.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/pe.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/pep.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/ticoff.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/vanilla.em (ld_${EMULATION_NAME}_emulation): Likewise. + * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Always + set link_info.check_relocs_after_open_input to TRUE. + (ld_${EMULATION_NAME}_emulation): Add $LDEMUL_AFTER_CHECK_RELOCS. + * emultempl/linux.em (gld${EMULATION_NAME}_before_parse): + Set link_info.check_relocs_after_open_input to TRUE. + (ld_${EMULATION_NAME}_emulation): Add after_check_relocs_default. + * emultempl/mmix-elfnmmo.em (mmix_before_parse): New function. + (LDEMUL_BEFORE_PARSE): New. + * emultempl/mmixelf.em (elfmmix_before_parse): Replace + gld${EMULATION_NAME}_before_parse with mmix_before_parse. + * emultempl/ppc32elf.em (ppc_after_open): Renamed to ... + (ppc_after_check_relocs): This. Call after_check_relocs_default + instead of gld${EMULATION_NAME}_after_open. + (LDEMUL_AFTER_OPEN): Removed. + (LDEMUL_AFTER_CHECK_RELOCS): New. + * ldemul.c (ldemul_after_check_relocs): New. + (after_check_relocs_default): Likewise. + * ldemul.h (ldemul_after_check_relocs): Likewise. + (after_check_relocs_default): Likewise. + (ld_emulation_xfer_struct): Add after_check_relocs. + * ldlang.c (lang_process): Call ldemul_after_check_relocs after + lang_check_relocs. + * testsuite/ld-aarch64/gc-got-relocs.d: Don't expect GOT section. + * testsuite/ld-aarch64/gc-tls-relocs.d: Likewise. + * testsuite/ld-cris/tls-gc-68.d: Likewise. + * testsuite/ld-cris/tls-gc-69.d: Likewise. + * testsuite/ld-cris/tls-gc-70.d: Likewise. + * testsuite/ld-cris/tls-gc-75.d: Likewise. + * testsuite/ld-cris/tls-gc-79.d: Likewise. + * testsuite/ld-mmix/bpo-10.d: Don't expect .MMIX.reg_contents + section. + +2017-10-14 H.J. Lu + + PR ld/22269 + * testsuite/ld-cris/weakhiddso.d: Update and remove R_CRIS_NONE. + +2017-10-13 Alan Modra + + PR ld/22263 + * testsuite/ld-elf/tls.exp: Link with -z text. + * testsuite/ld-elf/pr22263-1.rd: Test for tprel relocs. + +2017-10-12 H.J. Lu + + PR ld/22263 + * testsuite/ld-elf/pr22263-1.rd: New file. + * testsuite/ld-elf/pr22263-1a.c: Likewise. + * testsuite/ld-elf/pr22263-1b.c: Likewise. + * testsuite/ld-elf/tls.exp: Likewise. + +2017-10-12 Nick Clifton + + * testsuite/ld-aarch64/pcrel_pic_defined.d: Expect errors not + warnings. Expect errors about unsupported relocations. + * testsuite/ld-aarch64/pcrel_pic_undefined.d: Likewise. + +2017-10-12 H.J. Lu + + * testsuite/ld-elf/pr22269b.d: Expect warning of + "-z dynamic-undefined-weak ignored". + * testsuite/ld-i386/pr19636-1j.d: Likewise. + * testsuite/ld-i386/pr19636-1k.d: Likewise. + * testsuite/ld-i386/pr19636-1l.d: Likewise. + * testsuite/ld-x86-64/pr19636-2j.d: Likewise. + * testsuite/ld-x86-64/pr19636-2k.d: Likewise. + * testsuite/ld-x86-64/pr19636-2l.d: Likewise. + * testsuite/ld-x86-64/pr19636-2m.d: Likewise. + +2017-10-12 Alan Modra + + PR 22269 + * emultempl/elf32.em (after_parse): Warn on --no-dynamic-linker + -z dynamic-undefined-weak combination. Set dynamic_undefined_weak + to zero when nointerp. + +2017-10-12 Alan Modra + + * emultempl/elf32.em (before_allocation): Call + elf_backend_hide_symbol, not _bfd_elf_link_hash_hide_symbol. + Formatting. + +2017-10-11 H.J. Lu + + * PR ld/22269 + * testsuite/ld-elf/pr22269.s: New file. + * testsuite/ld-elf/pr22269a.d: Likewise. + * testsuite/ld-elf/pr22269b.d: Likewise. + +2017-10-11 H.J. Lu + + * testsuite/ld-i386/i386.exp: Run pr19636-1j, pr19636-1k, + pr19636-1l, pr19636-3h and pr19636-3i. + * testsuite/ld-i386/pr19636-1j.d: New file. + * testsuite/ld-i386/pr19636-1k.d: Likewise. + * testsuite/ld-i386/pr19636-1l.d: Likewise. + * testsuite/ld-i386/pr19636-3h.d: Likewise. + * testsuite/ld-i386/pr19636-3i.d: Likewise. + * testsuite/ld-x86-64/pr19636-1h.d: Likewise. + * testsuite/ld-x86-64/pr19636-1i.d: Likewise. + * testsuite/ld-x86-64/pr19636-1j.d: Likewise. + * testsuite/ld-x86-64/pr19636-2j.d: Likewise. + * testsuite/ld-x86-64/pr19636-2k.d: Likewise. + * testsuite/ld-x86-64/pr19636-2l.d: Likewise. + * testsuite/ld-x86-64/pr19636-2m.d: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run pr19636-1h, pr19636-1i, + pr19636-1j, pr19636-2j, pr19636-2k, pr19636-2l and pr19636-2m. + +2017-10-11 Alan Modra + + * emultempl/aarch64elf.em: Wrap einfo strings in _(). Formatting. + * emultempl/aix.em: Likewise. + * emultempl/armcoff.em: Likewise. + * emultempl/armelf.em: Likewise. + * emultempl/avrelf.em: Likewise. + * emultempl/beos.em: Likewise. + * emultempl/cr16elf.em: Likewise. + * emultempl/elf-generic.em: Likewise. + * emultempl/elf32.em: Likewise. + * emultempl/genelf.em: Likewise. + * emultempl/hppaelf.em: Likewise. + * emultempl/linux.em: Likewise. + * emultempl/lnk960.em: Likewise. + * emultempl/m68hc1xelf.em: Likewise. + * emultempl/m68kcoff.em: Likewise. + * emultempl/m68kelf.em: Likewise. + * emultempl/metagelf.em: Likewise. + * emultempl/mipself.em: Likewise. + * emultempl/mmix-elfnmmo.em: Likewise. + * emultempl/mmo.em: Likewise. + * emultempl/msp430.em: Likewise. + * emultempl/nds32elf.em: Likewise. + * emultempl/nios2elf.em: Likewise. + * emultempl/pe.em: Likewise. + * emultempl/pep.em: Likewise. + * emultempl/ppc32elf.em: Likewise. + * emultempl/ppc64elf.em: Likewise. + * emultempl/riscvelf.em: Likewise. + * emultempl/s390.em: Likewise. + * emultempl/scoreelf.em: Likewise. + * emultempl/spuelf.em: Likewise. + * emultempl/sunos.em: Likewise. + * emultempl/tic6xdsbt.em: Likewise. + * emultempl/v850elf.em: Likewise. + * emultempl/vms.em: Likewise. + * emultempl/vxworks.em: Likewise. + * ldcref.c: Likewise. + * ldlang.c: Likewise. + * ldlex.l: Likewise. + * ldmain.c: Likewise. + * pe-dll.c: Likewise. + * plugin.c: Likewise. + +2017-10-10 Renlin Li + + PR ld/21402 + * testsuite/ld-arm/tls-app.d: Update address. + * testsuite/ld-arm/tls-app.r: Remove relocations. + * testsuite/ld-arm/unresolved-1-dyn.d: Update. + +2017-10-10 Alan Modra + + * Makefile.am (earmelfb_fuchsia.c): Rename rule from earmelf_fuchsia.c. + * Makefile.in: Regenerate. + +2017-10-09 Nick Clifton + + * testsuite/ld-srec/srec.exp (run_srec_test): Set start address. + + PR ld/19874 + * testsuite/ld-x86-64/pr19784c.c (bar): Change return type to void. + +2017-10-09 H.J. Lu + + PR ld/22267 + * ldlex.l (SYMBOLNAMECHAR1) New. + (DEFSYMEXP): Replace FILENAMECHAR1 with SYMBOLNAMECHAR1. + (EXPRESSION): Likewise. + * testsuite/ld-scripts/expr.exp: Run pr22267. + * testsuite/ld-scripts/pr22267.d: New file. + * testsuite/ld-scripts/pr22267.s: Likewise. + * testsuite/ld-scripts/pr22267.t: Likewise. + +2017-10-07 H.J. Lu + + * testsuite/ld-elf/merge.d: Don't expect to fail for sparc. + +2017-10-05 Nick Clifton + + * po/tr.po: Updated Turkish translation. + +2017-10-05 Nick Clifton + + PR 22262 + * testsuite/ld-powerpc/relocsort.d: Update expected output (for + longer reloc names). + +2017-10-05 Alan Modra + + PR 21167 + * testsuite/ld-elf/group9b.d: Adjust for relocs included in group. + +2017-10-03 Alan Modra + + PR 21294 + * NEWS: Note that defaulting to -z relro results in increased + memory and disk size. + +2017-10-03 Alan Modra + + * ld.texinfo (-z relro): Expand description. + (DATA_SEGMENT_ALIGN): Note that -z relro is not effective when + running with system page size larger than commonpagesize. + (DATA_SEGMENT_RELRO_END): Be explicit about the alignment. + +2017-10-01 Alan Modra + + PR 21970 + * ldlang.c (lang_leave_overlay): Reset overlay_subalign. + +2017-09-30 H.J. Lu + + PR binutils/21978 + * testsuite/ld-elf/pr21978.od: New file. + * testsuite/ld-elf/pr21978a.c: Likewise. + * testsuite/ld-elf/pr21978b.c: Likewise. + * testsuite/ld-elf/shared.exp: Run PR binutils/21978 test. + +2017-09-28 Nick Clifton + + PR 14918 + * testsuite/ld-plugin/lto.exp (link_elf_tests): Skip the pr14918 + test for ARM targets as they always link with libgcc. + +2017-09-28 Alan Modra + + * testsuite/ld-plugin/pr22220.h, + * testsuite/ld-plugin/pr22220lib.cc, + * testsuite/ld-plugin/pr22220lib.ver, + * testsuite/ld-plugin/pr22220main.cc: New test. + * testsuite/ld-plugin/lto.exp: Run it. + +2017-09-26 Maciej W. Rozycki + + * testsuite/ld-undefined/undefined.exp: Correct the dyn reloc + test for MIPS and S+core targets. + +2017-09-22 H.J. Lu + + PR ld/22150 + * testsuite/ld-elf/pr22150.vd: New file. + * testsuite/ld-elf/pr22150.ver: Likewise. + * testsuite/ld-elf/pr22150a.s: Likewise. + * testsuite/ld-elf/pr22150b.s: Likewise. + * testsuite/ld-elf/shared.exp: Run PR ld/22150 tests. + +2017-09-21 Alan Modra + + * testsuite/ld-powerpc/tlsopt5.wf: Update for reduced alignment. + +2017-09-19 Maciej W. Rozycki + + * configure.tgt : New + targets. + +2017-09-15 Alan Modra + + PR 22118 + * testsuite/ld-aarch64/erratum843419.d: Correct regexp. + +2017-09-14 H.J. Lu + + PR ld/22139 + * testsuite/ld-elf/globalaudit.rd: Allow additional bits in + DT_FLAGS_1. + +2017-09-14 H.J. Lu + + PR ld/22135 + * testsuite/ld-i386/i386.exp: Run pr22135. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr22135.d: New file. + * testsuite/ld-i386/pr22135.s: Likewise. + * testsuite/ld-x86-64/pr22135.d: Likewise. + * testsuite/ld-x86-64/pr22135.s: Likewise. + +2017-09-09 Alan Modra + + * ld.texinfo (--plt-align): Describe new behaviour of option. + * emultempl/ppc64elf.em (params): Default plt_stub_align to 5. + * testsuite/ld-powerpc/powerpc.exp: Pass --no-plt-align for + selected tests. + * testsuite/ld-powerpc/relbrlt.d: Pass --no-plt-align. + * testsuite/ld-powerpc/elfv2so.d: Adjust expected output. + +2017-09-09 H.J. Lu + + PR ld/22115 + * ld-i386/i386.exp: Run PR ld/22115 tests, + * ld/testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr22115-1.s: New file. + * testsuite/ld-i386/pr22115-1a.d: Likewise. + * testsuite/ld-i386/pr22115-1b.d: Likewise. + * testsuite/ld-i386/pr22115-1c.d: Likewise. + * testsuite/ld-i386/pr22115-1d.d: Likewise. + * testsuite/ld-x86-64/pr22115-1.s: Likewise. + * testsuite/ld-x86-64/pr22115-1a-x32.d: Likewise. + * testsuite/ld-x86-64/pr22115-1a.d: Likewise. + * testsuite/ld-x86-64/pr22115-1b-x32.d: Likewise. + * testsuite/ld-x86-64/pr22115-1b.d: Likewise. + * testsuite/ld-x86-64/pr22115-1c-x32.d: Likewise. + * testsuite/ld-x86-64/pr22115-1c.d: Likewise. + * testsuite/ld-x86-64/pr22115-1d-x32.d: Likewise. + * testsuite/ld-x86-64/pr22115-1d.d: Likewise. + +2017-09-06 H.J. Lu + + * testsuite/ld-x86-64/pr19609-2a.d: Updated. + * testsuite/ld-x86-64/pr19609-2b.d: Likewise. + * testsuite/ld-x86-64/pr19609-4a.d: Likewise. + * testsuite/ld-x86-64/pr19609-4c.d: Likewise. + +2017-09-05 H.J. Lu + + * testsuite/ld-x86-64/pr19609-5d.d: Updated. + * testsuite/ld-x86-64/pr19609-7a.d: Likewise. + * testsuite/ld-x86-64/pr19609-7c.d: Likewise. + +2017-09-05 H.J. Lu + + * testsuite/ld-x86-64/pr19609-4e.d: Updated. + * testsuite/ld-x86-64/pr19609-6a.d: Likewise. + +2017-09-03 H.J. Lu + + PR ld/22071 + * testsuite/ld-x86-64/pr22071.d: New file. + * testsuite/ld-x86-64/pr22071.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run pr22071. + +2017-09-02 Alan Modra + + * ldlang.h (lang_input_statement_type): Expand comments. + (LANG_FOR_EACH_INPUT_STATEMENT): Rewrite without casts. + * ldlang.c (lang_for_each_input_file): Likewise. + (load_symbols): Set usrdata for archives. + (find_rescan_insertion): New function. + (lang_process): Trim off and reinsert entries added to file chain + when rescanning archives for LTO. + * ldmain.c (add_archive_element): Set my_archive input_statement + next pointer to last element added. + +2017-09-01 H.J. Lu + + PR ld/22064 + * testsuite/ld-x86-64/pr22064a.S: New file. + * testsuite/ld-x86-64/pr22064b.c: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run PR ld/22064 test. + +2017-09-02 Alan Modra + + * emultempl/msp430.em (eval_upper_either_sections): Make base_sec_name + a const char*. + (eval_lower_either_sections): Likewise. + (msp430_elf_after_allocation): Likewise, and don't needlessly concat + and free. Warning fix. + +2017-09-01 H.J. Lu + + PR ld/22061 + * testsuite/ld-i386/ibt-plt-1.d: Updated. + * testsuite/ld-i386/ibt-plt-2a.d: Likewise. + * testsuite/ld-i386/ibt-plt-2c.d: Likewise. + * testsuite/ld-i386/ibt-plt-3a.d: Likewise. + * testsuite/ld-i386/ibt-plt-3c.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise. + * testsuite/ld-i386/ibt-plt-2b.d: Pass --hash-style=sysv to ld + and dump unwind information. + * testsuite/ld-i386/ibt-plt-2d.d: Likewise. + * testsuite/ld-i386/ibt-plt-3b.d: Likewise. + * testsuite/ld-i386/ibt-plt-3d.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2b-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2b.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2d-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2d.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3b-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3b.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3d-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3d.d: Likewise. + +2017-08-31 H.J. Lu + + PR ld/22048 + * testsuite/ld-x86-64/pr22048.d: New file. + * testsuite/ld-x86-64/pr22048a.s: Likewise. + * testsuite/ld-x86-64/pr22048b.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run pr22048. + +2017-08-31 Alan Modra + + * testsuite/ld-elf/eh3.d: Update. + * testsuite/ld-elf/eh4.d: Update. + +2017-08-30 Maciej W. Rozycki + + * testsuite/ld-elf/orphan-11.ld: Also discard `.MIPS.options' + sections. + +2017-08-30 Maciej W. Rozycki + + * testsuite/ld-mips-elf/bal-jalx-addend-micromips.d: New test. + * testsuite/ld-mips-elf/bal-jalx-addend-micromips-n32.d: New + test. + * testsuite/ld-mips-elf/bal-jalx-addend-micromips-n64.d: New + test. + * testsuite/ld-mips-elf/bal-jalx-local-micromips.d: New test. + * testsuite/ld-mips-elf/bal-jalx-local-micromips-n32.d: New + test. + * testsuite/ld-mips-elf/bal-jalx-local-micromips-n64.d: New + test. + * testsuite/ld-mips-elf/bal-jalx-pic-micromips.d: New test. + * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d: New test. + * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d: New test. + * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips.d: New + test. + * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n32.d: New + test. + * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n64.d: New + test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2017-08-30 Alan Modra + + * testsuite/ld-powerpc/tls.s: Add calls with tls markers. + * testsuite/ld-powerpc/tls32.s: Likewise. + * testsuite/ld-powerpc/powerpc.exp: Run tls marker tests. + * testsuite/ld-powerpc/tls.d: Adjust for TPREL16_HA/LO optimization. + * testsuite/ld-powerpc/tlsexe.d: Likewise. + * testsuite/ld-powerpc/tlsexetoc.d: Likewise. + * testsuite/ld-powerpc/tlsld.d: Likewise. + * testsuite/ld-powerpc/tlsmark.d: Likewise. + * testsuite/ld-powerpc/tlsopt4.d: Likewise. + * testsuite/ld-powerpc/tlstoc.d: Likewise. + +2017-08-30 Alan Modra + + * testsuite/ld-powerpc/tls.d: Update. + * testsuite/ld-powerpc/tlsexe.d: Update. + * testsuite/ld-powerpc/tlsexetoc.d: Update. + * testsuite/ld-powerpc/tlsld.d: Update. + * testsuite/ld-powerpc/tlsmark.d: Update. + * testsuite/ld-powerpc/tlsopt4.d: Update. + * testsuite/ld-powerpc/tlstoc.d: Update. + +2017-08-30 Hans-Peter Nilsson + + * testsuite/ld-cris/dso-pltdis1.d: Run ld with --hash-style=sysv. + * testsuite/ld-cris/dso-pltdis2.d, + testsuite/ld-cris/dso12-pltdis.d, testsuite/ld-cris/expdyn1.d, + testsuite/ld-cris/expdyn5.d, testsuite/ld-cris/expdyn6.d, + testsuite/ld-cris/expdyn7.d, testsuite/ld-cris/gotplt1.d, + testsuite/ld-cris/gotplt2.d, testsuite/ld-cris/gotplt3.d, + testsuite/ld-cris/hiddef1.d, testsuite/ld-cris/libdso-11.d, + testsuite/ld-cris/libdso-12.d, testsuite/ld-cris/libdso-12b.d, + testsuite/ld-cris/libdso-12c.d, testsuite/ld-cris/libdso-13.d, + testsuite/ld-cris/libdso-13b.d, testsuite/ld-cris/libdso-14.d, + testsuite/ld-cris/libdso-15.d, testsuite/ld-cris/libdso-15b.d, + testsuite/ld-cris/libdso-1b.d, testsuite/ld-cris/libdso-1c.d, + testsuite/ld-cris/libdso-1d.d, testsuite/ld-cris/libdso-4.d, + testsuite/ld-cris/pr16044.d, testsuite/ld-cris/pv32-1.d, + testsuite/ld-cris/tls-dso-dtpoffd2.d, + testsuite/ld-cris/tls-dso-dtpoffd4.d, + testsuite/ld-cris/tls-dso-tpoffgotcomm1.d, + testsuite/ld-cris/tls-dso-x1x2-1.d, testsuite/ld-cris/tls-gc-71.d, + testsuite/ld-cris/tls-ie-78.d, testsuite/ld-cris/tls-js1.d, + testsuite/ld-cris/tls-ldgdex-14.d, + testsuite/ld-cris/tls-ldgdex-15.d, + testsuite/ld-cris/tls-legdx-16.d, + testsuite/ld-cris/tls-legdx-17.d, + testsuite/ld-cris/tls-local-63.d, + testsuite/ld-cris/tls-local-64.d, testsuite/ld-cris/tls-ok-30.d, + testsuite/ld-cris/tls-ok-32.d, testsuite/ld-cris/tls-ok-34.d, + testsuite/ld-cris/tls-und-38.d, testsuite/ld-cris/tls-und-42.d, + testsuite/ld-cris/tls-und-46.d, testsuite/ld-cris/tls-und-50.d, + testsuite/ld-cris/weakref2.d, testsuite/ld-cris/weakref3.d, + testsuite/ld-cris/weakref4.d: Likewise. + +2017-08-29 Jozef Lawrynowicz + + * emultempl/msp430.em (change_output_section): New function. + (move_prefixed_section): New function. + (add_region_prefix): New function. + (msp430_elf_after_open): New function. + (gld${EMULATION_NAME}_add_options): Implement. + (gld${EMULATION_NAME}_list_options): Implement. + (gld${EMULATION_NAME}_handle_option): Implement. + * ld.texinfo: Document new options. + * testsuite/ld-msp430-elf/main-bss-lower.d: New. + * testsuite/ld-msp430-elf/main-bss-upper.d: New. + * testsuite/ld-msp430-elf/main-const-lower.d: New. + * testsuite/ld-msp430-elf/main-const-upper.d: New. + * testsuite/ld-msp430-elf/main-text-lower.d: New. + * testsuite/ld-msp430-elf/main-text-upper.d: New. + * testsuite/ld-msp430-elf/main-var-lower.d: New. + * testsuite/ld-msp430-elf/main-var-upper.d: New. + * testsuite/ld-msp430-elf/main-with-data-bss-unique-sec.s: New. + * testsuite/ld-msp430-elf/main-with-data-bss.s: New. + * testsuite/ld-msp430-elf/main-with-text-rodata-unique-sec.s: New. + * testsuite/ld-msp430-elf/main-with-text-rodata.s: New. + * testsuite/ld-msp430-elf/msp430-elf.exp: New. + * testsuite/ld-msp430-elf/msp430-no-lower.ld: New. + * testsuite/ld-msp430-elf/msp430.ld: New. + * emultempl/msp430.em (data_statement_size): New. + (eval_upper_either_sections): New. + (eval_lower_either_sections): New. + (intermediate_relax_sections): New. + (msp430_elf_after_allocation): New. + * emultempl/msp430.em (gld${EMULATION_NAME}_place_orphan): Always + place sections in the lower region. + +2017-08-26 H.J. Lu + + PR ld/21997 + * testsuite/ld-i386/i386.exp: Run PR ld/21997 tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr21997-1a.S: New file. + * testsuite/ld-i386/pr21997-1b.c: Likewise. + * testsuite/ld-i386/pr21997-1c.S: Likewise. + * testsuite/ld-x86-64/pr21997-1a.S: Likewise. + * testsuite/ld-x86-64/pr21997-1a.err: Likewise. + * testsuite/ld-x86-64/pr21997-1b.c: Likewise. + * testsuite/ld-x86-64/pr21997-1b.err: Likewise. + * testsuite/ld-x86-64/pr21997-1c.c: Likewise. + +2017-08-24 H.J. Lu + + * testsuite/ld-elf/pr21903c.d: Remove '\' before --. + * testsuite/ld-elf/pr21903d.d: Likewise. + * testsuite/ld-elf/pr21903e.d: Likewise. + * testsuite/lib/ld-lib.exp (run_dump_test): Add "--" after + regexp. + +2017-08-24 H.J. Lu + + * testsuite/ld-i386/i386.exp (undefined_weak): Replace regexp + with string match. + * testsuite/ld-x86-64/x86-64.exp (undefined_weak): Likewise. + +2017-08-24 H.J. Lu + + * testsuite/ld-x86-64/x86-64.exp: Run pr22001-1b on x32. + +2017-08-24 H.J. Lu + + PR ld/22001 + * testsuite/ld-i386/i386.exp: Run -z nocopyreloc tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr22001-1a.c: New file. + * testsuite/ld-i386/pr22001-1b.c: Likewise. + * testsuite/ld-i386/pr22001-1c.S: Likewise. + * testsuite/ld-x86-64/pr22001-1a.c: Likewise. + * testsuite/ld-x86-64/pr22001-1a.err: Likewise. + * testsuite/ld-x86-64/pr22001-1b.c: Likewise. + * testsuite/ld-x86-64/pr22001-1b.err: Likewise. + * testsuite/ld-x86-64/pr22001-1c.c: Likewise. + +2017-08-17 Andrew Burgess + + PR 21961 + * ldlang.c (lang_discard_section_p): New function. + (lang_add_section): Checks moved out into new function, which is + now called. + (lang_place_orphans): Call lang_discard_section_p instead of + duplicating some of the checks from lang_add_section. + * testsuite/ld-elf/orphan-11.d: New file. + * testsuite/ld-elf/orphan-11.ld: New file. + * testsuite/ld-elf/orphan-11.s: New file. + * testsuite/ld-elf/orphan-12.d: New file. + * testsuite/ld-elf/orphan-12.s: New file. + +2017-08-24 Alan Modra + + * testsuite/ld-undefined/fundef.s: New test. + * testsuite/ld-undefined/undefined.exp: Test that undefined + symbols in shared libraries are made dynamic. + +2017-08-23 H.J. Lu + + * testsuite/ld-elf/pr21903c.d: Add '\' before --. + * testsuite/ld-elf/pr21903d.d: Likewise. + * testsuite/ld-elf/pr21903e.d: Likewise. + +2017-08-23 H.J. Lu + + * testsuite/ld-x86-64/pie2.d: Updated. + * testsuite/ld-x86-64/pr19719.d: Likewise. + * testsuite/ld-x86-64/pr19807-2a.d: Likewise. + * testsuite/ld-x86-64/pr19969.d: Likewise. + +2017-08-23 H.J. Lu + + * testsuite/ld-i386/i386.exp: Run protected7. + * testsuite/ld-i386/protected7.d: New file. + * testsuite/ld-i386/protected7.s: Likewise. + * testsuite/ld-x86-64/protected8.d: Likewise. + * testsuite/ld-x86-64/protected8.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run protected8. + +2017-08-23 Alan Modra + + * testsuite/ld-gc/pr19161.d: Don't xfail hppa. + +2017-08-22 H.J. Lu + Alan Modra + + * testsuite/ld-elf/pr21964-1a.c (foo): Renamed to ... + (foo1): This. + * testsuite/ld-elf/pr21964-1b.c: Rewrite. + * testsuite/ld-elf/pr21964-1c.c: New file. + * testsuite/ld-elf/pr21964-2c.c: Likewise. + * testsuite/ld-elf/pr21964-2a.c (foo): Renamed to ... + (foo1): This. + * testsuite/ld-elf/pr21964-2b.c: Rewrite. + * testsuite/ld-elf/shared.exp: Update PR ld/21964 tests. + +2017-08-21 H.J. Lu + Alan Modra + + PR ld/21964 + * testsuite/ld-elf/pr21562a.d: Update for changed start/stop symbols. + * testsuite/ld-elf/pr21562b.d: Likewise. + * testsuite/ld-elf/pr21562c.d: Likewise. + * testsuite/ld-elf/pr21562d.d: Likewise. + * testsuite/ld-elf/pr21562e.d: Likewise. + * testsuite/ld-elf/pr21562f.d: Likewise. + * testsuite/ld-elf/pr21562g.d: Likewise. + * testsuite/ld-elf/pr21562h.d: Likewise. + * testsuite/ld-elf/pr21562i.d: Likewise. + * testsuite/ld-elf/pr21562j.d: Likewise. + * testsuite/ld-elf/pr21562k.d: Likewise. + * testsuite/ld-elf/pr21562l.d: Likewise. + * testsuite/ld-elf/pr21562m.d: Likewise. + * testsuite/ld-elf/pr21562n.d: Likewise. + * testsuite/ld-elf/sizeofa.d: Likewise. + * testsuite/ld-elf/sizeofb.d: Likewise. + * testsuite/ld-elf/startofa.d: Likewise. + * testsuite/ld-elf/startofb.d: Likewise. + * testsuite/ld-gc/pr20022.d: Likewise. + * testsuite/ld-gc/start.d: Likewise. + * testsuite/ld-elf/pr21964-1a.c: New file. + * testsuite/ld-elf/pr21964-1b.c: New file. + * testsuite/ld-elf/pr21964-2a.c: New file. + * testsuite/ld-elf/pr21964-2b.c: New file. + * testsuite/ld-elf/shared.exp: Run PR ld/21964 tests. + +2017-08-21 Hans-Peter Nilsson + + PR ld/20125 + * testsuite/ld-mmix/pr20125.d, testsuite/ld-mmix/pr20125.s: New + test. + +2017-08-20 A. Wilcox + + PR ld/21976 + * testsuite/ld-x86-64/plt-main-bnd.dd: Accept '_' in symbol + name. + +2017-08-17 Nick Clifton + + * po/pt_BR.po: New Brazilian Portuguese translation. + * configure.ac (ALL_LINGUAS): Add pt_BR. + * configure: Regenerate. + +2017-08-14 Alan Modra + + PR 21441 + * testsuite/ld-x86-64/pr21038a.d: Adjust. + * testsuite/ld-x86-64/pr21038a-now.d: Adjust. + +2017-08-13 H.J. Lu + + * testsuite/ld-i386/i386.exp: Run pr21884-nacl. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr21884.d: Don't run on nacl targets. + * testsuite/ld-x86-64/pr21884.d: Likewise. + * testsuite/ld-i386/pr21884.t: Revert the last change. + * testsuite/ld-x86-64/pr21884.t: Likewise. + * testsuite/ld-i386/pr21884-nacl.d: New file. + * testsuite/ld-i386/pr21884-nacl.t: Likewise. + * testsuite/ld-x86-64/pr21884-nacl.d: Likewise. + * testsuite/ld-x86-64/pr21884-nacl.t: Likewise. + +2017-08-13 Alan Modra + + * testsuite/ld-i386/pr21884.t: Remove unneeded format, arch and entry. + * testsuite/ld-x86-64/pr21884.t: Likewise. + +2017-08-11 Nick Clifton + + * emultempl/elf32.em (handle_option): Accept the -z globalaudit + command line option. + * lexsup.c (elf_static_list_options): Add -z globalaudit. + * ld.texinfo: Document the support for the new command line + option. + * NEWS: Mention the new feature. + * testsuite/ld-elf/audit.exp: Add a test of the -z globalaudit + command line option. + * testsuite/ld-elf/globalaudit.rd: New file: Expected output from + readelf. + +2017-08-11 H.J. Lu + + PR ld/21884 + * testsuite/ld-i386/i386.exp: Run pr21884. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr21884.d: New file. + * testsuite/ld-i386/pr21884.t: Likewise. + * testsuite/ld-x86-64/pr21884.d: Likewise. + * testsuite/ld-x86-64/pr21884.t: Likewise. + +2017-08-10 Nick Clifton + + * scripttempl/pep.sc: Enclose __CTOR_LIST__, ___CTOR_LIST__, + __DTOR_LIST__ and ___DTOR_LIST__ in PROVIDE statements so that + they can be overrridden by crt input files. + * scripttempl/pe.sc: Likewise. + +2017-08-09 H.J. Lu + + * testsuite/config/default.exp (LD_CLASS): Check .libs/ld-new + for linker first. + +2017-08-09 H.J. Lu + + * testsuite/config/default.exp (LD_CLASS): New. Set to "64bit" + for 64-bit ELF linker. + * testsuite/ld-x86-64/pr17618.d (#notarget): Removed. + * testsuite/ld-x86-64/x86-64.exp: Run pr17618 only for 64-bit + linker. + +2017-08-08 H.J. Lu + + PR ld/21924 + * testsuite/ld-i386/i386.exp: Require GCC 5 or above for + "weakundef1 with PIE" test. + * testsuite/ld-x86-64/tls.exp: Require GCC 5 or above for + "tlsdesc1" and "tlsdesc1 with PIE" tests. + +2017-08-08 H.J. Lu + + * configure.ac (TESTBFDLIB): Add a ',' after -Wl,--rpath. + * configure: Regenerated. + +2017-08-08 H.J. Lu + + PR ld/21923 + * configure.ac (TESTBFDLIB): Replace --rpath with -Wl,--rpath + for --disable-static. + * configure: Regenerated. + +2017-08-08 Romain Geissler + Alan Modra + + * configure.ac: Add --enable-default-hash-style option. + * ldmain.c (main): Set link_info.emit_hash to DEFAULT_EMIT_SYSV_HASH. + Set link_info.emit_gnu_hash to DEFAULT_EMIT_GNU_HASH. + * configure: Regenerate. + * config.in: Regenerate. + +2017-08-08 Alan Modra + + * testsuite/ld-aarch64/ifunc-1-local.d: Run ld with --hash-style=sysv. + * testsuite/ld-aarch64/ifunc-2-local.d: Likewise. + * testsuite/ld-aarch64/ifunc-3a.d: Likewise. + * testsuite/ld-frv/fdpic-pie-1.d: Likewise. + * testsuite/ld-frv/fdpic-pie-2.d: Likewise. + * testsuite/ld-frv/fdpic-pie-7.d: Likewise. + * testsuite/ld-frv/fdpic-pie-8.d: Likewise. + * testsuite/ld-arm/arm-elf.exp: Add --hash-style=sysv to "Using + Thumb lib by another lib" test's ld options. + * testsuite/ld-elf/note-3.l: Match .gnu.hash. + * testsuite/ld-elf/note-3.t: Add .gnu.hash output section. + +2017-08-07 H.J. Lu + + * testsuite/ld-elf/pr21903.s (start): Removed. + (_start): Likewise. + (__start): Likewise. + (main): Likewise. + (bar): New. + +2017-08-07 Alan Modra + + * testsuite/ld-alpha/alpha.exp: Add --hash-style=sysv to various + test's ld options. + * testsuite/ld-arm/arm-elf.exp: Likewise. + * testsuite/ld-elf/elf.exp: Likewise. + * testsuite/ld-elf/readelf.exp: Likewise. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + * testsuite/ld-i386/i386.exp: Likewise. + * testsuite/ld-ia64/ia64.exp: Likewise. + * testsuite/ld-m68k/m68k.exp: Likewise. + * testsuite/ld-metag/metag.exp: Likewise. + * testsuite/ld-powerpc/powerpc.exp: Likewise. + * testsuite/ld-s390/s390.exp: Likewise. + * testsuite/ld-sh/sh-vxworks.exp: Likewise. + * testsuite/ld-shared/shared.exp: Likewise. + * testsuite/ld-sparc/sparc.exp: Likewise. + * testsuite/ld-tic6x/tic6x.exp: Likewise. + * testsuite/ld-vax-elf/vax-elf.exp: Likewise. + * testsuite/ld-x86-64/mpx.exp: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-xtensa/xtensa.exp: Likewise. + + * testsuite/ld-elf/comm-data2.ld: Add .gnu.hash output section. + * testsuite/ld-elf/pr20828-v.ld: Likewise. + * testsuite/ld-elf/pr20828.ld: Likewise. + * testsuite/ld-elf/pr21233.ld: Likewise. + * testsuite/ld-elf/pr21384.ld: Likewise. + * testsuite/ld-elf/provide-hidden-1.ld: Likewise. + * testsuite/ld-elf/provide-hidden-2.ld: Likewise. + * testsuite/ld-elf/provide-hidden-s.ld: Likewise. + * testsuite/ld-scripts/cross1.t: Likewise. + + * testsuite/ld-elf/stab.d: Adjust allowed section indices. + + * testsuite/ld-i386/pie1.d: Don't match addresses. + * testsuite/ld-i386/plt-pic2.dd: Likewise. + * testsuite/ld-i386/pr19636-1d.d: Likewise. + * testsuite/ld-i386/pr19636-2c.d: Likewise. + * testsuite/ld-powerpc/elfv2so.d: Likewise. + * testsuite/ld-powerpc/tlsopt5.d: Likewise. + * testsuite/ld-powerpc/tlsopt5.wf: Likewise. + * testsuite/ld-powerpc/tlsopt5_32.d: Likewise. + + * testsuite/ld-i386/pr19636-2b.d: Don't match _start. + + * testsuite/ld-powerpc/ambiguousv1.d: Relax symbol count, index + and address match. + * testsuite/ld-powerpc/ambiguousv1b.d: Likewise. + * testsuite/ld-powerpc/ambiguousv2.d: Likewise. + * testsuite/ld-powerpc/ambiguousv2b.d: Likewise. + + * testsuite/ld-aarch64/gc-plt-relocs.d: Run ld with --hash-style=sysv. + * testsuite/ld-aarch64/ifunc-1.d: Likewise. + * testsuite/ld-aarch64/ifunc-2.d: Likewise. + * testsuite/ld-aarch64/ifunc-21.d: Likewise. + * testsuite/ld-aarch64/relasz.d: Likewise. + * testsuite/ld-aarch64/tls-small-ld.d: Likewise. + * testsuite/ld-aarch64/tls-tiny-ld.d: Likewise. + * testsuite/ld-arc/tls_gd-01.d: Likewise. + * testsuite/ld-cris/libdso-10.d: Likewise. + * testsuite/ld-cris/libdso-2.d: Likewise. + * testsuite/ld-cris/pic-gc-72.d: Likewise. + * testsuite/ld-cris/pic-gc-73.d: Likewise. + * testsuite/ld-cris/tls-gd-1.d: Likewise. + * testsuite/ld-cris/tls-gd-1h.d: Likewise. + * testsuite/ld-cris/tls-gd-2.d: Likewise. + * testsuite/ld-cris/tls-gd-2h.d: Likewise. + * testsuite/ld-cris/tls-ie-10.d: Likewise. + * testsuite/ld-cris/tls-ie-11.d: Likewise. + * testsuite/ld-cris/tls-ie-8.d: Likewise. + * testsuite/ld-cris/tls-ie-9.d: Likewise. + * testsuite/ld-cris/tls-ld-4.d: Likewise. + * testsuite/ld-cris/tls-ld-5.d: Likewise. + * testsuite/ld-cris/tls-ld-6.d: Likewise. + * testsuite/ld-cris/tls-ld-7.d: Likewise. + * testsuite/ld-cris/tls-ldgd-14.d: Likewise. + * testsuite/ld-cris/tls-ldgd-15.d: Likewise. + * testsuite/ld-cris/tls-ldgdx-14.d: Likewise. + * testsuite/ld-cris/tls-ldgdx-15.d: Likewise. + * testsuite/ld-cris/tls-local-54.d: Likewise. + * testsuite/ld-cris/tls-local-60.d: Likewise. + * testsuite/ld-cris/tls-local-61.d: Likewise. + * testsuite/ld-cris/weakhiddso.d: Likewise. + * testsuite/ld-elf/linkinfo1a.d: Likewise. + * testsuite/ld-elf/linkinfo1b.d: Likewise. + * testsuite/ld-elf/pr19617a.d: Likewise. + * testsuite/ld-elfvsb/hidden2.d: Likewise. + * testsuite/ld-frv/fdpic-pie-6.d: Likewise. + * testsuite/ld-frv/fdpic-shared-2.d: Likewise. + * testsuite/ld-frv/fdpic-shared-5.d: Likewise. + * testsuite/ld-frv/fdpic-shared-6.d: Likewise. + * testsuite/ld-frv/fdpic-shared-8.d: Likewise. + * testsuite/ld-frv/fdpic-shared-local-2.d: Likewise. + * testsuite/ld-frv/fdpic-shared-local-8.d: Likewise. + * testsuite/ld-frv/tls-dynamic-2.d: Likewise. + * testsuite/ld-i386/ibt-plt-1.d: Likewise. + * testsuite/ld-i386/ibt-plt-2a.d: Likewise. + * testsuite/ld-i386/ibt-plt-2c.d: Likewise. + * testsuite/ld-i386/ibt-plt-3a.d: Likewise. + * testsuite/ld-i386/ibt-plt-3c.d: Likewise. + * testsuite/ld-i386/pr20830.d: Likewise. + * testsuite/ld-ia64/merge1.d: Likewise. + * testsuite/ld-ia64/merge2.d: Likewise. + * testsuite/ld-ia64/merge3.d: Likewise. + * testsuite/ld-ia64/merge4.d: Likewise. + * testsuite/ld-ia64/merge5.d: Likewise. + * testsuite/ld-ifunc/ifunc-1-local-x86.d: Likewise. + * testsuite/ld-ifunc/ifunc-1-x86.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise. + * testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise. + * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-i386.d: Likewise. + * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-x86-64.d: Likewise. + * testsuite/ld-m68k/got-1.d: Likewise. + * testsuite/ld-m68k/got-multigot-12-13-14-34-35-ok.d: Likewise. + * testsuite/ld-m68k/got-multigot-14-ok.d: Likewise. + * testsuite/ld-m68k/got-multigot-15-er.d: Likewise. + * testsuite/ld-m68k/got-negative-12-13-14-34-ok.d: Likewise. + * testsuite/ld-m68k/got-negative-12-13-14-35-er.d: Likewise. + * testsuite/ld-m68k/got-negative-14-ok.d: Likewise. + * testsuite/ld-m68k/got-negative-15-er.d: Likewise. + * testsuite/ld-m68k/got-single-12-ok.d: Likewise. + * testsuite/ld-m68k/got-single-13-er.d: Likewise. + * testsuite/ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: Likewise. + * testsuite/ld-m68k/got-xgot-15-ok.d: Likewise. + * testsuite/ld-m68k/tls-gd-1.d: Likewise. + * testsuite/ld-m68k/tls-gd-2.d: Likewise. + * testsuite/ld-m68k/tls-gd-ie-1.d: Likewise. + * testsuite/ld-m68k/tls-ie-1.d: Likewise. + * testsuite/ld-m68k/tls-ld-1.d: Likewise. + * testsuite/ld-m68k/tls-ld-2.d: Likewise. + * testsuite/ld-sh/shared-2.d: Likewise. + * testsuite/ld-sh/tlsbin-2.d: Likewise. + * testsuite/ld-sh/tlspic-2.d: Likewise. + * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-1.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise. + * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-plt-1.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-1.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2a.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2c.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3a.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3c.d: Likewise. + * testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise. + * testsuite/ld-x86-64/ilp32-4.d: Likewise. + * testsuite/ld-x86-64/load1c-nacl.d: Likewise. + * testsuite/ld-x86-64/load1c.d: Likewise. + * testsuite/ld-x86-64/load1d-nacl.d: Likewise. + * testsuite/ld-x86-64/load1d.d: Likewise. + * testsuite/ld-x86-64/pie3-nacl.d: Likewise. + * testsuite/ld-x86-64/pie3.d: Likewise. + * testsuite/ld-x86-64/pr14207.d: Likewise. + * testsuite/ld-x86-64/pr19162.d: Likewise. + * testsuite/ld-x86-64/pr19636-2d-nacl.d: Likewise. + * testsuite/ld-x86-64/pr19636-2d.d: Likewise. + * testsuite/ld-x86-64/pr20253-1d.d: Likewise. + * testsuite/ld-x86-64/pr20253-1f.d: Likewise. + * testsuite/ld-x86-64/pr20253-1j.d: Likewise. + * testsuite/ld-x86-64/pr20253-1l.d: Likewise. + * testsuite/ld-x86-64/pr20830a-now.d: Likewise. + * testsuite/ld-x86-64/pr20830a.d: Likewise. + * testsuite/ld-x86-64/pr20830b-now.d: Likewise. + * testsuite/ld-x86-64/pr20830b.d: Likewise. + * testsuite/ld-x86-64/pr21038a-now.d: Likewise. + * testsuite/ld-x86-64/pr21038a.d: Likewise. + * testsuite/ld-x86-64/pr21038b-now.d: Likewise. + * testsuite/ld-x86-64/pr21038b.d: Likewise. + * testsuite/ld-x86-64/pr21038c-now.d: Likewise. + * testsuite/ld-x86-64/pr21038c.d: Likewise. + +2017-08-06 H.J. Lu + + PR ld/21903: + * ld.h (command_line): Remove inhibit_common_definition. + * ldgram.y: Replace command_line.inhibit_common_definition with + link_info.inhibit_common_definition. + * ldlang.c (lang_common): Likewise. + * lexsup.c (parse_args): Likewise. + * ldmain.c (main): Only allow --no-define-common with -shared. + * testsuite/ld-elf/pr21903.s: New file. + * testsuite/ld-elf/pr21903a.d: Likewise. + * testsuite/ld-elf/pr21903b.d: Likewise. + * testsuite/ld-elf/pr21903c.d: Likewise. + * testsuite/ld-elf/pr21903d.d: Likewise. + * testsuite/ld-elf/pr21903e.d: Likewise. + +2017-08-05 Alan Modra + + * testsuite/ld-unique/pr21529.d: Don't xfail hppa. + +2017-08-04 H.J. Lu + + PR ld/21904 + * testsuite/ld-elf/pr21904.d: New file. + * testsuite/ld-elf/pr21904.s: Likewise. + +2017-08-03 Nick Clifton + + PR ld/21884 + * testsuite/ld-elf/pr21884.d: Add AVR, HPPA, IA64, M68HC1x and + SCORE to list of targets not supporting file format changes during + linking. + * testsuite/ld-unique/pr21529.d: Likewise. + * emultempl/avrelf.em (_before_allocation): Skip for non-ELF + output formats. + (avr_elf_create_output_section_statements): Fail if the output + format is not ELF. + (avr_finish): Do not access the ELF header in non-ELF format + output bfds. + * emultempl/m68hc1xelf.em (_before_allocation): Skip for non-ELF + output formats. + (m68hc11elf_create_output_section_statements): Fail if the putput + format is not ELF. + (m68hc11elf_after_allocation): Skip for non-ELF output formats. + +2017-08-03 Alan Modra + + PR ld/21884 + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Revert + last change. Rename iself to elfinput. Expand comments. Condition + ELF checks on having both input and output ELF files. Extract.. + (elf_orphan_compatible): ..this new function. + +2017-08-02 H.J. Lu + + PR ld/21884 + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Check + ELF section header only for ELF output. + * testsuite/ld-elf/pr21884.d: New test. + * testsuite/ld-elf/pr21884.t: Likewise. + * testsuite/ld-elf/pr21884a.s: Likewise. + * testsuite/ld-elf/pr21884b.s: Likewise. + +2017-08-02 H.J. Lu + + * emultempl/elf32.em (_place_orphan): Revert the last change. + +2017-08-02 Max Filippov + + * emultempl/xtensaelf.em (xtensa_wild_group_interleave_callback): + Only check for by_name sorting. + +2017-08-02 Nick Clifton + + PR 21884 + * emultempl/elf32.em (_place_orphan): Skip non-ELF binaries when + looking for sections to merge. + +2017-07-31 Alan Modra + + * ld.texinfo (plt-localentry): Revise. + +2017-07-29 Alan Modra + + * ld.texinfo (plt-localentry): Document. + +2017-07-28 Andrew Burgess + + * ldgram.y (ldgram_had_keep): Make static. + (ldgram_vers_current_lang): Likewise. + (filename_spec): New rule. + (input_section_spec_no_keep): Use filename_spec. + (wildcard_maybe_exclude): New rule. + (wildcard_spec): Rename to... + (section_name_spec): ...this. + (section_NAME_list): Rename to... + (section_name_list): ...this. + (section_name_spec): Simplifiy and use wildcard_maybe_exclude. + * ldlang.c (placed_commons): Delete. + (lang_add_wild): No longer set placed_commons. + (print_wild_statement): Use full names for SORT specifiers. + * testsuite/ld-scripts/align.exp: Run new tests. + * testsuite/ld-scripts/align3.d: New file. + * testsuite/ld-scripts/align3.t: New file. + * testsuite/ld-scripts/align4.d: New file. + * testsuite/ld-scripts/align4.t: New file. + * testsuite/ld-scripts/align5.d: New file. + * testsuite/ld-scripts/align5.t: New file. + * testsuite/ld-scripts/exclude-file-5.d: New file. + * testsuite/ld-scripts/exclude-file-5.map: New file. + * testsuite/ld-scripts/exclude-file-5.t: New file. + * testsuite/ld-scripts/exclude-file-6.d: New file. + * testsuite/ld-scripts/exclude-file-6.map: New file. + * testsuite/ld-scripts/exclude-file-6.t: New file. + * NEWS: Mention the changes. + +2017-07-27 Georg-Johann Lay + + PR ld/21849 + * scripttempl/avr.sc: Split .progmemx.* from .progmem.* and locate + former at a higher address. + +2017-07-25 Alan Modra + + * testsuite/ld-powerpc/tlsopt5.s: Add cfi. + * testsuite/ld-powerpc/tlsopt5.d: Update. + * testsuite/ld-powerpc/tlsopt5.wf: New file. + * testsuite/ld-powerpc/powerpc.exp: Perform new tlsopt5 test. + +2017-07-24 Claudiu Zissulescu + + * testsuite/ld-arc/jli-overflow.d: Force testing for little + endian. + * testsuite/ld-arc/tls_gd-01.d: Fix string to match bigendian + systems. + * testsuite/ld-arc/tls_ie-01.d: Fix test for bigendian systems. + +2017-07-19 Maciej W. Rozycki + + * testsuite/ld-scripts/fill.d: Adjust `xfail' entries. Add + `notarget' entries. Update comments. + * testsuite/ld-scripts/fill16.d: New test. + * testsuite/ld-scripts/fill16_0.s: New test source. + * testsuite/ld-scripts/fill16_1.s: New test source. + * testsuite/ld-scripts/fill16_2.s: New test source. + * testsuite/ld-scripts/data.exp: Run the new test. + +2017-07-19 Claudiu Zissulescu + John Eric Martin + + * emulparams/arcelf.sh (JLI_START_TABLE): Define. + * scripttempl/elfarc.sc: Handle jlitab section. + * scripttempl/elfarcv2.sc: Likewise. + * testsuite/ld-arc/arc.exp: Add JLI test. + * testsuite/ld-arc/jli-script.ld: New file. + * testsuite/ld-arc/jli-simple.dd: Likewise. + * testsuite/ld-arc/jli-simple.rd: Likewise. + * testsuite/ld-arc/jli-simple.s: Likewise. + * testsuite/ld-arc/jli-overflow.s: Likewise. + * testsuite/ld-arc/jli-overflow.d: Likewise. + * testsuite/ld-arc/jli-overflow.err: Likewise. + +2017-07-19 Tristan Gingold + + * ldmain.c (main): Remove display of data size. + +2017-07-18 Maciej W. Rozycki + + PR ld/16656 + * testsuite/ld-elf/binutils.exp (binutils_test): Make the + expectation for `.got' in GNU_RELRO segment target-specific. + Handle `.got.plt' separately. + +2017-07-18 Maciej W. Rozycki + + PR ld/16656 + * testsuite/ld-elf/binutils.exp (binutils_test): Make the + expectation for `.dynamic' in GNU_RELRO segment target-specific. + +2017-07-18 Nick Clifton + + PR 21775 + * ld.texinfo: Fix spelling typos. + * testsuite/ld-elfcomm/elfcomm.exp: Likewise. + +2017-07-17 H.J. Lu + + * testsuite/ld-i386/i386.exp: Run pie1 and pie1-nacl. + * testsuite/ld-i386/pie1-nacl.d: New file. + * testsuite/ld-i386/pie1.d: Likewise. + * testsuite/ld-i386/pie1.s: Likewise. + +2017-07-17 H.J. Lu + + PR ld/21782 + * testsuite/ld-x86-64/pie3-nacl.d: New file. + * testsuite/ld-x86-64/pie3.d: Likewise. + * testsuite/ld-x86-64/pie3.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run pie3 and pie3-nacl. + +2017-07-14 Alan Modra + + * testsuite/ld-powerpc/powerpc.exp: Add -shared to tlsop5 tests. + * testsuite/ld-powerpc/tlsopt5.d: Adjust. + * testsuite/ld-powerpc/tlsopt1_32.s: Use r30 as GOT pointer. + * testsuite/ld-powerpc/tlsopt2_32.s: Likewise. + * testsuite/ld-powerpc/tlsopt3_32.s: Likewise. + * testsuite/ld-powerpc/tlsopt4_32.s: Likewise. + * testsuite/ld-powerpc/tlsopt5_32.s: Rewrite. + * testsuite/ld-powerpc/tlsopt1_32.d: Adjust. + * testsuite/ld-powerpc/tlsopt2_32.d: Adjust. + * testsuite/ld-powerpc/tlsopt3_32.d: Adjust. + * testsuite/ld-powerpc/tlsopt5_32.d: Adjust. + +2016-07-14 Maciej W. Rozycki + + * testsuite/ld-unique/pr21529.ld: New test linker script. + * testsuite/ld-unique/pr21529.d: Use it. + +2017-07-12 Alan Modra + + * po/bg.po: Update from translationproject.org/latest/ld/. + * po/da.po: Likewise. + * po/es.po: Likewise. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/id.po: Likewise. + * po/it.po: Likewise. + * po/ja.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + * po/zh_TW.po: Likewise. + * po/de.po: New file from translationproject.org. + * po/ru.po: Likewise. + * configure.ac (ALL_LINGUAS): Add de, ru. Sort. + * configure: Regenerate. + +2017-07-12 Alan Modra + + * testsuite/ld-scripts/align.exp: Exclude powerpc*-*-aix*. + * testsuite/ld-scripts/assign-loc.d: Likewise. + * testsuite/ld-scripts/defined3.d: Likewise. + * testsuite/ld-scripts/defined4.d: Likewise. + * testsuite/ld-scripts/defined5.d: Likewise. + * testsuite/ld-scripts/expr2.d: Likewise. + * testsuite/ld-scripts/provide.exp: Likewise. + * testsuite/ld-scripts/sane1.d: Likewise. + * testsuite/ld-scripts/size.exp: Likewise. + * testsuite/ld-scripts/defined2.d: Don't xfail rs6000-*-aix*. + +2017-07-12 Alan Modra + + * testsuite/ld-arc/nps-1b.err: Update. + * testsuite/ld-x86-64/ilp32-11.d: Update. + +2017-07-11 H.J. Lu + + * testsuite/ld-selective/selective.exp: Support single digit + GCC version. + +2017-07-11 Jiong Wang + + * testsuite/ld-aarch64/dt_textrel.d: Use "#pass" instead of ".*" to + filter out remaining lines. + +2017-07-07 Maciej W. Rozycki + + * emultempl/mipself.em (mips_before_allocation): Avoid ELF + processing if not MIPS ELF. + * testsuite/ld-mips-elf/binary.d: New test. + * testsuite/ld-mips-elf/binary.ld: New test linker script. + * testsuite/ld-mips-elf/binary.s: New test source. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new test. + +2017-07-07 Alan Modra + + * testsuite/ld-powerpc/ppc476-shared.lnk: Align .bss. + * testsuite/ld-powerpc/ppc476-shared.d: Adjust. + * testsuite/ld-powerpc/ppc476-shared2.d: Adjust. + +2017-07-07 Alan Modra + + * Makefile.am (eelf64_s390.c): Depend on emultempl/s390.em. + +2017-07-04 Tristan Gingold + + * configure: Regenerate. + +2017-07-04 Tristan Gingold + + * NEWS: Add marker for 2.29. + +2017-07-03 Tristan Gingold + + * po/ld.pot: Regenerate. + +2017-06-30 Maciej W. Rozycki + + * testsuite/ld-mips-elf/relax-offset.dd: New test. + * testsuite/ld-mips-elf/relax-offset.gd: New test. + * testsuite/ld-mips-elf/relax-offset-umips.dd: New test. + * testsuite/ld-mips-elf/relax-offset-umips.gd: New test. + * testsuite/ld-mips-elf/relax-offset.ld: New test linker script. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + (prune_warnings): New temporary procedure. + +2017-06-28 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips-elf-flags.exp: Add interAptiv MR2 + tests. + +2017-06-27 Senthil Kumar Selvaraj + + PR ld/13402 + * testsuite/ld-avr/pr13402.d: New test. + * testsuite/ld-avr/pr13402.s: New test. + +2017-06-27 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): + Add an `args' final argument and examination code for `readelf + -A' output. Update procedure description accordingly. + +2017-06-27 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): + Use `remote_exec' to call `readelf'. Log the command issued. + +2017-06-27 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips-elf-flags.exp (good_combination): + Use `readelf -h' rather than `readelf --headers'. + +2017-06-26 Maciej W. Rozycki + + * testsuite/ld-mips-elf/lsi-4010-isa.d: New test. + * ld/testsuite/ld-mips-elf/mips-elf.exp: Run the new test. + +2017-06-26 Maciej W. Rozycki + + * testsuite/ld-elf/sizeofa.d: Also accept the OBJECT type for + the symbols examined. + * testsuite/ld-elf/sizeofc.d: Likewise. + * testsuite/ld-elf/startofa.d: Likewise. + * testsuite/ld-elf/startofc.d: Likewise. + +2017-06-26 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Skip + --just-syms bfds when looking for a place to attach .note.gnu.build-id + and .eh_frame_hdr sections. Delete dead code. + +2017-06-24 Thomas Preud'homme + + * testsuite/ld-arm/arm-elf.exp (EABI attribute merging 11): New test. + (EABI attribute merging 12): Likewise. + * testsuite/ld-arm/attr-merge-11a.s: New file. + * testsuite/ld-arm/attr-merge-11b.s: New file. + * testsuite/ld-arm/attr-merge-11.attr: New file. + * testsuite/ld-arm/attr-merge-12a.s: New file. + * testsuite/ld-arm/attr-merge-12b.s: New file. + * testsuite/ld-arm/attr-merge-12.attr: New file. + +2017-06-22 H.J. Lu + + * testsuite/ld-i386/i386.exp: Run weakundef1 tests. + * testsuite/ld-i386/weakundef1.c: New file. + +2017-06-22 H.J. Lu + + PR ld/21090 + * testsuite/ld-elfvsb/elfvsb.exp (visibility_run): Pass + $NOPIE_CFLAGS if non-PIE is required. + +2017-06-22 H.J. Lu + + PR ld/21090 + * testsuite/ld-i386/i386.exp: Pass $NOPIE_CFLAGS and + $NOPIE_LDFLAGS to "Run pr19031". + +2017-06-22 H.J. Lu + + PR ld/21090 + * testsuite/ld-gc/gc.exp: Compile tmpdir/pr14265.o with + $NOPIE_CFLAGS. + * testsuite/ld-i386/i386.exp: Pass $NOPIE_CFLAGS and + $NOPIE_LDFLAGS if non-PIE is required. + * testsuite/ld-i386/no-plt.exp (NOPIE_CFLAGS): New. + (NOPIE_LDFLAGS): Likewise. + Pass $NOPIE_LDFLAGS if non-PIE is required. + * testsuite/ld-shared/shared.exp: Compile tmpdir/sh1np.o with + $NOPIE_CFLAGS. + +2017-06-22 H.J. Lu + + * NEWS: Mention -z shstk and GNU_PROPERTY_X86_FEATURE_1_SHSTK. + * emulparams/cet.sh (PARSE_AND_LIST_OPTIONS_CET): Add "-z shstk". + (PARSE_AND_LIST_ARGS_CASE_Z_CET): Support "-z shstk". + * ld.texinfo: Document -z shstk. + * testsuite/ld-i386/i386.exp: Run SHSTK tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/property-x86-shstk.s: New file. + * testsuite/ld-i386/property-x86-shstk1a.d: Likewise. + * testsuite/ld-i386/property-x86-shstk1b.d: Likewise. + * testsuite/ld-i386/property-x86-shstk2.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. + * testsuite/ld-i386/property-x86-shstk4.d: Likewise. + * testsuite/ld-i386/property-x86-shstk5.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk.s: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk2.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk4-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk4.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk5.d: Likewise. + +2017-06-22 H.J. Lu + + * Makefile.am (ELF_X86_DEPS): Add $(srcdir)/emulparams/cet.sh. + * Makefile.in: Regenerated. + * NEWS: Mention GNU_PROPERTY_X86_FEATURE_1_IBT, -z ibtplt + and -z ibt. + * emulparams/cet.sh: New file. + * testsuite/ld-i386/ibt-plt-1.d: Likewise. + * testsuite/ld-i386/ibt-plt-1.s: Likewise. + * testsuite/ld-i386/ibt-plt-2.s: Likewise. + * testsuite/ld-i386/ibt-plt-2a.d: Likewise. + * testsuite/ld-i386/ibt-plt-2b.d: Likewise. + * testsuite/ld-i386/ibt-plt-2c.d: Likewise. + * testsuite/ld-i386/ibt-plt-2d.d: Likewise. + * testsuite/ld-i386/ibt-plt-3.s: Likewise. + * testsuite/ld-i386/ibt-plt-3a.d: Likewise. + * testsuite/ld-i386/ibt-plt-3b.d: Likewise. + * testsuite/ld-i386/ibt-plt-3c.d: Likewise. + * testsuite/ld-i386/ibt-plt-3d.d: Likewise. + * testsuite/ld-i386/plt-main-ibt.dd: Likewise. + * testsuite/ld-i386/plt-pie-ibt.dd: Likewise. + * testsuite/ld-i386/property-x86-empty.s: Likewise. + * testsuite/ld-i386/property-x86-ibt.s: Likewise. + * testsuite/ld-i386/property-x86-ibt1a.d: Likewise. + * testsuite/ld-i386/property-x86-ibt1b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt2.d: Likewise. + * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. + * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. + * testsuite/ld-i386/property-x86-ibt4.d: Likewise. + * testsuite/ld-i386/property-x86-ibt5.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-1.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-1.s: Likewise. + * testsuite/ld-x86-64/ibt-plt-2.s: Likewise. + * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2a.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2b-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2b.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2c.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2d-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-2d.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3.s: Likewise. + * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3a.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3b-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3b.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3c.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3d-x32.d: Likewise. + * testsuite/ld-x86-64/ibt-plt-3d.d: Likewise. + * testsuite/ld-x86-64/plt-main-ibt-now.rd: Likewise. + * testsuite/ld-x86-64/plt-main-ibt-x32.dd: Likewise. + * testsuite/ld-x86-64/plt-main-ibt.dd: Likewise. + * testsuite/ld-x86-64/property-x86-empty.s: Likewise. + * testsuite/ld-x86-64/property-x86-ibt.s: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt1b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt2-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt2.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt4-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt4.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt5-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt5.d: Likewise. + * emulparams/elf32_x86_64.sh: Source emulparams/cet.sh. + (TINY_READONLY_SECTION): Add .plt.sec. + * emulparams/elf_i386.sh: Likewise. + * emulparams/elf_x86_64.sh: Source emulparams/cet.sh. + * ld.texinfo: Document -z ibtplt and -z ibt. + * testsuite/ld-i386/i386.exp: Run IBT and IBT PLT tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-x86-64/pr21481b.S (check): Updated for x32. + +2017-06-21 H.J. Lu + + PR ld/21090 + * testsuite/ld-elf/shared.exp: Pass $NOPIE_CFLAGS and + $NOPIE_LDFLAGS if non-PIE is required. + +2017-06-21 H.J. Lu + + PR ld/21090 + * testsuite/ld-scripts/crossref.exp: Also pass $NOPIE_CFLAGS + to CC. + +2017-06-21 H.J. Lu + + PR ld/21090 + * testsuite/ld-size/size.exp: Pass $NOPIE_LDFLAGS to size-4a, + size-4b, size-5a, size-5b, size-6 and size-8 tests. + * testsuite/ld-srec/srec.exp (NOPIE_CFLAGS): New. + (NOPIE_LDFLAGS): Likewise. + (CC): Add $NOPIE_CFLAGS $NOPIE_LDFLAGS. + (CXX): Likewise. + * testsuite/ld-x86-64/no-plt.exp (NOPIE_CFLAGS): New. + (NOPIE_LDFLAGS): Likewise. + Pass $NOPIE_LDFLAGS to "No PLT (dynamic 1a)", + "No PLT (dynamic 1c)" and "Run pr20253-2f". + * testsuite/ld-x86-64/x86-64.exp: Pass $NOPIE_LDFLAGS to + "Build gotpcrel1" and "Run pr19031". + +2017-06-21 Alan Modra + + * testsuite/ld-powerpc/powerpc.exp: Run TOCSAVE tests. + * testsuite/ld-powerpc/tocsave1.s, + * testsuite/ld-powerpc/tocsave1a.d, + * testsuite/ld-powerpc/tocsave1s.d, + * testsuite/ld-powerpc/tocsave2.s, + * testsuite/ld-powerpc/tocsave2a.d, + * testsuite/ld-powerpc/tocsave2s.d, + * testsuite/ld-powerpc/tocsavelib.s: New files. + +2017-06-20 Andreas Krebbel + + * Makefile.in: Add s390.em as build dependency. + * emulparams/elf64_s390.sh (EXTRA_EM_FILE): Add s390.em. + * emultempl/s390.em: New file. + * gen-doc.texi: Add documentation for --s390-pgste option. + * ld.texinfo: Likewise. + +2017-06-19 H.J. Lu + + PR ld/21626 + * testsuite/ld-i386/i386.exp: Run ld/21626 tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + +2017-06-18 Alan Modra + + * testsuite/lib/ld-lib.exp (is_underscore_target): New. + * testsuite/ld-elf/elf.exp (ASFLAGS): Define UNDERSCORE. + * testsuite/ld-elf/pr21562a.s: If UNDERSCORE defined, + reference sym with prefix. + * testsuite/ld-elf/pr21562b.s: Likewise. + * testsuite/ld-elf/sizeof.s: Likewise. + * testsuite/ld-elf/startof.s: Likewise. + * testsuite/ld-elf/pr14156a.d: Adjust for extra symbols. + * testsuite/ld-elf/pr21562a.d: Remove underscore target from + xfails, and match prefixed symbol. + * testsuite/ld-elf/pr21562b.d: Likewise. + * testsuite/ld-elf/pr21562c.d: Likewise. + * testsuite/ld-elf/pr21562d.d: Likewise. + * testsuite/ld-elf/pr21562e.d: Likewise. + * testsuite/ld-elf/pr21562f.d: Likewise. + * testsuite/ld-elf/pr21562g.d: Likewise. + * testsuite/ld-elf/pr21562h.d: Likewise. + * testsuite/ld-elf/pr21562i.d: Likewise. + * testsuite/ld-elf/pr21562j.d: Likewise. + * testsuite/ld-elf/pr21562k.d: Likewise. + * testsuite/ld-elf/pr21562l.d: Likewise. + * testsuite/ld-elf/pr21562m.d: Likewise. + * testsuite/ld-elf/pr21562n.d: Likewise. + * testsuite/ld-elf/sizeofa.d: Likewise. + * testsuite/ld-elf/sizeofb.d: Likewise. + * testsuite/ld-elf/sizeofc.d: Likewise. + * testsuite/ld-elf/startofa.d: Likewise. + * testsuite/ld-elf/startofb.d: Likewise. + * testsuite/ld-elf/startofc.d: Likewise. + +2017-06-16 Alan Modra + + PR ld/20022 + PR ld/21557 + PR ld/21562 + PR ld/21571 + * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't set + __start/__stop syms here. + * ldlang.c (lang_set_startof): Delete. + (start_stop_syms, start_stop_count, start_stop_alloc): New vars. + (lang_define_start_stop, lang_init_start_stop, foreach_start_stop, + undef_start_stop, lang_undef_start_stop, lang_init_startof_sizeof, + set_start_stop, lang_finalize_start_stop): New functions. + (lang_process): Call _start_stop functions. + * testsuite/ld-elf/pr21562a.d: Use xfail rather than notarget. + Correct typos and list of xfail targets. + * testsuite/ld-elf/pr21562b.d: Likewise. + * testsuite/ld-elf/pr21562c.d: Likewise. + * testsuite/ld-elf/pr21562d.d: Likewise. + * testsuite/ld-elf/pr21562e.d: Likewise. + * testsuite/ld-elf/pr21562f.d: Likewise. + * testsuite/ld-elf/pr21562g.d: Likewise. + * testsuite/ld-elf/pr21562h.d: Likewise. + * testsuite/ld-elf/pr21562i.d: Likewise. + * testsuite/ld-elf/pr21562j.d: Likewise. + * testsuite/ld-elf/pr21562k.d: Likewise. + * testsuite/ld-elf/pr21562l.d: Likewise. + * testsuite/ld-elf/pr21562m.d: Likewise. + * testsuite/ld-elf/pr21562n.d: Likewise. + * testsuite/ld-elf/sizeofa.d: Likewise. Adjust to pass for generic ELF. + * testsuite/ld-elf/sizeofb.d: Likewise. + * testsuite/ld-elf/startofa.d: Likewise. + * testsuite/ld-elf/startofb.d: Likewise. + +2017-06-16 Jiong Wang + + * testsuite/ld-aarch64/aarch64-elf.exp: Update test name + * testsuite/ld-aarch64/pcrel.s: Add new testcases. + * testsuite/ld-aarch64/pcrel_pic_undefined.d: Update the expected + warnings. + * testsuite/ld-aarch64/pcrel_pic_defined_local.d: Rename ... + * testsuite/ld-aarch64/pcrel_pic_defined.d: ... to this. + Update expected warnings. + +2017-06-15 H.J. Lu + + * exsup.c (elf_shlib_list_options): Display "-z stack-size=SIZE" + instead of "-z stacksize=SIZE". + +2017-06-15 Jiong Wang + + * testsuite/ld-aarch64/copy-reloc-exe-2.s: New test source file. + * testsuite/ld-aarch64/copy-reloc-2.d: New test. + * testsuite/ld-aarch64/copy-reloc-exe-eliminate.s: New test source file. + * testsuite/ld-aarch64/copy-reloc-eliminate.d: New test. + * testsuite/ld-aarch64/copy-reloc-so.s: Define new global objects. + * testsuite/ld-aarch64/aarch64-elf.exp: Run new tests. + +2017-06-14 Nick Clifton + + PR binutils/21580 + * testsuite/ld-nds32/diff.d: Adjust expected output. + +2017-06-14 H.J. Lu + + PR ld/20022 + * testsuite/ld-gc/pr20022.d: Skip on targets without dynamic + relocations in .text section. + +2017-06-14 H.J. Lu + + * testsuite/ld-elf/pr21562a.d: Skip on targets with leading char + in in symbol name or without --gc-sections. + * testsuite/ld-elf/pr21562b.d: Likewise. + * testsuite/ld-elf/pr21562c.d: Likewise. + * testsuite/ld-elf/pr21562d.d: Likewise. + * testsuite/ld-elf/pr21562i.d: Likewise. + * testsuite/ld-elf/pr21562j.d: Likewise. + * testsuite/ld-elf/pr21562k.d: Likewise. + * testsuite/ld-elf/pr21562l.d: Likewise. + * testsuite/ld-elf/pr21562m.d: Likewise. + * testsuite/ld-elf/pr21562n.d: Likewise. + * testsuite/ld-elf/pr21562e.d: Skip on targets with leading char + in symbol name. + * testsuite/ld-elf/pr21562f.d: Likewise. + * testsuite/ld-elf/pr21562g.d: Likewise. + * testsuite/ld-elf/pr21562h.d: Likewise. + +2017-06-14 H.J. Lu + + * testsuite/ld-gc/pr20022a.s: Add size to bar. + +2017-06-14 H.J. Lu + + * testsuite/ld-elf/sizeofa.d: Skip on targets with leading char + in symbol name. + * testsuite/ld-elf/sizeofb.d: Likewise. + * testsuite/ld-elf/startofa.d: Likewise. + * testsuite/ld-elf/startofb.d: Likewise. + +2017-06-14 Georg-Johann Lay + + PR ld/21583 + * scripttempl/avr.sc (.jumptables): Move down in text section. + (.hightext): New in text. + +2017-06-14 Sebastian Huber + + * configure.tgt (epiphany-*-elf): Accept epiphany-*-*. + +2017-06-13 H.J. Lu + + * ldlang.c (lang_set_startof): Skip if config.build_constructors + is FALSE. + * testsuite/ld-elf/sizeofc.d: New file. + * testsuite/ld-elf/startofc.d: Likewise. + +2017-06-13 H.J. Lu + + * testsuite/ld-elf/sizeof.d: Renamed to ... + * testsuite/ld-elf/sizeofa.d: This. Updated. + * testsuite/ld-elf/startof.d: Renamed to ... + * testsuite/ld-elf/startofa.d: This. Updated. + * testsuite/ld-elf/sizeofb.d: New file. + * testsuite/ld-elf/startofb.d: Likewise. + +2017-06-13 H.J. Lu + + PR ld/20022 + PR ld/21557 + PR ld/21562 + PR ld/21571 + * ld.texinfo: Update __start_SECNAME/__stop_SECNAME symbols. + * ldlang.c (lang_insert_orphan): Move handling of __start_SECNAME + and __stop_SECNAME symbols to ... + (lang_set_startof): Here. Also define __start_SECNAME and + __stop_SECNAME for -Ur. + * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Mark + referenced __start_SECNAME and __stop_SECNAME symbols as hidden + and set start_stop for garbage collection. + * testsuite/ld-elf/pr21562a.d: New file. + * testsuite/ld-elf/pr21562a.s: Likewise. + * testsuite/ld-elf/pr21562a.t: Likewise. + * testsuite/ld-elf/pr21562b.d: Likewise. + * testsuite/ld-elf/pr21562b.s: Likewise. + * testsuite/ld-elf/pr21562b.t: Likewise. + * testsuite/ld-elf/pr21562c.d: Likewise. + * testsuite/ld-elf/pr21562c.t: Likewise. + * testsuite/ld-elf/pr21562d.d: Likewise. + * testsuite/ld-elf/pr21562d.t: Likewise. + * testsuite/ld-elf/pr21562e.d: Likewise. + * testsuite/ld-elf/pr21562f.d: Likewise. + * testsuite/ld-elf/pr21562g.d: Likewise. + * testsuite/ld-elf/pr21562h.d: Likewise. + * testsuite/ld-elf/pr21562i.d: Likewise. + * testsuite/ld-elf/pr21562j.d: Likewise. + * testsuite/ld-elf/pr21562k.d: Likewise. + * testsuite/ld-elf/pr21562l.d: Likewise. + * testsuite/ld-elf/pr21562m.d: Likewise. + * testsuite/ld-elf/pr21562n.d: Likewise. + * testsuite/ld-gc/pr20022.d: Likewise. + * testsuite/ld-gc/pr20022a.s: Likewise. + * testsuite/ld-gc/pr20022b.s: Likewise. + * testsuite/ld-gc/gc.exp: Run PR ld/20022 tests. + * testsuite/ld-gc/pr19161.d: Also accept local __start_SECNAME + symbol. + * testsuite/ld-gc/start.d: Likewise. + * testsuite/ld-x86-64/lea1a.d: Updated. + * testsuite/ld-x86-64/lea1b.d: Updated. + * testsuite/ld-x86-64/lea1d.d: Updated. + * testsuite/ld-x86-64/lea1e.d: Likewise. + +2017-06-13 H.J. Lu + + * testsuite/ld-elf/sizeof.d: New file. + * testsuite/ld-elf/sizeof.s: Likewise. + * testsuite/ld-elf/startof.d: Likewise. + * testsuite/ld-elf/startof.s: Likewise. + +2017-06-13 Renlin Li + + * testsuite/ld-elf/shared.exp (build_tests): Add --no-dynamic-linker + option to rdynamic-1 and dynamic-1 tests. + +2017-06-09 H.J. Lu + + * testsuite/ld-x86-64/property-x86-3-x32.d: New file. + * testsuite/ld-x86-64/property-x86-4a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-4b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-3.d: Also pass + -defsym __64_bit__=1 to asssembler. + * testsuite/ld-x86-64/property-x86-4a.d: Likewise. + * testsuite/ld-x86-64/property-x86-4b.d: Likewise. + * testsuite/ld-x86-64/property-x86-3.s: Align to 4 bytes if + __64_bit__ isn't defined. + * testsuite/ld-x86-64/property-x86-4a.s: Likewise. + * testsuite/ld-x86-64/property-x86-4b.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run property-x86-3-x32, + property-x86-4a-x32 and property-x86-4b-x32. + +2017-06-08 Cupertino Miranda + + * testsuite/ld-arc/tls_ie-01.d: Changed expected result. + +2017-06-08 H.J. Lu + + * testsuite/ld-ifunc/ifunc-1-local-x86.d: Pass + "-Map tmpdir/ifunc-1-local-x86.map" to ld and check + ifunc-1-local-x86.map. + * testsuite/ld-ifunc/ifunc-1-x86.d: Pass + "-Map tmpdir/ifunc-1-x86.map" to ld and check ifunc-1-x86.map. + * testsuite/ld-ifunc/ifunc-1-local-x86.map: New file. + * testsuite/ld-ifunc/ifunc-1-x86.map: Likewise. + +2017-06-07 Alan Modra + + * testsuite/ld-unique/pr21529.d: xfail aarch64, arm, hppa, ia64, + nds32, and score. Match any output. + +2017-06-06 Andrew Burgess + + * ld.h (struct args_type): Fix typo in comment. + +2017-06-06 Andrew Burgess + + * ld.h (struct args_type): Add force_group_allocation field. + * ldgram.y: Add support for FORCE_GROUP_ALLOCATION. + * ldlex.h: Likewise. + * ldlex.l: Likewise. + * lexsup.c: Likewise. + * ldlang.c (unique_section_p): Check resolve_section_groups flag + not the relaxable link flag. + (lang_add_section): Discard section groups when we're resolving + groups. Clear the SEC_LINK_ONCE flag if we're resolving section + groups. + * ldmain.c (main): Initialise resolve_section_groups flag in + link_info based on command line flags. + * testsuite/ld-elf/group11.d: New file. + * testsuite/ld-elf/group12.d: New file. + * testsuite/ld-elf/group12.ld: New file. + * NEWS: Mention new features. + * ld.texinfo (Options): Document --force-group-allocation. + (Miscellaneous Commands): Document FORCE_GROUP_ALLOCATION. + +2017-06-05 H.J. Lu + + PR ld/21529 + * testsuite/ld-unique/pr21529.d: New file. + * testsuite/ld-unique/pr21529.s: Likewise. + * testsuite/ld-unique/unique.exp: Run *.d. + +2017-06-05 Alan Modra + + * ldmain.c (main): Correct setting of link_indo.new_dtags. + * testsuite/ld-elf/now-3.d: Pass --disable-new-dtags to ld + * testsuite/ld-elf/now-4.d: Likewise. + * testsuite/ld-elf/rpath-1.d: Likewise. + * testsuite/ld-elf/rpath-2.d: Likewise. + +2017-06-05 Slava Barinov + + * configure.ac: Add --enable-new-dtags option. + * ldmain.c (main): Set link_info.new_dtags to 1 if when + --enable-new-dtags is switched on. + * configure: Regenerate. + * config.in: Regenerate. + +2017-06-02 H.J. Lu + + * emulparams/call_nop.sh: Remove -z prefix-nop. + * ld.texinfo: Likewise. + * testsuite/ld-i386/call3c.d: Check for linker error. + * testsuite/ld-x86-64/call1c.d: Likewise. + +2017-06-01 Alan Modra + + * emultempl/ppc64elf.em (params): Init plt_localentry0 field. + (enum ppc64_opt): New, replacing OPTION_* defines. Add + OPTION_PLT_LOCALENTRY, and OPTION_NO_PLT_LOCALENTRY. + (PARSE_AND_LIST_*): Support --plt-localentry and --no-plt-localentry. + * testsuite/ld-powerpc/elfv2so.d: Update. + * testsuite/ld-powerpc/powerpc.exp (TLS opt 5): Use --no-plt-localentry. + * testsuite/ld-powerpc/tlsopt5.d: Update. + +2017-05-31 Alan Modra + + * emultempl/ppc64elf.em (plt-static-chain help): Fix quoting. + +2017-05-22 Jiong Wang + + * configure.tgt: Set "targ_emul" to "aarch64linux32b" for + aarch64_be-*-linux-gnu_ilp32. Set "targ_emul" to "aarch64linux32" for + aarch64-*-linux-gnu_ilp32. + +2017-05-19 H.J. Lu + + * testsuite/ld-i386/i386.exp: Run property-x86-4a and + property-x86-4b. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/property-x86-4a.d: New file. + * testsuite/ld-i386/property-x86-4a.s: Likewise. + * testsuite/ld-i386/property-x86-4b.d: Likewise. + * testsuite/ld-i386/property-x86-4b.s: Likewise. + * testsuite/ld-x86-64/property-x86-4a.d: Likewise. + * testsuite/ld-x86-64/property-x86-4a.s: Likewise. + * testsuite/ld-x86-64/property-x86-4b.d: Likewise. + * testsuite/ld-x86-64/property-x86-4b.s: Likewise. + +2017-05-19 Georg-Johann Lay + + PR ld/21472 + * emulparams/avrxmega3.sh (RODATA_PM_OFFSET): Set to 0x8000. + * scripttempl/avr.sc (__RODATA_PM_OFFSET__) [RODATA_PM_OFFSET]: + Use RODATA_PM_OFFSET as default if not already defined. + (.data) [!RODATA_PM_OFFSET]: Don't include .rodata and friends. + (.rodata) [RODATA_PM_OFFSET]: Put at an offset of + __RODATA_PM_OFFSET__. + +2017-05-18 Nick Clifton + + PR ld/21251 + * ldfile.c (ldfile_add_library_path): If the path starts with + $SYSROOT then use the sysroot as the real prefix. + * ldlang.c (lang_add_input_file): Treat $SYSROOT in the same + way as =. + * ldlex.l: Add $SYSROOT as allow prefix for a filename. + * ld.texinfo (-L): Document that $SYSROOT acts like = when + prefixing a library search path. + (INPUT): Likewise. + * testsuite/ld-scripts/sysroot-prefix.exp: Add $SYSROOT prefix + tests. + +2017-05-18 Alan Modra + + * emultempl/elf32.em: Don't compare boolean values against TRUE or FALSE. + * emultempl/pe.em: Likewise. + * emultempl/pep.em: Likewise. + * emultempl/xtensaelf.em (xtensa_wild_group_interleave_callback): + Don't compare enum against TRUE. + +2017-05-18 Alan Modra + + PR ld/20882 + * testsuite/ld-gc/pr20882.d: Don't pass -gdwarf-sections to gas. + Allow for 16-bit address targets and match expected data fully. + * testsuite/ld-gc/pr20882a.s: Delete .debug_line section. + * testsuite/ld-gc/pr20882b.s: Likewise. + * testsuite/ld-gc/pr20882c.s: Likewise. + +2017-05-17 H.J. Lu + + PR ld/20882 + * testsuite/ld-gc/gc.exp: Run pr20882. + * testsuite/ld-gc/pr20882.d: New file. + * testsuite/ld-gc/pr20882a.s: Likewise. + * testsuite/ld-gc/pr20882b.s: Likewise. + * testsuite/ld-gc/pr20882c.s: Likewise. + +2017-05-16 H.J. Lu + + PR ld/21481 + * testsuite/ld-x86-64/x86-64.exp: Run PR ld/21481 tests only + if IFUNC is supported by run-time. + +2017-05-16 Alan Modra + + * plugin.c: Rename occurrences of non_ir_ref. + +2017-05-16 Alan Modra + + * plugin.c (is_visible_from_outside): Use non_ir_ref_dynamic. + (plugin_notice): Set non_ir_ref for references from regular + objects, non_ir_ref_dynamic for references from dynamic objects. + +2017-05-15 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips16e2-pcrel-0.d: New test. + * testsuite/ld-mips-elf/mips16e2-pcrel-1.d: New test. + * testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d: New test. + * testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d: New test. + * testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d: New test. + * testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d: New test. + * testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d: New test. + * testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d: New test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2017-05-15 Nick Clifton + + PR ld/21459 + * scripttempl/pe.sc: Add .debug_gdb_scripts section. + * scripttempl/pep.sc: Likewise. + +2017-05-12 H.J. Lu + + * testsuite/ld-i386/i386.exp: Run property-x86-3. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/property-x86-3.d: New file. + * testsuite/ld-i386/property-x86-3.s: Likewise. + * testsuite/ld-x86-64/property-x86-3.d: Likewise. + * testsuite/ld-x86-64/property-x86-3.s: Likewise. + +2017-05-11 H.J. Lu + + * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): Replace + .plt.bnd with .plt.sec. + * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise. + * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-plt-1.d: Likewise. + * testsuite/ld-x86-64/mpx3.dd: Likewise. + * testsuite/ld-x86-64/mpx3n.dd: Likewise. + * testsuite/ld-x86-64/mpx4.dd: Likewise. + * testsuite/ld-x86-64/mpx4n.dd: Likewise. + * testsuite/ld-x86-64/plt-main-bnd-now.rd: Likewise. + * testsuite/ld-x86-64/pr21038b-now.d: Likewise. + * testsuite/ld-x86-64/pr21038b.d: Likewise. + * testsuite/ld-x86-64/pr21038c-now.d: Likewise. + * testsuite/ld-x86-64/pr21038c.d: Likewise. + +2017-05-11 H.J. Lu + + * testsuite/ld-i386/plt-pic2.dd: Updated. + * testsuite/ld-i386/plt2.dd: Likewise. + * testsuite/ld-i386/plt2.rd: Likewise. + * testsuite/ld-i386/pr17689now.rd: Likewise. + * testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-16-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. + * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. + * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. + * testsuite/ld-x86-64/plt2.dd: Likewise. + * testsuite/ld-x86-64/plt2.rd: Likewise. + * testsuite/ld-x86-64/pr17689now.rd: Likewise. + * testsuite/ld-x86-64/pr21038b-now.d: Likewise. + * testsuite/ld-x86-64/pr21038c-now.d: Likewise. + +2017-05-10 H.J. Lu + + * emulparams/i386lynx.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): Set + to yes. + * emulparams/i386moss.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): + Likewise. + * emulparams/i386nw.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): Likewise. + +2017-05-10 H.J. Lu + + PR ld/21481 + * testsuite/ld-x86-64/pr21481a.c: New file. + * testsuite/ld-x86-64/pr21481b.S: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run PR ld/21481 tests. + +2017-05-10 Claudiu Zissulescu + + * testsuite/ld-arc/attr-merge-0.d: New file. + * testsuite/ld-arc/attr-merge-0.s: Likewise. + * testsuite/ld-arc/attr-merge-0e.s: Likewise. + * testsuite/ld-arc/attr-merge-1.d: Likewise. + * testsuite/ld-arc/attr-merge-1.s: Likewise. + * testsuite/ld-arc/attr-merge-1e.s: Likewise. + * testsuite/ld-arc/attr-merge-2.d: Likewise. + * testsuite/ld-arc/attr-merge-2.s: Likewise. + * testsuite/ld-arc/attr-merge-3.d: Likewise. + * testsuite/ld-arc/attr-merge-3.s: Likewise. + * testsuite/ld-arc/attr-merge-3e.s: Likewise. + * testsuite/ld-arc/attr-merge-4.s: Likewise. + * testsuite/ld-arc/attr-merge-5.d: Likewise. + * testsuite/ld-arc/attr-merge-5a.s: Likewise. + * testsuite/ld-arc/attr-merge-5b.s: Likewise. + * testsuite/ld-arc/attr-merge-conflict-isa.d: Likewise. + * testsuite/ld-arc/attr-merge-err-isa.d: Likewise. + * testsuite/ld-arc/attr-merge-incompatible-cpu.d: Likewise. + * testsuite/ld-arc/got-01.d: Update test. + * testsuite/ld-arc/attr-merge-err-quarkse.d: New file. + * testsuite/ld-arc/attr-quarkse.s: Likewise. + * testsuite/ld-arc/attr-quarkse2.s: Likewise. + +2017-05-09 Awson + + PR ld/21471 + * pe-dll.c (pe_detail_list): Add entry for pe-bigobj-x86-64. + +2017-05-09 Benjamin Peterson + + * ld.texinfo (orphan sections): Grammar fix. + +2017-05-08 H.J. Lu + + * testsuite/ld-ifunc/ifunc-16-x86-64-now.d: New file. + * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. + * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise. + * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. + * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. + * testsuite/ld-x86-64/mpx3n.dd: Likewise. + * testsuite/ld-x86-64/mpx4n.dd: Likewise. + * testsuite/ld-x86-64/plt-main-bnd-now.rd: Likewise. + * testsuite/ld-x86-64/plt2.dd: Likewise. + * testsuite/ld-x86-64/plt2.rd: Likewise. + * testsuite/ld-x86-64/plt2.s: Likewise. + * testsuite/ld-x86-64/pr20830a-now.d: Likewise. + * testsuite/ld-x86-64/pr20830b-now.d: Likewise. + * testsuite/ld-x86-64/pr21038a-now.d: Likewise. + * testsuite/ld-x86-64/pr21038b-now.d: Likewise. + * testsuite/ld-x86-64/pr21038c-now.d: Likewise. + * testsuite/ld-x86-64/load1b-nacl.d: Updated. + * testsuite/ld-x86-64/load1b.d: Likewise. + * testsuite/ld-x86-64/plt-main-bnd.dd: Likewise. + * testsuite/ld-x86-64/pr20253-1h.d: Likewise. + * testsuite/ld-x86-64/pr20830a.d: Update the .plt.got section + with func@plt. + * testsuite/ld-x86-64/pr20830b.d: Likewise. + * testsuite/ld-x86-64/pr21038a.d: Likewise. + * testsuite/ld-x86-64/pr21038c.d: Likewise. + * testsuite/ld-x86-64/mpx.exp: Add some -z now tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + +2017-05-08 H.J. Lu + + * testsuite/ld-i386/i386.exp: Add some -z now tests. + * testsuite/ld-i386/plt-pic2.dd: New file. + * testsuite/ld-i386/plt2.dd: Likewise. + * testsuite/ld-i386/plt2.rd: Likewise. + * testsuite/ld-i386/plt2.s: Likewise. + * testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise. + * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise. + * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. + * testsuite/ld-i386/pr20830.d: Update the .plt.got section + with func@plt. + +2017-05-08 Thomas Preud'homme + + * testsuite/ld-arm/arm-elf.exp + (Secure gateway import library generation): Check e_type field + of import library and executable produced. + * testsuite/ld-arm/cmse-implib.type: Expectations for e_type field. + +2017-04-28 Senthil Kumar Selvaraj + + PR ld/21404 + * testsuite/ld-avr/pr21404-1.d: New test. + * testsuite/ld-avr/pr21404-1.s: New test. + * testsuite/ld-avr/pr21404-2.d: New test. + * testsuite/ld-avr/pr21404-2.s: New test. + * testsuite/ld-avr/pr21404-3.d: New test. + * testsuite/ld-avr/pr21404-3.s: New test. + * testsuite/ld-avr/pr21404-4.d: New test. + * testsuite/ld-avr/pr21404-4.s: New test. + * testsuite/ld-avr/pr21404-5.d: New test. + * testsuite/ld-avr/pr21404-5.s: New test. + * testsuite/ld-avr/pr21404-6.d: New test. + * testsuite/ld-avr/pr21404-6.s: New test. + * testsuite/ld-avr/pr21404-7.d: New test. + * testsuite/ld-avr/pr21404-7.s: New test. + * testsuite/ld-avr/pr21404-8.d: New test. + * testsuite/ld-avr/pr21404-8.s: New test. + +2017-05-03 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips16-pcrel-0.d: New test. + * testsuite/ld-mips-elf/mips16-pcrel-1.d: New test. + * testsuite/ld-mips-elf/mips16-pcrel-addend-2.d: New test. + * testsuite/ld-mips-elf/mips16-pcrel-addend-6.d: New test. + * testsuite/ld-mips-elf/mips16-pcrel-n32-0.d: New test. + * testsuite/ld-mips-elf/mips16-pcrel-n32-1.d: New test. + * testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-0.d: New test. + * testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-1.d: New test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2017-05-03 H.J. Lu + + * testsuite/ld-elf/pr21384.d: Adjusted to accommodate + additional dynamic symbols on some targets. + +2017-05-02 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips16-branch-absolute-1.d: New test. + * testsuite/ld-mips-elf/mips16-branch-absolute-2.d: New test. + * testsuite/ld-mips-elf/mips16-branch-absolute-addend-1.d: New + test. + * testsuite/ld-mips-elf/mips16-branch-absolute-n32-1.d: New + test. + * testsuite/ld-mips-elf/mips16-branch-absolute-n32-2.d: New + test. + * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32-1.d: + New test. + * testsuite/ld-mips-elf/mips16-branch-absolute-n64-1.d: New + test. + * testsuite/ld-mips-elf/mips16-branch-absolute-n64-2.d: New + test. + * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64-1.d: + New test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2017-05-02 H.J. Lu + + * testsuite/ld-i386/tls.exp: Add -Wl,--no-as-needed to + "TLS without PLT (1)" and "TLS without PLT (3)". + * testsuite/ld-x86-64/tls.exp: Add -Wl,--no-as-needed to + to "TLS without PLT (3)". + +2017-05-02 H.J. Lu + + PR ld/21384 + * testsuite/ld-elf/pr21384.d: New file. + * testsuite/ld-elf/pr21384.dl: Likewise. + * testsuite/ld-elf/pr21384.ld: Likewise. + * testsuite/ld-elf/pr21384.s: Likewise. + +2017-05-01 H.J. Lu + + * testsuite/ld-i386/tls.exp: Run GNU2 TLS tests only if there + is working GNU2 TLS support. + * testsuite/ld-x86-64/tls.exp: Likewise. + * testsuite/lib/ld-lib.exp (check_gnu2_tls_available): New proc. + +2017-04-28 H.J. Lu + + * testsuite/config/default.exp (GNU2_CFLAGS): New. Set + to -mtls-dialect=gnu2 if target compiler supports it. + * testsuite/ld-i386/tls.exp: Run -mtls-dialect=gnu2 tests. + * testsuite/ld-x86-64/tls.exp: Likewise. + * testsuite/ld-i386/tlsdesc1a.c: New file. + * testsuite/ld-i386/tlsdesc1b.c: Likewise. + * testsuite/ld-x86-64/tlsdesc1a.c: Likewise. + * testsuite/ld-x86-64/tlsdesc1b.c: Likewise. + +2017-04-28 H.J. Lu + + * testsuite/ld-elf/shared.exp: Add run-time tests for -z now. + * testsuite/ld-i386/tls.exp: Likewise. + * testsuite/ld-ifunc/ifunc.exp: Likewise. + * testsuite/ld-x86-64/tls.exp: Likewise. + +2017-04-27 H.J. Lu + + * testsuite/ld-x86-64/pr21038a.d: Update DW_CFA_nop paddings + in .eh_frame section. + * testsuite/ld-x86-64/pr21038c.d: Update .eh_frame order. + +2017-04-26 H.J. Lu + + * testsuite/ld-i386/tlsdesc2.d: New test. + * testsuite/ld-x86-64/tlsdesc2.d: Likewise. + +2017-04-26 Maciej W. Rozycki + + PR ld/21334 + * testsuite/ld-mips-elf/pr21334.dd: New test. + * testsuite/ld-mips-elf/pr21334.gd: New test. + * testsuite/ld-mips-elf/pr21334.ld: New test linker script. + * testsuite/ld-mips-elf/pr21334.s: New test source. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2017-04-24 H.J. Lu + + * testsuite/ld-x86-64/no-plt.exp: Also check no-plt-1e.nd. + * testsuite/ld-x86-64/no-plt-1e.nd: New file. + +2017-04-24 H.J. Lu + + * testsuite/ld-i386/pr12570a.d: Skip for nacl targets. + * testsuite/ld-i386/pr12570b.d: Likewise. + +2017-04-24 H.J. Lu + + PR ld/20815 + * testsuite/ld-i386/vxworks2.sd: Add space for program headers. + +2017-04-24 Jose E. Marchesi + + * testsuite/ld-sparc/tlssunbin64.dd: Expect `return' instructions + instead of `rett' in V9. + * testsuite/ld-sparc/tlssunnopic64.dd: Likewise. + * testsuite/ld-sparc/tlssunpic64.dd: Likewise. + +2017-04-21 H.J. Lu + + PR ld/21402 + * testsuite/ld-elf/indirect.exp: Don't skip PIE indirect5 and + indirect6 tests on i386. + +2017-04-21 H.J. Lu + + PR ld/19617 + PR ld/21086 + * testsuite/ld-elf/pr19617a.d: Pass --no-dynamic-linker to ld. + * testsuite/ld-elf/pr19617b.d: Likewise. + * testsuite/ld-elf/pr19617c.d: Likewise. + *testsuite/ld-i386/pr19636-4d.d: Likewise. + * testsuite/ld-elf/readelf.exp: Pass --no-dynamic-linker to ld + with --export-dynamic. + * testsuite/ld-elf/shared.exp: Pass --no-dynamic-linker to ld + with -E. + +2017-04-20 H.J. Lu + + PR ld/21402 + * testsuite/ld-elf/indirect.exp: Pass $NOPIE_LDFLAGS and + $NOPIE_CFLAGS to non-PIE indirect5 and indirect6 tests. Skip + PIE indirect5 and indirect6 tests on i386. + +2017-04-20 Maciej W. Rozycki + + * testsuite/ld-mips-elf/mips-elf.exp: Join `__ehdr_start' tests. + +2017-04-20 H.J. Lu + + PR ld/21382 + * plugin.c (is_visible_from_outside): Symbol may be visible + from outside if dynamic_ref_after_ir_def is set. + (plugin_notice): Set dynamic_ref_after_ir_def if the symbol is + defined in an IR object and referenced in a dynamic object. + * testsuite/ld-plugin/lto.exp: Run PR ld/21382 tests. + * testsuite/ld-plugin/pr21382a.c: New file. + * testsuite/ld-plugin/pr21382b.c: Likewise. + +2017-04-19 H.J. Lu + + PR ld/21401 + * testsuite/ld-ifunc/ifunc.exp: Add a libtest-2-now.so test with + -z now. + +2017-04-19 Alan Modra + + * ld.texinfo (dynamic-undefined-weak): Document. + (nodynamic-undefined-weak): Document that this option now can + be used with shared libs. + * emulparams/dynamic_undefined_weak.sh: Support -z + dynamic-undefined-weak. + * emulparams/elf32ppccommon.sh: Include dynamic_undefined_weak.sh. + * testsuite/ld-undefined/weak-undef.exp (undef_weak_so), + (undef_weak_exe): New. Use them. Add -z dynamic-undefined-weak + and -z nodynamic-undefined-weak tests. + * Makefile.am: Update powerpc dependencies. + * Makefile.in: Regenerate. + +2017-04-17 H.J. Lu + + PR ld/21389 + * testsuite/ld-elf/pr21389.map: New file. + * testsuite/ld-elf/pr21389.s: Likewise. + * testsuite/ld-elf/pr21389a.d: Likewise. + * testsuite/ld-elf/pr21389b.d: Likewise. + * testsuite/ld-elf/pr21389c.d: Likewise. + +2017-04-17 Alan Modra + + * testsuite/ld-elf/indirect5a.c, + * testsuite/ld-elf/indirect5b.c, + * testsuite/ld-elf/indirect5.map, + * testsuite/ld-elf/indirect5.out: New test. + * testsuite/ld-elf/indirect6a.c: Likewise. + * testsuite/ld-elf/indirect.exp (check_dynamic_syms): New proc. + Run new tests and check dynsyms. + +2017-04-11 Alan Modra + + PR 21274 + PR 18466 + * emultempl/pe.em (pe_find_data_imports): Don't use fixed size + symbol buffer. Instead, xmalloc max size needed with space for + prefix. Wrap overlong lines. Formatting. Pass symbol buffer + copy of name to pe_walk_relocs_of_symbol. + (make_inport_fixup): Add "name" param, pass to pe_create_import_fixup. + * emultempl/pe.em (pep_find_data_imports): As for pe_find_data_imports. + (make_import_fixup): Add "name" param, pass to pep_create_import_fixup. + Use bfd_get_signed_* and remove unnecessary casts. Formatting. + * pe-dll.c (pe_walk_relocs_of_symbol): Add "name" param. Pass to + callback. + (make_import_fixup_mark): Add "name" param. Make use of prefix + space rather than xmalloc here. + (pe_create_import_fixup): Likewise. + * pe-dll.h (pe_walk_relocs_of_symbol): Update prototype. + (pe_create_import_fixup): Likewise. + * pep-dll.h (pep_walk_relocs_of_symbol): Likewise. + (pep_create_import_fixup): Likewise. + +2017-04-10 Nick Clifton + + * ld.texinfo (--strip-discarded): Document. + (--embedded-relocs): Document. + (--spare-dynamic-tags): Document. + (--task-link): Document. + +2017-04-10 Alan Modra + + PR 21287 + * testsuite/ld-elf/init-fini-arrays.d: Match INIT_ARRAY and FINI_ARRAY. + * testsuite/ld-elf/init-fini-arrays.s: Use %init_array and %fini_array + section types. + * testsuite/lib/ld-lib.exp (default_ld_compile): Trim assembler + warnings about "ignoring incorrect section type". + (run_ld_link_exec_tests, run_cc_link_tests): Delete old comment. + +2017-04-10 Alan Modra + + * testsuite/ld-elfvsb/elfvsb.exp (visibility_run): Delete + sh1p.o, sh2p.o, sh1np.o and sh2np.o before compiling. Use + remote_file host exists rather than file exists. + +2017-04-07 H.J. Lu + + PR ld/21090 + * testsuite/ld-x86-64/x86-64.exp (undefined_weak): Use + NOPIE_CFLAGS and NOPIE_LDFLAGS to disable PIE for the non-pie + version of the test. + +2017-04-07 H.J. Lu + + PR ld/19579 + PR ld/21306 + * testsuite/ld-elf/pr19579a.c (main): Updated. + +2017-04-07 Nick Clifton + + PR 21090 + * testsuite/ld-x86-64/x86-64.exp (undefined_weak): Explicitly + disable PIE for the non-pie version of the test. + +2017-04-07 Alan Modra + + * testsuite/ld-elf/mbind2a.s: Don't use @, the ARM comment char. + +2017-04-07 gingold + + * testsuite/ld-pe/pe.exp: New test. + * testsuite/ld-pe/weakdef-1.s: New test source. + * testsuite/ld-pe/weakdef-1.d: New test. + +2017-04-07 Alan Modra + + * testsuite/ld-elf/mbind1a.d: Remove matches for PT_LOAD segments. + * testsuite/ld-elf/mbind1b.d: Likewise. + * testsuite/ld-elf/mbind1c.d: Likewise. + +2017-04-05 Hans-Peter Nilsson + + PR ld/21233 + * testsuite/ld-elf/shared.exp: Change xfails to kfails and fix + indentation issue introduced with last commit. + +2017-04-05 Hans-Peter Nilsson + + PR ld/21233 + * testsuite/ld-elf/shared.exp: Xfail all PR21233 tests but the + first test for cris*-*-*. + +2017-04-04 Maciej W. Rozycki + + PR ld/21233 + * ldlang.c (insert_undefined): Set `mark' for ELF symbols. + * testsuite/ld-elf/pr21233.sd: New test. + * testsuite/ld-elf/pr21233-l.sd: New test. + * testsuite/ld-elf/pr21233.ld: New test linker script. + * testsuite/ld-elf/pr21233-e.ld: New test linker script. + * testsuite/ld-elf/pr21233.s: New test source. + * testsuite/ld-elf/pr21233-l.s: New test source. + * testsuite/ld-elf/shared.exp: Run the new tests. + +2017-04-04 H.J. Lu + + * NEWS: Mention support for ELF SHF_GNU_MBIND and + PT_GNU_MBIND_XXX. + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place + input GNU_MBIND sections with the same type, attributes and + sh_info field into a single output GNU_MBIND section. + * testsuite/ld-elf/elf.exp: Run mbind2a and mbind2b. + * testsuite/ld-elf/mbind1.s: New file. + * testsuite/ld-elf/mbind1a.d: Likewise. + * testsuite/ld-elf/mbind1b.d: Likewise. + * testsuite/ld-elf/mbind1c.d: Likewise. + * testsuite/ld-elf/mbind2a.s: Likewise. + * testsuite/ld-elf/mbind2b.c: Likewise. + +2017-04-03 H.J. Lu + + * NEWS: Mention support for ELF GNU program properties. + * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Call + ELF setup_gnu_properties. + * testsuite/ld-i386/i386.exp: Run property tests for Linux/i386. + * testsuite/ld-i386/pass.c: New file. + * testsuite/ld-i386/property-1.r: Likewise. + * testsuite/ld-i386/property-2.r: Likewise. + * testsuite/ld-i386/property-3.r: Likewise. + * testsuite/ld-i386/property-4.r: Likewise. + * testsuite/ld-i386/property-5.r: Likewise. + * testsuite/ld-i386/property-6.r: Likewise. + * testsuite/ld-i386/property-6a.c: Likewise. + * testsuite/ld-i386/property-6b.c: Likewise. + * testsuite/ld-i386/property-6c.S: Likewise. + * testsuite/ld-i386/property-7.r: Likewise. + * testsuite/ld-i386/property-no-copy.S: Likewise. + * testsuite/ld-i386/property-stack.S: Likewise. + * testsuite/ld-i386/property-unsorted-1.S: Likewise. + * testsuite/ld-i386/property-unsorted-2.S: Likewise. + * testsuite/ld-i386/property-x86-1.S: Likewise. + * testsuite/ld-i386/property-x86-2.S: Likewise. + * testsuite/ld-x86-64/pass.c: Likewise. + * testsuite/ld-x86-64/property-1.r: Likewise. + * testsuite/ld-x86-64/property-2.r: Likewise. + * testsuite/ld-x86-64/property-3.r: Likewise. + * testsuite/ld-x86-64/property-4.r: Likewise. + * testsuite/ld-x86-64/property-5.r: Likewise. + * testsuite/ld-x86-64/property-6.r: Likewise. + * testsuite/ld-x86-64/property-6a.c: Likewise. + * testsuite/ld-x86-64/property-6b.c: Likewise. + * testsuite/ld-x86-64/property-6c.S: Likewise. + * testsuite/ld-x86-64/property-7.r: Likewise. + * testsuite/ld-x86-64/property-no-copy.S: Likewise. + * testsuite/ld-x86-64/property-stack.S: Likewise. + * testsuite/ld-x86-64/property-unsorted-1.S: Likewise. + * testsuite/ld-x86-64/property-unsorted-2.S: Likewise. + * testsuite/ld-x86-64/property-x86-1.S: Likewise. + * testsuite/ld-x86-64/property-x86-2.S: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run property tests for + Linux/x86-64. + +2017-03-28 Hans-Peter Nilsson + + PR ld/16044 + * testsuite/ld-cris/pr16044.d, testsuite/ld-cris/dso-1c.s, + testsuite/ld-cris/dso-2b.s, testsuite/ld-cris/dso-4.s: New test. + +2017-03-21 Sandra Loosemore + + * testsuite/lib/ld-lib.exp (check_shared_lib_support): Return + false for nios2-*-elf. + +2017-03-21 gingold + + * ldlang.c (lang_check_section_addresses): Check only for + allocated sections. + +2017-03-17 Alan Modra + + * testsuite/ld-elf/sec64k.exp: Don't run on h8300 and ip2k. + +2017-03-15 Tristan Gingold + + * testsuite/ld-checks/checks.exp (overflow_check): Disable for + non-elf targets. + +2017-03-14 H.J. Lu + + * ldlang.c (lang_check_section_addresses): Use addr_mask to + check VMA and LMA. + +2017-03-13 Nick Clifton + + PR binutils/21202 + * testsuite/ld-aarch64/ifunc-5r-local.d: Update regexp. + +2017-03-13 Tristan Gingold + + * ldlang.c (lang_check_section_addresses): Check for address space + overflow. + * testsuite/ld-checks/checks.exp (overflow_check): New procedure + * testsuite/ld-checks/over.s: New test source. + * testsuite/ld-checks/over.d: New test. + * testsuite/ld-checks/over2.s: New test source. + * testsuite/ld-checks/over2.d: New test. + +2017-03-13 Alexey Neyman + + * emulparams/elf32ppccommon.sh (LIBPATH_SUFFIX): Set from target + cpu, not host. + +2017-03-11 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Add + sysroot for -rpath search. + +2017-03-11 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Rewrite. + Only prefix absolute paths with sysroot. Handle DOS paths. + (gld${EMULATION_NAME}_check_ld_elf_hints): Constify variable. + (gld${EMULATION_NAME}_check_ld_so_conf): Likewise. + (gld${EMULATION_NAME}_after_open): Short-circuit NULL path + searches. Rename variable. Simplify get_runpath search. + +2017-03-11 Alan Modra + + * testsuite/ld-elf/shared.exp: Use -Wl,-export-dynamic rather + than -rdynamic. + +2017-03-11 Alan Modra + + * ld.texinfo (Orphan Sections): Mention that not all targets + handle orphans well. + * testsuite/ld-elf/orphan-9.d: Don't run for i860 and i960. + * testsuite/ld-elf/orphan-10.d: Likewise. + +2017-03-09 Andrew Burgess + + * ldlang.c (lang_size_sections_1): Shortcut loop only after + tracking changes to the default regions LMA. + * testsuite/ld-elf/orphan-9.ld: Extend header comment. + * testsuite/ld-elf/orphan-10.d: New file. + * testsuite/ld-elf/orphan-10.s: New file. + * NEWS: Mention change in behaviour. + +2017-03-09 Andrew Burgess + + * ldlang.c (lang_leave_output_section_statement): Move lma_region + logic to... + (lang_propagate_lma_regions): ...this new function. + (lang_process): Call new function. + * testsuite/ld-elf/orphan-9.d: New file. + * testsuite/ld-elf/orphan-9.ld: New file. + * testsuite/ld-elf/orphan-9.s: New file. + * NEWS: Mention change in behaviour. + +2017-03-07 Alan Modra + + * ldlang.c (open_input_bfds): Check that lang_assignment_statement + is not an assert before referencing defsym. + +2017-03-05 Alan Modra + + * testsuite/ld-elf/eh3.d: Adjust for eh_frame alignment change. + * testsuite/ld-elf/eh6.d: Likewise. + * testsuite/ld-alpha/tlsbin.dd: Likewise. + * testsuite/ld-alpha/tlsbin.td: Likewise. + * testsuite/ld-alpha/tlsbinr.dd: Likewise. + * testsuite/ld-alpha/tlspic.dd: Likewise. + * testsuite/ld-alpha/tlspic.rd: Likewise. + * testsuite/ld-alpha/tlspic.sd: Likewise. + * testsuite/ld-alpha/tlspic.td: Likewise. + * testsuite/ld-mips-elf/eh-frame1-n64.d: Likewise. + * testsuite/ld-mips-elf/eh-frame2-n64.d: Likewise. + * testsuite/ld-mips-elf/eh-frame3.d: Likewise. + * testsuite/ld-x86-64/pr20830a.d: Likewise. + * testsuite/ld-x86-64/pr21038a.d: Likewise. + * testsuite/ld-x86-64/pr21038b.d: Likewise. + * testsuite/ld-x86-64/pr21038c.d: Likewise. + +2017-03-03 Max Bolingbroke + + PR 12969 + * pe-dll.c (generate_edata): Fail if the input file(s) require too + many ordinals. + +2017-03-02 Alan Modra + + * testsuite/ld-elf/shared.exp: Pass -ansi when compiling new.cc + and dl3.cc. + +2017-02-28 Alan Modra + + * testsuite/ld-elf/merge.d: xfail for nios. + +2017-02-28 Alan Modra + + * testsuite/ld-powerpc/addpcis.d: Define ext1 and ext2 at + limits of addpcis range. + +2017-02-28 Maciej W. Rozycki + + * testsuite/ld-mips-elf/jalr4.dd: Adjust for `jalr $0, $25' + instructions. + * testsuite/ld-mips-elf/jalr4-r6.dd: New test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new test. + +2017-02-27 Georg-Johann Lay + + PR target/20849 + * scripttempl/avrtiny.sc (__RODATA_PM_OFFSET__): New define. + (.rodata): New section. + (.data): Remove .rodata*. + +2017-02-25 Alan Modra + + * testsuite/ld-elf/elf.exp: Xfail pr20995 tests on hppa64-hpux. + Set up HPUX defsym. Run pr14170 tests and build symbol3 objects, + defining HPUX where necessary. Define HPUX for implib tests. + * testsuite/ld-elf/comm-data4.d: Run for hpux. + * testsuite/ld-elf/endsym.d: Likewise. + * testsuite/ld-elf/linkoncerdiff.d: Likewise. + * testsuite/ld-elf/comm-data4.s: Add alternate .comm when HPUX. + * testsuite/ld-elf/comm-data5.s: Likewise. + * testsuite/ld-elf/endsym.s: Likewise. + * testsuite/ld-elf/pr14170c.s: Likewise. + * testsuite/ld-elf/symbol3.s: Likewise. + * testsuite/ld-elf/implib.s: Likewise. Don't start directives + in first column. + * testsuite/ld-elf/linkoncerdiff2.s: Don't use numeric labels. + * testsuite/ld-elf/warn3.d: Run for hpux. + * testsuite/ld-scripts/rgn-at10.d: Xfail for hpux. + * testsuite/ld-scripts/rgn-at11.d: Likewise. + * testsuite/ld-scripts/size-2.d: Remove xfail for hpux. + +2017-02-24 Maciej W. Rozycki + + * testsuite/ld-elf/ver_def.vd: New test. + * testsuite/ld-elf/ver_def-tic6x.vd: New test. + * testsuite/ld-elf/ver_def.ld: New test linker script. + * testsuite/ld-elf/ver_def.ver: New test version script. + * testsuite/ld-elf/ver_def.s: New test source. + * testsuite/ld-elf/readelf.exp: New test script. + +2017-02-23 Maciej W. Rozycki + + * testsuite/ld-mips-elf/relax-jalr-n32.d: Remove `--relax' + option. + * testsuite/ld-mips-elf/relax-jalr-n32-shared.d: Likewise. + * testsuite/ld-mips-elf/relax-jalr-n64.d: Likewise. + * testsuite/ld-mips-elf/relax-jalr-n64-shared.d: Likewise. + +2017-02-23 Maciej W. Rozycki + + * testsuite/ld-mips-elf/jalr4.dd: New test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new test. + +2017-02-23 Alan Modra + + PR 20744 + * testsuite/ld-powerpc/vle-reloc-2.s: Use r6 for last insn of + each group. + * testsuite/ld-powerpc/vle-reloc-2.d: Update for above change + and sdarel reloc fix. + +2017-02-22 Maciej W. Rozycki + + PR ld/20828 + * testsuite/ld-elf/pr20828-d.sd: New test. + * testsuite/ld-elf/pr20828-e.sd: New test. + * testsuite/ld-elf/pr20828-v.od: New test. + * testsuite/ld-elf/pr20828-v.ver: New test version script. + * testsuite/ld-elf/pr20828-v.ld: New test linker script. + * testsuite/ld-elf/pr20828.ld: Add `.gnu.version' and + `.gnu.version_d'. + * testsuite/ld-elf/shared.exp: Run the new tests. + +2017-02-21 Nick Clifton + + * testsuite/ld-ifunc/pr18808b.c (bar): Fix compile time warning + about non-void function returning without a result. + +2017-02-17 Alan Modra + + PR 15041 + * scripttempl/pe.sc: Don't combine sections for ld -r. + * scripttempl/pep.sc: Likewise. + +2017-02-17 Alan Modra + + PR 21099 + * emulparams/elf32m32c.sh: Define STACK_ADDR and STACK_SENTINEL + rather than using OTHER_SECTIONS. + * emulparams/elf32mt.sh: Likewise. + * emulparams/elf32rx.sh: Likewise. + * emulparams/elf32rl78.sh: Likewise. Use OTHER_SYMBOLS to + define __rl78_abs__. + * emulparams/shelf.sh: Define STACK_ADDR and STACK_SENTINEL + rather than using OTHER_SECTIONS. + * emulparams/shelf32.sh: Likewise. Use OTHER_SECTIONS for .cranges. + * emulparams/shelf64.sh: Unset OTHER_SECTIONS. + * emulparams/shelf_nbsd.sh: Unset STACK_ADDR not OTHER_SECTIONS. + * emulparams/shelf_uclinux.sh: Likewise. + * emulparams/shlsymbian.sh: Unset STACK_ADDR. Use OTHER_SYMBOLS + to define _stack, not OTHER_SECTIONS. + * scripttempl/elf.sc: Move STACK, TINY_DATA_SECTION, and + TINY_BSS_SECTION before debug sections. Add STACK_SENTINEL. + * scripttempl/arclinux.sc: Likewise. + * scripttempl/elf64hppa.sc: Likewise. + * scripttempl/elfxtensa.sc: Likewise. + * scripttempl/nds32elf.sc: Likewise. + * scripttempl/armbpabi.sc: Move STACK before debug sections. + * scripttempl/elf_chaos.sc: Likewise. + * scripttempl/elfarc.sc: Delete STACK. + * scripttempl/epiphany_4x4.sc: Delete STACK. Move TINY_DATA_SECTION, + TINY_BSS_SECTION, and .stack before debug sections. + +2017-02-17 Nick Clifton + + PR ld/20825 + * ld.texinfo (Options): Add missing @item entry for --pop-state. + +2017-02-17 Alan Modra + + * testsuite/ld-elf/dwarf2.err: Accept other errors between the + multiple definition errors. + +2017-02-17 Alan Modra + + * testsuite/ld-elf/dwarf2.err: Add missing newline at end. + * testsuite/ld-elf/dwarf3.err: Likewise. Allow match without filename. + +2017-02-16 Andrew Burgess + + * testsuite/ld-elf/shared.exp: Update expected results. + * testsuite/ld-elf/dwarf2.err: Likewise + +2017-02-16 Andrew Burgess + + * testsuite/ld-elf/dwarf.exp (build_tests): Add new tests. + * testsuite/ld-elf/dwarf2.err: New file. + * testsuite/ld-elf/dwarf2a.c: New file. + * testsuite/ld-elf/dwarf2b.c: New file. + * testsuite/ld-elf/dwarf3.c: New file. + * testsuite/ld-elf/dwarf3.err: New file. + +2017-02-16 Andrew Burgess + + * testsuite/lib/ld-lib.exp (run_cc_link_tests): Add warning, + error, warning_output, and error_output actions. Remove separate + warnings parameter. + * testsuite/ld-elf/shared.exp (build_tests): Updated to use + 'warning' action. + * testsuite/ld-plugin/lto.exp (lto_link_tests): Likewise. + +2017-02-16 Alan Modra + + * testsuite/ld-elf/check-ptr-eq.c (check_ptr_eq): Change params + from void pointers to function pointers. + * testsuite/ld-elf/pr18718.c: Update to suit. + * testsuite/ld-elf/pr18720a.c: Update to suit. + +2017-02-16 Alan Modra + + PR 21000 + * testsuite/ld-elf/loadaddr1.d: Adjust for hppa file offsets. + * testsuite/ld-elf/loadaddr2.d: Likewise. + * testsuite/ld-elf/loadaddr3a.d: Likewise. + * testsuite/ld-scripts/rgn-at5.d: Likewise. + +2017-02-16 Alan Modra + + * testsuite/ld-powerpc/vxworks1-lib.s: Correct addi to addic. + * testsuite/ld-powerpc/vxworks1-lib.dd: Adjust to suit. + +2017-02-15 H.J. Lu + + PR ld/21168 + * testsuite/ld-i386/i386.exp: Run pr21168. + * testsuite/ld-i386/pr21168a.c: New file. + * testsuite/ld-i386/pr21168b.S: Likewise. + +2017-02-15 H.J. Lu + + PR ld/20244 + * testsuite/ld-i386/i386.exp: Run pr20244-4a, pr20244-4b and + pr20244-4c. + * testsuite/ld-i386/pr20244-4.s: New file. + * testsuite/ld-i386/pr20244-4a.d: Likewise. + * testsuite/ld-i386/pr20244-4b.d: Likewise. + * testsuite/ld-i386/pr20244-4c.d: Likewise. + +2017-02-15 Maciej W. Rozycki + + * ldmisc.c (vfinfo): Don't print the function name again either + if no source file name has been found both now and previously. + * testsuite/ld-cris/tls-err-20x.d: Adjust accordingly. + * testsuite/ld-mips-elf/mode-change-error-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-mips16.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-micromips.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-r6-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-2.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-r6-2.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-3.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jump.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jump-mips16.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jump-micromips.d: Likewise. + * testsuite/ld-mips-elf/unaligned-lwpc-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-ldpc-1.d: Likewise. + * testsuite/ld-powerpc/tocopt.out: Likewise. + * testsuite/ld-powerpc/tocopt7.out: Likewise. + +2017-02-15 Maciej W. Rozycki + + * ldmisc.c (vfinfo) <'H'>: Remove static NULL initializers. + +2017-02-15 Igor Kudrin + + * testsuite/ld-scripts/sysroot-prefix.exp + (get_base_dir_for_scripts): New function. + (run_sysroot_prefix_test): Use get_base_dir_for_scripts. + +2017-02-13 Palmer Dabbelt + + * emulparams/elf32lriscv-defs.sh (SDATA_START_SYMBOLS): Change + _gp to __global_pointer$ + +2017-02-08 Andrew Burgess + + * configure.tgt (arc*-*-linux*): Change the default linker + emulation based on --with-cpu selection. + * NEWS: Mention new configuration option. + +2017-02-06 Jiong Wang + + * testsuite/ld-elf/compress.exp: Don't print to stdout for all + "readelf -w". + +2017-02-02 Maciej W. Rozycki + + * testsuite/ld-cris/tls-err-20x.d: Fix a typo, s/n/\n/. + +2017-02-02 Maciej W. Rozycki + + * ld/testsuite/lib/ld-lib.exp (run_dump_test): Fix a typo, + s/regexp/regex/. + +2017-02-02 Jiong Wang + + * testsuite/lib/ld-lib.exp (check_libdl_available): New function. + * testsuite/ld-elf/shared.exp (run_tests): Split tests which require + dlopen support into "dlopen_run_tests". These tests include dl1*main + and dl6*main. + (dlopen_run_tests): New and only run it when check_libdl_available + returns true. XFAIL on *-*-netbsdelf*. + +2017-02-01 Maciej W. Rozycki + + * testsuite/ld-mips-elf/vxworks-forced-local-1.d: Correct the + presentation of relocation addends. + * testsuite/ld-mips-elf/vxworks1-lib.rd: Likewise. + * testsuite/ld-mips-elf/vxworks1.dd: Likewise. + * testsuite/ld-mips-elf/vxworks1.rd: Likewise. + +2017-02-01 Maciej W. Rozycki + + * testsuite/ld-mips-elf/tls-multi-got-1-1.s: Place `tlsvar_ld' + in `.tdata' section. + * testsuite/ld-mips-elf/tls-multi-got-1.got: Adjust accordingly. + * testsuite/ld-mips-elf/tls-multi-got-1.r: Likewise. + +2017-02-01 Jiong Wang + + * testsuite/ld-unique/unique.exp (Could not link a dynamic executable): + Append $board_cflags to link commands. + +2017-02-01 Senthil Kumar Selvaraj + + * testsuite/ld-scripts/print-memory-usage-1.l: Relax + check for digit in second decimal place. + +2017-02-01 Maciej W. Rozycki + + PR ld/20828 + * testsuite/ld-elf/shared.exp: Correct PR ld/20828 test + indentation. + +2017-01-31 Nick Clifton + + * ldmain.c (add_archive_element): Eliminate string buffer. + * ldlang.c (lang_print_asneeded): Likewise. + +2017-01-30 Maciej W. Rozycki + + * emultempl/mipself.em (ignore_branch_isa): New variable. + (mips_create_output_section_statements): Rename + `_bfd_mips_elf_insn32' called to `_bfd_mips_elf_linker_flags', + add `ignore_branch_isa' argument. + (PARSE_AND_LIST_PROLOGUE): Add OPTION_IGNORE_BRANCH_ISA and + OPTION_NO_IGNORE_BRANCH_ISA enum values. + (PARSE_AND_LIST_LONGOPTS): Add "ignore-branch-isa" and + "no-ignore-branch-isa" options. + (PARSE_AND_LIST_OPTIONS): Add `--ignore-branch-isa' and + `--no-ignore-branch-isa'. + (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_IGNORE_BRANCH_ISA and + OPTION_NO_IGNORE_BRANCH_ISA. + + * ld.texinfo (Options specific to MIPS targets): Add + `--ignore-branch-isa' and `--no-ignore-branch-isa' options. + (ld and the MIPS family): Likewise. + + * testsuite/ld-mips-elf/bal-jalx-pic-ignore.d: New test. + * testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d: New test. + * testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d: New test. + * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: New test. + * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1: New test. + * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16: New + test. + * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips: New + test. + * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests. + +2017-01-29 Hans-Peter Nilsson + + PR binutils/19935 + Fix long-standing buglet and fallout from now-default initfini-array. + * emulparams/criself.sh (USER_LABEL_PREFIX): Define. + (OTHER_END_SYMBOLS, ENTRY): Delete now-redundant defines. + +2017-01-27 Jiong Wang + + * testsuite/ld-elf/elf.exp ("pr20995-2", "Build pr20995-2.so"): XFAIL on + arm*-*-eabi*. + +2017-01-27 Dilyan Palauzov + Nick Clifton + + PR 20343 + * ld.texinfo (Options): Extend documentation of the --plugin + option. Include a description of where the plugins should be + located. + +2017-01-27 Nick Clifton + + * po/sr.po: New Serbian translation. + * configure.ac (ALL_LINGUAS): Add sr. + * configure: Regenerate. + +2017-01-25 Sebastian Huber + + * configure.tgt (arm-*-rtems*): Move to (arm*-*-eabi*). + (bfin-*-rtems*): Move to (bfin*-*-elf*). + (i[3-7]86-*-rtems*): Move to (i[3-7]86*-*-elf*). + (m68*-*-rtems*): Move to (m68*-*-elf*). + (mips*-*-rtems*): Move to (mips*-*-elf*). + (or1k*-*-rtems*): Move to (or1k*-*-elf*). + (powerpc*-*-rtems*): Move to (powerpc*-*-elf*). + (sparc*-*-rtems*): Move to (sparc*-*-elf*). + (sparc64*-*-rtems*): Move to (sparc64*-*-elf*). + +2017-01-25 Sebastian Huber + + * configure.tgt (h8300-*-rtemscoff*): Remove. + (i960-*-rtems*): Likewise. + (m68*-*-rtemscoff*): Likewise. + (sh-*-rtemscoff*): Likewise. + +2017-01-24 Maciej W. Rozycki + + * emultempl/solaris2.em (elf_solaris2_before_allocation): Do not + add implicit version nodes if an anonymous version tag is being + used. + +2017-01-24 Jiong Wang + + * testsuite/ld-plugin/lto.exp (lto_link_elf_tests): Move "Compile 7", + "Compile 8a", "Compile 8b"... + (lto_compile_elf_tests): ...to here. Always run these tests. + (lto_run_elf_tests): Move "LTO 7"... + (lto_run_elf_shared_tests): ...to here. Restrict these tests on + environment where share library is supported. + +2017-01-24 Alan Modra + + * testsuite/ld-powerpc/tlsexe.r: Update for fewer dynamic relocs + and symbols. + * testsuite/ld-powerpc/tlsexe.d: Likewise. + * testsuite/ld-powerpc/tlsexe.g: Likewise. + +2017-01-23 Yury Norov + + * testsuite/ld-aarch64/aarch64-elf.exp: Run new tests. + * testsuite/ld-aarch64/tls-desc-ie-ilp32.d: New test. + * testsuite/ld-aarch64/tls-relax-all-ilp32.d: New test. + * testsuite/ld-aarch64/tls-relax-gd-le-ilp32.d: New test. + * testsuite/ld-aarch64/tls-relax-gdesc-le-2-ilp32.d: New test. + * testsuite/ld-aarch64/tls-relax-gdesc-le-ilp32.d: New test. + * testsuite/ld-aarch64/tls-relax-ie-le-2-ilp32.d: New test. + * testsuite/ld-aarch64/tls-relax-ie-le-3-ilp32.d: New test. + * testsuite/ld-aarch64/tls-relax-ie-le-ilp32.d: New test. + * testsuite/ld-aarch64/tls-tiny-desc-ie-ilp32.d: New test. + * testsuite/ld-aarch64/tls-tiny-desc-le-ilp32.d: New test. + * testsuite/ld-aarch64/tls-tiny-gd-ie-ilp32.d: New test. + * testsuite/ld-aarch64/tls-tiny-gd-le-ilp32.d: New test. + +2017-01-23 Nick Clifton + + * po/ga.po: Updated Irish translation. + +2017-01-23 Maciej W. Rozycki + + PR ld/20828 + * testsuite/ld-elf/pr20828.ld: Add `.plt'. + +2017-01-23 Maciej W. Rozycki + + PR ld/20828 + * testsuite/ld-elf/pr20828.ld: Rename `_fdata' and `_edata' to + `fdata' and `edata' respectively. + * testsuite/ld-elf/pr20828.ver: Adjust accordingly. + * testsuite/ld-elf/pr20828-a.sd: Likewise. + * testsuite/ld-elf/pr20828-b.sd: Likewise. + * testsuite/ld-elf/pr20828-c.sd: Likewise. + +2017-01-23 Maciej W. Rozycki + + PR ld/20828 + * testsuite/ld-elf/pr20828-1.sd: Remove test. + * testsuite/ld-elf/pr20828-a.sd: New test. + * testsuite/ld-elf/pr20828-2a.sd: Rename test to... + * testsuite/ld-elf/pr20828-b.sd: ... this. + * testsuite/ld-elf/pr20828-2b.sd: Rename test to... + * testsuite/ld-elf/pr20828-c.sd: ... this. + * testsuite/ld-elf/shared.exp: Adjust accordingly. + +2017-01-23 Jiong Wang + + * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Append + board_cflags as gcc is used as linker driver. + * testsuite/ld-unique/unique.exp: Likewise + +2017-01-20 Jiong Wang + + * testsuite/ld-aarch64/aarch64-elf.exp (aarch64elflinktests): New tests. + * testsuite/ld-aarch64/func-in-so.s: New test source file. + * testsuite/ld-aarch64/func-sym-hash-opt.s: Likewise. + * testsuite/ld-aarch64/func-sym-hash-opt.d: New expected test result. + +2017-01-20 Andrew Burgess + + * testsuite/ld-elf/eh-frame-hdr.d: Update expected results. + +2017-01-18 Maciej W. Rozycki + + PR ld/20995 + * testsuite/ld-elf/elf.exp: Set GAS flags correctly for the + `mips*-*-*' target and `pr20995' and `pr20995-2' tests. + +2017-01-18 Maciej W. Rozycki + + PR ld/20828 + * testsuite/ld-elf/pr20828-1.sd: New test. + * testsuite/ld-elf/pr20828-2a.sd: New test. + * testsuite/ld-elf/pr20828-2b.sd: New test. + * testsuite/ld-elf/pr20828.ld: New test linker script. + * testsuite/ld-elf/pr20828.ver: New test version script. + * testsuite/ld-elf/pr20828.s: New test source. + * testsuite/ld-elf/shared.exp: Run the new test. + +2017-01-18 Maciej W. Rozycki + + PR gas/20649 + * testsuite/ld-mips-elf/mips-elf.exp: Add PIC comdat GOT16/LO16 + relocation pairing link test. + +2017-01-17 Dimitar Dimitrov + + * testsuite/ld-unique/unique.exp: Filter shared lib cases in + uniqeue.exp, as not all targets have such support. + +2017-01-16 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2017-01-12 H.J. Lu + + PR ld/21038 + * testsuite/ld-x86-64/pr21038b.d: Updated. + * testsuite/ld-x86-64/pr21038c.d: New file. + * testsuite/ld-x86-64/pr21038c.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run pr21038c. + +2017-01-11 H.J. Lu + + PR ld/21038 + * testsuite/ld-x86-64/pr21038a.d: New file. + * testsuite/ld-x86-64/pr21038a.s: Likewise. + * testsuite/ld-x86-64/pr21038b.d: Likewise. + * testsuite/ld-x86-64/pr21038b.s: Likewise. + * testsuite/ld-x86-64/x86-64.exp: Run pr21038a and pr21038b. + +2017-01-11 Jeremy Soller + + * configure.tgt: Add entries for x86-redox and x86_64-redox. + +2017-01-10 H.J. Lu + + * testsuite/ld-x86-64/pr20830b.d: Updated. + +2017-01-10 H.J. Lu + + * emulparams/elf32_x86_64.sh (TINY_READONLY_SECTION): New. + * testsuite/ld-x86-64/pr20830.d: Renamed to ... + * testsuite/ld-x86-64/pr20830a.d: This. Updated. + * testsuite/ld-x86-64/pr20830b.d: New file. + * testsuite/ld-x86-64/x86-64.exp: Rename pr20830 to pr20830a. + Run pr20830b. + +2017-01-10 H.J. Lu + + PR ld/20830 + * testsuite/ld-i386/i386.exp: Run pr20830. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr20830.d: New file. + * testsuite/ld-i386/pr20830.s: Likewise. + * testsuite/ld-x86-64/pr20830.d: Likewise. + * testsuite/ld-x86-64/pr20830.s: Likewise. + +2017-01-10 H.J. Lu + + * testsuite/ld-i386/i386.exp: Pass -Wl,-R,tmpdir and + -Wl,--as-needed to $CC. + * testsuite/ld-i386/tls.exp: Likewise. + +2017-01-10 Nick Clifton + + * po/sv.po: Updated Swedish translation. + +2016-12-09 Graham Markall + Andrew Burgess + + * Makefile.am: Add earclinux_nps.c target and add to + ALL_EMULATION_SOURCES. + * Makefile.in: Likewise, regenerated. + * configure.tgt: Add arclinux_nps as an extra emulation for + arc*-*-elf* and arc*-*-linux*. + * emulparams/arc-nps.sh: New file. + * emulparams/arclinux_nps.sh: New file. + * testsuite/ld-arc/arclinux-nps.d, + * testsuite/ld-arc/arclinux-nps.s: New test. + +2017-01-04 Dilan Palauzov + + PR 20958 + * ldlex.l (option): Add noyywrap + (yywrap): Delete. + * ldlex.h (yywrap): Delete prototype. + +2017-01-04 Alan Modra + + * testsuite/ld-elf/audit.exp: Check for shared lib support. + * testsuite/ld-elf/compress.exp: Likewise. + * testsuite/ld-elf/dwarf.exp: Likewise. + * testsuite/ld-elf/shared.exp: Likewise. + * testsuite/ld-elf/wrap.exp: Likewise. + * testsuite/ld-ifunc/ifunc.exp: Likewise. + * testsuite/ld-plugin/lto.exp: Check $CXX exists. + +2017-01-03 Alan Modra + + * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Do not + allow test to continue after compilation errors. + (run_cc_link_tests): Likewise. + +2017-01-03 Dimitar Dimitrov + + * Makefile.am (ALL_EMULATION_SOURCES): Add epruelf.c. + (epruelf.c): Remove unneeded dependencies. + * Makefile.in: Regenerate + +2017-01-03 Alan Modra + + * testsuite/ld-elf/shared.exp: Add -rpath-link and -no-as-needed + to various tests. + * testsuite/ld-elfweak/elfweak.exp: Likewise. + * testsuite/ld-elfvers/vers.exp (vers19): Fix -rpath-link option. + +2017-01-03 Alan Modra + + * testsuite/ld-elf/elf.exp: Check that $CC exists before C tests. + * testsuite/ld-pie/pie.exp: Likewise. + * testsuite/ld-plugin/lto.exp: Likewise. + +2017-01-02 Alan Modra + + * Makefile.am (bootstrap): Delete rule. + (ld-partial, ld1, ld1-full, ld2, ld3): Likewise. + (HOSTING_CRT0, HOSTING_SCRT0): Don't define. + (HOSTING_LIBS, HOSTING_SLIBS, HOSTING_EMU): Likewise. + * configure.ac (HOSTING_CRT0, HOSTING_SCRT0): Don't define. + (HOSTING_LIBS, HOSTING_SLIBS): Likewise. + * configure.host (HOSTING_CRT0, HOSTING_LIBS): Don't define. + * Makefile.in: Regenerate. + * configure: Regenerate. + * testsuite/config/default.exp (get_link_files): Delete. + (HOSTING_CRT0, HOSTING_SCRT0, HOSTING_LIBS, HOSTING_SLIBS): Don't + define. + (ld_simple_link): Delete. + * testsuite/lib/ld-lib.exp (default_ld_link): Delete + (default_ld_simple_link): Rename to default_ld_link. + (ld_simple_link_defsyms): Rename to ld_link_defsyms. + (run_ld_link_tests): Use ld_link, not ld_simple_link. + (run_cc_link_tests): Likewise. + (run_ld_link_exec_tests): Use $CC or $CXX to link, not $ld. + Don't run exe when not native, and return unsupported. + * testsuite/ld-bootstrap/bootstrap.exp: Create gccld1 etc. dirs. + Link ld1 etc. using $CC. + * testsuite/ld-cdtest/cdtest.exp: Link cdtest using $CC. + * testsuite/ld-checks/checks.exp: Use ld_link, not ld_simple_link. + * testsuite/ld-cygwin/exe-export.exp: Likewise. + * testsuite/ld-elf/binutils.exp: Likewise. + * testsuite/ld-elf/eh-group.exp: Likewise. + * testsuite/ld-elf/exclude.exp: Likewise. + * testsuite/ld-elf/frame.exp: Likewise. + * testsuite/ld-elf/sec-to-seg.exp: Likewise. + * testsuite/ld-elf/tls_common.exp: Likewise. + * testsuite/ld-elfcomm/elfcomm.exp: Likewise. + * testsuite/ld-fastcall/fastcall.exp: Likewise. + * testsuite/ld-gc/gc.exp: Likewise. + * testsuite/ld-ifunc/binutils.exp: Likewise. + * testsuite/ld-mep/mep.exp: Likewise. + * testsuite/ld-mips-elf/mips-elf-flags.exp: Likewise. + * testsuite/ld-mn10300/mn10300.exp: Likewise. + * testsuite/ld-nios2/nios2.exp: Likewise. + * testsuite/ld-pe/pe-compile.exp: Likewise. + * testsuite/ld-pe/pe-run.exp: Likewise. + * testsuite/ld-pe/pe-run2.exp: Likewise. + * testsuite/ld-plugin/plugin.exp: Likewise. + * testsuite/ld-scripts/align.exp: Likewise. + * testsuite/ld-scripts/alignof.exp: Likewise. + * testsuite/ld-scripts/assert.exp: Likewise. + * testsuite/ld-scripts/defined.exp: Likewise. + * testsuite/ld-scripts/extern.exp: Likewise. + * testsuite/ld-scripts/log2.exp: Likewise. + * testsuite/ld-scripts/map-address.exp: Likewise. + * testsuite/ld-scripts/phdrs.exp: Likewise. + * testsuite/ld-scripts/phdrs2.exp: Likewise. + * testsuite/ld-scripts/script.exp: Likewise. + * testsuite/ld-scripts/section-flags.exp: Likewise. + * testsuite/ld-scripts/sizeof.exp: Likewise. + * testsuite/ld-scripts/sysroot-prefix.exp: Likewise. + * testsuite/ld-scripts/weak.exp: Likewise. + * testsuite/ld-selective/selective.exp: Likewise. + * testsuite/ld-sh/sh.exp: Likewise. + * testsuite/ld-sh/sh64/relax.exp: Likewise. + * testsuite/ld-sh/sh64/relfail.exp: Likewise. + * testsuite/ld-srec/srec.exp: Likewise. + * testsuite/ld-tic6x/tic6x.exp: Likewise. + * testsuite/ld-undefined/weak-undef.exp: Likewise. + * testsuite/ld-versados/versados.exp: Likewise. + * testsuite/ld-x86-64/dwarfreloc.exp: Likewise. + * testsuite/ld-xtensa/coalesce.exp: Likewise. + * testsuite/ld-xtensa/diff_overflow.exp: Likewise. + * testsuite/ld-xtensa/lcall.exp: Likewise. + * testsuite/ld-elf/audit.exp: Run non-native too. + * testsuite/ld-elf/compress.exp: Likewise. Replace ld options with + gcc -Wl, options. + * testsuite/ld-elf/dwarf.exp: Run non-native too. Use ld_link, + not ld_simple_link. Add -Wl,--no-as-needed to some tests. + * testsuite/ld-elf/elf.exp: Run non-native too. Formatting. + * testsuite/ld-elf/indirect.exp: Run non-native too. Add + -Wl,--no-as-needed to most tests. + * testsuite/ld-elf/shared.exp: Run non-native too. Use braces + to simplify quoting. Set run_tests using [list] rather than + brace assignment to expand $extralibs. Add -Wl,--no-as-needed + to many test. Prefix ld options with -Wl,. + (mix_pic_and_non_pic): Don't run exe if not native. + * testsuite/ld-elf/wrap.exp: Run non-native too. Add + -Wl,--no-as-needed and prefix ld options with -Wl,. + * testsuite/ld-elfvers/vers.exp: Run non-native too. Use ld_link, + not ld_simple_link. + * testsuite/ld-elfvsb/elfvsb.exp: Likewise. + (visibility_test): Don't run exe if not native. + * testsuite/ld-elfweak/elfweak.exp: Run non-native too. Use ld_link, + not ld_simple_link. + (build_exec): Don't run exe if not native. + * testsuite/ld-ifunc/ifunc.exp: Run non-native too. Use ld_link, + not ld_simple_link. Link using $CC. Add -Wl,--no-as-needed + to some tests and prefix ld options with -Wl,. Expect GNU + for hppa-linux even when no ifuncs. Delete cleanup. + * testsuite/ld-pie/pie.exp: Run non-native too. + * testsuite/ld-plugin/lto.exp: Likewise. + * testsuite/ld-shared/shared.exp: Likewise. Use ld_link, + not ld_simple_link. + (shared_test): Don't run exe if not native. + * testsuite/ld-size/size.exp: Run non-native too. Add + -Wl,--no-as-needed to some tests. Prefix ld options with -Wl,. + * testsuite/ld-unique/unique.exp: Run non-native too. Use ld_link, + not ld_simple_link. Link using $CC. Add -Wl,--no-as-needed + to some tests and prefix ld options with -Wl,. Expect GNU + for hppa-linux even when no unique syms. Delete cleanup. + * testsuite/ld-x86-64/tls.exp: Add -Wl,--no-as-needed to some + tests and prefix ld options with -Wl,. + * testsuite/ld-x86-64/x86-64.exp: Use ld_link, not ld_simple_link. + Add -Wl,--no-as-needed to some tests. Prefix ld options with -Wl,. + +2017-01-02 Alan Modra + + * emulparams/elf32metag.sh (COMMONPAGESIZE): Define. + +2017-01-02 Alan Modra + + PR ld/21000 + * emulparams/hppalinux.sh (DATA_ADDR, SHLIB_DATA_ADDR): Don't define. + (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END, DATA_SEGMENT_RELRO_END): Define. + * scripttempl/elf.sc: Don't define the above if DATA_SEGMENT_ALIGN + is already defined. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 356639e828d..6774ca86aa3 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -3,1972 +3,9 @@ * i386-gen.c (operand_type_init): Restore OPERAND_TYPE_REGYMM and OPERAND_TYPE_REGZMM entries. -2017-12-20 Jim Wilson - - * riscv-opc.c (match_c_add_with_hint, match_c_lui_with_hint): New. - (riscv_opcodes)
  • : Delete "d,0" line. Change Cj to Co. - : Change Cj to Co. - : Add explanatory comment for 4-operand add instruction. - : Add support for immediate operand. - : Use match_c_add_with_hint instead of match_c_add. - : Use match_c_lui_with_hint instead of match_c_lui. - : Use match_opcode instead of match_rd_nonzero. - -2017-12-19 Tamar Christina - - PR gas/22559 - * aarch64-asm.c (aarch64_ins_reglane): Change AARCH64_OPND_QLF_S_B to - AARCH64_OPND_QLF_S_4B - * aarch64-dis.c (aarch64_ext_reglane): Change AARCH64_OPND_QLF_S_B to - AARCH64_OPND_QLF_S_4B - * aarch64-opc.c (aarch64_opnd_qualifiers): Add 4b variant. - * aarch64-tbl.h (QL_V2DOT): Change S_B to S_4B. - -2017-12-19 Tamar Christina - - PR gas/22529 - * aarch64-opc.c (aarch64_opnd_qualifiers): Add 4b variant. - -2017-12-18 Jan Beulich - - * i386-gen.c (operand_type_init): Delete OPERAND_TYPE_REGYMM and - OPERAND_TYPE_REGZMM entries. - * i386-opc.h (enum of opcode modifiers): Extend comment. - i386-opc.tbl (vaddpd, vaddps, vaddsubpd, vaddsubps, vandnpd, - vandnps, vandpd, vandps, vblendpd, vblendps, vblendvpd, - vblendvps, vbroadcastss, vcmpeq_ospd, vcmpeq_osps, vcmpeqpd, - vcmpeqps, vcmpeq_uqpd, vcmpeq_uqps, vcmpeq_uspd, vcmpeq_usps, - vcmpfalse_ospd, vcmpfalse_osps, vcmpfalsepd, vcmpfalseps, - vcmpge_oqpd, vcmpge_oqps, vcmpgepd, vcmpgeps, vcmpgt_oqpd, - vcmpgt_oqps, vcmpgtpd, vcmpgtps, vcmple_oqpd, vcmple_oqps, - vcmplepd, vcmpleps, vcmplt_oqpd, vcmplt_oqps, vcmpltpd, - vcmpltps, vcmpneq_oqpd, vcmpneq_oqps, vcmpneq_ospd, - vcmpneq_osps, vcmpneqpd, vcmpneqps, vcmpneq_uspd, vcmpneq_usps, - vcmpngepd, vcmpngeps, vcmpnge_uqpd, vcmpnge_uqps, vcmpngtpd, - vcmpngtps, vcmpngt_uqpd, vcmpngt_uqps, vcmpnlepd, vcmpnleps, - vcmpnle_uqpd, vcmpnle_uqps, vcmpnltpd, vcmpnltps, vcmpnlt_uqpd, - vcmpnlt_uqps, vcmpordpd, vcmpordps, vcmpord_spd, vcmpord_sps, - vcmppd, vcmpps, vcmptruepd, vcmptrueps, vcmptrue_uspd, - vcmptrue_usps, vcmpunordpd, vcmpunordps, vcmpunord_spd, - vcmpunord_sps, vcvtdq2ps, vcvtpd2dq, vcvtpd2ps, vcvtps2dq, - vcvttpd2dq, vcvttps2dq, vdivpd, vdivps, vdpps, vhaddpd, vhaddps, - vhsubpd, vhsubps, vlddqu, vmaskmovpd, vmaskmovps, vmaxpd, - vmaxps, vminpd, vminps, vmovapd, vmovaps, vmovdqa, vmovdqu, - vmovmskpd, vmovmskps, vmovntdq, vmovntpd, vmovntps, vmovshdup, - vmovsldup, vmovupd, vmovups, vmulpd, vmulps, vorpd, vorps, - vpermilpd, vpermilps, vptest, vrcpps, vroundpd, vroundps, - vrsqrtps, vshufpd, vshufps, vsqrtpd, vsqrtps, vsubpd, vsubps, - vtestpd, vtestps, vunpckhpd, vunpckhps, vunpcklpd, vunpcklps, - vxorpd, vxorps, vpblendd, vpbroadcastb, vpbroadcastd, - vpbroadcastw, vpbroadcastq, vpmaskmovd, vpmaskmovq, vpsllvd, - vpsllvq, vpsravd, vpsravq, vpsrlvd, vpsrlvq): Fold 128- and - 256-bit forms. Use CheckRegSize instead of IgnoreSize where - appropriate. Drop Xmmword and Ymmword from the results where - possible. - * i386-tbl.h: Re-generate. - -2017-12-18 Jan Beulich - - * i386-gen.c (operand_type_shorthands): Add RegXMM, RegYMM, and - RegZMM. - (opcode_modifiers): Drop FirstXmm0. - (operand_types): Replace RegXMM, RegYMM, and RegZMM with just - RegSIMD. - * i386-opc.h (enum of opcode modifiers): Drop FirstXmm0. - (struct i386_opcode_modifier): Drop firstxmm0. - (enum of operand types): Replace RegXMM, RegYMM, and RegZMM with - just RegSIMD. Extend comment. - (union i386_operand_type): Replace regxmm, regymm, and regzmm - with just regsimd. - * i386-opc.tbl (blendvpd, blendvps, pblendvb, sha256rnds2): Use - Acc|Xmmword. - * i386-reg.tbl (xmm0): Add Acc. - * i386-init.h, i386-tbl.h: Re-generate. - -2017-12-18 Jan Beulich - - * i386-gen.c (operand_type_shorthands): Add FloatAcc and - FloatReg. - (operand_types): Drop FloatAcc and FloatReg. - * i386-opc.h (enum of operand types): Likewise. Extend comment. - (union i386_operand_type): Drop floatacc and floatreg. - * i386-reg.tbl (st, st(0)): Replace FloatAcc by Acc. - * i386-init.h, i386-tbl.h: Re-generate. - -2017-12-18 Jan Beulich - - * i386-gen.c (operand_type_shorthands): New. - (opcode_modifiers): Replace Reg with just Reg. - (set_bitfield_from_cpu_flag_init): Rename to - set_bitfield_from_shorthand. Drop value parameter. Process - operand_type_shorthands. - (set_bitfield): Adjust call accordingly. - * i386-opc.h (enum of operand types): Replace Reg with just - Reg. - (union i386_operand_type): Replace reg with just reg. - * i386-opc.tbl (extractps, pextrb, pextrw, pinsrb, pinsrw, - vextractps, vpextrb, vpextrw, vpinsrb, vpinsrw): Split into - separate register and memory forms. - * i386-reg.tbl (al): Drop Byte. - (ax): Drop Word. - (eax): Drop Dword. - (rax): Drop Qword. - * i386-init.h, i386-tbl.h: Re-generate. - -2017-12-15 Dimitar Dimitrov - - * disassemble.c (disassemble_init_for_target): Don't put PRU - between powerpc and rs6000 cases. - -2017-12-15 Jan Beulich - - * i386-opc.tbl (adc, add, and, cmp, cmps, in, ins, lods, mov, - movabs, movq, movs, or, out, outs, ptwrite, rcl, rcr, rol, ror, - sal, sar, sbb, scas, scmp, shl, shr, slod, smov, ssca, ssto, - stos, sub, test, xor): Drop CheckRegSize from variants not - allowing for two (or more) register operands. - * i386-tbl.h: Re-generate. - -2017-12-13 Jim Wilson - - PR 22599 - * riscv-opc.c (riscv_opcodes) : New. - -2017-12-13 Dimitar Dimitrov - - * disassemble.c: Enable disassembler_needs_relocs for PRU. - -2017-12-11 Petr Pavlu - Renlin Li - - * aarch64-dis.c (print_insn_aarch64): Move symbol section check ... - (get_sym_code_type): Here. - -2017-12-03 Alan Modra - - * ppc-opc.c (extract_li20): Rewrite. - -2017-12-01 Peter Bergner - - * opcodes/ppc-dis.c (disassemble_init_powerpc): Fix white space. - (operand_value_powerpc): Update return and argument type. - : Update type. - (skip_optional_operands): Update argument type. - (lookup_powerpc): Likewise. - (lookup_vle): Likewise. - : Update type. - (lookup_spe2): Update argument type. - : Update type. - (print_insn_powerpc) : Update type. - Use PPC_INT_FMT for printing instructions and operands. - * opcodes/ppc-opc.c (insert_arx, extract_arx, insert_ary, extract_ary, - insert_rx, extract_rx, insert_ry, extract_ry, insert_bat, extract_bat, - insert_bba, extract_bba, insert_bdm, extract_bdm, insert_bdp, - extract_bdp, valid_bo_pre_v2, valid_bo_post_v2, valid_bo, insert_bo, - extract_bo, insert_boe, extract_boe, insert_dcmxs, extract_dcmxs, - insert_dxd, extract_dxd, insert_dxdn, extract_dxdn, insert_fxm, - extract_fxm, insert_li20, extract_li20, insert_ls, extract_ls, - insert_esync, extract_esync, insert_mbe, extract_mbe, insert_mb6, - extract_mb6, extract_nb, insert_nbi, insert_nsi, extract_nsi, - insert_ral, extract_ral, insert_ram, extract_ram, insert_raq, - extract_raq, insert_ras, extract_ras, insert_rbs, extract_rbs, - insert_rbx, extract_rbx, insert_sci8, extract_sci8, insert_sci8n, - extract_sci8n, insert_sd4h, extract_sd4h, insert_sd4w, extract_sd4w, - insert_oimm, extract_oimm, insert_sh6, extract_sh6, insert_spr, - extract_spr, insert_sprg, extract_sprg, insert_tbr, extract_tbr, - insert_xt6, extract_xt6, insert_xtq6, extract_xtq6, insert_xa6, - extract_xa6, insert_xb6, extract_xb6, insert_xb6s, extract_xb6s, - insert_xc6, extract_xc6, insert_dm, extract_dm, insert_vlesi, - extract_vlesi, insert_vlensi, extract_vlensi, insert_vleui, - extract_vleui, insert_vleil, extract_vleil, insert_evuimm1_ex0, - extract_evuimm1_ex0, insert_evuimm2_ex0, extract_evuimm2_ex0, - insert_evuimm4_ex0, extract_evuimm4_ex0, insert_evuimm8_ex0, - extract_evuimm8_ex0, insert_evuimm_lt8, extract_evuimm_lt8, - insert_evuimm_lt16, extract_evuimm_lt16, insert_rD_rS_even, - extract_rD_rS_even, insert_off_lsp, extract_off_lsp, insert_off_spe2, - extract_off_spe2, insert_Ddd, extract_Ddd): Update types. - (OP, OPTO, OPL, OPVUP, OPVUPRT, A, AFRALFRC_MASK, B, BD8, BD8IO, BD15, - BD24, BBO, Y_MASK , AT1_MASK, AT2_MASK, BBOCB, C_LK, C, CTX, UCTX, - DX, EVSEL, IA16, I16A, I16L, IM7, LI20, MME, MD, MDS, SC, SC_MASK, - SCI8, SCI8BF, SD4, SE_IM5, SE_R, SE_RR, VX, VX_LSP, VX_RA_CONST, - VX_RB_CONST, VX_SPE_CRFD, VX_SPE2_CLR, VX_SPE2_SPLATB, VX_SPE2_OCTET, - VX_SPE2_DDHH, VX_SPE2_HH, VX_SPE2_EVMAR, VX_SPE2_EVMAR_MASK, VXA, - VXR, VXASH, X, EX, XX2, XX3, XX3RC, XX4, Z, XWRA_MASK, XLRT_MASK, - XRLARB_MASK, XLRAND_MASK, XRTLRA_MASK, XRTLRARB_MASK, XRTARARB_MASK, - XRTBFRARB_MASK, XOPL, XOPL2, XRCL, XRT, XRTRA, XCMP_MASK, XCMPL_MASK, - XTO, XTLB, XSYNC, XEH_MASK, XDSS, XFL, XISEL, XL, XLO, XLYLK, XLOCB, - XMBAR, XO, XOPS, XS, XFXM, XSPR, XUC, XW, APU): Update types in casts. - -2017-11-29 Jan Beulich - - * i386-gen.c (active_cpu_flags, active_isstring, enum stage): - New. - (output_cpu_flags): Update active_cpu_flags. - (process_i386_opcode_modifier): Update active_isstring. - (output_operand_type): Rename "macro" parameter to "stage", - changing its type. - (process_i386_operand_type): Likewise. Track presence of - BaseIndex and emit DispN accordingly. - (output_i386_opcode, process_i386_registers, - process_i386_initializers): Adjust calls to - process_i386_operand_type() for its changed parameter type. - * i386-opc.tbl: Drop Disp8, Disp16, Disp32, and Disp32S from - all insns operands having BaseIndex set. - * i386-tbl.h: Re-generate. - -2017-11-29 Jan Beulich - - * i386-gen.c (operand_type_init): Remove OPERAND_TYPE_VEC_DISP8 - entry. - (operand_types): Remove Vec_Disp8 entry. - * i386-opc.h (Vec_Disp8): Delete. - (union i386_operand_type): Remove vec_disp8. - (i386-opc.tbl): Remove Vec_Disp8. - * i386-init.h, i386-tbl.h: Re-generate. - -2017-11-29 Stefan Stroe - - * po/Make-in (datadir): Define as @datadir@. - (localedir): Define as @localedir@. - (gnulocaledir, gettextsrcdir): Use @datarootdir@. - -2017-11-27 Nick Clifton - - * po/zh_CN.po: Updated simplified Chinese translation. - -2017-11-24 Jan Beulich - - * i386-dis.c (float_mem): Add suffixes to fi* in the "de" and - "df" groups. - -2017-11-23 Igor Tsimbalist - - * i386-opc.tbl: Add Disp8MemShift for AVX512 VAES instructions. - * i386-tbl.h: Regenerate. - -2017-11-23 Jan Beulich - - * i386-dis.c (OP_E_memory): Also shift the 8-bit immediate in - the 16-bit addressing case. - -2017-11-23 Jan Beulich - - * i386-dis.c (dis386_twobyte): Correct ud1. Add ud0. - (twobyte_has_modrm): Set flag for index 0xb9 and 0xff. - * i386-opc.tbl (ud1, ud2b): Add operands. - (ud0): New. - * i386-tbl.h: Re-generate. - -2017-11-22 Igor Tsimbalist - - * i386-opc.tbl: Remove Vec_Disp8 from vgf2p8mulb. - * i386-tbl.h: Regenerate. - -2017-11-22 Igor Tsimbalist - - * i386-opc.tbl: Remove Vec_Disp8 from vpcompressb and vpexpandb. - * i386-tbl.h: Regenerate. - -2017-11-22 Claudiu Zissulescu - - *arc-opc (insert_rhv2): Check h-regs range. - -2017-11-21 Claudiu Zissulescu - - * arc-dis.c (print_insn_arc): Pretty print pc-relative offsets. - * arc-opc.c (SIMM21_A16_5): Make it pc-relative. - -2017-11-16 Tamar Christina - - * aarch64-tbl.h (aarch64_feature_fp_16_v8_2): Require AARCH64_FEATURE_F16_FML - and AARCH64_FEATURE_F16. - -2017-11-16 Tamar Christina - - * aarch64-tbl.h (sha512h, sha512h2, sha512su0, sha512su1, eor3): New. - (rax1, xar, bcax, sm3ss1, sm3tt1a, sm3tt1b, sm3tt2a, sm3tt2b): New. - (sm3partw1, sm3partw2, sm4e, sm4ekey, fmlal, fmlsl): New. - (fmlal2, fmlsl2, cfinv, rmif, setf8, setf16, stlurb): New. - (ldapurb, ldapursb, stlurh, ldapurh, ldapursh, stlur): New. - (ldapur, ldapursw, stlur): New. - * aarch64-dis-2.c: Regenerate. - -2017-11-16 Jan Beulich - - (get_valid_dis386): Never flag bad opcode when - vex.register_specifier is beyond 7. Always store all four - bits of it. Move 16-/32-bit override in EVEX handling after - all to be overridden bits have been set. - (OP_VEX): Mask vex.register_specifier outside of 64-bit mode. - Use rex to determine GPR register set. - (OP_EX_VexReg, OP_Vex_2src_1, OP_Vex_2src_2, OP_REG_VexI4, - OP_LWP_E): Mask vex.register_specifier outside of 64-bit mode. - -2017-11-15 Jan Beulich - - * i386-dis.c (OP_VEX, OP_LWPCB_E, OP_LWP_E): Use rex to - determine GPR register set. - -2017-11-15 Jan Beulich - - * i386-dis.c (VEXI4_Fixup, VexI4): Delete. - (prefix_table, xop_table, vex_len_table): Remove VexI4 uses. - (OP_EX_VexW): Move setting of vex_w_done. Update codep on 2nd - pass. - (OP_REG_VexI4): Drop low 4 bits check. - -2017-11-15 Jan Beulich - - * i386-reg.tbl (axl): Remove Acc and Byte. - * i386-tbl.h: Re-generate. - -2017-11-14 Jan Beulich - - * i386-dis.c (VPCOM_Fixup, VPCOM, xop_cmp_op): New. - (vex_len_table): Use VPCOM. - -2017-11-14 Jan Beulich - - * i386-dis-evex.h (evex_table[EVEX_W_0F3A3E_P_2]): Use VPCMP. - (evex_table[EVEX_W_0F3A3F_P_2]): Likewise. - * i386-opc.tbl (vpcmpeqb, vpcmpgtb, vpcmpeqw, vpcmpgtw, vpcmpuw, - vpcmpw): Move up. - (vpcmpeqb, vpcmpleb, vpcmpltb, vpcmpneqb, vpcmpnleb, vpcmpnltb, - vpcmpequb, vpcmpleub, vpcmpltub, vpcmpnequb, vpcmpnleub, - vpcmpnltub, vpcmpeqw, vpcmplew, vpcmpltw, vpcmpneqw, vpcmpnlew, - vpcmpnltw, vpcmpequw, vpcmpleuw, vpcmpltuw, vpcmpnequw, vpcmpnleuw, - vpcmpnltuw): New. - * i386-tbl.h: Re-generate. - -2017-11-14 Jan Beulich - - * i386-opc.tbl (cmps, ins, lods, movs, outs, scas, scmp, slod, - smov, ssca, stos, ssto, xlat): Drop Disp*. - * i386-tbl.h: Re-generate. - -2017-11-13 Jan Beulich - - * i386-opc.tbl (fxsave64, fxrstor64, xsave64, xrstor64, - xsaveopt64): Add No_qSuf. - * i386-tbl.h: Re-generate. - -2017-11-09 Tamar Christina - - * aarch64-opc.c (aarch64_sys_regs): Add ARMv8.4-a registers; - dit, vstcr_el2, vsttbr_el2, cnthvs_tval_el2, cnthvs_cval_el2, - cnthvs_ctl_el2, cnthps_tval_el2, cnthps_cval_el2, cnthps_ctl_el2, - sder32_el2, vncr_el2. - (aarch64_sys_reg_supported_p): Likewise. - (aarch64_pstatefields): Add dit register. - (aarch64_pstatefield_supported_p): Likewise. - (aarch64_sys_regs_tlbi): Add vmalle1os, vae1os, aside1os, vaae1os, - vale1os, vaale1os, ipas2e1os, ipas2le1os, vae2os, vale2os, vmalls12e1os, - vae3os, vale3os, alle2os, alle1os, alle3os, rvae1, rvaae1, rvale1, - rvaale1, rvae1is, rvaae1is, rvale1is, rvaale1is, rvae1os, rvaae1os, - rvale1os, rvaale1os, ripas2e1is, ripas2le1is, ripas2e1, ripas2le1, - ripas2e1os, ripas2le1os, rvae2, rvale2, rvae2is, rvale2is, rvae2os, - rvale2os, rvae3, rvale3, rvae3is, rvale3is, rvae3os, rvale3os. - -2017-11-09 Tamar Christina - - * aarch64-tbl.h (QL_SHA512UPT, QL_V2SAME2D, QL_V3SAME2D): New. - (QL_V4SAME16B, QL_V4SAME4S, QL_XAR, QL_SM3TT, QL_V3FML2S): New. - (QL_V3FML4S, QL_V2FML2S, QL_V2FML4S, QL_RMIF, QL_SETF): New. - (QL_STLW, QL_STLX): New. - -2017-11-09 Tamar Christina - - * aarch64-asm.h (ins_addr_offset): New. - * aarch64-asm.c (aarch64_ins_reglane): Add cryptosm3. - (aarch64_ins_addr_offset): New. - * aarch64-asm-2.c: Regenerate. - * aarch64-dis.h (ext_addr_offset): New. - * aarch64-dis.c (aarch64_ext_reglane): Add cryptosm3. - (aarch64_ext_addr_offset): New. - * aarch64-dis-2.c: Regenerate. - * aarch64-opc.h (aarch64_field_kind): Add FLD_imm6_2, - FLD_imm4_2 and FLD_SM3_imm2. - * aarch64-opc.c (fields): Add FLD_imm6_2, - FLD_imm4_2 and FLD_SM3_imm2. - (operand_general_constraint_met_p): Add AARCH64_OPND_ADDR_OFFSET. - (aarch64_print_operand): Add AARCH64_OPND_Va, AARCH64_OPND_SM3_IMM2, - AARCH64_OPND_MASK, AARCH64_OPND_IMM_2 and AARCH64_OPND_ADDR_OFFSET. - * aarch64-opc-2.c (Va, MASK, IMM_2, ADDR_OFFSET, SM3_IMM2): New. - * aarch64-tbl.h - (aarch64_opcode_table): Add Va, MASK, IMM_2, ADDR_OFFSET, SM3_IMM2. - -2017-11-09 Tamar Christina - - * aarch64-tbl.h - (aarch64_feature_v8_4, aarch64_feature_crypto_v8_2): New. - (aarch64_feature_sm4, aarch64_feature_sha3): New. - (aarch64_feature_fp_16_v8_2): New. - (ARMV8_4, SHA3, SM4, CRYPTO_V8_2, FP_F16_V8_2): New. - (V8_4_INSN, CRYPTO_V8_2_INSN): New. - (SHA3_INSN, SM4_INSN, FP16_V8_2_INSN): New. - -2017-11-08 Tamar Christina - - * aarch64-tbl.h (aarch64_feature_crypto): Add AES and SHA2. - (aarch64_feature_sha2, aarch64_feature_aes): New. - (SHA2, AES): New. - (AES_INSN, SHA2_INSN): New. - (pmull, pmull2, aese, aesd, aesmc, aesimc): Change to AES_INS. - (sha1h, sha1su1, sha256su0, sha1c, sha1p, - sha1m, sha1su0, sha256h, sha256h2, sha256su1): - Change to SHA2_INS. - -2017-11-08 Jiong Wang - Tamar Christina - - * arm-dis.c (coprocessor_opcodes): New entries for ARMv8.2-A new - FP16 instructions, including vfmal.f16 and vfmsl.f16. - -2017-11-07 Andrew Burgess - - * arc-nps400-tbl.h: Change incorrect use of NONE to MISC. - -2017-11-07 Alan Modra - - * opintl.h: Formatting, comment fixes. - (gettext, ngettext): Redefine when ENABLE_NLS. - (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. - (_): Define using gettext. - (textdomain, bindtextdomain): Use safer "do nothing". - -2017-11-03 Claudiu Zissulescu - - * arc-dis.c (print_hex): New variable. - (parse_option): Check for hex option. - (print_insn_arc): Use hexadecimal representation for short - immediate values when requested. - (print_arc_disassembler_options): Add hex option to the list. - -2017-11-03 Claudiu Zissulescu - - * arc-tbl.h (abss, abssh, adc, adcs, adds, aslacc, asls, aslsacc) - (asrs, asrsr, cbflyhf0r, cbflyhf1r, cmacchfr, cmacchnfr, cmachfr) - (cmachnfr, cmpychfr, cmpychnfr, cmpyhfmr, cmpyhfr, cmpyhnfr, divf) - (dmachbl, dmachbm, dmachf, dmachfr, dmacwhf, dmpyhbl, dmpyhbm) - (dmpyhf, dmpyhfr, dmpyhwf, dmpywhf, dsync, flagacc, getacc, macdf) - (macf, macfr, macwhfl, macwhflr, macwhfm, macwhfmr, macwhkl) - (macwhkul, macwhl, macwhul, mpydf, mpyf, mpyfr, mpywhfl, mpywhflr) - (mpywhfm, mpywhfmr, mpywhkl, mpywhkul, mpywhl, mpywhul, msubdf) - (msubf, msubfr, msubwhfl, msubwhflr, msubwhfm, msubwhfmr, mul64) - (negs, negsh, normacc, qmachf, qmpyh, qmpyhf, rndh, satf, sath) - (sbcs, setacc, sflag, sqrt, sqrtf, subs, swi_s, vabs2h, vabss2h) - (vadd4b, vadds2, vadds2h, vadds4h, vaddsubs, vaddsubs2h) - (vaddsubs4h, valgn2h, vasl2h, vasls2h, vasr2h, vasrs2h, vasrsr2h) - (vext2bhl, vext2bhlf, vext2bhm, vext2bhmf, vlsr2h, vmac2hf) - (vmac2hfr, vmac2hnfr, vmax2h, vmin2h, vmpy2h, vmpy2hf, vmpy2hfr) - (vmpy2hwf, vmsub2hf, vmsub2hfr, vmsub2hnfr, vneg2h, vnegs2h) - (vnorm2h, vpack2hbl, vpack2hblf, vpack2hbm, vpack2hbmf, vpack2hl) - (vpack2hm, vperm, vrep2hl, vrep2hm, vsext2bhl, vsext2bhm, vsub4b) - (vsubadds, vsubadds2h, vsubadds4h, vsubs2, vsubs2h, vsubs4h): - Changed opcodes. - (prealloc, prefetch*): Place them before ld instruction. - * arc-opc.c (skip_this_opcode): Add ARITH class. - -2017-10-25 Alan Modra - - PR 22348 - * cr16-dis.c (cr16_cinvs, instruction, cr16_currInsn): Make static. - (cr16_words, cr16_allWords, processing_argument_number): Likewise. - (imm4flag, size_changed): Likewise. - * crx-dis.c (crx_cinvs, NUMCINVS, instruction, currInsn): Likewise. - (words, allWords, processing_argument_number): Likewise. - (cst4flag, size_changed): Likewise. - * crx-opc.c (crx_cst4_map): Rename from cst4_map. - (crx_cst4_maps): Rename from cst4_maps. - (crx_no_op_insn): Rename from no_op_insn. - -2017-10-24 Andrew Waterman - - * riscv-opc.c (match_c_addi16sp) : New function. - (match_c_addi4spn): New function. - (match_c_lui): Don't allow 0-immediate encodings. - (riscv_opcodes) : Use the above functions. - : Likewise. - : Likewise. - : Likewise. - -2017-10-23 Igor Tsimbalist - - * i386-init.h: Regenerate - * i386-tbl.h: Likewise - -2017-10-23 Igor Tsimbalist - - * i386-dis.c (enum): Add PREFIX_EVEX_0F3854, PREFIX_EVEX_0F388F. - (enum): Add EVEX_W_0F3854_P_2. - * i386-dis-evex.h (evex_table): Updated. - * i386-gen.c (cpu_flag_init): Add CPU_AVX512_BITALG, - CPU_ANY_AVX512_BITALG_FLAGS. Update CPU_ANY_AVX512F_FLAGS. - (cpu_flags): Add CpuAVX512_BITALG. - * i386-opc.h (enum): Add CpuAVX512_BITALG. - (i386_cpu_flags): Add cpuavx512_bitalg.. - * i386-opc.tbl: Add Intel AVX512_BITALG instructions. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2017-10-23 Igor Tsimbalist - - * i386-dis.c (enum): Add PREFIX_EVEX_0F3850, PREFIX_EVEX_0F3851. - * i386-dis-evex.h (evex_table): Updated. - * i386-gen.c (cpu_flag_init): Add CPU_AVX512_VNNI, - CPU_ANY_AVX512_VNNI_FLAGS. Update CPU_ANY_AVX512F_FLAGS. - (cpu_flags): Add CpuAVX512_VNNI. - * i386-opc.h (enum): Add CpuAVX512_VNNI. - (i386_cpu_flags): Add cpuavx512_vnni. - * i386-opc.tbl Add Intel AVX512_VNNI instructions. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2017-10-23 Igor Tsimbalist - - * i386-dis.c (enum): Add PREFIX_EVEX_0F3A44. - (enum): Remove VEX_LEN_0F3A44_P_2. - (vex_len_table): Ditto. - (enum): Remove VEX_W_0F3A44_P_2. - (vew_w_table): Ditto. - (prefix_table): Adjust instructions (see prefixes above). - * i386-dis-evex.h (evex_table): - Add new instructions (see prefixes above). - * i386-gen.c (cpu_flag_init): Add VPCLMULQDQ. - (bitfield_cpu_flags): Ditto. - * i386-opc.h (enum): Ditto. - (i386_cpu_flags): Ditto. - (CpuUnused): Comment out to avoid zero-width field problem. - * i386-opc.tbl (vpclmulqdq): New instruction. - * i386-init.h: Regenerate. - * i386-tbl.h: Ditto. - -2017-10-23 Igor Tsimbalist - - * i386-dis.c (enum): Add PREFIX_EVEX_0F38DC, PREFIX_EVEX_0F38DD, - PREFIX_EVEX_0F38DE, PREFIX_EVEX_0F38DF. - (enum): Remove VEX_LEN_0F38DC_P_2, VEX_LEN_0F38DD_P_2, - VEX_LEN_0F38DE_P_2, VEX_LEN_0F38DF_P_2. - (vex_len_table): Ditto. - (enum): Remove VEX_W_0F38DC_P_2, VEX_W_0F38DD_P_2, - VEX_W_0F38DE_P_2, VEX_W_0F38DF_P_2. - (vew_w_table): Ditto. - (prefix_table): Adjust instructions (see prefixes above). - * i386-dis-evex.h (evex_table): - Add new instructions (see prefixes above). - * i386-gen.c (cpu_flag_init): Add VAES. - (bitfield_cpu_flags): Ditto. - * i386-opc.h (enum): Ditto. - (i386_cpu_flags): Ditto. - * i386-opc.tbl (vaes{enc,dec}{last,}): New instructions. - * i386-init.h: Regenerate. - * i386-tbl.h: Ditto. - -2017-10-23 Igor Tsimbalist - - * i386-dis.c (enum): Add PREFIX_0F38CF, PREFIX_0F3ACE, PREFIX_0F3ACF, - PREFIX_VEX_0F38CF, PREFIX_VEX_0F3ACE, PREFIX_VEX_0F3ACF, - PREFIX_EVEX_0F38CF, PREFIX_EVEX_0F3ACE, PREFIX_EVEX_0F3ACF. - (enum): Add VEX_W_0F38CF_P_2, VEX_W_0F3ACE_P_2, VEX_W_0F3ACF_P_2, - EVEX_W_0F3ACE_P_2, EVEX_W_0F3ACF_P_2. - (prefix_table): Updated (see prefixes above). - (three_byte_table): Likewise. - (vex_w_table): Likewise. - * i386-dis-evex.h: Likewise. - * i386-gen.c (cpu_flag_init): Add CPU_GFNI_FLAGS, CpuGFNI. - (cpu_flags): Add CpuGFNI. - * i386-opc.h (enum): Add CpuGFNI. - (i386_cpu_flags): Add cpugfni. - * i386-opc.tbl: Add Intel GFNI instructions. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2017-10-23 Igor Tsimbalist - - * i386-dis.c (enum): Add b_scalar_mode, w_scalar_mode. - Define EXbScalar and EXwScalar for OP_EX. - (enum): Add PREFIX_EVEX_0F3862, PREFIX_EVEX_0F3863, - PREFIX_EVEX_0F3870, PREFIX_EVEX_0F3871, PREFIX_EVEX_0F3872, - PREFIX_EVEX_0F3873, PREFIX_EVEX_0F3A70, PREFIX_EVEX_0F3A71, - PREFIX_EVEX_0F3A72, PREFIX_EVEX_0F3A73. - (enum): Add EVEX_W_0F3862_P_2, EVEX_W_0F3863_P_2, - EVEX_W_0F3870_P_2, EVEX_W_0F3871_P_2, EVEX_W_0F3872_P_2, - EVEX_W_0F3873_P_2, EVEX_W_0F3A70_P_2, EVEX_W_0F3A71_P_2, - EVEX_W_0F3A72_P_2, EVEX_W_0F3A73_P_2. - (intel_operand_size): Handle b_scalar_mode and w_scalar_mode. - (OP_E_memory): Likewise. - * i386-dis-evex.h: Updated. - * i386-gen.c (cpu_flag_init): Add CPU_AVX512_VBMI2, - CPU_ANY_AVX512_VBMI2_FLAGS. Update CPU_ANY_AVX512F_FLAGS. - (cpu_flags): Add CpuAVX512_VBMI2. - * i386-opc.h (enum): Add CpuAVX512_VBMI2. - (i386_cpu_flags): Add cpuavx512_vbmi2. - * i386-opc.tbl: Add Intel AVX512_VBMI2 instructions. - * i386-init.h: Regenerate. - * i386-tbl.h: Likewise. - -2017-10-18 Eric Botcazou - - * visium-dis.c (disassem_class1) : Print the operands. - -2017-10-12 James Bowman - - * ft32-dis.c (print_insn_ft32): Replace FT32_FLD_K8 with K15. - * ft32-opc.c (ft32_opc_info): Replace FT32_FLD_K8 with - K15. Add jmpix pattern. - -2017-10-09 Andreas Krebbel - - * s390-opc.txt (prno, tpei, irbm): New instructions added. - -2017-10-09 Heiko Carstens - - * s390-opc.c (INSTR_SI_RD): New macro. - (INSTR_S_RD): Adjust example instruction. - * s390-opc.txt (lpsw, ssm, ts): Change S_RD instruction format to - SI_RD. - -2017-10-01 Alexander Fedotov - - * ppc-opc.c (vle_opcodes): Add e_lmvsprw, e_lmvgprw, - e_lmvsrrw, e_lmvcsrrw and e_lmvcsrrw as official mnemonics for - VLE multimple load/store instructions. Old e_ldm* variants are - kept as aliases. - Add missing e_lmvmcsrrw and e_stmvmcsrrw. - -2017-09-27 Nick Clifton - - PR 22179 - * riscv-opc.c (riscv_opcodes): Add fmv.x.w and fmv.w.x as the new - names for the fmv.x.s and fmv.s.x instructions respectively. - -2017-09-26 do - - PR 22123 - * m68k-opc.c (m68k_opcodes): Allow macw and macl instructions to - be used on CPUs that have emacs support. - -2017-09-21 Sergio Durigan Junior - - * aarch64-opc.c (expand_fp_imm): Initialize 'imm'. - -2017-09-09 Kamil Rytarowski - - * nds32-asm.c: Rename __BIT() to N32_BIT(). - * nds32-asm.h: Likewise. - * nds32-dis.c: Likewise. - -2017-09-09 H.J. Lu - - * i386-dis.c (last_active_prefix): Removed. - (ckprefix): Don't set last_active_prefix. - (NOTRACK_Fixup): Don't check last_active_prefix. - -2017-08-31 Nick Clifton - - * po/fr.po: Updated French translation. - -2017-08-31 James Bowman - - * ft32-dis.c (print_insn_ft32): Correct display of non-address - fields. - -2017-08-23 Alexander Fedotov - Edmar Wienskoski - - * ppc-dis.c (ppc_mopt): Add PPC_OPCODE_SPE2 and - PPC_OPCODE_EFS2 flag to "e200z4" entry. - New entries efs2 and spe2. - Add PPC_OPCODE_SPE2 and PPC_OPCODE_EFS2 flag to "vle" entry. - (SPE2_OPCD_SEGS): New macro. - (spe2_opcd_indices): New. - (disassemble_init_powerpc): Handle SPE2 opcodes. - (lookup_spe2): New function. - (print_insn_powerpc): call lookup_spe2. - * ppc-opc.c (insert_evuimm1_ex0): New function. - (extract_evuimm1_ex0): Likewise. - (insert_evuimm_lt8): Likewise. - (extract_evuimm_lt8): Likewise. - (insert_off_spe2): Likewise. - (extract_off_spe2): Likewise. - (insert_Ddd): Likewise. - (extract_Ddd): Likewise. - (DD): New operand. - (EVUIMM_LT8): Likewise. - (EVUIMM_LT16): Adjust. - (MMMM): New operand. - (EVUIMM_1): Likewise. - (EVUIMM_1_EX0): Likewise. - (EVUIMM_2): Adjust. - (NNN): New operand. - (VX_OFF_SPE2): Likewise. - (BBB): Likewise. - (DDD): Likewise. - (VX_MASK_DDD): New mask. - (HH): New operand. - (VX_RA_CONST): New macro. - (VX_RA_CONST_MASK): Likewise. - (VX_RB_CONST): Likewise. - (VX_RB_CONST_MASK): Likewise. - (VX_OFF_SPE2_MASK): Likewise. - (VX_SPE_CRFD): Likewise. - (VX_SPE_CRFD_MASK VX): Likewise. - (VX_SPE2_CLR): Likewise. - (VX_SPE2_CLR_MASK): Likewise. - (VX_SPE2_SPLATB): Likewise. - (VX_SPE2_SPLATB_MASK): Likewise. - (VX_SPE2_OCTET): Likewise. - (VX_SPE2_OCTET_MASK): Likewise. - (VX_SPE2_DDHH): Likewise. - (VX_SPE2_DDHH_MASK): Likewise. - (VX_SPE2_HH): Likewise. - (VX_SPE2_HH_MASK): Likewise. - (VX_SPE2_EVMAR): Likewise. - (VX_SPE2_EVMAR_MASK): Likewise. - (PPCSPE2): Likewise. - (PPCEFS2): Likewise. - (vle_opcodes): Add EFS2 and some missing SPE opcodes. - (powerpc_macros): Map old SPE instructions have new names - with the same opcodes. Add SPE2 instructions which just are - mapped to SPE2. - (spe2_opcodes): Add SPE2 opcodes. - -2017-08-23 Alan Modra - - * ppc-opc.c: Formatting and comment fixes. Move insert and - extract functions earlier, deleting forward declarations. - (insert_nbi, insert_raq, insert_rbx): Expand use of RT_MASK and - RA_MASK. - -2017-08-22 Palmer Dabbelt - - * riscv-opc.c (riscv_opcodes): Mark "c.nop" as an alias. - -2017-08-21 Alexander Fedotov - Edmar Wienskoski - - * ppc-opc.c (insert_evuimm2_ex0): New function. - (extract_evuimm2_ex0): Likewise. - (insert_evuimm4_ex0): Likewise. - (extract_evuimm4_ex0): Likewise. - (insert_evuimm8_ex0): Likewise. - (extract_evuimm8_ex0): Likewise. - (insert_evuimm_lt16): Likewise. - (extract_evuimm_lt16): Likewise. - (insert_rD_rS_even): Likewise. - (extract_rD_rS_even): Likewise. - (insert_off_lsp): Likewise. - (extract_off_lsp): Likewise. - (RD_EVEN): New operand. - (RS_EVEN): Likewise. - (RSQ): Adjust. - (EVUIMM_LT16): New operand. - (HTM_SI): Adjust. - (EVUIMM_2_EX0): New operand. - (EVUIMM_4): Adjust. - (EVUIMM_4_EX0): New operand. - (EVUIMM_8): Adjust. - (EVUIMM_8_EX0): New operand. - (WS): Adjust. - (VX_OFF): New operand. - (VX_LSP): New macro. - (VX_LSP_MASK): Likewise. - (VX_LSP_OFF_MASK): Likewise. - (PPC_OPCODE_LSP): Likewise. - (vle_opcodes): Add LSP opcodes. - * ppc-dis.c (ppc_mopt): Add PPC_OPCODE_LSP flag to "vle" entry. - -2017-08-09 Jiong Wang - - * arm-dis.c (thumb32_opcodes): Use format 'R' instead of 'S' for - register operands in CRC instructions. - (print_insn_thumb32): Remove "S" support. Updated the - comments. - -2017-08-07 H.J. Lu - - * disassemble.c (disassembler): Mark big and mach with - ATTRIBUTE_UNUSED. - -2017-08-07 Maciej W. Rozycki - - * disassemble.c (disassembler): Remove arch/mach/endian - assertions. - -2017-07-25 Nick Clifton - - PR 21739 - * arc-opc.c (insert_rhv2): Use lower case first letter in error - message. - (insert_r0): Likewise. - (insert_r1): Likewise. - (insert_r2): Likewise. - (insert_r3): Likewise. - (insert_sp): Likewise. - (insert_gp): Likewise. - (insert_pcl): Likewise. - (insert_blink): Likewise. - (insert_ilink1): Likewise. - (insert_ilink2): Likewise. - (insert_ras): Likewise. - (insert_rbs): Likewise. - (insert_rcs): Likewise. - (insert_simm3s): Likewise. - (insert_rrange): Likewise. - (insert_r13el): Likewise. - (insert_fpel): Likewise. - (insert_blinkel): Likewise. - (insert_pclel): Likewise. - (insert_nps_bitop_size_2b): Likewise. - (insert_nps_imm_offset): Likewise. - (insert_nps_imm_entry): Likewise. - (insert_nps_size_16bit): Likewise. - (insert_nps_##NAME##_pos): Likewise. - (insert_nps_##NAME): Likewise. - (insert_nps_bitop_ins_ext): Likewise. - (insert_nps_##NAME): Likewise. - (insert_nps_min_hofs): Likewise. - (insert_nps_##NAME): Likewise. - (insert_nps_rbdouble_64): Likewise. - (insert_nps_misc_imm_offset): Likewise. - * riscv-dis.c (print_riscv_disassembler_options): Fix typo in - option description. - -2017-07-24 Laurent Desnogues - Jiong Wang - - * aarch64-gen.c (print_decision_tree_1): Reverse the index of PATTERN to - correct the print. - * aarch64-dis-2.c: Regenerated. - -2017-07-21 Andreas Krebbel - - * s390-mkopc.c (main): Enable z14 as CPU string in the opcode - table. - -2017-07-20 Nick Clifton - - * po/de.po: Updated German translation. - -2017-07-19 Claudiu Zissulescu - - * arc-regs.h (sec_stat): New aux register. - (aux_kernel_sp): Likewise. - (aux_sec_u_sp): Likewise. - (aux_sec_k_sp): Likewise. - (sec_vecbase_build): Likewise. - (nsc_table_top): Likewise. - (nsc_table_base): Likewise. - (ersec_stat): Likewise. - (aux_sec_except): Likewise. - -2017-07-19 Claudiu Zissulescu - - * arc-opc.c (extract_uimm12_20): New function. - (UIMM12_20): New operand. - (SIMM3_5_S): Adjust. - * arc-tbl.h (sjli): Add new instruction. - -2017-07-19 Claudiu Zissulescu - John Eric Martin - - * arc-opc.c (UIMM10_6_S_JLIOFF): Define. - (UIMM3_23): Adjust accordingly. - * arc-regs.h: Add/correct jli_base register. - * arc-tbl.h (jli_s): Likewise. - -2017-07-18 Nick Clifton - - PR 21775 - * aarch64-opc.c: Fix spelling typos. - * i386-dis.c: Likewise. - -2017-07-14 Ravi Bangoria - - * dis-buf.c (buffer_read_memory): Change type of end_addr_offset, - max_addr_offset and octets variables to size_t. - -2017-07-12 Alan Modra - - * po/da.po: Update from translationproject.org/latest/opcodes/. - * po/de.po: Likewise. - * po/es.po: Likewise. - * po/fi.po: Likewise. - * po/fr.po: Likewise. - * po/id.po: Likewise. - * po/it.po: Likewise. - * po/nl.po: Likewise. - * po/pt_BR.po: Likewise. - * po/ro.po: Likewise. - * po/sv.po: Likewise. - * po/tr.po: Likewise. - * po/uk.po: Likewise. - * po/vi.po: Likewise. - * po/zh_CN.po: Likewise. - -2017-07-11 Yao Qi - Alan Modra - - * cgen.sh: Mark generated files read-only. - * epiphany-asm.c: Regenerate. - * epiphany-desc.c: Regenerate. - * epiphany-desc.h: Regenerate. - * epiphany-dis.c: Regenerate. - * epiphany-ibld.c: Regenerate. - * epiphany-opc.c: Regenerate. - * epiphany-opc.h: Regenerate. - * fr30-asm.c: Regenerate. - * fr30-desc.c: Regenerate. - * fr30-desc.h: Regenerate. - * fr30-dis.c: Regenerate. - * fr30-ibld.c: Regenerate. - * fr30-opc.c: Regenerate. - * fr30-opc.h: Regenerate. - * frv-asm.c: Regenerate. - * frv-desc.c: Regenerate. - * frv-desc.h: Regenerate. - * frv-dis.c: Regenerate. - * frv-ibld.c: Regenerate. - * frv-opc.c: Regenerate. - * frv-opc.h: Regenerate. - * ip2k-asm.c: Regenerate. - * ip2k-desc.c: Regenerate. - * ip2k-desc.h: Regenerate. - * ip2k-dis.c: Regenerate. - * ip2k-ibld.c: Regenerate. - * ip2k-opc.c: Regenerate. - * ip2k-opc.h: Regenerate. - * iq2000-asm.c: Regenerate. - * iq2000-desc.c: Regenerate. - * iq2000-desc.h: Regenerate. - * iq2000-dis.c: Regenerate. - * iq2000-ibld.c: Regenerate. - * iq2000-opc.c: Regenerate. - * iq2000-opc.h: Regenerate. - * lm32-asm.c: Regenerate. - * lm32-desc.c: Regenerate. - * lm32-desc.h: Regenerate. - * lm32-dis.c: Regenerate. - * lm32-ibld.c: Regenerate. - * lm32-opc.c: Regenerate. - * lm32-opc.h: Regenerate. - * lm32-opinst.c: Regenerate. - * m32c-asm.c: Regenerate. - * m32c-desc.c: Regenerate. - * m32c-desc.h: Regenerate. - * m32c-dis.c: Regenerate. - * m32c-ibld.c: Regenerate. - * m32c-opc.c: Regenerate. - * m32c-opc.h: Regenerate. - * m32r-asm.c: Regenerate. - * m32r-desc.c: Regenerate. - * m32r-desc.h: Regenerate. - * m32r-dis.c: Regenerate. - * m32r-ibld.c: Regenerate. - * m32r-opc.c: Regenerate. - * m32r-opc.h: Regenerate. - * m32r-opinst.c: Regenerate. - * mep-asm.c: Regenerate. - * mep-desc.c: Regenerate. - * mep-desc.h: Regenerate. - * mep-dis.c: Regenerate. - * mep-ibld.c: Regenerate. - * mep-opc.c: Regenerate. - * mep-opc.h: Regenerate. - * mt-asm.c: Regenerate. - * mt-desc.c: Regenerate. - * mt-desc.h: Regenerate. - * mt-dis.c: Regenerate. - * mt-ibld.c: Regenerate. - * mt-opc.c: Regenerate. - * mt-opc.h: Regenerate. - * or1k-asm.c: Regenerate. - * or1k-desc.c: Regenerate. - * or1k-desc.h: Regenerate. - * or1k-dis.c: Regenerate. - * or1k-ibld.c: Regenerate. - * or1k-opc.c: Regenerate. - * or1k-opc.h: Regenerate. - * or1k-opinst.c: Regenerate. - * xc16x-asm.c: Regenerate. - * xc16x-desc.c: Regenerate. - * xc16x-desc.h: Regenerate. - * xc16x-dis.c: Regenerate. - * xc16x-ibld.c: Regenerate. - * xc16x-opc.c: Regenerate. - * xc16x-opc.h: Regenerate. - * xstormy16-asm.c: Regenerate. - * xstormy16-desc.c: Regenerate. - * xstormy16-desc.h: Regenerate. - * xstormy16-dis.c: Regenerate. - * xstormy16-ibld.c: Regenerate. - * xstormy16-opc.c: Regenerate. - * xstormy16-opc.h: Regenerate. - -2017-07-07 Alan Modra - - * cgen-dis.in: Include disassemble.h, not dis-asm.h. - * m32c-dis.c: Regenerate. - * mep-dis.c: Regenerate. - -2017-07-05 Borislav Petkov - - * i386-dis.c: Enable ModRM.reg /6 aliases. - -2017-07-04 Ramana Radhakrishnan - - * opcodes/arm-dis.c: Support MVFR2 in disassembly - with vmrs and vmsr. - -2017-07-04 Tristan Gingold - - * configure: Regenerate. - -2017-07-03 Tristan Gingold - - * po/opcodes.pot: Regenerate. - -2017-06-30 Maciej W. Rozycki - - * mips-opc.c (mips_builtin_opcodes): Move "lsa" and "dlsa" - entries to the MSA ASE instruction block. - -2017-06-30 Andrew Bennett - Maciej W. Rozycki - - * micromips-opc.c (XPA, XPAVZ): New macros. - (micromips_opcodes): Add "mfhc0", "mfhgc0", "mthc0" and - "mthgc0". - -2017-06-30 Andrew Bennett - Maciej W. Rozycki - - * micromips-opc.c (I36): New macro. - (micromips_opcodes): Add "eretnc". - -2017-06-30 Maciej W. Rozycki - Andrew Bennett - - * mips-dis.c (mips_calculate_combination_ases): Handle the - ASE_XPA_VIRT flag. - (parse_mips_ase_option): New function. - (parse_mips_dis_option): Factor out ASE option handling to the - new function. Call `mips_calculate_combination_ases'. - * mips-opc.c (XPAVZ): New macro. - (mips_builtin_opcodes): Correct ISA and ASE flags for "mfhc0", - "mfhgc0", "mthc0" and "mthgc0". - -2017-06-29 Maciej W. Rozycki - - * mips-dis.c (mips_calculate_combination_ases): New function. - (mips_convert_abiflags_ases): Factor out ASE_MIPS16E2_MT - calculation to the new function. - (set_default_mips_dis_options): Call the new function. - -2017-06-29 Anton Kolesov - - * arc-dis.c (parse_disassembler_options): Use - FOR_EACH_DISASSEMBLER_OPTION. - -2017-06-29 Anton Kolesov - - * arc-dis.c (parse_option): Use disassembler_options_cmp to compare - disassembler option strings. - (parse_cpu_option): Likewise. - -2017-06-28 Tamar Christina - - * aarch64-asm.c (aarch64_ins_reglane): Added 4B dotprod. - * aarch64-dis.c (aarch64_ext_reglane): Likewise. - * aarch64-tbl.h (QL_V3DOT, QL_V2DOT): New. - (aarch64_feature_dotprod, DOT_INSN): New. - (udot, sdot): New. - * aarch64-dis-2.c: Regenerated. - -2017-06-28 Jiong Wang - - * arm-dis.c (coprocessor_opcodes): New entries for vsdot and vudot. - -2017-06-28 Maciej W. Rozycki - Matthew Fortune - Andrew Bennett - - * mips-formats.h (INT_BIAS): New macro. - (INT_ADJ): Redefine in INT_BIAS terms. - * mips-dis.c (mips_arch_choices): Add "interaptiv-mr2" entry. - (mips_print_save_restore): New function. - (print_insn_arg) : Update comment. - (validate_insn_args) : Remove `abort' - call. - (print_insn_args): Handle OP_SAVE_RESTORE_LIST. - (print_mips16_insn_arg): Call `mips_print_save_restore' for - OP_SAVE_RESTORE_LIST handling, factored out from here. - * mips-opc.c (decode_mips_operand) <'-'> <'m'>: New case. - (RD_31, RD_SP, WR_SP, MOD_SP, IAMR2): New macros. - (mips_builtin_opcodes): Add "restore" and "save" entries. - * mips16-opc.c (decode_mips16_operand) <'n', 'o'>: New cases. - (IAMR2): New macro. - (mips16_opcodes): Add "copyw" and "ucopyw" entries. - -2017-06-23 Andrew Waterman - - * riscv-opc.c (riscv_opcodes): Mark I-type SLT instruction as an - alias; do not mark SLTI instruction as an alias. - -2017-06-21 H.J. Lu - - * i386-dis.c (RM_0FAE_REG_5): Removed. - (PREFIX_MOD_3_0F01_REG_5_RM_1): Likewise. - (PREFIX_MOD_3_0F01_REG_5_RM_0): New. - (PREFIX_MOD_3_0FAE_REG_5): Likewise. - (prefix_table): Remove PREFIX_MOD_3_0F01_REG_5_RM_1. Add - PREFIX_MOD_3_0F01_REG_5_RM_0. - (prefix_table): Update PREFIX_MOD_0_0FAE_REG_5. Add - PREFIX_MOD_3_0FAE_REG_5. - (mod_table): Update MOD_0FAE_REG_5. - (rm_table): Update RM_0F01_REG_5. Remove RM_0FAE_REG_5. - * i386-opc.tbl: Update incsspd, incsspq and setssbsy. - * i386-tbl.h: Regenerated. - -2017-06-21 H.J. Lu - - * i386-dis.c (prefix_table): Replace savessp with saveprevssp. - * i386-opc.tbl: Likewise. - * i386-tbl.h: Regenerated. - -2017-06-21 H.J. Lu - - * i386-dis.c (reg_table): Swap indirEv with NOTRACK on "call{&|}" - and "jmp{&|}". - (NOTRACK_Fixup): Support memory indirect branch with NOTRACK - prefix. - -2017-06-19 Nick Clifton - - PR binutils/21614 - * score-dis.c (score_opcodes): Add sentinel. - -2017-06-16 Alan Modra - - * rx-decode.c: Regenerate. - -2017-06-15 H.J. Lu - - PR binutils/21594 - * i386-dis.c (OP_E_register): Check valid bnd register. - (OP_G): Likewise. - -2017-06-15 Nick Clifton - - PR binutils/21595 - * aarch64-dis.c (aarch64_ext_ldst_reglist): Check for an out of - range value. - -2017-06-15 Nick Clifton - - PR binutils/21588 - * rl78-decode.opc (OP_BUF_LEN): Define. - (GETBYTE): Check for the index exceeding OP_BUF_LEN. - (rl78_decode_opcode): Use OP_BUF_LEN as the length of the op_buf - array. - * rl78-decode.c: Regenerate. - -2017-06-15 Nick Clifton - - PR binutils/21586 - * bfin-dis.c (gregs): Clip index to prevent overflow. - (regs): Likewise. - (regs_lo): Likewise. - (regs_hi): Likewise. - -2017-06-14 Nick Clifton - - PR binutils/21576 - * score7-dis.c (score_opcodes): Add sentinel. - -2017-06-14 Yao Qi - - * aarch64-dis.c: Include disassemble.h instead of dis-asm.h. - * arm-dis.c: Likewise. - * ia64-dis.c: Likewise. - * mips-dis.c: Likewise. - * spu-dis.c: Likewise. - * disassemble.h (print_insn_aarch64): New declaration, moved from - include/dis-asm.h. - (print_insn_big_arm, print_insn_big_mips): Likewise. - (print_insn_i386, print_insn_ia64): Likewise. - (print_insn_little_arm, print_insn_little_mips): Likewise. - -2017-06-14 Nick Clifton - - PR binutils/21587 - * rx-decode.opc: Include libiberty.h - (GET_SCALE): New macro - validates access to SCALE array. - (GET_PSCALE): New macro - validates access to PSCALE array. - (DIs, SIs, S2Is, rx_disp): Use new macros. - * rx-decode.c: Regenerate. - -2017-07-14 Andre Vieira - - * arm-dis.c (print_insn_arm): Remove bogus entry for bx. - -2017-05-30 Anton Kolesov - - * arc-dis.c (enforced_isa_mask): Declare. - (cpu_types): Likewise. - (parse_cpu_option): New function. - (parse_disassembler_options): Use it. - (print_insn_arc): Use enforced_isa_mask. - (print_arc_disassembler_options): Document new options. - -2017-05-24 Yao Qi - - * alpha-dis.c: Include disassemble.h, don't include - dis-asm.h. - * avr-dis.c, bfin-dis.c, cr16-dis.c: Likewise. - * crx-dis.c, d10v-dis.c, d30v-dis.c: Likewise. - * disassemble.c, dlx-dis.c, epiphany-dis.c: Likewise. - * fr30-dis.c, ft32-dis.c, h8300-dis.c, h8500-dis.c: Likewise. - * hppa-dis.c, i370-dis.c, i386-dis.c: Likewise. - * i860-dis.c, i960-dis.c, ip2k-dis.c: Likewise. - * iq2000-dis.c, lm32-dis.c, m10200-dis.c: Likewise. - * m10300-dis.c, m32r-dis.c, m68hc11-dis.c: Likewise. - * m68k-dis.c, m88k-dis.c, mcore-dis.c: Likewise. - * metag-dis.c, microblaze-dis.c, mmix-dis.c: Likewise. - * moxie-dis.c, msp430-dis.c, mt-dis.c: - * nds32-dis.c, nios2-dis.c, ns32k-dis.c: Likewise. - * or1k-dis.c, pdp11-dis.c, pj-dis.c: Likewise. - * ppc-dis.c, pru-dis.c, riscv-dis.c: Likewise. - * rl78-dis.c, s390-dis.c, score-dis.c: Likewise. - * sh-dis.c, sh64-dis.c, tic30-dis.c: Likewise. - * tic4x-dis.c, tic54x-dis.c, tic6x-dis.c: Likewise. - * tic80-dis.c, tilegx-dis.c, tilepro-dis.c: Likewise. - * v850-dis.c, vax-dis.c, visium-dis.c: Likewise. - * w65-dis.c, wasm32-dis.c, xc16x-dis.c: Likewise. - * xgate-dis.c, xstormy16-dis.c, xtensa-dis.c: Likewise. - * z80-dis.c, z8k-dis.c: Likewise. - * disassemble.h: New file. - -2017-05-24 Yao Qi - - * rl78-dis.c (rl78_get_disassembler): If parameter abfd - is NULL, set cpu to E_FLAG_RL78_ANY_CPU. - -2017-05-24 Yao Qi - - * disassemble.c (disassembler): Add arguments a, big and mach. - Use them. - -2017-05-22 H.J. Lu - - * i386-dis.c (NOTRACK_Fixup): New. - (NOTRACK): Likewise. - (NOTRACK_PREFIX): Likewise. - (last_active_prefix): Likewise. - (reg_table): Use NOTRACK on indirect call and jmp. - (ckprefix): Set last_active_prefix. - (prefix_name): Return "notrack" for NOTRACK_PREFIX. - * i386-gen.c (opcode_modifiers): Add NoTrackPrefixOk. - * i386-opc.h (NoTrackPrefixOk): New. - (i386_opcode_modifier): Add notrackprefixok. - * i386-opc.tbl: Add NoTrackPrefixOk to indirect call and jmp. - Add notrack. - * i386-tbl.h: Regenerated. - -2017-05-19 Jose E. Marchesi - - * sparc-dis.c (MASK_V9): Include SPARC_OPCODE_ARCH_M8. - (X_IMM2): Define. - (compute_arch_mask): Handle bfd_mach_sparc_v8plusm8 and - bfd_mach_sparc_v9m8. - (print_insn_sparc): Handle new operand types. - * sparc-opc.c (MASK_M8): Define. - (v6): Add MASK_M8. - (v6notlet): Likewise. - (v7): Likewise. - (v8): Likewise. - (v9): Likewise. - (v9a): Likewise. - (v9b): Likewise. - (v9c): Likewise. - (v9d): Likewise. - (v9e): Likewise. - (v9v): Likewise. - (v9m): Likewise. - (v9andleon): Likewise. - (m8): Define. - (HWS_VM8): Define. - (HWS2_VM8): Likewise. - (sparc_opcode_archs): Add entry for "m8". - (sparc_opcodes): Add OSA2017 and M8 instructions - dictunpack, fpcmp{ule,ugt,eq,ne,de,ur}{8,16,32}shl, - fpx{ll,ra,rl}64x, - ldm{sh,uh,sw,uw,x,ux}, ldm{sh,uh,sw,uw,x,ux}a, ldmf{s,d}, - ldmf{s,d}a, on{add,sub,mul,div}, rdentropy, revbitsb, - revbytes{h,w,x}, rle_burst, rle_length, sha3, stm{h,w,x}, - stm{h,w,x}a, stmf{s,d}, stmf{s,d}a. - (asi_table): New M8 ASIs ASI_CORE_COMMIT_COUNT, - ASI_CORE_SELECT_COUNT, ASI_ARF_ECC_REG, ASI_ITLB_PROBE, ASI_DSFAR, - ASI_DTLB_PROBE_PRIMARY, ASI_DTLB_PROBE_REAL, - ASI_CORE_SELECT_COMMIT_NHT. - -2017-05-18 Alan Modra - - * aarch64-asm.c: Don't compare boolean values against TRUE or FALSE. - * aarch64-dis.c: Likewise. - * aarch64-gen.c: Likewise. - * aarch64-opc.c: Likewise. - -2017-05-15 Maciej W. Rozycki - Matthew Fortune - - * mips-dis.c (mips_arch_choices): Add ASE_MIPS16E2 and - ASE_MIPS16E2_MT flags to the unnamed MIPS16 entry. - (mips_convert_abiflags_ases): Handle the AFL_ASE_MIPS16E2 flag. - (print_insn_arg) : Add handler. - (validate_insn_args) : Handle. - (print_mips16_insn_arg): Handle MIPS16 instructions that require - 32-bit encoding and 9-bit immediates. - (print_insn_mips16): Handle MIPS16 instructions that require - 32-bit encoding and MFC0/MTC0 operand decoding. - * mips16-opc.c (decode_mips16_operand) <'>', '9', 'G', 'N', 'O'> - <'Q', 'T', 'b', 'c', 'd', 'r', 'u'>: Add handlers. - (RD_C0, WR_C0, E2, E2MT): New macros. - (mips16_opcodes): Add entries for MIPS16e2 instructions: - GP-relative "addiu" and its "addu" spelling, "andi", "cache", - "di", "ehb", "ei", "ext", "ins", GP-relative "lb", "lbu", "lh", - "lhu", and "lw" instructions, "ll", "lui", "lwl", "lwr", "mfc0", - "movn", "movtn", "movtz", "movz", "mtc0", "ori", "pause", - "pref", "rdhwr", "sc", GP-relative "sb", "sh" and "sw" - instructions, "swl", "swr", "sync" and its "sync_acquire", - "sync_mb", "sync_release", "sync_rmb" and "sync_wmb" aliases, - "xori", "dmt", "dvpe", "emt" and "evpe". Add split - regular/extended entries for original MIPS16 ISA revision - instructions whose extended forms are subdecoded in the MIPS16e2 - ISA revision: "li", "sll" and "srl". - -2017-05-15 Maciej W. Rozycki - - * mips-dis.c (print_insn_args) : Remove an MT ASE - reference in CP0 move operand decoding. - -2017-05-12 Maciej W. Rozycki - - * mips16-opc.c (decode_mips16_operand) <'6'>: Switch the operand - type to hexadecimal. - (mips16_opcodes): Add operandless "break" and "sdbbp" entries. - -2017-05-11 Maciej W. Rozycki - - * mips-opc.c (mips_builtin_opcodes): Mark "synciobdma", "syncs", - "syncw", "syncws", "sync_acquire", "sync_mb", "sync_release", - "sync_rmb" and "sync_wmb" as aliases. - * micromips-opc.c (micromips_opcodes): Mark "sync_acquire", - "sync_mb", "sync_release", "sync_rmb" and "sync_wmb" as aliases. - -2017-05-10 Claudiu Zissulescu - - * arc-dis.c (parse_option): Update quarkse_em option.. - * arc-ext-tbl.h (dsp_fp_flt2i, dsp_fp_i2flt): Change subclass to - QUARKSE1. - (dsp_fp_div, dsp_fp_cmp): Change subclass to QUARKSE2. - -2017-05-03 Kito Cheng - - * riscv-dis.c (print_insn_args): Handle 'Co' operands. - -2017-05-01 Michael Clark - - * riscv-opc.c (riscv_opcodes) : Use RA not T1 as a temporary - register. - -2017-05-02 Maciej W. Rozycki - - * mips-dis.c (print_insn_arg): Only clear the ISA bit for jumps - and branches and not synthetic data instructions. - -2017-05-02 Bernd Edlinger - - * arm-dis.c (print_insn_thumb32): Fix value_in_comment. - -2017-04-25 Claudiu Zissulescu - - * arc-dis.c (print_insn_arc): Smartly print enter/leave mnemonics. - * arc-opc.c (insert_r13el): New function. - (R13_EL): Define. - * arc-tbl.h: Add new enter/leave variants. - -2017-04-25 Claudiu Zissulescu - - * arc-tbl.h: Reorder NOP entry to be before MOV instructions. - -2017-04-25 Maciej W. Rozycki - - * mips-dis.c (print_mips_disassembler_options): Add - `no-aliases'. - -2017-04-25 Maciej W. Rozycki - - * mips16-opc.c (AL): New macro. - (mips16_opcodes): Mark "nop", "la", "dla", and synthetic forms - of "ld" and "lw" as aliases. - -2017-04-24 Tamar Christina - - * aarch64-opc.c (aarch64_logical_immediate_p): Update DEBUG_TRACE - arguments. - -2017-04-22 Alexander Fedotov - Alan Modra - - * ppc-opc.c (ELEV): Define. - (vle_opcodes): Add se_rfgi and e_sc. - (powerpc_opcodes): Enable lbdx, lhdx, lwdx, stbdx, sthdx, stwdx - for E200Z4. - -2017-04-21 Jose E. Marchesi - - * sparc-opc.c (sparc_opcodes): Mark RETT instructions as v6notv9. - -2017-04-21 Nick Clifton - - PR binutils/21380 - * aarch64-tbl.h (aarch64_opcode_table): Fix masks for LD1R, LD2R, - LD3R and LD4R. - -2017-04-13 Alan Modra - - * epiphany-desc.c: Regenerate. - * fr30-desc.c: Regenerate. - * frv-desc.c: Regenerate. - * ip2k-desc.c: Regenerate. - * iq2000-desc.c: Regenerate. - * lm32-desc.c: Regenerate. - * m32c-desc.c: Regenerate. - * m32r-desc.c: Regenerate. - * mep-desc.c: Regenerate. - * mt-desc.c: Regenerate. - * or1k-desc.c: Regenerate. - * xc16x-desc.c: Regenerate. - * xstormy16-desc.c: Regenerate. - -2017-04-11 Alan Modra - - * ppc-dis.c (ppc_opts): Remove PPC_OPCODE_ALTIVEC2, - PPC_OPCODE_VSX3, PPC_OPCODE_HTM and "htm". Formatting. Set - PPC_OPCODE_TMR for e6500. - * ppc-opc.c (PPCVEC2): Define as PPC_OPCODE_POWER8|PPC_OPCODE_E6500. - (PPCVEC3): Define as PPC_OPCODE_POWER9. - (PPCVSX2): Define as PPC_OPCODE_POWER8. - (PPCVSX3): Define as PPC_OPCODE_POWER9. - (PPCHTM): Define as PPC_OPCODE_POWER8. - (powerpc_opcodes ): Remove now unnecessary E6500. - -2017-04-10 Alan Modra - - * ppc-dis.c (ppc_opts <476>): Remove PPC_OPCODE_440. - * ppc-opc.c (MULHW): Add PPC_OPCODE_476. - (powerpc_opcodes): Adjust PPC440, PPC464 and PPC476 insns to suit - removal of PPC_OPCODE_440 from ppc476 cpu selection bits. - -2017-04-09 Pip Cet - - * wasm32-dis.c (print_insn_wasm32): Avoid DECIMAL_DIG, specify - appropriate floating-point precision directly. - -2017-04-07 Alan Modra - - * ppc-opc.c (powerpc_opcodes ): Enable E6500 only - vector instructions with E6500 not PPCVEC2. - -2017-04-06 Pip Cet - - * Makefile.am: Add wasm32-dis.c. - * configure.ac: Add wasm32-dis.c to wasm32 target. - * disassemble.c: Add wasm32 disassembler code. - * wasm32-dis.c: New file. - * Makefile.in: Regenerate. - * configure: Regenerate. - * po/POTFILES.in: Regenerate. - * po/opcodes.pot: Regenerate. - -2017-04-05 Pedro Alves - - * arc-dis.c (parse_option, parse_disassembler_options): Constify. - * arm-dis.c (parse_arm_disassembler_options): Constify. - * ppc-dis.c (powerpc_init_dialect): Constify local. - * vax-dis.c (parse_disassembler_options): Constify. - -2017-04-03 Palmer Dabbelt - - * riscv-dis.c (riscv_disassemble_insn): Change "_gp" to - RISCV_GP_SYMBOL. - -2017-03-30 Pip Cet - - * configure.ac: Add (empty) bfd_wasm32_arch target. - * configure: Regenerate - * po/opcodes.pot: Regenerate. - -2017-03-29 Sheldon Lobo - - Add support for missing SPARC ASIs from UA2005, UA2007, OSA2011, & - OSA2015. - * opcodes/sparc-opc.c (asi_table): New ASIs. - -2017-03-29 Alan Modra - - * ppc-dis.c (ppc_opts): Set PPC_OPCODE_PPC for "any" flags. Add - "raw" option. - (lookup_powerpc): Don't special case -1 dialect. Handle - PPC_OPCODE_RAW. - (print_insn_powerpc): Mask out PPC_OPCODE_ANY on first - lookup_powerpc call, pass it on second. - -2017-03-27 Alan Modra - - PR 21303 - * ppc-dis.c (struct ppc_mopt): Comment. - (ppc_opts ): Move PPC_OPCODE_VLE from .sticky to .cpu. - -2017-03-27 Rinat Zelig - - * arc-nps400-tbl.h: Add Ultra Ip and Miscellaneous instructions format. - * arc-opc.c: Add defines. e.g. F_NJ, F_NM , F_NO_T, F_NPS_SR, - F_NPS_M, F_NPS_CORE, F_NPS_ALL. - (insert_nps_misc_imm_offset): New function. - (extract_nps_misc imm_offset): New function. - (arc_num_flag_operands): Add F_NJ, F_NM, F_NO_T. - (arc_flag_special_cases): Add F_NJ, F_NM, F_NO_T. - -2017-03-21 Andreas Krebbel - - * s390-mkopc.c (main): Remove vx2 check. - * s390-opc.txt: Remove vx2 instruction flags. - -2017-03-21 Rinat Zelig - - * arc-nps400-tbl.h: Add cp32/cp16 instructions format. - * arc-opc.c: Add F_NPS_NA, NPS_DMA_IMM_ENTRY, NPS_DMA_IMM_OFFSET. - (insert_nps_imm_offset): New function. - (extract_nps_imm_offset): New function. - (insert_nps_imm_entry): New function. - (extract_nps_imm_entry): New function. - -2017-03-17 Alan Modra - - PR 21248 - * ppc-opc.c (powerpc_opcodes): Enable mfivor32, mfivor33, - mtivor32, and mtivor33 for e6500. Move mfibatl and mfibatu after - those spr mnemonics they alias. Similarly for mtibatl, mtibatu. - -2017-03-14 Kito Cheng - - * riscv-opc.c (riscv_opcodes> : Use the 'o' immediate encoding. - : Likewise. - Likewise. - -2017-03-14 Kito Cheng - - * riscv-opc.c (riscv_opcodes) : Use match_opcode. - -2017-03-13 Andrew Waterman - - * riscv-opc.c (riscv_opcodes) : Use match_opcode. - Likewise. - Likewise. - Likewise. - -2017-03-09 H.J. Lu - - * i386-gen.c (opcode_modifiers): Replace S with Load. - * i386-opc.h (S): Removed. - (Load): New. - (i386_opcode_modifier): Replace s with load. - * i386-opc.tbl: Add {disp8}, {disp32}, {swap}, {vex2}, {vex3} - and {evex}. Replace S with Load. - * i386-tbl.h: Regenerated. - -2017-03-09 H.J. Lu - - * i386-opc.tbl: Use CpuCET on rdsspq. - * i386-tbl.h: Regenerated. - -2017-03-08 Peter Bergner - - * ppc-dis.c (ppc_opts) : Do not use PPC_OPCODE_ALTIVEC2; - : Do not use PPC_OPCODE_VSX3; - -2017-03-08 Peter Bergner - - * ppc-opc.c (powerpc_opcodes) : New extended mnemonic. - -2017-03-06 H.J. Lu - - * i386-dis.c (REG_0F1E_MOD_3): New enum. - (MOD_0F1E_PREFIX_1): Likewise. - (MOD_0F38F5_PREFIX_2): Likewise. - (MOD_0F38F6_PREFIX_0): Likewise. - (RM_0F1E_MOD_3_REG_7): Likewise. - (PREFIX_MOD_0_0F01_REG_5): Likewise. - (PREFIX_MOD_3_0F01_REG_5_RM_1): Likewise. - (PREFIX_MOD_3_0F01_REG_5_RM_2): Likewise. - (PREFIX_0F1E): Likewise. - (PREFIX_MOD_0_0FAE_REG_5): Likewise. - (PREFIX_0F38F5): Likewise. - (dis386_twobyte): Use PREFIX_0F1E. - (reg_table): Add REG_0F1E_MOD_3. - (prefix_table): Add PREFIX_MOD_0_0F01_REG_5, - PREFIX_MOD_3_0F01_REG_5_RM_1, PREFIX_MOD_3_0F01_REG_5_RM_2, - PREFIX_0F1E, PREFIX_MOD_0_0FAE_REG_5 and PREFIX_0F38F5. Update - PREFIX_0FAE_REG_6 and PREFIX_0F38F6. - (three_byte_table): Use PREFIX_0F38F5. - (mod_table): Use PREFIX_MOD_0_0F01_REG_5, PREFIX_MOD_0_0FAE_REG_5. - Add MOD_0F1E_PREFIX_1, MOD_0F38F5_PREFIX_2, MOD_0F38F6_PREFIX_0. - (rm_table): Add MOD_0F38F5_PREFIX_2, MOD_0F38F6_PREFIX_0, - RM_0F1E_MOD_3_REG_7. Use PREFIX_MOD_3_0F01_REG_5_RM_1 and - PREFIX_MOD_3_0F01_REG_5_RM_2. - * i386-gen.c (cpu_flag_init): Add CPU_CET_FLAGS. - (cpu_flags): Add CpuCET. - * i386-opc.h (CpuCET): New enum. - (CpuUnused): Commented out. - (i386_cpu_flags): Add cpucet. - * i386-opc.tbl: Add Intel CET instructions. - * i386-init.h: Regenerated. - * i386-tbl.h: Likewise. - -2017-03-06 Alan Modra - - PR 21124 - * ppc-opc.c (extract_esync, extract_ls, extract_ral, extract_ram) - (extract_raq, extract_ras, extract_rbx): New functions. - (powerpc_operands): Use opposite corresponding insert function. - (Q_MASK): Define. - (powerpc_opcodes): Apply Q_MASK to all quad insns with even - register restriction. - -2017-02-28 Peter Bergner - - * disassemble.c Include "safe-ctype.h". - (disassemble_init_for_target): Handle s390 init. - (remove_whitespace_and_extra_commas): New function. - (disassembler_options_cmp): Likewise. - * arm-dis.c: Include "libiberty.h". - (NUM_ELEM): Delete. - (regnames): Use long disassembler style names. - Add force-thumb and no-force-thumb options. - (NUM_ARM_REGNAMES): Rename from this... - (NUM_ARM_OPTIONS): ...to this. Use ARRAY_SIZE. - (get_arm_regname_num_options): Delete. - (set_arm_regname_option): Likewise. - (get_arm_regnames): Likewise. - (parse_disassembler_options): Likewise. - (parse_arm_disassembler_option): Rename from this... - (parse_arm_disassembler_options): ...to this. Make static. - Use new FOR_EACH_DISASSEMBLER_OPTION macro to scan over options. - (print_insn): Use parse_arm_disassembler_options. - (disassembler_options_arm): New function. - (print_arm_disassembler_options): Handle updated regnames. - * ppc-dis.c: Include "libiberty.h". - (ppc_opts): Add "32" and "64" entries. - (ppc_parse_cpu): Use ARRAY_SIZE and disassembler_options_cmp. - (powerpc_init_dialect): Add break to switch statement. - Use new FOR_EACH_DISASSEMBLER_OPTION macro. - (disassembler_options_powerpc): New function. - (print_ppc_disassembler_options): Use ARRAY_SIZE. - Remove printing of "32" and "64". - * s390-dis.c: Include "libiberty.h". - (init_flag): Remove unneeded variable. - (struct s390_options_t): New structure type. - (options): New structure. - (init_disasm): Rename from this... - (disassemble_init_s390): ...to this. Add initializations for - current_arch_mask and option_use_insn_len_bits_p. Remove init_flag. - (print_insn_s390): Delete call to init_disasm. - (disassembler_options_s390): New function. - (print_s390_disassembler_options): Print using information from - struct 'options'. - * po/opcodes.pot: Regenerate. - -2017-02-28 Jan Beulich - - * i386-dis.c (PCMPESTR_Fixup): New. - (VEX_W_0F3A60_P_2, VEX_W_0F3A61_P_2): Delete. - (prefix_table): Use PCMPESTR_Fixup. - (vex_len_table): Make VPCMPESTR{I,M} entries leaf ones and use - PCMPESTR_Fixup. - (vex_w_table): Delete VPCMPESTR{I,M} entries. - * i386-opc.tbl (pcmpestri, pcmpestrm, vpcmpestri, vpcmpestrm): - Split 64-bit and non-64-bit variants. - * opcodes/i386-tbl.h: Re-generate. - -2017-02-24 Richard Sandiford - - * aarch64-tbl.h (OP_SVE_HMH, OP_SVE_VMU_HSD, OP_SVE_VMVU_HSD) - (OP_SVE_VMVV_HSD, OP_SVE_VMVVU_HSD, OP_SVE_VM_HSD, OP_SVE_VUVV_HSD) - (OP_SVE_VUV_HSD, OP_SVE_VU_HSD, OP_SVE_VVVU_H, OP_SVE_VVVU_S) - (OP_SVE_VVVU_HSD, OP_SVE_VVV_D, OP_SVE_VVV_D_H, OP_SVE_VVV_H) - (OP_SVE_VVV_HSD, OP_SVE_VVV_S, OP_SVE_VVV_S_B, OP_SVE_VVV_SD_BH) - (OP_SVE_VV_BHSDQ, OP_SVE_VV_HSD, OP_SVE_VZVV_HSD, OP_SVE_VZV_HSD) - (OP_SVE_V_HSD): New macros. - (OP_SVE_VMU_SD, OP_SVE_VMVU_SD, OP_SVE_VM_SD, OP_SVE_VUVV_SD) - (OP_SVE_VU_SD, OP_SVE_VVVU_SD, OP_SVE_VVV_SD, OP_SVE_VZVV_SD) - (OP_SVE_VZV_SD, OP_SVE_V_SD): Delete. - (aarch64_opcode_table): Add new SVE instructions. - (aarch64_opcode_table): Use imm_rotate{1,2} instead of imm_rotate - for rotation operands. Add new SVE operands. - * aarch64-asm.h (ins_sve_addr_ri_s4): New inserter. - (ins_sve_quad_index): Likewise. - (ins_imm_rotate): Split into... - (ins_imm_rotate1, ins_imm_rotate2): ...these two inserters. - * aarch64-asm.c (aarch64_ins_imm_rotate): Split into... - (aarch64_ins_imm_rotate1, aarch64_ins_imm_rotate2): ...these two - functions. - (aarch64_ins_sve_addr_ri_s4): New function. - (aarch64_ins_sve_quad_index): Likewise. - (do_misc_encoding): Handle "MOV Zn.Q, Qm". - * aarch64-asm-2.c: Regenerate. - * aarch64-dis.h (ext_sve_addr_ri_s4): New extractor. - (ext_sve_quad_index): Likewise. - (ext_imm_rotate): Split into... - (ext_imm_rotate1, ext_imm_rotate2): ...these two extractors. - * aarch64-dis.c (aarch64_ext_imm_rotate): Split into... - (aarch64_ext_imm_rotate1, aarch64_ext_imm_rotate2): ...these two - functions. - (aarch64_ext_sve_addr_ri_s4): New function. - (aarch64_ext_sve_quad_index): Likewise. - (aarch64_ext_sve_index): Allow quad indices. - (do_misc_decoding): Likewise. - * aarch64-dis-2.c: Regenerate. - * aarch64-opc.h (FLD_SVE_i3h, FLD_SVE_rot1, FLD_SVE_rot2): New - aarch64_field_kinds. - (OPD_F_OD_MASK): Widen by one bit. - (OPD_F_NO_ZR): Bump accordingly. - (get_operand_field_width): New function. - * aarch64-opc.c (fields): Add new SVE fields. - (operand_general_constraint_met_p): Handle new SVE operands. - (aarch64_print_operand): Likewise. - * aarch64-opc-2.c: Regenerate. - -2017-02-24 Richard Sandiford - - * aarch64-tbl.h (aarch64_feature_simd_v8_3): Replace with... - (aarch64_feature_compnum): ...this. - (SIMD_V8_3): Replace with... - (COMPNUM): ...this. - (CNUM_INSN): New macro. - (aarch64_opcode_table): Use it for the complex number instructions. - -2017-02-24 Jan Beulich - - * i386-dis.c (reg_table): REG_F6/1 and REG_F7/1 decode as TEST. - -2017-02-23 Sheldon Lobo - - Add support for associating SPARC ASIs with an architecture level. - * include/opcode/sparc.h (sparc_asi): New sparc_asi struct. - * opcodes/sparc-opc.c (asi_table): Updated asi_table and encoding/ - decoding of SPARC ASIs. - -2017-02-23 Jan Beulich - - * i386-dis.c (get_valid_dis386): Don't special case VEX opcode - 82. For 3-byte VEX only special case opcode 77 in VEX_0F space. - -2017-02-21 Jan Beulich - - * aarch64-asm.c (convert_bfc_to_bfm): Copy operand 0 to operand - 1 (instead of to itself). Correct typo. - -2017-02-14 Andrew Waterman - - * riscv-opc.c (riscv_opcodes): Add sfence.vma instruction and - pseudoinstructions. - -2017-02-15 Richard Sandiford - - * aarch64-opc.c (aarch64_sys_regs): Add SVE registers. - (aarch64_sys_reg_supported_p): Handle them. - -2017-02-15 Claudiu Zissulescu - - * arc-opc.c (UIMM6_20R): Define. - (SIMM12_20): Use above. - (SIMM12_20R): Define. - (SIMM3_5_S): Use above. - (UIMM7_A32_11R_S): Define. - (UIMM7_9_S): Use above. - (UIMM3_13R_S): Define. - (SIMM11_A32_7_S): Use above. - (SIMM9_8R): Define. - (UIMM10_A32_8_S): Use above. - (UIMM8_8R_S): Define. - (W6): Use above. - (arc_relax_opcodes): Use all above defines. - -2017-02-15 Vineet Gupta - - * arc-regs.h: Distinguish some of the registers different on - ARC700 and HS38 cpus. - -2017-02-14 Alan Modra - - PR 21118 - * ppc-opc.c (powerpc_operands): Flag SPR, SPRG and TBR entries - with PPC_OPERAND_SPR. Flag PSQ and PSQM with PPC_OPERAND_GQR. - -2017-02-11 Stafford Horne - Alan Modra - - * cgen-opc.c (cgen_lookup_insn): Delete buf and base_insn temps. - Use insn_bytes_value and insn_int_value directly instead. Don't - free allocated memory until function exit. - -2017-02-10 Nicholas Piggin - - * ppc-opc.c (powerpc_opcodes) : New mnemonics. - -2017-02-03 Nick Clifton - - PR 21096 - * aarch64-opc.c (print_register_list): Ensure that the register - list index will fir into the tb buffer. - (print_register_offset_address): Likewise. - * tic6x-dis.c (print_insn_tic6x): Increase size of func_unit_buf. - -2017-01-27 Alexis Deruell - - PR 21056 - * tic6x-dis.c (print_insn_tic6x): Correct displaying of parallel - instructions when the previous fetch packet ends with a 32-bit - instruction. - -2017-01-24 Dimitar Dimitrov - - * pru-opc.c: Remove vague reference to a future GDB port. - -2017-01-20 Nick Clifton - - * po/ga.po: Updated Irish translation. - -2017-01-18 Szabolcs Nagy - - * arm-dis.c (coprocessor_opcodes): Fix vcmla mask and disassembly. - -2017-01-13 Yao Qi - - * m68k-dis.c (match_insn_m68k): Extend comments. Return -1 - if FETCH_DATA returns 0. - (m68k_scan_mask): Likewise. - (print_insn_m68k): Update code to handle -1 return value. - -2017-01-13 Yao Qi - - * m68k-dis.c (enum print_insn_arg_error): New. - (NEXTBYTE): Replace -3 with - PRINT_INSN_ARG_MEMORY_ERROR. - (NEXTULONG): Likewise. - (NEXTSINGLE): Likewise. - (NEXTDOUBLE): Likewise. - (NEXTDOUBLE): Likewise. - (NEXTPACKED): Likewise. - (FETCH_ARG): Likewise. - (FETCH_DATA): Update comments. - (print_insn_arg): Update comments. Replace magic numbers with - enum. - (match_insn_m68k): Likewise. - -2017-01-12 Igor Tsimbalist - - * i386-dis.c (enum): Add PREFIX_EVEX_0F3855, EVEX_W_0F3855_P_2. - * i386-dis-evex.h (evex_table): Updated. - * i386-gen.c (cpu_flag_init): Add CPU_AVX512_VPOPCNTDQ_FLAGS, - CPU_ANY_AVX512_VPOPCNTDQ_FLAGS. Update CPU_ANY_AVX512F_FLAGS. - (cpu_flags): Add CpuAVX512_VPOPCNTDQ. - * i386-opc.h (enum): (AVX512_VPOPCNTDQ): New. - (i386_cpu_flags): Add cpuavx512_vpopcntdq. - * i386-opc.tbl: Add Intel AVX512_VPOPCNTDQ instructions. - * i386-init.h: Regenerate. - * i386-tbl.h: Ditto. - -2017-01-12 Yao Qi - - * msp430-dis.c (msp430_singleoperand): Return -1 if - msp430dis_opcode_signed returns false. - (msp430_doubleoperand): Likewise. - (msp430_branchinstr): Return -1 if - msp430dis_opcode_unsigned returns false. - (msp430x_calla_instr): Likewise. - (print_insn_msp430): Likewise. - -2017-01-05 Nick Clifton - - PR 20946 - * frv-desc.c (lookup_mach_via_bfd_name): Return NULL if the name - could not be matched. - (frv_cgen_cpu_open): Allow for lookup_mach_via_bfd_name returning - NULL. - -2017-01-04 Szabolcs Nagy - - * aarch64-tbl.h (RCPC, RCPC_INSN): Define. - (aarch64_opcode_table): Use RCPC_INSN. - -2017-01-03 Kito Cheng - - * riscv-opc.c (riscv-opcodes): Add support for the "q" ISA - extension. - * riscv-opcodes/all-opcodes: Likewise. - -2017-01-03 Dilyan Palauzov - - * riscv-dis.c (print_insn_args): Add fall through comment. - -2017-01-03 Nick Clifton - - * po/sr.po: New Serbian translation. - * configure.ac (ALL_LINGUAS): Add sr. - * configure: Regenerate. - -2017-01-02 Alan Modra - - * epiphany-desc.h: Regenerate. - * epiphany-opc.h: Regenerate. - * fr30-desc.h: Regenerate. - * fr30-opc.h: Regenerate. - * frv-desc.h: Regenerate. - * frv-opc.h: Regenerate. - * ip2k-desc.h: Regenerate. - * ip2k-opc.h: Regenerate. - * iq2000-desc.h: Regenerate. - * iq2000-opc.h: Regenerate. - * lm32-desc.h: Regenerate. - * lm32-opc.h: Regenerate. - * m32c-desc.h: Regenerate. - * m32c-opc.h: Regenerate. - * m32r-desc.h: Regenerate. - * m32r-opc.h: Regenerate. - * mep-desc.h: Regenerate. - * mep-opc.h: Regenerate. - * mt-desc.h: Regenerate. - * mt-opc.h: Regenerate. - * or1k-desc.h: Regenerate. - * or1k-opc.h: Regenerate. - * xc16x-desc.h: Regenerate. - * xc16x-opc.h: Regenerate. - * xstormy16-desc.h: Regenerate. - * xstormy16-opc.h: Regenerate. - -2017-01-02 Alan Modra - - Update year range in copyright notice of all files. - -For older changes see ChangeLog-2016 +For older changes see ChangeLog-2017 -Copyright (C) 2017 Free Software Foundation, Inc. +Copyright (C) 2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/opcodes/ChangeLog-2017 b/opcodes/ChangeLog-2017 new file mode 100644 index 00000000000..c7994e307f8 --- /dev/null +++ b/opcodes/ChangeLog-2017 @@ -0,0 +1,1977 @@ +2017-12-20 Jim Wilson + + * riscv-opc.c (match_c_add_with_hint, match_c_lui_with_hint): New. + (riscv_opcodes)
  • : Delete "d,0" line. Change Cj to Co. + : Change Cj to Co. + : Add explanatory comment for 4-operand add instruction. + : Add support for immediate operand. + : Use match_c_add_with_hint instead of match_c_add. + : Use match_c_lui_with_hint instead of match_c_lui. + : Use match_opcode instead of match_rd_nonzero. + +2017-12-19 Tamar Christina + + PR gas/22559 + * aarch64-asm.c (aarch64_ins_reglane): Change AARCH64_OPND_QLF_S_B to + AARCH64_OPND_QLF_S_4B + * aarch64-dis.c (aarch64_ext_reglane): Change AARCH64_OPND_QLF_S_B to + AARCH64_OPND_QLF_S_4B + * aarch64-opc.c (aarch64_opnd_qualifiers): Add 4b variant. + * aarch64-tbl.h (QL_V2DOT): Change S_B to S_4B. + +2017-12-19 Tamar Christina + + PR gas/22529 + * aarch64-opc.c (aarch64_opnd_qualifiers): Add 4b variant. + +2017-12-18 Jan Beulich + + * i386-gen.c (operand_type_init): Delete OPERAND_TYPE_REGYMM and + OPERAND_TYPE_REGZMM entries. + * i386-opc.h (enum of opcode modifiers): Extend comment. + i386-opc.tbl (vaddpd, vaddps, vaddsubpd, vaddsubps, vandnpd, + vandnps, vandpd, vandps, vblendpd, vblendps, vblendvpd, + vblendvps, vbroadcastss, vcmpeq_ospd, vcmpeq_osps, vcmpeqpd, + vcmpeqps, vcmpeq_uqpd, vcmpeq_uqps, vcmpeq_uspd, vcmpeq_usps, + vcmpfalse_ospd, vcmpfalse_osps, vcmpfalsepd, vcmpfalseps, + vcmpge_oqpd, vcmpge_oqps, vcmpgepd, vcmpgeps, vcmpgt_oqpd, + vcmpgt_oqps, vcmpgtpd, vcmpgtps, vcmple_oqpd, vcmple_oqps, + vcmplepd, vcmpleps, vcmplt_oqpd, vcmplt_oqps, vcmpltpd, + vcmpltps, vcmpneq_oqpd, vcmpneq_oqps, vcmpneq_ospd, + vcmpneq_osps, vcmpneqpd, vcmpneqps, vcmpneq_uspd, vcmpneq_usps, + vcmpngepd, vcmpngeps, vcmpnge_uqpd, vcmpnge_uqps, vcmpngtpd, + vcmpngtps, vcmpngt_uqpd, vcmpngt_uqps, vcmpnlepd, vcmpnleps, + vcmpnle_uqpd, vcmpnle_uqps, vcmpnltpd, vcmpnltps, vcmpnlt_uqpd, + vcmpnlt_uqps, vcmpordpd, vcmpordps, vcmpord_spd, vcmpord_sps, + vcmppd, vcmpps, vcmptruepd, vcmptrueps, vcmptrue_uspd, + vcmptrue_usps, vcmpunordpd, vcmpunordps, vcmpunord_spd, + vcmpunord_sps, vcvtdq2ps, vcvtpd2dq, vcvtpd2ps, vcvtps2dq, + vcvttpd2dq, vcvttps2dq, vdivpd, vdivps, vdpps, vhaddpd, vhaddps, + vhsubpd, vhsubps, vlddqu, vmaskmovpd, vmaskmovps, vmaxpd, + vmaxps, vminpd, vminps, vmovapd, vmovaps, vmovdqa, vmovdqu, + vmovmskpd, vmovmskps, vmovntdq, vmovntpd, vmovntps, vmovshdup, + vmovsldup, vmovupd, vmovups, vmulpd, vmulps, vorpd, vorps, + vpermilpd, vpermilps, vptest, vrcpps, vroundpd, vroundps, + vrsqrtps, vshufpd, vshufps, vsqrtpd, vsqrtps, vsubpd, vsubps, + vtestpd, vtestps, vunpckhpd, vunpckhps, vunpcklpd, vunpcklps, + vxorpd, vxorps, vpblendd, vpbroadcastb, vpbroadcastd, + vpbroadcastw, vpbroadcastq, vpmaskmovd, vpmaskmovq, vpsllvd, + vpsllvq, vpsravd, vpsravq, vpsrlvd, vpsrlvq): Fold 128- and + 256-bit forms. Use CheckRegSize instead of IgnoreSize where + appropriate. Drop Xmmword and Ymmword from the results where + possible. + * i386-tbl.h: Re-generate. + +2017-12-18 Jan Beulich + + * i386-gen.c (operand_type_shorthands): Add RegXMM, RegYMM, and + RegZMM. + (opcode_modifiers): Drop FirstXmm0. + (operand_types): Replace RegXMM, RegYMM, and RegZMM with just + RegSIMD. + * i386-opc.h (enum of opcode modifiers): Drop FirstXmm0. + (struct i386_opcode_modifier): Drop firstxmm0. + (enum of operand types): Replace RegXMM, RegYMM, and RegZMM with + just RegSIMD. Extend comment. + (union i386_operand_type): Replace regxmm, regymm, and regzmm + with just regsimd. + * i386-opc.tbl (blendvpd, blendvps, pblendvb, sha256rnds2): Use + Acc|Xmmword. + * i386-reg.tbl (xmm0): Add Acc. + * i386-init.h, i386-tbl.h: Re-generate. + +2017-12-18 Jan Beulich + + * i386-gen.c (operand_type_shorthands): Add FloatAcc and + FloatReg. + (operand_types): Drop FloatAcc and FloatReg. + * i386-opc.h (enum of operand types): Likewise. Extend comment. + (union i386_operand_type): Drop floatacc and floatreg. + * i386-reg.tbl (st, st(0)): Replace FloatAcc by Acc. + * i386-init.h, i386-tbl.h: Re-generate. + +2017-12-18 Jan Beulich + + * i386-gen.c (operand_type_shorthands): New. + (opcode_modifiers): Replace Reg with just Reg. + (set_bitfield_from_cpu_flag_init): Rename to + set_bitfield_from_shorthand. Drop value parameter. Process + operand_type_shorthands. + (set_bitfield): Adjust call accordingly. + * i386-opc.h (enum of operand types): Replace Reg with just + Reg. + (union i386_operand_type): Replace reg with just reg. + * i386-opc.tbl (extractps, pextrb, pextrw, pinsrb, pinsrw, + vextractps, vpextrb, vpextrw, vpinsrb, vpinsrw): Split into + separate register and memory forms. + * i386-reg.tbl (al): Drop Byte. + (ax): Drop Word. + (eax): Drop Dword. + (rax): Drop Qword. + * i386-init.h, i386-tbl.h: Re-generate. + +2017-12-15 Dimitar Dimitrov + + * disassemble.c (disassemble_init_for_target): Don't put PRU + between powerpc and rs6000 cases. + +2017-12-15 Jan Beulich + + * i386-opc.tbl (adc, add, and, cmp, cmps, in, ins, lods, mov, + movabs, movq, movs, or, out, outs, ptwrite, rcl, rcr, rol, ror, + sal, sar, sbb, scas, scmp, shl, shr, slod, smov, ssca, ssto, + stos, sub, test, xor): Drop CheckRegSize from variants not + allowing for two (or more) register operands. + * i386-tbl.h: Re-generate. + +2017-12-13 Jim Wilson + + PR 22599 + * riscv-opc.c (riscv_opcodes) : New. + +2017-12-13 Dimitar Dimitrov + + * disassemble.c: Enable disassembler_needs_relocs for PRU. + +2017-12-11 Petr Pavlu + Renlin Li + + * aarch64-dis.c (print_insn_aarch64): Move symbol section check ... + (get_sym_code_type): Here. + +2017-12-03 Alan Modra + + * ppc-opc.c (extract_li20): Rewrite. + +2017-12-01 Peter Bergner + + * opcodes/ppc-dis.c (disassemble_init_powerpc): Fix white space. + (operand_value_powerpc): Update return and argument type. + : Update type. + (skip_optional_operands): Update argument type. + (lookup_powerpc): Likewise. + (lookup_vle): Likewise. + : Update type. + (lookup_spe2): Update argument type. + : Update type. + (print_insn_powerpc) : Update type. + Use PPC_INT_FMT for printing instructions and operands. + * opcodes/ppc-opc.c (insert_arx, extract_arx, insert_ary, extract_ary, + insert_rx, extract_rx, insert_ry, extract_ry, insert_bat, extract_bat, + insert_bba, extract_bba, insert_bdm, extract_bdm, insert_bdp, + extract_bdp, valid_bo_pre_v2, valid_bo_post_v2, valid_bo, insert_bo, + extract_bo, insert_boe, extract_boe, insert_dcmxs, extract_dcmxs, + insert_dxd, extract_dxd, insert_dxdn, extract_dxdn, insert_fxm, + extract_fxm, insert_li20, extract_li20, insert_ls, extract_ls, + insert_esync, extract_esync, insert_mbe, extract_mbe, insert_mb6, + extract_mb6, extract_nb, insert_nbi, insert_nsi, extract_nsi, + insert_ral, extract_ral, insert_ram, extract_ram, insert_raq, + extract_raq, insert_ras, extract_ras, insert_rbs, extract_rbs, + insert_rbx, extract_rbx, insert_sci8, extract_sci8, insert_sci8n, + extract_sci8n, insert_sd4h, extract_sd4h, insert_sd4w, extract_sd4w, + insert_oimm, extract_oimm, insert_sh6, extract_sh6, insert_spr, + extract_spr, insert_sprg, extract_sprg, insert_tbr, extract_tbr, + insert_xt6, extract_xt6, insert_xtq6, extract_xtq6, insert_xa6, + extract_xa6, insert_xb6, extract_xb6, insert_xb6s, extract_xb6s, + insert_xc6, extract_xc6, insert_dm, extract_dm, insert_vlesi, + extract_vlesi, insert_vlensi, extract_vlensi, insert_vleui, + extract_vleui, insert_vleil, extract_vleil, insert_evuimm1_ex0, + extract_evuimm1_ex0, insert_evuimm2_ex0, extract_evuimm2_ex0, + insert_evuimm4_ex0, extract_evuimm4_ex0, insert_evuimm8_ex0, + extract_evuimm8_ex0, insert_evuimm_lt8, extract_evuimm_lt8, + insert_evuimm_lt16, extract_evuimm_lt16, insert_rD_rS_even, + extract_rD_rS_even, insert_off_lsp, extract_off_lsp, insert_off_spe2, + extract_off_spe2, insert_Ddd, extract_Ddd): Update types. + (OP, OPTO, OPL, OPVUP, OPVUPRT, A, AFRALFRC_MASK, B, BD8, BD8IO, BD15, + BD24, BBO, Y_MASK , AT1_MASK, AT2_MASK, BBOCB, C_LK, C, CTX, UCTX, + DX, EVSEL, IA16, I16A, I16L, IM7, LI20, MME, MD, MDS, SC, SC_MASK, + SCI8, SCI8BF, SD4, SE_IM5, SE_R, SE_RR, VX, VX_LSP, VX_RA_CONST, + VX_RB_CONST, VX_SPE_CRFD, VX_SPE2_CLR, VX_SPE2_SPLATB, VX_SPE2_OCTET, + VX_SPE2_DDHH, VX_SPE2_HH, VX_SPE2_EVMAR, VX_SPE2_EVMAR_MASK, VXA, + VXR, VXASH, X, EX, XX2, XX3, XX3RC, XX4, Z, XWRA_MASK, XLRT_MASK, + XRLARB_MASK, XLRAND_MASK, XRTLRA_MASK, XRTLRARB_MASK, XRTARARB_MASK, + XRTBFRARB_MASK, XOPL, XOPL2, XRCL, XRT, XRTRA, XCMP_MASK, XCMPL_MASK, + XTO, XTLB, XSYNC, XEH_MASK, XDSS, XFL, XISEL, XL, XLO, XLYLK, XLOCB, + XMBAR, XO, XOPS, XS, XFXM, XSPR, XUC, XW, APU): Update types in casts. + +2017-11-29 Jan Beulich + + * i386-gen.c (active_cpu_flags, active_isstring, enum stage): + New. + (output_cpu_flags): Update active_cpu_flags. + (process_i386_opcode_modifier): Update active_isstring. + (output_operand_type): Rename "macro" parameter to "stage", + changing its type. + (process_i386_operand_type): Likewise. Track presence of + BaseIndex and emit DispN accordingly. + (output_i386_opcode, process_i386_registers, + process_i386_initializers): Adjust calls to + process_i386_operand_type() for its changed parameter type. + * i386-opc.tbl: Drop Disp8, Disp16, Disp32, and Disp32S from + all insns operands having BaseIndex set. + * i386-tbl.h: Re-generate. + +2017-11-29 Jan Beulich + + * i386-gen.c (operand_type_init): Remove OPERAND_TYPE_VEC_DISP8 + entry. + (operand_types): Remove Vec_Disp8 entry. + * i386-opc.h (Vec_Disp8): Delete. + (union i386_operand_type): Remove vec_disp8. + (i386-opc.tbl): Remove Vec_Disp8. + * i386-init.h, i386-tbl.h: Re-generate. + +2017-11-29 Stefan Stroe + + * po/Make-in (datadir): Define as @datadir@. + (localedir): Define as @localedir@. + (gnulocaledir, gettextsrcdir): Use @datarootdir@. + +2017-11-27 Nick Clifton + + * po/zh_CN.po: Updated simplified Chinese translation. + +2017-11-24 Jan Beulich + + * i386-dis.c (float_mem): Add suffixes to fi* in the "de" and + "df" groups. + +2017-11-23 Igor Tsimbalist + + * i386-opc.tbl: Add Disp8MemShift for AVX512 VAES instructions. + * i386-tbl.h: Regenerate. + +2017-11-23 Jan Beulich + + * i386-dis.c (OP_E_memory): Also shift the 8-bit immediate in + the 16-bit addressing case. + +2017-11-23 Jan Beulich + + * i386-dis.c (dis386_twobyte): Correct ud1. Add ud0. + (twobyte_has_modrm): Set flag for index 0xb9 and 0xff. + * i386-opc.tbl (ud1, ud2b): Add operands. + (ud0): New. + * i386-tbl.h: Re-generate. + +2017-11-22 Igor Tsimbalist + + * i386-opc.tbl: Remove Vec_Disp8 from vgf2p8mulb. + * i386-tbl.h: Regenerate. + +2017-11-22 Igor Tsimbalist + + * i386-opc.tbl: Remove Vec_Disp8 from vpcompressb and vpexpandb. + * i386-tbl.h: Regenerate. + +2017-11-22 Claudiu Zissulescu + + *arc-opc (insert_rhv2): Check h-regs range. + +2017-11-21 Claudiu Zissulescu + + * arc-dis.c (print_insn_arc): Pretty print pc-relative offsets. + * arc-opc.c (SIMM21_A16_5): Make it pc-relative. + +2017-11-16 Tamar Christina + + * aarch64-tbl.h (aarch64_feature_fp_16_v8_2): Require AARCH64_FEATURE_F16_FML + and AARCH64_FEATURE_F16. + +2017-11-16 Tamar Christina + + * aarch64-tbl.h (sha512h, sha512h2, sha512su0, sha512su1, eor3): New. + (rax1, xar, bcax, sm3ss1, sm3tt1a, sm3tt1b, sm3tt2a, sm3tt2b): New. + (sm3partw1, sm3partw2, sm4e, sm4ekey, fmlal, fmlsl): New. + (fmlal2, fmlsl2, cfinv, rmif, setf8, setf16, stlurb): New. + (ldapurb, ldapursb, stlurh, ldapurh, ldapursh, stlur): New. + (ldapur, ldapursw, stlur): New. + * aarch64-dis-2.c: Regenerate. + +2017-11-16 Jan Beulich + + (get_valid_dis386): Never flag bad opcode when + vex.register_specifier is beyond 7. Always store all four + bits of it. Move 16-/32-bit override in EVEX handling after + all to be overridden bits have been set. + (OP_VEX): Mask vex.register_specifier outside of 64-bit mode. + Use rex to determine GPR register set. + (OP_EX_VexReg, OP_Vex_2src_1, OP_Vex_2src_2, OP_REG_VexI4, + OP_LWP_E): Mask vex.register_specifier outside of 64-bit mode. + +2017-11-15 Jan Beulich + + * i386-dis.c (OP_VEX, OP_LWPCB_E, OP_LWP_E): Use rex to + determine GPR register set. + +2017-11-15 Jan Beulich + + * i386-dis.c (VEXI4_Fixup, VexI4): Delete. + (prefix_table, xop_table, vex_len_table): Remove VexI4 uses. + (OP_EX_VexW): Move setting of vex_w_done. Update codep on 2nd + pass. + (OP_REG_VexI4): Drop low 4 bits check. + +2017-11-15 Jan Beulich + + * i386-reg.tbl (axl): Remove Acc and Byte. + * i386-tbl.h: Re-generate. + +2017-11-14 Jan Beulich + + * i386-dis.c (VPCOM_Fixup, VPCOM, xop_cmp_op): New. + (vex_len_table): Use VPCOM. + +2017-11-14 Jan Beulich + + * i386-dis-evex.h (evex_table[EVEX_W_0F3A3E_P_2]): Use VPCMP. + (evex_table[EVEX_W_0F3A3F_P_2]): Likewise. + * i386-opc.tbl (vpcmpeqb, vpcmpgtb, vpcmpeqw, vpcmpgtw, vpcmpuw, + vpcmpw): Move up. + (vpcmpeqb, vpcmpleb, vpcmpltb, vpcmpneqb, vpcmpnleb, vpcmpnltb, + vpcmpequb, vpcmpleub, vpcmpltub, vpcmpnequb, vpcmpnleub, + vpcmpnltub, vpcmpeqw, vpcmplew, vpcmpltw, vpcmpneqw, vpcmpnlew, + vpcmpnltw, vpcmpequw, vpcmpleuw, vpcmpltuw, vpcmpnequw, vpcmpnleuw, + vpcmpnltuw): New. + * i386-tbl.h: Re-generate. + +2017-11-14 Jan Beulich + + * i386-opc.tbl (cmps, ins, lods, movs, outs, scas, scmp, slod, + smov, ssca, stos, ssto, xlat): Drop Disp*. + * i386-tbl.h: Re-generate. + +2017-11-13 Jan Beulich + + * i386-opc.tbl (fxsave64, fxrstor64, xsave64, xrstor64, + xsaveopt64): Add No_qSuf. + * i386-tbl.h: Re-generate. + +2017-11-09 Tamar Christina + + * aarch64-opc.c (aarch64_sys_regs): Add ARMv8.4-a registers; + dit, vstcr_el2, vsttbr_el2, cnthvs_tval_el2, cnthvs_cval_el2, + cnthvs_ctl_el2, cnthps_tval_el2, cnthps_cval_el2, cnthps_ctl_el2, + sder32_el2, vncr_el2. + (aarch64_sys_reg_supported_p): Likewise. + (aarch64_pstatefields): Add dit register. + (aarch64_pstatefield_supported_p): Likewise. + (aarch64_sys_regs_tlbi): Add vmalle1os, vae1os, aside1os, vaae1os, + vale1os, vaale1os, ipas2e1os, ipas2le1os, vae2os, vale2os, vmalls12e1os, + vae3os, vale3os, alle2os, alle1os, alle3os, rvae1, rvaae1, rvale1, + rvaale1, rvae1is, rvaae1is, rvale1is, rvaale1is, rvae1os, rvaae1os, + rvale1os, rvaale1os, ripas2e1is, ripas2le1is, ripas2e1, ripas2le1, + ripas2e1os, ripas2le1os, rvae2, rvale2, rvae2is, rvale2is, rvae2os, + rvale2os, rvae3, rvale3, rvae3is, rvale3is, rvae3os, rvale3os. + +2017-11-09 Tamar Christina + + * aarch64-tbl.h (QL_SHA512UPT, QL_V2SAME2D, QL_V3SAME2D): New. + (QL_V4SAME16B, QL_V4SAME4S, QL_XAR, QL_SM3TT, QL_V3FML2S): New. + (QL_V3FML4S, QL_V2FML2S, QL_V2FML4S, QL_RMIF, QL_SETF): New. + (QL_STLW, QL_STLX): New. + +2017-11-09 Tamar Christina + + * aarch64-asm.h (ins_addr_offset): New. + * aarch64-asm.c (aarch64_ins_reglane): Add cryptosm3. + (aarch64_ins_addr_offset): New. + * aarch64-asm-2.c: Regenerate. + * aarch64-dis.h (ext_addr_offset): New. + * aarch64-dis.c (aarch64_ext_reglane): Add cryptosm3. + (aarch64_ext_addr_offset): New. + * aarch64-dis-2.c: Regenerate. + * aarch64-opc.h (aarch64_field_kind): Add FLD_imm6_2, + FLD_imm4_2 and FLD_SM3_imm2. + * aarch64-opc.c (fields): Add FLD_imm6_2, + FLD_imm4_2 and FLD_SM3_imm2. + (operand_general_constraint_met_p): Add AARCH64_OPND_ADDR_OFFSET. + (aarch64_print_operand): Add AARCH64_OPND_Va, AARCH64_OPND_SM3_IMM2, + AARCH64_OPND_MASK, AARCH64_OPND_IMM_2 and AARCH64_OPND_ADDR_OFFSET. + * aarch64-opc-2.c (Va, MASK, IMM_2, ADDR_OFFSET, SM3_IMM2): New. + * aarch64-tbl.h + (aarch64_opcode_table): Add Va, MASK, IMM_2, ADDR_OFFSET, SM3_IMM2. + +2017-11-09 Tamar Christina + + * aarch64-tbl.h + (aarch64_feature_v8_4, aarch64_feature_crypto_v8_2): New. + (aarch64_feature_sm4, aarch64_feature_sha3): New. + (aarch64_feature_fp_16_v8_2): New. + (ARMV8_4, SHA3, SM4, CRYPTO_V8_2, FP_F16_V8_2): New. + (V8_4_INSN, CRYPTO_V8_2_INSN): New. + (SHA3_INSN, SM4_INSN, FP16_V8_2_INSN): New. + +2017-11-08 Tamar Christina + + * aarch64-tbl.h (aarch64_feature_crypto): Add AES and SHA2. + (aarch64_feature_sha2, aarch64_feature_aes): New. + (SHA2, AES): New. + (AES_INSN, SHA2_INSN): New. + (pmull, pmull2, aese, aesd, aesmc, aesimc): Change to AES_INS. + (sha1h, sha1su1, sha256su0, sha1c, sha1p, + sha1m, sha1su0, sha256h, sha256h2, sha256su1): + Change to SHA2_INS. + +2017-11-08 Jiong Wang + Tamar Christina + + * arm-dis.c (coprocessor_opcodes): New entries for ARMv8.2-A new + FP16 instructions, including vfmal.f16 and vfmsl.f16. + +2017-11-07 Andrew Burgess + + * arc-nps400-tbl.h: Change incorrect use of NONE to MISC. + +2017-11-07 Alan Modra + + * opintl.h: Formatting, comment fixes. + (gettext, ngettext): Redefine when ENABLE_NLS. + (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. + (_): Define using gettext. + (textdomain, bindtextdomain): Use safer "do nothing". + +2017-11-03 Claudiu Zissulescu + + * arc-dis.c (print_hex): New variable. + (parse_option): Check for hex option. + (print_insn_arc): Use hexadecimal representation for short + immediate values when requested. + (print_arc_disassembler_options): Add hex option to the list. + +2017-11-03 Claudiu Zissulescu + + * arc-tbl.h (abss, abssh, adc, adcs, adds, aslacc, asls, aslsacc) + (asrs, asrsr, cbflyhf0r, cbflyhf1r, cmacchfr, cmacchnfr, cmachfr) + (cmachnfr, cmpychfr, cmpychnfr, cmpyhfmr, cmpyhfr, cmpyhnfr, divf) + (dmachbl, dmachbm, dmachf, dmachfr, dmacwhf, dmpyhbl, dmpyhbm) + (dmpyhf, dmpyhfr, dmpyhwf, dmpywhf, dsync, flagacc, getacc, macdf) + (macf, macfr, macwhfl, macwhflr, macwhfm, macwhfmr, macwhkl) + (macwhkul, macwhl, macwhul, mpydf, mpyf, mpyfr, mpywhfl, mpywhflr) + (mpywhfm, mpywhfmr, mpywhkl, mpywhkul, mpywhl, mpywhul, msubdf) + (msubf, msubfr, msubwhfl, msubwhflr, msubwhfm, msubwhfmr, mul64) + (negs, negsh, normacc, qmachf, qmpyh, qmpyhf, rndh, satf, sath) + (sbcs, setacc, sflag, sqrt, sqrtf, subs, swi_s, vabs2h, vabss2h) + (vadd4b, vadds2, vadds2h, vadds4h, vaddsubs, vaddsubs2h) + (vaddsubs4h, valgn2h, vasl2h, vasls2h, vasr2h, vasrs2h, vasrsr2h) + (vext2bhl, vext2bhlf, vext2bhm, vext2bhmf, vlsr2h, vmac2hf) + (vmac2hfr, vmac2hnfr, vmax2h, vmin2h, vmpy2h, vmpy2hf, vmpy2hfr) + (vmpy2hwf, vmsub2hf, vmsub2hfr, vmsub2hnfr, vneg2h, vnegs2h) + (vnorm2h, vpack2hbl, vpack2hblf, vpack2hbm, vpack2hbmf, vpack2hl) + (vpack2hm, vperm, vrep2hl, vrep2hm, vsext2bhl, vsext2bhm, vsub4b) + (vsubadds, vsubadds2h, vsubadds4h, vsubs2, vsubs2h, vsubs4h): + Changed opcodes. + (prealloc, prefetch*): Place them before ld instruction. + * arc-opc.c (skip_this_opcode): Add ARITH class. + +2017-10-25 Alan Modra + + PR 22348 + * cr16-dis.c (cr16_cinvs, instruction, cr16_currInsn): Make static. + (cr16_words, cr16_allWords, processing_argument_number): Likewise. + (imm4flag, size_changed): Likewise. + * crx-dis.c (crx_cinvs, NUMCINVS, instruction, currInsn): Likewise. + (words, allWords, processing_argument_number): Likewise. + (cst4flag, size_changed): Likewise. + * crx-opc.c (crx_cst4_map): Rename from cst4_map. + (crx_cst4_maps): Rename from cst4_maps. + (crx_no_op_insn): Rename from no_op_insn. + +2017-10-24 Andrew Waterman + + * riscv-opc.c (match_c_addi16sp) : New function. + (match_c_addi4spn): New function. + (match_c_lui): Don't allow 0-immediate encodings. + (riscv_opcodes) : Use the above functions. + : Likewise. + : Likewise. + : Likewise. + +2017-10-23 Igor Tsimbalist + + * i386-init.h: Regenerate + * i386-tbl.h: Likewise + +2017-10-23 Igor Tsimbalist + + * i386-dis.c (enum): Add PREFIX_EVEX_0F3854, PREFIX_EVEX_0F388F. + (enum): Add EVEX_W_0F3854_P_2. + * i386-dis-evex.h (evex_table): Updated. + * i386-gen.c (cpu_flag_init): Add CPU_AVX512_BITALG, + CPU_ANY_AVX512_BITALG_FLAGS. Update CPU_ANY_AVX512F_FLAGS. + (cpu_flags): Add CpuAVX512_BITALG. + * i386-opc.h (enum): Add CpuAVX512_BITALG. + (i386_cpu_flags): Add cpuavx512_bitalg.. + * i386-opc.tbl: Add Intel AVX512_BITALG instructions. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2017-10-23 Igor Tsimbalist + + * i386-dis.c (enum): Add PREFIX_EVEX_0F3850, PREFIX_EVEX_0F3851. + * i386-dis-evex.h (evex_table): Updated. + * i386-gen.c (cpu_flag_init): Add CPU_AVX512_VNNI, + CPU_ANY_AVX512_VNNI_FLAGS. Update CPU_ANY_AVX512F_FLAGS. + (cpu_flags): Add CpuAVX512_VNNI. + * i386-opc.h (enum): Add CpuAVX512_VNNI. + (i386_cpu_flags): Add cpuavx512_vnni. + * i386-opc.tbl Add Intel AVX512_VNNI instructions. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2017-10-23 Igor Tsimbalist + + * i386-dis.c (enum): Add PREFIX_EVEX_0F3A44. + (enum): Remove VEX_LEN_0F3A44_P_2. + (vex_len_table): Ditto. + (enum): Remove VEX_W_0F3A44_P_2. + (vew_w_table): Ditto. + (prefix_table): Adjust instructions (see prefixes above). + * i386-dis-evex.h (evex_table): + Add new instructions (see prefixes above). + * i386-gen.c (cpu_flag_init): Add VPCLMULQDQ. + (bitfield_cpu_flags): Ditto. + * i386-opc.h (enum): Ditto. + (i386_cpu_flags): Ditto. + (CpuUnused): Comment out to avoid zero-width field problem. + * i386-opc.tbl (vpclmulqdq): New instruction. + * i386-init.h: Regenerate. + * i386-tbl.h: Ditto. + +2017-10-23 Igor Tsimbalist + + * i386-dis.c (enum): Add PREFIX_EVEX_0F38DC, PREFIX_EVEX_0F38DD, + PREFIX_EVEX_0F38DE, PREFIX_EVEX_0F38DF. + (enum): Remove VEX_LEN_0F38DC_P_2, VEX_LEN_0F38DD_P_2, + VEX_LEN_0F38DE_P_2, VEX_LEN_0F38DF_P_2. + (vex_len_table): Ditto. + (enum): Remove VEX_W_0F38DC_P_2, VEX_W_0F38DD_P_2, + VEX_W_0F38DE_P_2, VEX_W_0F38DF_P_2. + (vew_w_table): Ditto. + (prefix_table): Adjust instructions (see prefixes above). + * i386-dis-evex.h (evex_table): + Add new instructions (see prefixes above). + * i386-gen.c (cpu_flag_init): Add VAES. + (bitfield_cpu_flags): Ditto. + * i386-opc.h (enum): Ditto. + (i386_cpu_flags): Ditto. + * i386-opc.tbl (vaes{enc,dec}{last,}): New instructions. + * i386-init.h: Regenerate. + * i386-tbl.h: Ditto. + +2017-10-23 Igor Tsimbalist + + * i386-dis.c (enum): Add PREFIX_0F38CF, PREFIX_0F3ACE, PREFIX_0F3ACF, + PREFIX_VEX_0F38CF, PREFIX_VEX_0F3ACE, PREFIX_VEX_0F3ACF, + PREFIX_EVEX_0F38CF, PREFIX_EVEX_0F3ACE, PREFIX_EVEX_0F3ACF. + (enum): Add VEX_W_0F38CF_P_2, VEX_W_0F3ACE_P_2, VEX_W_0F3ACF_P_2, + EVEX_W_0F3ACE_P_2, EVEX_W_0F3ACF_P_2. + (prefix_table): Updated (see prefixes above). + (three_byte_table): Likewise. + (vex_w_table): Likewise. + * i386-dis-evex.h: Likewise. + * i386-gen.c (cpu_flag_init): Add CPU_GFNI_FLAGS, CpuGFNI. + (cpu_flags): Add CpuGFNI. + * i386-opc.h (enum): Add CpuGFNI. + (i386_cpu_flags): Add cpugfni. + * i386-opc.tbl: Add Intel GFNI instructions. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2017-10-23 Igor Tsimbalist + + * i386-dis.c (enum): Add b_scalar_mode, w_scalar_mode. + Define EXbScalar and EXwScalar for OP_EX. + (enum): Add PREFIX_EVEX_0F3862, PREFIX_EVEX_0F3863, + PREFIX_EVEX_0F3870, PREFIX_EVEX_0F3871, PREFIX_EVEX_0F3872, + PREFIX_EVEX_0F3873, PREFIX_EVEX_0F3A70, PREFIX_EVEX_0F3A71, + PREFIX_EVEX_0F3A72, PREFIX_EVEX_0F3A73. + (enum): Add EVEX_W_0F3862_P_2, EVEX_W_0F3863_P_2, + EVEX_W_0F3870_P_2, EVEX_W_0F3871_P_2, EVEX_W_0F3872_P_2, + EVEX_W_0F3873_P_2, EVEX_W_0F3A70_P_2, EVEX_W_0F3A71_P_2, + EVEX_W_0F3A72_P_2, EVEX_W_0F3A73_P_2. + (intel_operand_size): Handle b_scalar_mode and w_scalar_mode. + (OP_E_memory): Likewise. + * i386-dis-evex.h: Updated. + * i386-gen.c (cpu_flag_init): Add CPU_AVX512_VBMI2, + CPU_ANY_AVX512_VBMI2_FLAGS. Update CPU_ANY_AVX512F_FLAGS. + (cpu_flags): Add CpuAVX512_VBMI2. + * i386-opc.h (enum): Add CpuAVX512_VBMI2. + (i386_cpu_flags): Add cpuavx512_vbmi2. + * i386-opc.tbl: Add Intel AVX512_VBMI2 instructions. + * i386-init.h: Regenerate. + * i386-tbl.h: Likewise. + +2017-10-18 Eric Botcazou + + * visium-dis.c (disassem_class1) : Print the operands. + +2017-10-12 James Bowman + + * ft32-dis.c (print_insn_ft32): Replace FT32_FLD_K8 with K15. + * ft32-opc.c (ft32_opc_info): Replace FT32_FLD_K8 with + K15. Add jmpix pattern. + +2017-10-09 Andreas Krebbel + + * s390-opc.txt (prno, tpei, irbm): New instructions added. + +2017-10-09 Heiko Carstens + + * s390-opc.c (INSTR_SI_RD): New macro. + (INSTR_S_RD): Adjust example instruction. + * s390-opc.txt (lpsw, ssm, ts): Change S_RD instruction format to + SI_RD. + +2017-10-01 Alexander Fedotov + + * ppc-opc.c (vle_opcodes): Add e_lmvsprw, e_lmvgprw, + e_lmvsrrw, e_lmvcsrrw and e_lmvcsrrw as official mnemonics for + VLE multimple load/store instructions. Old e_ldm* variants are + kept as aliases. + Add missing e_lmvmcsrrw and e_stmvmcsrrw. + +2017-09-27 Nick Clifton + + PR 22179 + * riscv-opc.c (riscv_opcodes): Add fmv.x.w and fmv.w.x as the new + names for the fmv.x.s and fmv.s.x instructions respectively. + +2017-09-26 do + + PR 22123 + * m68k-opc.c (m68k_opcodes): Allow macw and macl instructions to + be used on CPUs that have emacs support. + +2017-09-21 Sergio Durigan Junior + + * aarch64-opc.c (expand_fp_imm): Initialize 'imm'. + +2017-09-09 Kamil Rytarowski + + * nds32-asm.c: Rename __BIT() to N32_BIT(). + * nds32-asm.h: Likewise. + * nds32-dis.c: Likewise. + +2017-09-09 H.J. Lu + + * i386-dis.c (last_active_prefix): Removed. + (ckprefix): Don't set last_active_prefix. + (NOTRACK_Fixup): Don't check last_active_prefix. + +2017-08-31 Nick Clifton + + * po/fr.po: Updated French translation. + +2017-08-31 James Bowman + + * ft32-dis.c (print_insn_ft32): Correct display of non-address + fields. + +2017-08-23 Alexander Fedotov + Edmar Wienskoski + + * ppc-dis.c (ppc_mopt): Add PPC_OPCODE_SPE2 and + PPC_OPCODE_EFS2 flag to "e200z4" entry. + New entries efs2 and spe2. + Add PPC_OPCODE_SPE2 and PPC_OPCODE_EFS2 flag to "vle" entry. + (SPE2_OPCD_SEGS): New macro. + (spe2_opcd_indices): New. + (disassemble_init_powerpc): Handle SPE2 opcodes. + (lookup_spe2): New function. + (print_insn_powerpc): call lookup_spe2. + * ppc-opc.c (insert_evuimm1_ex0): New function. + (extract_evuimm1_ex0): Likewise. + (insert_evuimm_lt8): Likewise. + (extract_evuimm_lt8): Likewise. + (insert_off_spe2): Likewise. + (extract_off_spe2): Likewise. + (insert_Ddd): Likewise. + (extract_Ddd): Likewise. + (DD): New operand. + (EVUIMM_LT8): Likewise. + (EVUIMM_LT16): Adjust. + (MMMM): New operand. + (EVUIMM_1): Likewise. + (EVUIMM_1_EX0): Likewise. + (EVUIMM_2): Adjust. + (NNN): New operand. + (VX_OFF_SPE2): Likewise. + (BBB): Likewise. + (DDD): Likewise. + (VX_MASK_DDD): New mask. + (HH): New operand. + (VX_RA_CONST): New macro. + (VX_RA_CONST_MASK): Likewise. + (VX_RB_CONST): Likewise. + (VX_RB_CONST_MASK): Likewise. + (VX_OFF_SPE2_MASK): Likewise. + (VX_SPE_CRFD): Likewise. + (VX_SPE_CRFD_MASK VX): Likewise. + (VX_SPE2_CLR): Likewise. + (VX_SPE2_CLR_MASK): Likewise. + (VX_SPE2_SPLATB): Likewise. + (VX_SPE2_SPLATB_MASK): Likewise. + (VX_SPE2_OCTET): Likewise. + (VX_SPE2_OCTET_MASK): Likewise. + (VX_SPE2_DDHH): Likewise. + (VX_SPE2_DDHH_MASK): Likewise. + (VX_SPE2_HH): Likewise. + (VX_SPE2_HH_MASK): Likewise. + (VX_SPE2_EVMAR): Likewise. + (VX_SPE2_EVMAR_MASK): Likewise. + (PPCSPE2): Likewise. + (PPCEFS2): Likewise. + (vle_opcodes): Add EFS2 and some missing SPE opcodes. + (powerpc_macros): Map old SPE instructions have new names + with the same opcodes. Add SPE2 instructions which just are + mapped to SPE2. + (spe2_opcodes): Add SPE2 opcodes. + +2017-08-23 Alan Modra + + * ppc-opc.c: Formatting and comment fixes. Move insert and + extract functions earlier, deleting forward declarations. + (insert_nbi, insert_raq, insert_rbx): Expand use of RT_MASK and + RA_MASK. + +2017-08-22 Palmer Dabbelt + + * riscv-opc.c (riscv_opcodes): Mark "c.nop" as an alias. + +2017-08-21 Alexander Fedotov + Edmar Wienskoski + + * ppc-opc.c (insert_evuimm2_ex0): New function. + (extract_evuimm2_ex0): Likewise. + (insert_evuimm4_ex0): Likewise. + (extract_evuimm4_ex0): Likewise. + (insert_evuimm8_ex0): Likewise. + (extract_evuimm8_ex0): Likewise. + (insert_evuimm_lt16): Likewise. + (extract_evuimm_lt16): Likewise. + (insert_rD_rS_even): Likewise. + (extract_rD_rS_even): Likewise. + (insert_off_lsp): Likewise. + (extract_off_lsp): Likewise. + (RD_EVEN): New operand. + (RS_EVEN): Likewise. + (RSQ): Adjust. + (EVUIMM_LT16): New operand. + (HTM_SI): Adjust. + (EVUIMM_2_EX0): New operand. + (EVUIMM_4): Adjust. + (EVUIMM_4_EX0): New operand. + (EVUIMM_8): Adjust. + (EVUIMM_8_EX0): New operand. + (WS): Adjust. + (VX_OFF): New operand. + (VX_LSP): New macro. + (VX_LSP_MASK): Likewise. + (VX_LSP_OFF_MASK): Likewise. + (PPC_OPCODE_LSP): Likewise. + (vle_opcodes): Add LSP opcodes. + * ppc-dis.c (ppc_mopt): Add PPC_OPCODE_LSP flag to "vle" entry. + +2017-08-09 Jiong Wang + + * arm-dis.c (thumb32_opcodes): Use format 'R' instead of 'S' for + register operands in CRC instructions. + (print_insn_thumb32): Remove "S" support. Updated the + comments. + +2017-08-07 H.J. Lu + + * disassemble.c (disassembler): Mark big and mach with + ATTRIBUTE_UNUSED. + +2017-08-07 Maciej W. Rozycki + + * disassemble.c (disassembler): Remove arch/mach/endian + assertions. + +2017-07-25 Nick Clifton + + PR 21739 + * arc-opc.c (insert_rhv2): Use lower case first letter in error + message. + (insert_r0): Likewise. + (insert_r1): Likewise. + (insert_r2): Likewise. + (insert_r3): Likewise. + (insert_sp): Likewise. + (insert_gp): Likewise. + (insert_pcl): Likewise. + (insert_blink): Likewise. + (insert_ilink1): Likewise. + (insert_ilink2): Likewise. + (insert_ras): Likewise. + (insert_rbs): Likewise. + (insert_rcs): Likewise. + (insert_simm3s): Likewise. + (insert_rrange): Likewise. + (insert_r13el): Likewise. + (insert_fpel): Likewise. + (insert_blinkel): Likewise. + (insert_pclel): Likewise. + (insert_nps_bitop_size_2b): Likewise. + (insert_nps_imm_offset): Likewise. + (insert_nps_imm_entry): Likewise. + (insert_nps_size_16bit): Likewise. + (insert_nps_##NAME##_pos): Likewise. + (insert_nps_##NAME): Likewise. + (insert_nps_bitop_ins_ext): Likewise. + (insert_nps_##NAME): Likewise. + (insert_nps_min_hofs): Likewise. + (insert_nps_##NAME): Likewise. + (insert_nps_rbdouble_64): Likewise. + (insert_nps_misc_imm_offset): Likewise. + * riscv-dis.c (print_riscv_disassembler_options): Fix typo in + option description. + +2017-07-24 Laurent Desnogues + Jiong Wang + + * aarch64-gen.c (print_decision_tree_1): Reverse the index of PATTERN to + correct the print. + * aarch64-dis-2.c: Regenerated. + +2017-07-21 Andreas Krebbel + + * s390-mkopc.c (main): Enable z14 as CPU string in the opcode + table. + +2017-07-20 Nick Clifton + + * po/de.po: Updated German translation. + +2017-07-19 Claudiu Zissulescu + + * arc-regs.h (sec_stat): New aux register. + (aux_kernel_sp): Likewise. + (aux_sec_u_sp): Likewise. + (aux_sec_k_sp): Likewise. + (sec_vecbase_build): Likewise. + (nsc_table_top): Likewise. + (nsc_table_base): Likewise. + (ersec_stat): Likewise. + (aux_sec_except): Likewise. + +2017-07-19 Claudiu Zissulescu + + * arc-opc.c (extract_uimm12_20): New function. + (UIMM12_20): New operand. + (SIMM3_5_S): Adjust. + * arc-tbl.h (sjli): Add new instruction. + +2017-07-19 Claudiu Zissulescu + John Eric Martin + + * arc-opc.c (UIMM10_6_S_JLIOFF): Define. + (UIMM3_23): Adjust accordingly. + * arc-regs.h: Add/correct jli_base register. + * arc-tbl.h (jli_s): Likewise. + +2017-07-18 Nick Clifton + + PR 21775 + * aarch64-opc.c: Fix spelling typos. + * i386-dis.c: Likewise. + +2017-07-14 Ravi Bangoria + + * dis-buf.c (buffer_read_memory): Change type of end_addr_offset, + max_addr_offset and octets variables to size_t. + +2017-07-12 Alan Modra + + * po/da.po: Update from translationproject.org/latest/opcodes/. + * po/de.po: Likewise. + * po/es.po: Likewise. + * po/fi.po: Likewise. + * po/fr.po: Likewise. + * po/id.po: Likewise. + * po/it.po: Likewise. + * po/nl.po: Likewise. + * po/pt_BR.po: Likewise. + * po/ro.po: Likewise. + * po/sv.po: Likewise. + * po/tr.po: Likewise. + * po/uk.po: Likewise. + * po/vi.po: Likewise. + * po/zh_CN.po: Likewise. + +2017-07-11 Yao Qi + Alan Modra + + * cgen.sh: Mark generated files read-only. + * epiphany-asm.c: Regenerate. + * epiphany-desc.c: Regenerate. + * epiphany-desc.h: Regenerate. + * epiphany-dis.c: Regenerate. + * epiphany-ibld.c: Regenerate. + * epiphany-opc.c: Regenerate. + * epiphany-opc.h: Regenerate. + * fr30-asm.c: Regenerate. + * fr30-desc.c: Regenerate. + * fr30-desc.h: Regenerate. + * fr30-dis.c: Regenerate. + * fr30-ibld.c: Regenerate. + * fr30-opc.c: Regenerate. + * fr30-opc.h: Regenerate. + * frv-asm.c: Regenerate. + * frv-desc.c: Regenerate. + * frv-desc.h: Regenerate. + * frv-dis.c: Regenerate. + * frv-ibld.c: Regenerate. + * frv-opc.c: Regenerate. + * frv-opc.h: Regenerate. + * ip2k-asm.c: Regenerate. + * ip2k-desc.c: Regenerate. + * ip2k-desc.h: Regenerate. + * ip2k-dis.c: Regenerate. + * ip2k-ibld.c: Regenerate. + * ip2k-opc.c: Regenerate. + * ip2k-opc.h: Regenerate. + * iq2000-asm.c: Regenerate. + * iq2000-desc.c: Regenerate. + * iq2000-desc.h: Regenerate. + * iq2000-dis.c: Regenerate. + * iq2000-ibld.c: Regenerate. + * iq2000-opc.c: Regenerate. + * iq2000-opc.h: Regenerate. + * lm32-asm.c: Regenerate. + * lm32-desc.c: Regenerate. + * lm32-desc.h: Regenerate. + * lm32-dis.c: Regenerate. + * lm32-ibld.c: Regenerate. + * lm32-opc.c: Regenerate. + * lm32-opc.h: Regenerate. + * lm32-opinst.c: Regenerate. + * m32c-asm.c: Regenerate. + * m32c-desc.c: Regenerate. + * m32c-desc.h: Regenerate. + * m32c-dis.c: Regenerate. + * m32c-ibld.c: Regenerate. + * m32c-opc.c: Regenerate. + * m32c-opc.h: Regenerate. + * m32r-asm.c: Regenerate. + * m32r-desc.c: Regenerate. + * m32r-desc.h: Regenerate. + * m32r-dis.c: Regenerate. + * m32r-ibld.c: Regenerate. + * m32r-opc.c: Regenerate. + * m32r-opc.h: Regenerate. + * m32r-opinst.c: Regenerate. + * mep-asm.c: Regenerate. + * mep-desc.c: Regenerate. + * mep-desc.h: Regenerate. + * mep-dis.c: Regenerate. + * mep-ibld.c: Regenerate. + * mep-opc.c: Regenerate. + * mep-opc.h: Regenerate. + * mt-asm.c: Regenerate. + * mt-desc.c: Regenerate. + * mt-desc.h: Regenerate. + * mt-dis.c: Regenerate. + * mt-ibld.c: Regenerate. + * mt-opc.c: Regenerate. + * mt-opc.h: Regenerate. + * or1k-asm.c: Regenerate. + * or1k-desc.c: Regenerate. + * or1k-desc.h: Regenerate. + * or1k-dis.c: Regenerate. + * or1k-ibld.c: Regenerate. + * or1k-opc.c: Regenerate. + * or1k-opc.h: Regenerate. + * or1k-opinst.c: Regenerate. + * xc16x-asm.c: Regenerate. + * xc16x-desc.c: Regenerate. + * xc16x-desc.h: Regenerate. + * xc16x-dis.c: Regenerate. + * xc16x-ibld.c: Regenerate. + * xc16x-opc.c: Regenerate. + * xc16x-opc.h: Regenerate. + * xstormy16-asm.c: Regenerate. + * xstormy16-desc.c: Regenerate. + * xstormy16-desc.h: Regenerate. + * xstormy16-dis.c: Regenerate. + * xstormy16-ibld.c: Regenerate. + * xstormy16-opc.c: Regenerate. + * xstormy16-opc.h: Regenerate. + +2017-07-07 Alan Modra + + * cgen-dis.in: Include disassemble.h, not dis-asm.h. + * m32c-dis.c: Regenerate. + * mep-dis.c: Regenerate. + +2017-07-05 Borislav Petkov + + * i386-dis.c: Enable ModRM.reg /6 aliases. + +2017-07-04 Ramana Radhakrishnan + + * opcodes/arm-dis.c: Support MVFR2 in disassembly + with vmrs and vmsr. + +2017-07-04 Tristan Gingold + + * configure: Regenerate. + +2017-07-03 Tristan Gingold + + * po/opcodes.pot: Regenerate. + +2017-06-30 Maciej W. Rozycki + + * mips-opc.c (mips_builtin_opcodes): Move "lsa" and "dlsa" + entries to the MSA ASE instruction block. + +2017-06-30 Andrew Bennett + Maciej W. Rozycki + + * micromips-opc.c (XPA, XPAVZ): New macros. + (micromips_opcodes): Add "mfhc0", "mfhgc0", "mthc0" and + "mthgc0". + +2017-06-30 Andrew Bennett + Maciej W. Rozycki + + * micromips-opc.c (I36): New macro. + (micromips_opcodes): Add "eretnc". + +2017-06-30 Maciej W. Rozycki + Andrew Bennett + + * mips-dis.c (mips_calculate_combination_ases): Handle the + ASE_XPA_VIRT flag. + (parse_mips_ase_option): New function. + (parse_mips_dis_option): Factor out ASE option handling to the + new function. Call `mips_calculate_combination_ases'. + * mips-opc.c (XPAVZ): New macro. + (mips_builtin_opcodes): Correct ISA and ASE flags for "mfhc0", + "mfhgc0", "mthc0" and "mthgc0". + +2017-06-29 Maciej W. Rozycki + + * mips-dis.c (mips_calculate_combination_ases): New function. + (mips_convert_abiflags_ases): Factor out ASE_MIPS16E2_MT + calculation to the new function. + (set_default_mips_dis_options): Call the new function. + +2017-06-29 Anton Kolesov + + * arc-dis.c (parse_disassembler_options): Use + FOR_EACH_DISASSEMBLER_OPTION. + +2017-06-29 Anton Kolesov + + * arc-dis.c (parse_option): Use disassembler_options_cmp to compare + disassembler option strings. + (parse_cpu_option): Likewise. + +2017-06-28 Tamar Christina + + * aarch64-asm.c (aarch64_ins_reglane): Added 4B dotprod. + * aarch64-dis.c (aarch64_ext_reglane): Likewise. + * aarch64-tbl.h (QL_V3DOT, QL_V2DOT): New. + (aarch64_feature_dotprod, DOT_INSN): New. + (udot, sdot): New. + * aarch64-dis-2.c: Regenerated. + +2017-06-28 Jiong Wang + + * arm-dis.c (coprocessor_opcodes): New entries for vsdot and vudot. + +2017-06-28 Maciej W. Rozycki + Matthew Fortune + Andrew Bennett + + * mips-formats.h (INT_BIAS): New macro. + (INT_ADJ): Redefine in INT_BIAS terms. + * mips-dis.c (mips_arch_choices): Add "interaptiv-mr2" entry. + (mips_print_save_restore): New function. + (print_insn_arg) : Update comment. + (validate_insn_args) : Remove `abort' + call. + (print_insn_args): Handle OP_SAVE_RESTORE_LIST. + (print_mips16_insn_arg): Call `mips_print_save_restore' for + OP_SAVE_RESTORE_LIST handling, factored out from here. + * mips-opc.c (decode_mips_operand) <'-'> <'m'>: New case. + (RD_31, RD_SP, WR_SP, MOD_SP, IAMR2): New macros. + (mips_builtin_opcodes): Add "restore" and "save" entries. + * mips16-opc.c (decode_mips16_operand) <'n', 'o'>: New cases. + (IAMR2): New macro. + (mips16_opcodes): Add "copyw" and "ucopyw" entries. + +2017-06-23 Andrew Waterman + + * riscv-opc.c (riscv_opcodes): Mark I-type SLT instruction as an + alias; do not mark SLTI instruction as an alias. + +2017-06-21 H.J. Lu + + * i386-dis.c (RM_0FAE_REG_5): Removed. + (PREFIX_MOD_3_0F01_REG_5_RM_1): Likewise. + (PREFIX_MOD_3_0F01_REG_5_RM_0): New. + (PREFIX_MOD_3_0FAE_REG_5): Likewise. + (prefix_table): Remove PREFIX_MOD_3_0F01_REG_5_RM_1. Add + PREFIX_MOD_3_0F01_REG_5_RM_0. + (prefix_table): Update PREFIX_MOD_0_0FAE_REG_5. Add + PREFIX_MOD_3_0FAE_REG_5. + (mod_table): Update MOD_0FAE_REG_5. + (rm_table): Update RM_0F01_REG_5. Remove RM_0FAE_REG_5. + * i386-opc.tbl: Update incsspd, incsspq and setssbsy. + * i386-tbl.h: Regenerated. + +2017-06-21 H.J. Lu + + * i386-dis.c (prefix_table): Replace savessp with saveprevssp. + * i386-opc.tbl: Likewise. + * i386-tbl.h: Regenerated. + +2017-06-21 H.J. Lu + + * i386-dis.c (reg_table): Swap indirEv with NOTRACK on "call{&|}" + and "jmp{&|}". + (NOTRACK_Fixup): Support memory indirect branch with NOTRACK + prefix. + +2017-06-19 Nick Clifton + + PR binutils/21614 + * score-dis.c (score_opcodes): Add sentinel. + +2017-06-16 Alan Modra + + * rx-decode.c: Regenerate. + +2017-06-15 H.J. Lu + + PR binutils/21594 + * i386-dis.c (OP_E_register): Check valid bnd register. + (OP_G): Likewise. + +2017-06-15 Nick Clifton + + PR binutils/21595 + * aarch64-dis.c (aarch64_ext_ldst_reglist): Check for an out of + range value. + +2017-06-15 Nick Clifton + + PR binutils/21588 + * rl78-decode.opc (OP_BUF_LEN): Define. + (GETBYTE): Check for the index exceeding OP_BUF_LEN. + (rl78_decode_opcode): Use OP_BUF_LEN as the length of the op_buf + array. + * rl78-decode.c: Regenerate. + +2017-06-15 Nick Clifton + + PR binutils/21586 + * bfin-dis.c (gregs): Clip index to prevent overflow. + (regs): Likewise. + (regs_lo): Likewise. + (regs_hi): Likewise. + +2017-06-14 Nick Clifton + + PR binutils/21576 + * score7-dis.c (score_opcodes): Add sentinel. + +2017-06-14 Yao Qi + + * aarch64-dis.c: Include disassemble.h instead of dis-asm.h. + * arm-dis.c: Likewise. + * ia64-dis.c: Likewise. + * mips-dis.c: Likewise. + * spu-dis.c: Likewise. + * disassemble.h (print_insn_aarch64): New declaration, moved from + include/dis-asm.h. + (print_insn_big_arm, print_insn_big_mips): Likewise. + (print_insn_i386, print_insn_ia64): Likewise. + (print_insn_little_arm, print_insn_little_mips): Likewise. + +2017-06-14 Nick Clifton + + PR binutils/21587 + * rx-decode.opc: Include libiberty.h + (GET_SCALE): New macro - validates access to SCALE array. + (GET_PSCALE): New macro - validates access to PSCALE array. + (DIs, SIs, S2Is, rx_disp): Use new macros. + * rx-decode.c: Regenerate. + +2017-07-14 Andre Vieira + + * arm-dis.c (print_insn_arm): Remove bogus entry for bx. + +2017-05-30 Anton Kolesov + + * arc-dis.c (enforced_isa_mask): Declare. + (cpu_types): Likewise. + (parse_cpu_option): New function. + (parse_disassembler_options): Use it. + (print_insn_arc): Use enforced_isa_mask. + (print_arc_disassembler_options): Document new options. + +2017-05-24 Yao Qi + + * alpha-dis.c: Include disassemble.h, don't include + dis-asm.h. + * avr-dis.c, bfin-dis.c, cr16-dis.c: Likewise. + * crx-dis.c, d10v-dis.c, d30v-dis.c: Likewise. + * disassemble.c, dlx-dis.c, epiphany-dis.c: Likewise. + * fr30-dis.c, ft32-dis.c, h8300-dis.c, h8500-dis.c: Likewise. + * hppa-dis.c, i370-dis.c, i386-dis.c: Likewise. + * i860-dis.c, i960-dis.c, ip2k-dis.c: Likewise. + * iq2000-dis.c, lm32-dis.c, m10200-dis.c: Likewise. + * m10300-dis.c, m32r-dis.c, m68hc11-dis.c: Likewise. + * m68k-dis.c, m88k-dis.c, mcore-dis.c: Likewise. + * metag-dis.c, microblaze-dis.c, mmix-dis.c: Likewise. + * moxie-dis.c, msp430-dis.c, mt-dis.c: + * nds32-dis.c, nios2-dis.c, ns32k-dis.c: Likewise. + * or1k-dis.c, pdp11-dis.c, pj-dis.c: Likewise. + * ppc-dis.c, pru-dis.c, riscv-dis.c: Likewise. + * rl78-dis.c, s390-dis.c, score-dis.c: Likewise. + * sh-dis.c, sh64-dis.c, tic30-dis.c: Likewise. + * tic4x-dis.c, tic54x-dis.c, tic6x-dis.c: Likewise. + * tic80-dis.c, tilegx-dis.c, tilepro-dis.c: Likewise. + * v850-dis.c, vax-dis.c, visium-dis.c: Likewise. + * w65-dis.c, wasm32-dis.c, xc16x-dis.c: Likewise. + * xgate-dis.c, xstormy16-dis.c, xtensa-dis.c: Likewise. + * z80-dis.c, z8k-dis.c: Likewise. + * disassemble.h: New file. + +2017-05-24 Yao Qi + + * rl78-dis.c (rl78_get_disassembler): If parameter abfd + is NULL, set cpu to E_FLAG_RL78_ANY_CPU. + +2017-05-24 Yao Qi + + * disassemble.c (disassembler): Add arguments a, big and mach. + Use them. + +2017-05-22 H.J. Lu + + * i386-dis.c (NOTRACK_Fixup): New. + (NOTRACK): Likewise. + (NOTRACK_PREFIX): Likewise. + (last_active_prefix): Likewise. + (reg_table): Use NOTRACK on indirect call and jmp. + (ckprefix): Set last_active_prefix. + (prefix_name): Return "notrack" for NOTRACK_PREFIX. + * i386-gen.c (opcode_modifiers): Add NoTrackPrefixOk. + * i386-opc.h (NoTrackPrefixOk): New. + (i386_opcode_modifier): Add notrackprefixok. + * i386-opc.tbl: Add NoTrackPrefixOk to indirect call and jmp. + Add notrack. + * i386-tbl.h: Regenerated. + +2017-05-19 Jose E. Marchesi + + * sparc-dis.c (MASK_V9): Include SPARC_OPCODE_ARCH_M8. + (X_IMM2): Define. + (compute_arch_mask): Handle bfd_mach_sparc_v8plusm8 and + bfd_mach_sparc_v9m8. + (print_insn_sparc): Handle new operand types. + * sparc-opc.c (MASK_M8): Define. + (v6): Add MASK_M8. + (v6notlet): Likewise. + (v7): Likewise. + (v8): Likewise. + (v9): Likewise. + (v9a): Likewise. + (v9b): Likewise. + (v9c): Likewise. + (v9d): Likewise. + (v9e): Likewise. + (v9v): Likewise. + (v9m): Likewise. + (v9andleon): Likewise. + (m8): Define. + (HWS_VM8): Define. + (HWS2_VM8): Likewise. + (sparc_opcode_archs): Add entry for "m8". + (sparc_opcodes): Add OSA2017 and M8 instructions + dictunpack, fpcmp{ule,ugt,eq,ne,de,ur}{8,16,32}shl, + fpx{ll,ra,rl}64x, + ldm{sh,uh,sw,uw,x,ux}, ldm{sh,uh,sw,uw,x,ux}a, ldmf{s,d}, + ldmf{s,d}a, on{add,sub,mul,div}, rdentropy, revbitsb, + revbytes{h,w,x}, rle_burst, rle_length, sha3, stm{h,w,x}, + stm{h,w,x}a, stmf{s,d}, stmf{s,d}a. + (asi_table): New M8 ASIs ASI_CORE_COMMIT_COUNT, + ASI_CORE_SELECT_COUNT, ASI_ARF_ECC_REG, ASI_ITLB_PROBE, ASI_DSFAR, + ASI_DTLB_PROBE_PRIMARY, ASI_DTLB_PROBE_REAL, + ASI_CORE_SELECT_COMMIT_NHT. + +2017-05-18 Alan Modra + + * aarch64-asm.c: Don't compare boolean values against TRUE or FALSE. + * aarch64-dis.c: Likewise. + * aarch64-gen.c: Likewise. + * aarch64-opc.c: Likewise. + +2017-05-15 Maciej W. Rozycki + Matthew Fortune + + * mips-dis.c (mips_arch_choices): Add ASE_MIPS16E2 and + ASE_MIPS16E2_MT flags to the unnamed MIPS16 entry. + (mips_convert_abiflags_ases): Handle the AFL_ASE_MIPS16E2 flag. + (print_insn_arg) : Add handler. + (validate_insn_args) : Handle. + (print_mips16_insn_arg): Handle MIPS16 instructions that require + 32-bit encoding and 9-bit immediates. + (print_insn_mips16): Handle MIPS16 instructions that require + 32-bit encoding and MFC0/MTC0 operand decoding. + * mips16-opc.c (decode_mips16_operand) <'>', '9', 'G', 'N', 'O'> + <'Q', 'T', 'b', 'c', 'd', 'r', 'u'>: Add handlers. + (RD_C0, WR_C0, E2, E2MT): New macros. + (mips16_opcodes): Add entries for MIPS16e2 instructions: + GP-relative "addiu" and its "addu" spelling, "andi", "cache", + "di", "ehb", "ei", "ext", "ins", GP-relative "lb", "lbu", "lh", + "lhu", and "lw" instructions, "ll", "lui", "lwl", "lwr", "mfc0", + "movn", "movtn", "movtz", "movz", "mtc0", "ori", "pause", + "pref", "rdhwr", "sc", GP-relative "sb", "sh" and "sw" + instructions, "swl", "swr", "sync" and its "sync_acquire", + "sync_mb", "sync_release", "sync_rmb" and "sync_wmb" aliases, + "xori", "dmt", "dvpe", "emt" and "evpe". Add split + regular/extended entries for original MIPS16 ISA revision + instructions whose extended forms are subdecoded in the MIPS16e2 + ISA revision: "li", "sll" and "srl". + +2017-05-15 Maciej W. Rozycki + + * mips-dis.c (print_insn_args) : Remove an MT ASE + reference in CP0 move operand decoding. + +2017-05-12 Maciej W. Rozycki + + * mips16-opc.c (decode_mips16_operand) <'6'>: Switch the operand + type to hexadecimal. + (mips16_opcodes): Add operandless "break" and "sdbbp" entries. + +2017-05-11 Maciej W. Rozycki + + * mips-opc.c (mips_builtin_opcodes): Mark "synciobdma", "syncs", + "syncw", "syncws", "sync_acquire", "sync_mb", "sync_release", + "sync_rmb" and "sync_wmb" as aliases. + * micromips-opc.c (micromips_opcodes): Mark "sync_acquire", + "sync_mb", "sync_release", "sync_rmb" and "sync_wmb" as aliases. + +2017-05-10 Claudiu Zissulescu + + * arc-dis.c (parse_option): Update quarkse_em option.. + * arc-ext-tbl.h (dsp_fp_flt2i, dsp_fp_i2flt): Change subclass to + QUARKSE1. + (dsp_fp_div, dsp_fp_cmp): Change subclass to QUARKSE2. + +2017-05-03 Kito Cheng + + * riscv-dis.c (print_insn_args): Handle 'Co' operands. + +2017-05-01 Michael Clark + + * riscv-opc.c (riscv_opcodes) : Use RA not T1 as a temporary + register. + +2017-05-02 Maciej W. Rozycki + + * mips-dis.c (print_insn_arg): Only clear the ISA bit for jumps + and branches and not synthetic data instructions. + +2017-05-02 Bernd Edlinger + + * arm-dis.c (print_insn_thumb32): Fix value_in_comment. + +2017-04-25 Claudiu Zissulescu + + * arc-dis.c (print_insn_arc): Smartly print enter/leave mnemonics. + * arc-opc.c (insert_r13el): New function. + (R13_EL): Define. + * arc-tbl.h: Add new enter/leave variants. + +2017-04-25 Claudiu Zissulescu + + * arc-tbl.h: Reorder NOP entry to be before MOV instructions. + +2017-04-25 Maciej W. Rozycki + + * mips-dis.c (print_mips_disassembler_options): Add + `no-aliases'. + +2017-04-25 Maciej W. Rozycki + + * mips16-opc.c (AL): New macro. + (mips16_opcodes): Mark "nop", "la", "dla", and synthetic forms + of "ld" and "lw" as aliases. + +2017-04-24 Tamar Christina + + * aarch64-opc.c (aarch64_logical_immediate_p): Update DEBUG_TRACE + arguments. + +2017-04-22 Alexander Fedotov + Alan Modra + + * ppc-opc.c (ELEV): Define. + (vle_opcodes): Add se_rfgi and e_sc. + (powerpc_opcodes): Enable lbdx, lhdx, lwdx, stbdx, sthdx, stwdx + for E200Z4. + +2017-04-21 Jose E. Marchesi + + * sparc-opc.c (sparc_opcodes): Mark RETT instructions as v6notv9. + +2017-04-21 Nick Clifton + + PR binutils/21380 + * aarch64-tbl.h (aarch64_opcode_table): Fix masks for LD1R, LD2R, + LD3R and LD4R. + +2017-04-13 Alan Modra + + * epiphany-desc.c: Regenerate. + * fr30-desc.c: Regenerate. + * frv-desc.c: Regenerate. + * ip2k-desc.c: Regenerate. + * iq2000-desc.c: Regenerate. + * lm32-desc.c: Regenerate. + * m32c-desc.c: Regenerate. + * m32r-desc.c: Regenerate. + * mep-desc.c: Regenerate. + * mt-desc.c: Regenerate. + * or1k-desc.c: Regenerate. + * xc16x-desc.c: Regenerate. + * xstormy16-desc.c: Regenerate. + +2017-04-11 Alan Modra + + * ppc-dis.c (ppc_opts): Remove PPC_OPCODE_ALTIVEC2, + PPC_OPCODE_VSX3, PPC_OPCODE_HTM and "htm". Formatting. Set + PPC_OPCODE_TMR for e6500. + * ppc-opc.c (PPCVEC2): Define as PPC_OPCODE_POWER8|PPC_OPCODE_E6500. + (PPCVEC3): Define as PPC_OPCODE_POWER9. + (PPCVSX2): Define as PPC_OPCODE_POWER8. + (PPCVSX3): Define as PPC_OPCODE_POWER9. + (PPCHTM): Define as PPC_OPCODE_POWER8. + (powerpc_opcodes ): Remove now unnecessary E6500. + +2017-04-10 Alan Modra + + * ppc-dis.c (ppc_opts <476>): Remove PPC_OPCODE_440. + * ppc-opc.c (MULHW): Add PPC_OPCODE_476. + (powerpc_opcodes): Adjust PPC440, PPC464 and PPC476 insns to suit + removal of PPC_OPCODE_440 from ppc476 cpu selection bits. + +2017-04-09 Pip Cet + + * wasm32-dis.c (print_insn_wasm32): Avoid DECIMAL_DIG, specify + appropriate floating-point precision directly. + +2017-04-07 Alan Modra + + * ppc-opc.c (powerpc_opcodes ): Enable E6500 only + vector instructions with E6500 not PPCVEC2. + +2017-04-06 Pip Cet + + * Makefile.am: Add wasm32-dis.c. + * configure.ac: Add wasm32-dis.c to wasm32 target. + * disassemble.c: Add wasm32 disassembler code. + * wasm32-dis.c: New file. + * Makefile.in: Regenerate. + * configure: Regenerate. + * po/POTFILES.in: Regenerate. + * po/opcodes.pot: Regenerate. + +2017-04-05 Pedro Alves + + * arc-dis.c (parse_option, parse_disassembler_options): Constify. + * arm-dis.c (parse_arm_disassembler_options): Constify. + * ppc-dis.c (powerpc_init_dialect): Constify local. + * vax-dis.c (parse_disassembler_options): Constify. + +2017-04-03 Palmer Dabbelt + + * riscv-dis.c (riscv_disassemble_insn): Change "_gp" to + RISCV_GP_SYMBOL. + +2017-03-30 Pip Cet + + * configure.ac: Add (empty) bfd_wasm32_arch target. + * configure: Regenerate + * po/opcodes.pot: Regenerate. + +2017-03-29 Sheldon Lobo + + Add support for missing SPARC ASIs from UA2005, UA2007, OSA2011, & + OSA2015. + * opcodes/sparc-opc.c (asi_table): New ASIs. + +2017-03-29 Alan Modra + + * ppc-dis.c (ppc_opts): Set PPC_OPCODE_PPC for "any" flags. Add + "raw" option. + (lookup_powerpc): Don't special case -1 dialect. Handle + PPC_OPCODE_RAW. + (print_insn_powerpc): Mask out PPC_OPCODE_ANY on first + lookup_powerpc call, pass it on second. + +2017-03-27 Alan Modra + + PR 21303 + * ppc-dis.c (struct ppc_mopt): Comment. + (ppc_opts ): Move PPC_OPCODE_VLE from .sticky to .cpu. + +2017-03-27 Rinat Zelig + + * arc-nps400-tbl.h: Add Ultra Ip and Miscellaneous instructions format. + * arc-opc.c: Add defines. e.g. F_NJ, F_NM , F_NO_T, F_NPS_SR, + F_NPS_M, F_NPS_CORE, F_NPS_ALL. + (insert_nps_misc_imm_offset): New function. + (extract_nps_misc imm_offset): New function. + (arc_num_flag_operands): Add F_NJ, F_NM, F_NO_T. + (arc_flag_special_cases): Add F_NJ, F_NM, F_NO_T. + +2017-03-21 Andreas Krebbel + + * s390-mkopc.c (main): Remove vx2 check. + * s390-opc.txt: Remove vx2 instruction flags. + +2017-03-21 Rinat Zelig + + * arc-nps400-tbl.h: Add cp32/cp16 instructions format. + * arc-opc.c: Add F_NPS_NA, NPS_DMA_IMM_ENTRY, NPS_DMA_IMM_OFFSET. + (insert_nps_imm_offset): New function. + (extract_nps_imm_offset): New function. + (insert_nps_imm_entry): New function. + (extract_nps_imm_entry): New function. + +2017-03-17 Alan Modra + + PR 21248 + * ppc-opc.c (powerpc_opcodes): Enable mfivor32, mfivor33, + mtivor32, and mtivor33 for e6500. Move mfibatl and mfibatu after + those spr mnemonics they alias. Similarly for mtibatl, mtibatu. + +2017-03-14 Kito Cheng + + * riscv-opc.c (riscv_opcodes> : Use the 'o' immediate encoding. + : Likewise. + Likewise. + +2017-03-14 Kito Cheng + + * riscv-opc.c (riscv_opcodes) : Use match_opcode. + +2017-03-13 Andrew Waterman + + * riscv-opc.c (riscv_opcodes) : Use match_opcode. + Likewise. + Likewise. + Likewise. + +2017-03-09 H.J. Lu + + * i386-gen.c (opcode_modifiers): Replace S with Load. + * i386-opc.h (S): Removed. + (Load): New. + (i386_opcode_modifier): Replace s with load. + * i386-opc.tbl: Add {disp8}, {disp32}, {swap}, {vex2}, {vex3} + and {evex}. Replace S with Load. + * i386-tbl.h: Regenerated. + +2017-03-09 H.J. Lu + + * i386-opc.tbl: Use CpuCET on rdsspq. + * i386-tbl.h: Regenerated. + +2017-03-08 Peter Bergner + + * ppc-dis.c (ppc_opts) : Do not use PPC_OPCODE_ALTIVEC2; + : Do not use PPC_OPCODE_VSX3; + +2017-03-08 Peter Bergner + + * ppc-opc.c (powerpc_opcodes) : New extended mnemonic. + +2017-03-06 H.J. Lu + + * i386-dis.c (REG_0F1E_MOD_3): New enum. + (MOD_0F1E_PREFIX_1): Likewise. + (MOD_0F38F5_PREFIX_2): Likewise. + (MOD_0F38F6_PREFIX_0): Likewise. + (RM_0F1E_MOD_3_REG_7): Likewise. + (PREFIX_MOD_0_0F01_REG_5): Likewise. + (PREFIX_MOD_3_0F01_REG_5_RM_1): Likewise. + (PREFIX_MOD_3_0F01_REG_5_RM_2): Likewise. + (PREFIX_0F1E): Likewise. + (PREFIX_MOD_0_0FAE_REG_5): Likewise. + (PREFIX_0F38F5): Likewise. + (dis386_twobyte): Use PREFIX_0F1E. + (reg_table): Add REG_0F1E_MOD_3. + (prefix_table): Add PREFIX_MOD_0_0F01_REG_5, + PREFIX_MOD_3_0F01_REG_5_RM_1, PREFIX_MOD_3_0F01_REG_5_RM_2, + PREFIX_0F1E, PREFIX_MOD_0_0FAE_REG_5 and PREFIX_0F38F5. Update + PREFIX_0FAE_REG_6 and PREFIX_0F38F6. + (three_byte_table): Use PREFIX_0F38F5. + (mod_table): Use PREFIX_MOD_0_0F01_REG_5, PREFIX_MOD_0_0FAE_REG_5. + Add MOD_0F1E_PREFIX_1, MOD_0F38F5_PREFIX_2, MOD_0F38F6_PREFIX_0. + (rm_table): Add MOD_0F38F5_PREFIX_2, MOD_0F38F6_PREFIX_0, + RM_0F1E_MOD_3_REG_7. Use PREFIX_MOD_3_0F01_REG_5_RM_1 and + PREFIX_MOD_3_0F01_REG_5_RM_2. + * i386-gen.c (cpu_flag_init): Add CPU_CET_FLAGS. + (cpu_flags): Add CpuCET. + * i386-opc.h (CpuCET): New enum. + (CpuUnused): Commented out. + (i386_cpu_flags): Add cpucet. + * i386-opc.tbl: Add Intel CET instructions. + * i386-init.h: Regenerated. + * i386-tbl.h: Likewise. + +2017-03-06 Alan Modra + + PR 21124 + * ppc-opc.c (extract_esync, extract_ls, extract_ral, extract_ram) + (extract_raq, extract_ras, extract_rbx): New functions. + (powerpc_operands): Use opposite corresponding insert function. + (Q_MASK): Define. + (powerpc_opcodes): Apply Q_MASK to all quad insns with even + register restriction. + +2017-02-28 Peter Bergner + + * disassemble.c Include "safe-ctype.h". + (disassemble_init_for_target): Handle s390 init. + (remove_whitespace_and_extra_commas): New function. + (disassembler_options_cmp): Likewise. + * arm-dis.c: Include "libiberty.h". + (NUM_ELEM): Delete. + (regnames): Use long disassembler style names. + Add force-thumb and no-force-thumb options. + (NUM_ARM_REGNAMES): Rename from this... + (NUM_ARM_OPTIONS): ...to this. Use ARRAY_SIZE. + (get_arm_regname_num_options): Delete. + (set_arm_regname_option): Likewise. + (get_arm_regnames): Likewise. + (parse_disassembler_options): Likewise. + (parse_arm_disassembler_option): Rename from this... + (parse_arm_disassembler_options): ...to this. Make static. + Use new FOR_EACH_DISASSEMBLER_OPTION macro to scan over options. + (print_insn): Use parse_arm_disassembler_options. + (disassembler_options_arm): New function. + (print_arm_disassembler_options): Handle updated regnames. + * ppc-dis.c: Include "libiberty.h". + (ppc_opts): Add "32" and "64" entries. + (ppc_parse_cpu): Use ARRAY_SIZE and disassembler_options_cmp. + (powerpc_init_dialect): Add break to switch statement. + Use new FOR_EACH_DISASSEMBLER_OPTION macro. + (disassembler_options_powerpc): New function. + (print_ppc_disassembler_options): Use ARRAY_SIZE. + Remove printing of "32" and "64". + * s390-dis.c: Include "libiberty.h". + (init_flag): Remove unneeded variable. + (struct s390_options_t): New structure type. + (options): New structure. + (init_disasm): Rename from this... + (disassemble_init_s390): ...to this. Add initializations for + current_arch_mask and option_use_insn_len_bits_p. Remove init_flag. + (print_insn_s390): Delete call to init_disasm. + (disassembler_options_s390): New function. + (print_s390_disassembler_options): Print using information from + struct 'options'. + * po/opcodes.pot: Regenerate. + +2017-02-28 Jan Beulich + + * i386-dis.c (PCMPESTR_Fixup): New. + (VEX_W_0F3A60_P_2, VEX_W_0F3A61_P_2): Delete. + (prefix_table): Use PCMPESTR_Fixup. + (vex_len_table): Make VPCMPESTR{I,M} entries leaf ones and use + PCMPESTR_Fixup. + (vex_w_table): Delete VPCMPESTR{I,M} entries. + * i386-opc.tbl (pcmpestri, pcmpestrm, vpcmpestri, vpcmpestrm): + Split 64-bit and non-64-bit variants. + * opcodes/i386-tbl.h: Re-generate. + +2017-02-24 Richard Sandiford + + * aarch64-tbl.h (OP_SVE_HMH, OP_SVE_VMU_HSD, OP_SVE_VMVU_HSD) + (OP_SVE_VMVV_HSD, OP_SVE_VMVVU_HSD, OP_SVE_VM_HSD, OP_SVE_VUVV_HSD) + (OP_SVE_VUV_HSD, OP_SVE_VU_HSD, OP_SVE_VVVU_H, OP_SVE_VVVU_S) + (OP_SVE_VVVU_HSD, OP_SVE_VVV_D, OP_SVE_VVV_D_H, OP_SVE_VVV_H) + (OP_SVE_VVV_HSD, OP_SVE_VVV_S, OP_SVE_VVV_S_B, OP_SVE_VVV_SD_BH) + (OP_SVE_VV_BHSDQ, OP_SVE_VV_HSD, OP_SVE_VZVV_HSD, OP_SVE_VZV_HSD) + (OP_SVE_V_HSD): New macros. + (OP_SVE_VMU_SD, OP_SVE_VMVU_SD, OP_SVE_VM_SD, OP_SVE_VUVV_SD) + (OP_SVE_VU_SD, OP_SVE_VVVU_SD, OP_SVE_VVV_SD, OP_SVE_VZVV_SD) + (OP_SVE_VZV_SD, OP_SVE_V_SD): Delete. + (aarch64_opcode_table): Add new SVE instructions. + (aarch64_opcode_table): Use imm_rotate{1,2} instead of imm_rotate + for rotation operands. Add new SVE operands. + * aarch64-asm.h (ins_sve_addr_ri_s4): New inserter. + (ins_sve_quad_index): Likewise. + (ins_imm_rotate): Split into... + (ins_imm_rotate1, ins_imm_rotate2): ...these two inserters. + * aarch64-asm.c (aarch64_ins_imm_rotate): Split into... + (aarch64_ins_imm_rotate1, aarch64_ins_imm_rotate2): ...these two + functions. + (aarch64_ins_sve_addr_ri_s4): New function. + (aarch64_ins_sve_quad_index): Likewise. + (do_misc_encoding): Handle "MOV Zn.Q, Qm". + * aarch64-asm-2.c: Regenerate. + * aarch64-dis.h (ext_sve_addr_ri_s4): New extractor. + (ext_sve_quad_index): Likewise. + (ext_imm_rotate): Split into... + (ext_imm_rotate1, ext_imm_rotate2): ...these two extractors. + * aarch64-dis.c (aarch64_ext_imm_rotate): Split into... + (aarch64_ext_imm_rotate1, aarch64_ext_imm_rotate2): ...these two + functions. + (aarch64_ext_sve_addr_ri_s4): New function. + (aarch64_ext_sve_quad_index): Likewise. + (aarch64_ext_sve_index): Allow quad indices. + (do_misc_decoding): Likewise. + * aarch64-dis-2.c: Regenerate. + * aarch64-opc.h (FLD_SVE_i3h, FLD_SVE_rot1, FLD_SVE_rot2): New + aarch64_field_kinds. + (OPD_F_OD_MASK): Widen by one bit. + (OPD_F_NO_ZR): Bump accordingly. + (get_operand_field_width): New function. + * aarch64-opc.c (fields): Add new SVE fields. + (operand_general_constraint_met_p): Handle new SVE operands. + (aarch64_print_operand): Likewise. + * aarch64-opc-2.c: Regenerate. + +2017-02-24 Richard Sandiford + + * aarch64-tbl.h (aarch64_feature_simd_v8_3): Replace with... + (aarch64_feature_compnum): ...this. + (SIMD_V8_3): Replace with... + (COMPNUM): ...this. + (CNUM_INSN): New macro. + (aarch64_opcode_table): Use it for the complex number instructions. + +2017-02-24 Jan Beulich + + * i386-dis.c (reg_table): REG_F6/1 and REG_F7/1 decode as TEST. + +2017-02-23 Sheldon Lobo + + Add support for associating SPARC ASIs with an architecture level. + * include/opcode/sparc.h (sparc_asi): New sparc_asi struct. + * opcodes/sparc-opc.c (asi_table): Updated asi_table and encoding/ + decoding of SPARC ASIs. + +2017-02-23 Jan Beulich + + * i386-dis.c (get_valid_dis386): Don't special case VEX opcode + 82. For 3-byte VEX only special case opcode 77 in VEX_0F space. + +2017-02-21 Jan Beulich + + * aarch64-asm.c (convert_bfc_to_bfm): Copy operand 0 to operand + 1 (instead of to itself). Correct typo. + +2017-02-14 Andrew Waterman + + * riscv-opc.c (riscv_opcodes): Add sfence.vma instruction and + pseudoinstructions. + +2017-02-15 Richard Sandiford + + * aarch64-opc.c (aarch64_sys_regs): Add SVE registers. + (aarch64_sys_reg_supported_p): Handle them. + +2017-02-15 Claudiu Zissulescu + + * arc-opc.c (UIMM6_20R): Define. + (SIMM12_20): Use above. + (SIMM12_20R): Define. + (SIMM3_5_S): Use above. + (UIMM7_A32_11R_S): Define. + (UIMM7_9_S): Use above. + (UIMM3_13R_S): Define. + (SIMM11_A32_7_S): Use above. + (SIMM9_8R): Define. + (UIMM10_A32_8_S): Use above. + (UIMM8_8R_S): Define. + (W6): Use above. + (arc_relax_opcodes): Use all above defines. + +2017-02-15 Vineet Gupta + + * arc-regs.h: Distinguish some of the registers different on + ARC700 and HS38 cpus. + +2017-02-14 Alan Modra + + PR 21118 + * ppc-opc.c (powerpc_operands): Flag SPR, SPRG and TBR entries + with PPC_OPERAND_SPR. Flag PSQ and PSQM with PPC_OPERAND_GQR. + +2017-02-11 Stafford Horne + Alan Modra + + * cgen-opc.c (cgen_lookup_insn): Delete buf and base_insn temps. + Use insn_bytes_value and insn_int_value directly instead. Don't + free allocated memory until function exit. + +2017-02-10 Nicholas Piggin + + * ppc-opc.c (powerpc_opcodes) : New mnemonics. + +2017-02-03 Nick Clifton + + PR 21096 + * aarch64-opc.c (print_register_list): Ensure that the register + list index will fir into the tb buffer. + (print_register_offset_address): Likewise. + * tic6x-dis.c (print_insn_tic6x): Increase size of func_unit_buf. + +2017-01-27 Alexis Deruell + + PR 21056 + * tic6x-dis.c (print_insn_tic6x): Correct displaying of parallel + instructions when the previous fetch packet ends with a 32-bit + instruction. + +2017-01-24 Dimitar Dimitrov + + * pru-opc.c: Remove vague reference to a future GDB port. + +2017-01-20 Nick Clifton + + * po/ga.po: Updated Irish translation. + +2017-01-18 Szabolcs Nagy + + * arm-dis.c (coprocessor_opcodes): Fix vcmla mask and disassembly. + +2017-01-13 Yao Qi + + * m68k-dis.c (match_insn_m68k): Extend comments. Return -1 + if FETCH_DATA returns 0. + (m68k_scan_mask): Likewise. + (print_insn_m68k): Update code to handle -1 return value. + +2017-01-13 Yao Qi + + * m68k-dis.c (enum print_insn_arg_error): New. + (NEXTBYTE): Replace -3 with + PRINT_INSN_ARG_MEMORY_ERROR. + (NEXTULONG): Likewise. + (NEXTSINGLE): Likewise. + (NEXTDOUBLE): Likewise. + (NEXTDOUBLE): Likewise. + (NEXTPACKED): Likewise. + (FETCH_ARG): Likewise. + (FETCH_DATA): Update comments. + (print_insn_arg): Update comments. Replace magic numbers with + enum. + (match_insn_m68k): Likewise. + +2017-01-12 Igor Tsimbalist + + * i386-dis.c (enum): Add PREFIX_EVEX_0F3855, EVEX_W_0F3855_P_2. + * i386-dis-evex.h (evex_table): Updated. + * i386-gen.c (cpu_flag_init): Add CPU_AVX512_VPOPCNTDQ_FLAGS, + CPU_ANY_AVX512_VPOPCNTDQ_FLAGS. Update CPU_ANY_AVX512F_FLAGS. + (cpu_flags): Add CpuAVX512_VPOPCNTDQ. + * i386-opc.h (enum): (AVX512_VPOPCNTDQ): New. + (i386_cpu_flags): Add cpuavx512_vpopcntdq. + * i386-opc.tbl: Add Intel AVX512_VPOPCNTDQ instructions. + * i386-init.h: Regenerate. + * i386-tbl.h: Ditto. + +2017-01-12 Yao Qi + + * msp430-dis.c (msp430_singleoperand): Return -1 if + msp430dis_opcode_signed returns false. + (msp430_doubleoperand): Likewise. + (msp430_branchinstr): Return -1 if + msp430dis_opcode_unsigned returns false. + (msp430x_calla_instr): Likewise. + (print_insn_msp430): Likewise. + +2017-01-05 Nick Clifton + + PR 20946 + * frv-desc.c (lookup_mach_via_bfd_name): Return NULL if the name + could not be matched. + (frv_cgen_cpu_open): Allow for lookup_mach_via_bfd_name returning + NULL. + +2017-01-04 Szabolcs Nagy + + * aarch64-tbl.h (RCPC, RCPC_INSN): Define. + (aarch64_opcode_table): Use RCPC_INSN. + +2017-01-03 Kito Cheng + + * riscv-opc.c (riscv-opcodes): Add support for the "q" ISA + extension. + * riscv-opcodes/all-opcodes: Likewise. + +2017-01-03 Dilyan Palauzov + + * riscv-dis.c (print_insn_args): Add fall through comment. + +2017-01-03 Nick Clifton + + * po/sr.po: New Serbian translation. + * configure.ac (ALL_LINGUAS): Add sr. + * configure: Regenerate. + +2017-01-02 Alan Modra + + * epiphany-desc.h: Regenerate. + * epiphany-opc.h: Regenerate. + * fr30-desc.h: Regenerate. + * fr30-opc.h: Regenerate. + * frv-desc.h: Regenerate. + * frv-opc.h: Regenerate. + * ip2k-desc.h: Regenerate. + * ip2k-opc.h: Regenerate. + * iq2000-desc.h: Regenerate. + * iq2000-opc.h: Regenerate. + * lm32-desc.h: Regenerate. + * lm32-opc.h: Regenerate. + * m32c-desc.h: Regenerate. + * m32c-opc.h: Regenerate. + * m32r-desc.h: Regenerate. + * m32r-opc.h: Regenerate. + * mep-desc.h: Regenerate. + * mep-opc.h: Regenerate. + * mt-desc.h: Regenerate. + * mt-opc.h: Regenerate. + * or1k-desc.h: Regenerate. + * or1k-opc.h: Regenerate. + * xc16x-desc.h: Regenerate. + * xc16x-opc.h: Regenerate. + * xstormy16-desc.h: Regenerate. + * xstormy16-opc.h: Regenerate. + +2017-01-02 Alan Modra + + Update year range in copyright notice of all files. + +For older changes see ChangeLog-2016 + +Copyright (C) 2017 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Local Variables: +mode: change-log +left-margin: 8 +fill-column: 74 +version-control: never +End: -- 2.30.2