]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - opcodes/ChangeLog
Add markers for binutils 2.35 branch
[thirdparty/binutils-gdb.git] / opcodes / ChangeLog
index f09d59943115e4937609a26fa0513805bb32c7a8..a4215b26160a5dd9cfa56eaa75687d106a2f5a14 100644 (file)
@@ -1,3 +1,239 @@
+2020-07-04  Nick Clifton  <nickc@redhat.com>
+
+       Binutils 2.35 branch created.
+
+2020-07-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-gen.c (opcode_modifiers): Add VexSwapSources.
+       * i386-opc.h (VexSwapSources): New.
+       (i386_opcode_modifier): Add vexswapsources.
+       * i386-opc.tbl: Add VexSwapSources to BMI2 and BMI instructions
+       with two source operands swapped.
+       * i386-tbl.h: Regenerated.
+
+2020-06-30  Nelson Chu  <nelson.chu@sifive.com>
+
+       * riscv-dis.c (print_insn_args, case 'E'): Updated.  Let the
+       unprivileged CSR can also be initialized.
+
+2020-06-29  Alan Modra  <amodra@gmail.com>
+
+       * arm-dis.c: Use C style comments.
+       * cr16-opc.c: Likewise.
+       * ft32-dis.c: Likewise.
+       * moxie-opc.c: Likewise.
+       * tic54x-dis.c: Likewise.
+       * s12z-opc.c: Remove useless comment.
+       * xgate-dis.c: Likewise.
+
+2020-06-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-opc.tbl: Add a blank line.
+
+2020-06-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-gen.c (opcode_modifiers): Replace VecSIB with SIB.
+       (VecSIB128): Renamed to ...
+       (VECSIB128): This.
+       (VecSIB256): Renamed to ...
+       (VECSIB256): This.
+       (VecSIB512): Renamed to ...
+       (VECSIB512): This.
+       (VecSIB): Renamed to ...
+       (SIB): This.
+       (i386_opcode_modifier): Replace vecsib with sib.
+       * i386-opc.tbl (VecSIB128): New.
+       (VecSIB256): Likewise.
+       (VecSIB512): Likewise.
+       Replace VecSIB=1, VecSIB=2 and VecSIB=3 with VecSIB128, VecSIB256
+       and VecSIB512, respectively.
+
+2020-06-26  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c: Adjust description of I macro.
+       (x86_64_table): Drop use of I.
+       (float_mem): Replace use of I.
+       (putop): Remove handling of I. Adjust setting/clearing of "alt".
+
+2020-06-26  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c: (print_insn): Avoid straight assignment to
+       priv.orig_sizeflag when processing -M sub-options.
+
+2020-06-25  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c: Adjust description of J macro.
+       (dis386, x86_64_table, mod_table): Replace J.
+       (putop): Remove handling of J.
+
+2020-06-25  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c: (float_mem): Reduce alternatives for fstpt and fldpt.
+
+2020-06-25  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c: Adjust description of "LQ" macro.
+       (dis386_twobyte): Use LQ for sysret.
+       (putop): Adjust handling of LQ.
+
+2020-06-22  Nelson Chu  <nelson.chu@sifive.com>
+
+       * riscv-opc.c: Move the structures and functions to bfd/elfxx-riscv.c.
+       * riscv-dis.c: Include elfxx-riscv.h.
+
+2020-06-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (prefix_table): Revert the last vmgexit change.
+
+2020-06-17  Lili Cui  <lili.cui@intel.com>
+
+       * i386-dis.c (prefix_table): Delete the incorrect vmgexit.
+
+2020-06-14  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR gas/26115
+       * i386-dis.c (prefix_table): Replace xsuspldtrk with xsusldtrk.
+       * i386-opc.tbl: Likewise.
+       * i386-tbl.h: Regenerated.
+
+2020-06-12  Nelson Chu  <nelson.chu@sifive.com>
+
+       * riscv-opc.c (priv_specs): Remove v1.9 and PRIV_SPEC_CLASS_1P9.
+
+2020-06-11  Alex Coplan  <alex.coplan@arm.com>
+
+       * aarch64-opc.c (SYSREG): New macro for describing system registers.
+       (SR_CORE): Likewise.
+       (SR_FEAT): Likewise.
+       (SR_RNG): Likewise.
+       (SR_V8_1): Likewise.
+       (SR_V8_2): Likewise.
+       (SR_V8_3): Likewise.
+       (SR_V8_4): Likewise.
+       (SR_PAN): Likewise.
+       (SR_RAS): Likewise.
+       (SR_SSBS): Likewise.
+       (SR_SVE): Likewise.
+       (SR_ID_PFR2): Likewise.
+       (SR_PROFILE): Likewise.
+       (SR_MEMTAG): Likewise.
+       (SR_SCXTNUM): Likewise.
+       (aarch64_sys_regs): Refactor to store feature information in the table.
+       (aarch64_sys_reg_supported_p): Collapse logic for system registers
+       that now describe their own features.
+       (aarch64_pstatefield_supported_p): Likewise.
+
+2020-06-09  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (prefix_table): Fix a typo in comments.
+
+2020-06-09  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (rex_ignored): Delete.
+       (ckprefix): Drop rex_ignored initialization.
+       (get_valid_dis386): Drop setting of rex_ignored.
+       (print_insn): Drop checking of rex_ignored. Don't record data
+       size prefix as used with VEX-and-alike encodings.
+
+2020-06-09  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (MOD_0F12_PREFIX_2, MOD_0F16_PREFIX_2,
+       MOD_VEX_0F12_PREFIX_2, MOD_VEX_0F16_PREFIX_2): New enumerators.
+       (VEX_LEN_0F12_P_2, VEX_LEN_0F16_P_2): Delete.
+       (VEX_LEN_0F12_P_2_M_0, VEX_LEN_0F16_P_2_M_0): Define.
+       (prefix_table): Decode MOD for cases 2 of opcodes 0F12, 0F16,
+       VEX_0F12, and VEX_0F16.
+       (vex_len_table): Use X for vmovlp* and vmovh*s. Drop
+       VEX_LEN_0F12_P_2 and VEX_LEN_0F16_P_2 entries.
+       (mod_table): Use X for movlpX and movhpX. Drop PREFIX_OPCODE
+       from movlps and movhlps. New MOD_0F12_PREFIX_2,
+       MOD_0F16_PREFIX_2, MOD_VEX_0F12_PREFIX_2, and
+       MOD_VEX_0F16_PREFIX_2 entries.
+
+2020-06-09  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (MOD_EVEX_0F12_PREFIX_2, MOD_EVEX_0F13,
+       MOD_EVEX_0F16_PREFIX_2, MOD_EVEX_0F17, MOD_EVEX_0F2B): New enumerators.
+       (PREFIX_EVEX_0F13, PREFIX_EVEX_0F14, PREFIX_EVEX_0F15,
+       PREFIX_EVEX_0F17, PREFIX_EVEX_0F28, PREFIX_EVEX_0F29,
+       PREFIX_EVEX_0F2B, PREFIX_EVEX_0F54, PREFIX_EVEX_0F55,
+       PREFIX_EVEX_0F56, PREFIX_EVEX_0F57, PREFIX_EVEX_0FC6,
+       EVEX_W_0F10_P_0, EVEX_W_0F10_P_2, EVEX_W_0F11_P_0,
+       EVEX_W_0F11_P_2, EVEX_W_0F12_P_0_M_0, EVEX_W_0F12_P_2,
+       EVEX_W_0F13_P_0, EVEX_W_0F13_P_2, EVEX_W_0F14_P_0,
+       EVEX_W_0F14_P_2, EVEX_W_0F15_P_0, EVEX_W_0F15_P_2,
+       EVEX_W_0F16_P_0_M_0, EVEX_W_0F16_P_2, EVEX_W_0F17_P_0,
+       EVEX_W_0F17_P_2, EVEX_W_0F28_P_0, EVEX_W_0F28_P_2,
+       EVEX_W_0F29_P_0, EVEX_W_0F29_P_2, EVEX_W_0F2B_P_0,
+       EVEX_W_0F2B_P_2, EVEX_W_0F2E_P_0, EVEX_W_0F2E_P_2,
+       EVEX_W_0F2F_P_0, EVEX_W_0F2F_P_2, EVEX_W_0F51_P_0,
+       EVEX_W_0F51_P_2, EVEX_W_0F54_P_0, EVEX_W_0F54_P_2,
+       EVEX_W_0F55_P_0, EVEX_W_0F55_P_2, EVEX_W_0F56_P_0,
+       EVEX_W_0F56_P_2, EVEX_W_0F57_P_0, EVEX_W_0F57_P_2,
+       EVEX_W_0F58_P_0, EVEX_W_0F58_P_2, EVEX_W_0F59_P_0,
+       EVEX_W_0F59_P_2, EVEX_W_0F5C_P_0, EVEX_W_0F5C_P_2,
+       EVEX_W_0F5D_P_0, EVEX_W_0F5D_P_2, EVEX_W_0F5E_P_0,
+       EVEX_W_0F5E_P_2, EVEX_W_0F5F_P_0, EVEX_W_0F5F_P_2,
+       EVEX_W_0FC2_P_0, EVEX_W_0FC2_P_2, EVEX_W_0FC6_P_0,
+       EVEX_W_0FC6_P_2): Delete.
+       (print_insn): Add EVEX.W vs embedded prefix consistency check
+       to prefix validation.
+       * i386-dis-evex.h (evex_table): Don't further descend for
+       vunpcklpX, vunpckhpX, vmovapX, vandpX, vandnpX, vorpX, vxorpX,
+       and vshufpX. Continue with MOD decoding for opcodes 0F13, 0F17,
+       and 0F2B.
+       * i386-dis-evex-mod.h: Add/adjust vmovlpX/vmovhpX entries.
+       * i386-dis-evex-prefix.h: Don't further descend for vmovupX,
+       vucomisX, vcomisX, vsqrtpX, vaddpX, vmulpX, vsubpX, vminpX,
+       vdivpX, vmaxpX, and vcmppX. Continue with MOD decoding for cases
+       2 of PREFIX_EVEX_0F12, PREFIX_EVEX_0F16, and PREFIX_EVEX_0F29.
+       Drop PREFIX_EVEX_0F13, PREFIX_EVEX_0F14, PREFIX_EVEX_0F15,
+       PREFIX_EVEX_0F17, PREFIX_EVEX_0F28, PREFIX_EVEX_0F2B,
+       PREFIX_EVEX_0F54, PREFIX_EVEX_0F55, PREFIX_EVEX_0F56,
+       PREFIX_EVEX_0F57, and PREFIX_EVEX_0FC6 entries.
+       * i386-dis-evex-w.h: Drop EVEX_W_0F10_P_0, EVEX_W_0F10_P_2,
+       EVEX_W_0F11_P_0, EVEX_W_0F11_P_2, EVEX_W_0F12_P_0_M_0,
+       EVEX_W_0F12_P_2, EVEX_W_0F12_P_3, EVEX_W_0F13_P_0,
+       EVEX_W_0F13_P_2, EVEX_W_0F14_P_0, EVEX_W_0F14_P_2,
+       EVEX_W_0F15_P_0, EVEX_W_0F15_P_2, EVEX_W_0F16_P_0_M_0,
+       EVEX_W_0F16_P_2, EVEX_W_0F17_P_0, EVEX_W_0F17_P_2,
+       EVEX_W_0F28_P_0, EVEX_W_0F28_P_2, EVEX_W_0F29_P_0,
+       EVEX_W_0F29_P_2, EVEX_W_0F2B_P_0, EVEX_W_0F2B_P_2,
+       EVEX_W_0F2E_P_0, EVEX_W_0F2E_P_2, EVEX_W_0F2F_P_0,
+       EVEX_W_0F2F_P_2, EVEX_W_0F51_P_0, EVEX_W_0F51_P_2,
+       EVEX_W_0F54_P_0, EVEX_W_0F54_P_2, EVEX_W_0F55_P_0,
+       EVEX_W_0F55_P_2, EVEX_W_0F56_P_0, EVEX_W_0F56_P_2,
+       EVEX_W_0F57_P_0, EVEX_W_0F57_P_2, EVEX_W_0F58_P_0,
+       EVEX_W_0F58_P_2, EVEX_W_0F59_P_0, EVEX_W_0F59_P_2,
+       EVEX_W_0F5C_P_0, EVEX_W_0F5C_P_2, EVEX_W_0F5D_P_0,
+       EVEX_W_0F5D_P_2, EVEX_W_0F5E_P_0, EVEX_W_0F5E_P_2,
+       EVEX_W_0F5F_P_0, EVEX_W_0F5F_P_2, EVEX_W_0FC2_P_0,
+       EVEX_W_0FC2_P_2, EVEX_W_0FC6_P_0, and EVEX_W_0FC6_P_2 entries.
+
+2020-06-09  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (vex_table): Use PREFIX_OPCODE for vunpcklpX,
+       vunpckhpX, vmovapX, vandpX, vandnpX, vorpX, vxorpX and vshufpX.
+       (vex_len_table) : Likewise for vmovlpX, vmovhpX, vmovntpX, and
+       vmovmskpX.
+       (print_insn): Drop pointless check against bad_opcode. Split
+       prefix validation into legacy and VEX-and-alike parts.
+       (putop): Re-work 'X' macro handling.
+
+2020-06-09  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (MOD_0F51): Rename to ...
+       (MOD_0F50): ... this.
+
+2020-06-08  Alex Coplan  <alex.coplan@arm.com>
+
+       * arm-dis.c (arm_opcodes): Add dfb.
+       (thumb32_opcodes): Add dfb.
+
+2020-06-08  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-opc.h (reg_entry): Const-qualify reg_name field.
+
 2020-06-06  Alan Modra  <amodra@gmail.com>
 
        * ppc-dis.c (ppc_opts): Accept -mpwr10/-Mpwr10.