Implement Intel OSPKE instructions
[deliverable/binutils-gdb.git] / opcodes / ChangeLog
index 3661432d9a7e4982d5ebc685ccadb6a51ac1807e..255a8c6b276594e49567f5628b6120dc20f89ebc 100644 (file)
@@ -1,3 +1,380 @@
+2015-12-09  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (MOD_0F01_REG_5): New.
+       (RM_0F01_REG_5): Likewise.
+       (reg_table): Use MOD_0F01_REG_5.
+       (mod_table): Add MOD_0F01_REG_5.
+       (rm_table): Add RM_0F01_REG_5.
+       * i386-gen.c (cpu_flag_init): Add CPU_OSPKE_FLAGS.
+       (cpu_flags): Add CpuOSPKE.
+       * i386-opc.h (CpuOSPKE): New.
+       (i386_cpu_flags): Add cpuospke.
+       * i386-opc.tbl: Add rdpkru and wrpkru instructions.
+       * i386-init.h: Regenerated.
+       * i386-tbl.h: Likewise.
+
+2015-12-07  DJ Delorie  <dj@redhat.com>
+
+       * rl78-decode.opc: Enable MULU for all ISAs.
+       * rl78-decode.c: Regenerate.
+
+2015-12-07  Alan Modra  <amodra@gmail.com>
+
+       * opcodes/ppc-opc.c (powerpc_opcodes): Sort power9 insns by
+       major opcode/xop.
+
+2015-12-04  Claudiu Zissulescu  <claziss@synopsys.com>
+
+       * arc-dis.c (special_flag_p): Match full mnemonic.
+       * arc-opc.c (print_insn_arc): Check section size to read
+       appropriate number of bytes. Fix printing.
+       * arc-tbl.h: Fix instruction table. Allow clri/seti instruction without
+       arguments.
+
+2015-12-02  Andre Vieira  <andre.simoesdiasvieira@arm.com>
+
+       * arm-dis.c (arm_opcodes): <ldaexh>: Fix typo...
+       <ldah>: ... to this.
+
+2015-11-27  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-asm-2.c: Regenerate.
+       * aarch64-dis-2.c: Regenerate.
+       * aarch64-opc-2.c: Regenerate.
+       * aarch64-tbl.h (QL_FIX2FP_H, QL_FP2FIX_H): New.
+       (QL_INT2FP_H, QL_FP2INT_H): New.
+       (QL_FP2_H, QL_FP3_H, QL_FP4_H): New
+       (QL_DST_H): New.
+       (QL_FCCMP_H): New.
+       (aarch64_opcode_table): Add 16-bit variants of scvt, ucvtf,
+       fcvtzs, fcvtzu, fcvtns, fcvtnu, scvtf, ucvtf, fcvtas, fcvtau,
+       fmov, fcvtpos, fcvtpu, fcvtms, fcvtmu, fcvtzs, fcvtzu, fccmp,
+       fccmpe, fcmp, fcmpe, fabs, fneg, fsqrt, frintn, frintp, frintm,
+       frintz, frinta, frintx, frinti, fmul, fdiv, fadd, fsub, fmax,
+       fmin, fmaxnm, fminnm, fnmul, fmadd, fmsub, fnmadd, fnmsub and
+       fcsel.
+
+2015-11-27  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-opc.c (half_conv_t): New.
+        (expand_fp_imm): Replace is_dp flag with the parameter size to
+       specify the number of bytes for the required expansion.  Treat
+       a 16-bit expansion like a 32-bit expansion.  Add check for an
+       unsupported size request.  Update comment.
+       (aarch64_print_operand): Update to support 16-bit floating point
+       values.  Update for changes to expand_fp_imm.
+
+2015-11-27  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-tbl.h (aarch64_feature_fp_f16): New.
+       (FP_F16): New.
+
+2015-11-27  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-asm-2.c: Regenerate.
+       * aarch64-dis-2.c: Regenerate.
+       * aarch64-opc-2.c: Regenerate.
+       * aarch64-tbl.h (aarchr64_opcode_table): Update "rev", add
+       "rev64".
+
+2015-11-27  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-asm-2.c: Regenerate.
+       * aarch64-asm.c (convert_bfc_to_bfm): New.
+       (convert_to_real): Add case for OP_BFC.
+       * aarch64-dis-2.c: Regenerate.
+       * aarch64-dis.c: (convert_bfm_to_bfc): New.
+       (convert_to_alias): Add case for OP_BFC.
+       * aarch64-opc-2.c: Regenerate.
+       * aarch64-opc.c (operand_general_constraint_met_p): Weaken assert
+       to allow width operand in three-operand instructions.
+       * aarch64-tbl.h (QL_BF1): New.
+       (aarch64_feature_v8_2): New.
+       (ARMV8_2): New.
+       (aarch64_opcode_table): Add "bfc".
+
+2015-11-27  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-asm-2.c: Regenerate.
+       * aarch64-dis-2.c: Regenerate.
+       * aarch64-dis.c: Weaken assert.
+       * aarch64-gen.c: Include the instruction in the list of its
+       possible aliases.
+
+2015-11-27  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-opc.c (aarch64_sys_regs): Add "id_aa64mmfr2_el1".
+       (aarch64_sys_reg_supported_p): Add ARMv8.2 system register
+       feature test.
+
+2015-11-23  Tristan Gingold  <gingold@adacore.com>
+
+       * arm-dis.c (print_insn): Also set is_thumb for Mach-O.
+
+2015-11-20  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-opc.c (aarch64_sys_regs): Add spsr_el12, elr_el12,
+       sctlr_el12, cpacr_el12, ttbr1_el2, ttbr0_el12, ttbr1_el12,
+       tcr_el12, afsr0_el12, afsr1_el12, esr_el12, far_el12, mair_el12,
+       amair_el12, vbar_el12, contextidr_el2, contextidr_el12,
+       cntkctl_el12, cntp_tval_el02, cntp_ctl_el02, cntp_cval_el02,
+       cntv_tval_el02, cntv_ctl_el02, cntv_cval_el02, cnthv_tval_el2,
+       cnthv_ctl_el2, cnthv_cval_el2.
+       (aarch64_sys_reg_supported_p): Update for the new system
+       registers.
+
+2015-11-20  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/19224
+       * h8300-dis.c (bfd_h8_disassemble): Remove redundant if clause.
+
+2015-11-20  Nick Clifton  <nickc@redhat.com>
+
+       * po/zh_CN.po: Updated simplified Chinese translation.
+
+2015-11-19  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * aarch64-opc.c (operand_general_constraint_met_p): Check validity
+       of MSR PAN immediate operand.
+
+2015-11-16  Nick Clifton  <nickc@redhat.com>
+
+       * rx-dis.c (condition_names): Replace always and never with
+       invalid, since the always/never conditions can never be legal.
+
+2015-11-13  Tristan Gingold  <gingold@adacore.com>
+
+       * configure: Regenerate.
+
+2015-11-11  Alan Modra  <amodra@gmail.com>
+           Peter Bergner <bergner@vnet.ibm.com>
+
+       * ppc-dis.c (ppc_opts): Add "power9" and "pwr9" entries.
+       Add PPC_OPCODE_VSX3 to the vsx entry.
+       (powerpc_init_dialect): Set default dialect to power9.
+       * ppc-opc.c (insert_dcmxs, extract_dcmxs, insert_dxd, extract_dxd,
+       insert_dxdn, extract_dxdn, insert_l0, extract_l0, insert_l1,
+       extract_l1 insert_xtq6, extract_xtq6): New static functions.
+       (insert_esync): Test for illegal L operand value.
+       (DCMX, DCMXS, DXD, NDXD, L0, L1, RC, FC, UIM6, X_R, RIC, PRS, XSQ6,
+       XTQ6, LRAND, IMM8, DQX, DQX_MASK, DX, DX_MASK, VXVAPS_MASK, VXVA,XVA,
+       XX2VA, XVARC, XBF_MASK, XX2UIM4_MASK, XX2BFD_MASK, XX2DCMXS_MASK,
+       XVA_MASK, XRLA_MASK, XBFRARB_MASK, XLRAND_MASK, POWER9, PPCVEC3,
+       PPCVSX3): New defines.
+       (powerpc_opcodes) <ps_cmpu0, ps_cmpo0, ps_cmpu1, ps_cmpo1, fcmpu,
+       fcmpo, ftdiv, ftsqrt>: Use XBF_MASK.
+       <mcrxr>: Use XBFRARB_MASK.
+       <addpcis, bcdcfn., bcdcfsq., bcdcfz., bcdcpsgn., bcdctn., bcdctsq.,
+       bcdctz., bcds., bcdsetsgn., bcdsr., bcdtrunc., bcdus., bcdutrunc.,
+       cmpeqb, cmprb, cnttzd, cnttzd., cnttzw, cnttzw., copy, copy_first,
+       cp_abort, darn, dtstsfi, dtstsfiq, extswsli, extswsli., ldat, ldmx,
+       lwat, lxsd, lxsibzx, lxsihzx, lxssp, lxv, lxvb16x, lxvh8x, lxvl, lxvll,
+       lxvwsx, lxvx, maddhd, maddhdu, maddld, mcrxrx, mfvsrld, modsd, modsw,
+       modud, moduw, msgsync, mtvsrdd, mtvsrws, paste, paste., paste_last,
+       rmieg, setb, slbieg, slbsync, stdat, stop, stwat, stxsd, stxsibx,
+       stxsihx, stxssp, stxv, stxvb16x, stxvh8x, stxvl, stxvll, stxvx,
+       subpcis, urfid, vbpermd, vclzlsbb, vcmpneb, vcmpneb., vcmpneh,
+       vcmpneh., vcmpnew, vcmpnew., vcmpnezb, vcmpnezb., vcmpnezh, vcmpnezh.,
+       vcmpnezw, vcmpnezw., vctzb, vctzd, vctzh, vctzlsbb, vctzw, vextractd,
+       vextractub, vextractuh, vextractuw, vextsb2d, vextsb2w, vextsh2d,
+       vextsh2w, vextsw2d, vextublx, vextubrx, vextuhlx, vextuhrx, vextuwlx,
+       vextuwrx, vinsertb, vinsertd, vinserth, vinsertw, vmul10cuq,
+       vmul10ecuq, vmul10euq, vmul10uq, vnegd, vnegw, vpermr, vprtybd,
+       vprtybq, vprtybw, vrldmi, vrldnm, vrlwmi, vrlwnm, vslv, vsrv, wait,
+       xsabsqp, xsaddqp, xsaddqpo, xscmpeqdp, xscmpexpdp, xscmpexpqp,
+       xscmpgedp, xscmpgtdp, xscmpnedp, xscmpoqp, xscmpuqp, xscpsgnqp,
+       xscvdphp, xscvdpqp, xscvhpdp, xscvqpdp, xscvqpdpo, xscvqpsdz,
+       xscvqpswz, xscvqpudz, xscvqpuwz, xscvsdqp, xscvudqp, xsdivqp,
+       xsdivqpo, xsiexpdp, xsiexpqp, xsmaddqp, xsmaddqpo, xsmaxcdp,
+       xsmaxjdp, xsmincdp, xsminjdp, xsmsubqp, xsmsubqpo, xsmulqp, xsmulqpo,
+       xsnabsqp, xsnegqp, xsnmaddqp, xsnmaddqpo, xsnmsubqp, xsnmsubqpo,
+       xsrqpi, xsrqpix, xsrqpxp, xssqrtqp, xssqrtqpo, xssubqp, xssubqpo,
+       xststdcdp, xststdcqp, xststdcsp, xsxexpdp, xsxexpqp, xsxsigdp,
+       xsxsigqp, xvcmpnedp, xvcmpnedp., xvcmpnesp, xvcmpnesp., xvcvhpsp,
+       xvcvsphp, xviexpdp, xviexpsp, xvtstdcdp, xvtstdcsp, xvxexpdp,
+       xvxexpsp, xvxsigdp, xvxsigsp, xxbrd, xxbrh, xxbrq, xxbrw, xxextractuw,
+       xxinsertw, xxperm, xxpermr, xxspltib>: New instructions.
+       <doze, nap, sleep, rvwinkle, waitasec, lxvx, stxvx>: Disable on POWER9.
+       <tlbiel, tlbie, sync, slbmfev, slbmfee>: Add additional operands.
+
+2015-11-02  Nick Clifton  <nickc@redhat.com>
+
+       * rx-decode.opc (rx_decode_opcode): Decode extra NOP
+       instructions.
+       * rx-decode.c: Regenerate.
+
+2015-11-02  Nick Clifton  <nickc@redhat.com>
+
+       * rx-decode.opc (rx_disp): If the displacement is zero, set the
+       type to RX_Operand_Zero_Indirect.
+       * rx-decode.c: Regenerate.
+       * rx-dis (print_insn): Handle RX_Operand_Zero_Indirect.
+
+2015-10-28  Yao Qi  <yao.qi@linaro.org>
+
+       * aarch64-dis.c (aarch64_decode_insn): Add one argument
+       noaliases_p.  Update comments.  Pass noaliases_p rather than
+       no_aliases to aarch64_opcode_decode.
+       (print_insn_aarch64_word): Pass no_aliases to
+       aarch64_decode_insn.
+
+2015-10-27  Vinay  <Vinay.G@kpit.com>
+
+       PR binutils/19159
+       * rl78-decode.opc (MOV): Added offset to DE register in index
+       addressing mode.
+       * rl78-decode.c: Regenerate.
+
+2015-10-27  Vinay Kumar  <vinay.g@kpit.com>
+
+       PR binutils/19158
+       * rl78-decode.opc: Add 's' print operator to instructions that
+       access system registers.
+       * rl78-decode.c: Regenerate.
+       * rl78-dis.c (print_insn_rl78_common): Decode all system
+       registers.
+
+2015-10-27  Vinay Kumar  <vinay.g@kpit.com>
+
+       PR binutils/19157
+       * rl78-decode.opc: Add 'a' print operator to mov instructions
+       using stack pointer plus index addressing.
+       * rl78-decode.c: Regenerate.
+
+2015-10-14  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * s390-opc.c: Fix comment.
+       * s390-opc.txt: Change instruction type for troo, trot, trto, and
+       trtt to RRF_U0RER since the second parameter does not need to be a
+       register pair.
+
+2015-10-08  Nick Clifton  <nickc@redhat.com>
+
+       * arc-dis.c (print_insn_arc): Initiallise insn array.
+
+2015-10-07  Yao Qi  <yao.qi@linaro.org>
+
+       * aarch64-dis.c (aarch64_ext_sysins_op): Access field
+       'name' rather than 'template'.
+       * aarch64-opc.c (aarch64_print_operand): Likewise.
+
+2015-10-07  Claudiu Zissulescu <claziss@synopsys.com>
+
+       * arc-dis.c: Revamped file for ARC support
+       * arc-dis.h: Likewise.
+       * arc-ext.c: Likewise.
+       * arc-ext.h: Likewise.
+       * arc-opc.c: Likewise.
+       * arc-fxi.h: New file.
+       * arc-regs.h: Likewise.
+       * arc-tbl.h: Likewise.
+
+2015-10-02  Yao Qi  <yao.qi@linaro.org>
+
+       * aarch64-dis.c (disas_aarch64_insn): Remove static.  Change
+       argument insn type to aarch64_insn.  Rename to ...
+       (aarch64_decode_insn): ... it.
+       (print_insn_aarch64_word): Caller updated.
+
+2015-10-02  Yao Qi  <yao.qi@linaro.org>
+
+       * aarch64-dis.c (disas_aarch64_insn): Remove argument PC.
+       (print_insn_aarch64_word): Caller updated.
+
+2015-09-29  Dominik Vogt  <vogt@linux.vnet.ibm.com>
+
+       * s390-mkopc.c (main): Parse htm and vx flag.
+       * s390-opc.txt: Mark instructions from the hardware transactional
+       memory and vector facilities with the "htm"/"vx" flag.
+
+2015-09-28  Nick Clifton  <nickc@redhat.com>
+
+       * po/de.po: Updated German translation.
+
+2015-09-28  Tom Rix  <tom@bumblecow.com>
+
+       * ppc-opc.c (PPC500): Mark some opcodes as invalid
+
+2015-09-23  Nick Clifton  <nickc@redhat.com>
+
+       * bfin-dis.c (fmtconst): Remove unnecessary call to the abs
+       function.
+       * tic30-dis.c (print_branch): Likewise.
+       * cgen-asm.c (cgen_parse_signed_integer): Cast integer to signed
+       value before left shifting.
+       * fr30-ibld.c (fr30_cgen_extract_operand): Likewise.
+       * hppa-dis.c (print_insn_hppa): Likewise.
+       * mips-dis.c (mips_cp0sel_names_mipsr5900): Delete unused static
+       array.
+       * msp430-dis.c (msp430_singleoperand): Likewise.
+       (msp430_doubleoperand): Likewise.
+       (print_insn_msp430): Likewise.
+       * nds32-asm.c (parse_operand): Likewise.
+       * sh-opc.h (MASK): Likewise.
+       * v850-dis.c (get_operand_value): Likewise.
+
+2015-09-22  Nick Clifton  <nickc@redhat.com>
+
+       * rx-decode.opc (bwl): Use RX_Bad_Size.
+       (sbwl): Likewise.
+       (ubwl): Likewise.  Rename to ubw.
+       (uBWL): Rename to uBW.
+       Replace all references to uBWL with uBW.
+       * rx-decode.c: Regenerate.
+       * rx-dis.c (size_names): Add entry for RX_Bad_Size.
+       (opsize_names): Likewise.
+       (print_insn_rx): Detect and report RX_Bad_Size.
+
+2015-09-22  Anton Blanchard  <anton@samba.org>
+
+       * ppc-opc.c (powerpc_opcodes): Add mfdscr, mfctrl, mtdscr and mtctrl.
+
+2015-08-25  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * sparc-dis.c (print_insn_sparc): Handle the privileged register
+       %pmcdper.
+
+2015-08-24  Jan Stancek  <jstancek@redhat.com>
+
+       * i386-dis.c (print_insn): Fix decoding of three byte operands.
+
+2015-08-21  Alexander Fomin  <alexander.fomin@intel.com>
+
+       PR binutils/18257
+       * i386-dis.c: Use MOD_TABLE for most of mask instructions.
+       (MOD enum): Add MOD_VEX_W_0_0F41_P_0_LEN_1,
+       MOD_VEX_W_1_0F41_P_0_LEN_1, MOD_VEX_W_0_0F41_P_2_LEN_1,
+       MOD_VEX_W_1_0F41_P_2_LEN_1, MOD_VEX_W_0_0F42_P_0_LEN_1,
+       MOD_VEX_W_1_0F42_P_0_LEN_1, MOD_VEX_W_0_0F42_P_2_LEN_1,
+       MOD_VEX_W_1_0F42_P_2_LEN_1, MOD_VEX_W_0_0F44_P_0_LEN_1,
+       MOD_VEX_W_1_0F44_P_0_LEN_1, MOD_VEX_W_0_0F44_P_2_LEN_1,
+       MOD_VEX_W_1_0F44_P_2_LEN_1, MOD_VEX_W_0_0F45_P_0_LEN_1,
+       MOD_VEX_W_1_0F45_P_0_LEN_1, MOD_VEX_W_0_0F45_P_2_LEN_1,
+       MOD_VEX_W_1_0F45_P_2_LEN_1, MOD_VEX_W_0_0F46_P_0_LEN_1,
+       MOD_VEX_W_1_0F46_P_0_LEN_1, MOD_VEX_W_0_0F46_P_2_LEN_1,
+       MOD_VEX_W_1_0F46_P_2_LEN_1, MOD_VEX_W_0_0F47_P_0_LEN_1,
+       MOD_VEX_W_1_0F47_P_0_LEN_1, MOD_VEX_W_0_0F47_P_2_LEN_1,
+       MOD_VEX_W_1_0F47_P_2_LEN_1, MOD_VEX_W_0_0F4A_P_0_LEN_1,
+       MOD_VEX_W_1_0F4A_P_0_LEN_1, MOD_VEX_W_0_0F4A_P_2_LEN_1,
+       MOD_VEX_W_1_0F4A_P_2_LEN_1, MOD_VEX_W_0_0F4B_P_0_LEN_1,
+       MOD_VEX_W_1_0F4B_P_0_LEN_1, MOD_VEX_W_0_0F4B_P_2_LEN_1,
+       MOD_VEX_W_0_0F91_P_0_LEN_0, MOD_VEX_W_1_0F91_P_0_LEN_0,
+       MOD_VEX_W_0_0F91_P_2_LEN_0, MOD_VEX_W_1_0F91_P_2_LEN_0,
+       MOD_VEX_W_0_0F92_P_0_LEN_0, MOD_VEX_W_0_0F92_P_2_LEN_0,
+       MOD_VEX_W_0_0F92_P_3_LEN_0, MOD_VEX_W_1_0F92_P_3_LEN_0,
+       MOD_VEX_W_0_0F93_P_0_LEN_0, MOD_VEX_W_0_0F93_P_2_LEN_0,
+       MOD_VEX_W_0_0F93_P_3_LEN_0, MOD_VEX_W_1_0F93_P_3_LEN_0,
+       MOD_VEX_W_0_0F98_P_0_LEN_0, MOD_VEX_W_1_0F98_P_0_LEN_0,
+       MOD_VEX_W_0_0F98_P_2_LEN_0, MOD_VEX_W_1_0F98_P_2_LEN_0,
+       MOD_VEX_W_0_0F99_P_0_LEN_0, MOD_VEX_W_1_0F99_P_0_LEN_0,
+       MOD_VEX_W_0_0F99_P_2_LEN_0, MOD_VEX_W_1_0F99_P_2_LEN_0,
+       MOD_VEX_W_0_0F3A30_P_2_LEN_0, MOD_VEX_W_1_0F3A30_P_2_LEN_0,
+       MOD_VEX_W_0_0F3A31_P_2_LEN_0, MOD_VEX_W_1_0F3A31_P_2_LEN_0,
+       MOD_VEX_W_0_0F3A32_P_2_LEN_0, MOD_VEX_W_1_0F3A32_P_2_LEN_0,
+       MOD_VEX_W_0_0F3A33_P_2_LEN_0, MOD_VEX_W_1_0F3A33_P_2_LEN_0.
+       (vex_w_table): Replace terminals with MOD_TABLE entries for
+       most of mask instructions.
+
 2015-08-17  Alan Modra  <amodra@gmail.com>
 
        * cgen.sh: Trim trailing space from cgen output.
This page took 0.026392 seconds and 4 git commands to generate.