arc: Detect usage of illegal double register pairs
[deliverable/binutils-gdb.git] / opcodes / ChangeLog
index b6d52c4920d5d564ee8ad71922f45655a478f2e5..f57188494e29cbc474d109207c9f7a5a7210a209 100644 (file)
@@ -1,3 +1,64 @@
+2020-07-14  Claudiu Zissulescu  <claziss@gmail.com>
+
+       * arc-dis.c (print_insn_arc): Detect and emit a warning when a
+       faulty double register pair is detected.
+
+2020-07-14  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (OP_D): Print dr<N> instead of db<N> in Intel mode.
+
+2020-07-14  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (OP_R, Rm): Delete.
+       (MOD_0F24, MOD_0F26): Rename to ...
+       (X86_64_0F24, X86_64_0F26): ... respectively.
+       (dis386): Update 'L' and 'Z' comments.
+       (dis386_twobyte): Replace Rm by Em. Change opcode 0F24 and 0F26
+       table references.
+       (mod_table): Move opcode 0F24 and 0F26 entries ...
+       (x86_64_table): ... here.
+       (putop): Drop handling of 'L'. Set modrm.mod to 3 for 'Z'. Move
+       'Z' case block.
+
+2020-07-14  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (Rd, Rdq, MaskR): Delete.
+       (MOD_EVEX_0F3828_P_1, MOD_EVEX_0F382A_P_1_W_1,
+       MOD_EVEX_0F3838_P_1, MOD_EVEX_0F383A_P_1_W_0,
+       MOD_EVEX_0F387A_W_0, MOD_EVEX_0F387B_W_0,
+       MOD_EVEX_0F387C): New enumerators.
+       (reg_table): Use Edq for rdssp.
+       (prefix_table): Use Edq for incssp.
+       (mod_table): Use Rm for move to/from %tr. Use MaskE for kand*,
+       kandn*, knot*, kor*, kxnor*, kxor*, kadd*, kunpck*, kortest*,
+       ktest*, and kshift*. Use Edq / MaskE for kmov*.
+       * i386-dis-evex.h: Reference mod_table[] for opcode 0F387C.
+       * i386-dis-evex-mod.h: New entries for opcodes 0F3828, 0F382A,
+       0F3838, 0F383A, 0F387A, 0F387B, and 0F387C.
+       * i386-dis-evex-prefix.h: Reference mod_table[] for opcodes
+       0F3828_P_1 and 0F3838_P_1.
+       * i386-dis-evex-w.h: Reference mod_table[] for opcodes
+       0F382A_P_1, 0F383A_P_1, 0F387A, and 0F387B.
+
+2020-07-14  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c (PREFIX_0F01_REG_7_MOD_3_RM_3,
+       PREFIX_0FAE_REG_5_MOD_0, PREFIX_0FC3_MOD_0, PREFIX_0F38C8,
+       PREFIX_0F38C9, PREFIX_0F38CA, PREFIX_0F38CB, PREFIX_0F38CC,
+       PREFIX_0F38CD, PREFIX_0F38F9, PREFIX_0F3ACC, PREFIX_VEX_0F77,
+       PREFIX_VEX_0F38F2, PREFIX_VEX_0F38F3_REG_1,
+       PREFIX_VEX_0F38F3_REG_2, PREFIX_VEX_0F38F3_REG_3): Delete.
+       (MOD_0F38F9_PREFIX_0, VEX_LEN_0F77_P_0, VEX_LEN_0F38F2_P_0,
+       VEX_LEN_0F38F3_R_1_P_0, VEX_LEN_0F38F3_R_2_P_0,
+       VEX_LEN_0F38F3_R_3_P_0): Rename to ...
+       (MOD_0F38F9, VEX_LEN_0F77, VEX_LEN_0F38F2, VEX_LEN_0F38F3_R_1,
+       VEX_LEN_0F38F3_R_2, VEX_LEN_0F38F3_R_3): ... these respectively.
+       (reg_table, prefix_table, three_byte_table, vex_table,
+       vex_len_table, mod_table, rm_table): Replace / remove respective
+       entries.
+       (intel_operand_size, OP_E_register, OP_G): Avoid undue setting
+       of PREFIX_DATA in used_prefixes.
+
 2020-07-14  Jan Beulich  <jbeulich@suse.com>
 
        * i386-dis.c (MOD_VEX_0F3A30_L_0_W_0, MOD_VEX_0F3A30_L_0_W_1,
This page took 0.023224 seconds and 4 git commands to generate.