aboutsummaryrefslogtreecommitdiff
path: root/opcodes/i386-opc.h
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2009-12-16 15:43:16 +0000
committerH.J. Lu <hjl.tools@gmail.com>2009-12-16 15:43:16 +0000
commit7f399153c6099e976a06562a602f9654f506b64e (patch)
tree33f7b86622b4c070c7987fdd5bb79b1fc82a0d5c /opcodes/i386-opc.h
parent76c10ea2bb2559aa32ea4b846d30a606b6f78bff (diff)
downloadfsf-binutils-gdb-7f399153c6099e976a06562a602f9654f506b64e.zip
fsf-binutils-gdb-7f399153c6099e976a06562a602f9654f506b64e.tar.gz
fsf-binutils-gdb-7f399153c6099e976a06562a602f9654f506b64e.tar.bz2
Replace Vex0F, Vex0F38, Vex0F3A, XOP08, XOP09 and XOP0A with VexOpcode.
gas/ 2009-12-16 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (build_vex_prefix): Replace vex0f, vex0f38, vex0f3a, xop08, xop09 and xop0a with vexopcode. opcodes/ 2009-12-16 H.J. Lu <hongjiu.lu@intel.com> * i386-gen.c (opcode_modifiers): Remove Vex0F, Vex0F38, Vex0F3A, XOP08, XOP09 and XOP0A. Add VexOpcode. * i386-opc.h (Vex0F): Removed. (Vex0F38): Likewise. (Vex0F3A): Likewise. (VexOpcode): New. (VEX0F): Likewise. (VEX0F38): Likewise. (VEX0F3A): Likewise. (XOP08): Defined as a macro. (XOP09): Likewise. (XOP0A): Likewise. (i386_opcode_modifier): Remove vex0f, vex0f38, vex0f3a, xop08, xop09 and xop0a. Add vexopcode. * i386-opc.tbl: Replace Vex0F with VexOpcode=0, Vex0F38 with VexOpcode=1, Vex0F3A with VexOpcode=2, XOP08 with VexOpcode=3, XOP09 with VexOpcode=4 and XOP0A with VexOpcode=5. * i386-tbl.h: Regenerated.
Diffstat (limited to 'opcodes/i386-opc.h')
-rw-r--r--opcodes/i386-opc.h34
1 files changed, 16 insertions, 18 deletions
diff --git a/opcodes/i386-opc.h b/opcodes/i386-opc.h
index afed367..3137a67 100644
--- a/opcodes/i386-opc.h
+++ b/opcodes/i386-opc.h
@@ -294,18 +294,21 @@ enum
#define VEXW0 1
#define VEXW1 2
VexW,
- /* insn has VEX 0x0F opcode prefix. */
- Vex0F,
- /* insn has VEX 0x0F38 opcode prefix. */
- Vex0F38,
- /* insn has VEX 0x0F3A opcode prefix. */
- Vex0F3A,
- /* insn has XOP 0x08 opcode prefix. */
- XOP08,
- /* insn has XOP 0x09 opcode prefix. */
- XOP09,
- /* insn has XOP 0x0A opcode prefix. */
- XOP0A,
+ /* VEX opcode prefix:
+ 0: VEX 0x0F opcode prefix.
+ 1: VEX 0x0F38 opcode prefix.
+ 2: VEX 0x0F3A opcode prefix
+ 3: XOP 0x08 opcode prefix.
+ 4: XOP 0x09 opcode prefix
+ 5: XOP 0x0A opcode prefix.
+ */
+#define VEX0F 0
+#define VEX0F38 1
+#define VEX0F3A 2
+#define XOP08 3
+#define XOP09 4
+#define XOP0A 5
+ VexOpcode,
/* number of VEX source operands:
0: <= 2 source operands.
1: 2 XOP source operands.
@@ -377,12 +380,7 @@ typedef struct i386_opcode_modifier
unsigned int vexndd:1;
unsigned int vexlwp:1;
unsigned int vexw:2;
- unsigned int vex0f:1;
- unsigned int vex0f38:1;
- unsigned int vex0f3a:1;
- unsigned int xop08:1;
- unsigned int xop09:1;
- unsigned int xop0a:1;
+ unsigned int vexopcode:3;
unsigned int vexsources:2;
unsigned int veximmext:1;
unsigned int sse2avx:1;