2012-02-21 Tristan Gingold <gingold@adacore.com>
[deliverable/binutils-gdb.git] / opcodes / i386-opc.h
index a92223cabd0bd51eaa9d6059f22a18aa0565d133..f130a96ce87f6c05f7cdce16eed044dc02581a3a 100644 (file)
@@ -134,6 +134,10 @@ enum
   CpuBMI2,
   /* LZCNT support required */
   CpuLZCNT,
+  /* HLE support required */
+  CpuHLE,
+  /* RTM support required */
+  CpuRTM,
   /* INVPCID Instructions required */
   CpuINVPCID,
   /* VMFUNC Instruction required */
@@ -214,6 +218,8 @@ typedef union i386_cpu_flags
       unsigned int cpuf16c:1;
       unsigned int cpubmi2:1;
       unsigned int cpulzcnt:1;
+      unsigned int cpuhle:1;
+      unsigned int cpurtm:1;
       unsigned int cpuinvpcid:1;
       unsigned int cpuvmfunc:1;
       unsigned int cpulm:1;
@@ -293,6 +299,16 @@ enum
   FirstXmm0,
   /* An implicit xmm0 as the first operand */
   Implicit1stXmm0,
+  /* The HLE prefix is OK:
+     1. With a LOCK prefix.
+     2. With or without a LOCK prefix.
+     3. With a RELEASE (0xf3) prefix.
+   */
+#define HLEPrefixNone          0
+#define HLEPrefixLock          1
+#define HLEPrefixAny           2
+#define HLEPrefixRelease       3
+  HLEPrefixOk,
   /* Convert to DWORD */
   ToDword,
   /* Convert to QWORD */
@@ -426,6 +442,7 @@ typedef struct i386_opcode_modifier
   unsigned int regkludge:1;
   unsigned int firstxmm0:1;
   unsigned int implicit1stxmm0:1;
+  unsigned int hleprefixok:2;
   unsigned int todword:1;
   unsigned int toqword:1;
   unsigned int addrprefixop0:1;
This page took 0.024821 seconds and 4 git commands to generate.