2008-01-02 H.J. Lu <hongjiu.lu@intel.com>
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 2 Jan 2008 23:54:47 +0000 (23:54 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 2 Jan 2008 23:54:47 +0000 (23:54 +0000)
* i386-gen.c (opcode_modifiers): Use Qword instead of QWord.
* i386-opc.h: Likewise.
* i386-opc.tbl: Likewise.

opcodes/ChangeLog
opcodes/i386-gen.c
opcodes/i386-opc.h
opcodes/i386-opc.tbl

index a356fe5cb8314e1953e7bbe34c5eb6812c7e76a4..ba93eefda1d97232f0c35a56d3d21fa638df6912 100644 (file)
@@ -1,3 +1,9 @@
+2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-gen.c (opcode_modifiers): Use Qword instead of QWord.
+       * i386-opc.h: Likewise.
+       * i386-opc.tbl: Likewise.
+
 2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR gas/5534
index 52b091a4559283923adcc59b9a455db55cb26a24..8ae6bd02305d5e488c010150f1aead242229c1be 100644 (file)
@@ -279,7 +279,7 @@ static bitfield opcode_modifiers[] =
   BITFIELD (Byte),
   BITFIELD (Word),
   BITFIELD (Dword),
-  BITFIELD (QWord),
+  BITFIELD (Qword),
   BITFIELD (Xmmword),
   BITFIELD (FWait),
   BITFIELD (IsString),
index 12605dd85c646957e25a8127b0e39ac8a8537716..90387306d57f986cb64a894932a62e1c602cfafd 100644 (file)
@@ -175,7 +175,7 @@ typedef union i386_cpu_flags
 #define Size32                 (Size16 + 1)
 /* needs size prefix if in 64-bit mode */
 #define Size64                 (Size32 + 1)
-/* instruction ignores operand size prefix */
+/* instruction ignores operand size prefix and mnemonic size suffix */
 #define IgnoreSize             (Size64 + 1)
 /* default insn size depends on mode */
 #define DefaultSize            (IgnoreSize + 1)
@@ -193,7 +193,8 @@ typedef union i386_cpu_flags
 #define No_ldSuf               (No_qSuf + 1)
 /* x suffix on instruction illegal */
 #define No_xSuf                        (No_ldSuf + 1)
-/* check PTR size on instruction */
+/* check PTR size on instruction in Intel mode.
+   FIXME: Can it be merged with IgnoreSize? */
 #define CheckSize              (No_xSuf + 1)
 /* BYTE PTR on instruction */
 #define Byte                   (CheckSize + 1)
@@ -202,9 +203,9 @@ typedef union i386_cpu_flags
 /* DWORD PTR on instruction */
 #define Dword                  (Word + 1)
 /* QWORD PTR on instruction */
-#define QWord                  (Dword + 1)
+#define Qword                  (Dword + 1)
 /* XMMWORD PTR on instruction */
-#define Xmmword                        (QWord + 1)
+#define Xmmword                        (Qword + 1)
 /* instruction needs FWAIT */
 #define FWait                  (Xmmword + 1)
 /* quick test for string instructions */
index 490835fefecebc195b921a31a6559dba398b602a..3c054d76dda9f9fe97089b705fd84c9a202a3329 100644 (file)
@@ -907,14 +907,14 @@ movd, 2, 0x660f6e, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No
 movd, 2, 0x660f7e, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { RegXMM, Reg32|Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
 // In the 64bit mode the short form mov immediate is redefined to have
 // 64bit displacement value.
-movq, 2, 0xf6f, None, 2, CpuMMX, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|QWord|NoRex64, { BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegMMX, RegMMX }
-movq, 2, 0xf7f, None, 2, CpuMMX, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|QWord|NoRex64, { RegMMX, BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegMMX }
-movq, 2, 0xf30f7e, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|QWord|NoRex64, { BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
-movq, 2, 0x660fd6, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|QWord|NoRex64, { RegXMM, BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM }
-movq, 2, 0xf6e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|CheckSize|QWord|No_ldSuf, { Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S, RegMMX }
-movq, 2, 0xf7e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|QWord, { RegMMX, Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
-movq, 2, 0x660f6e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|QWord, { Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S, RegXMM }
-movq, 2, 0x660f7e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|QWord, { RegXMM, Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
+movq, 2, 0xf6f, None, 2, CpuMMX, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|Qword|NoRex64, { BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegMMX, RegMMX }
+movq, 2, 0xf7f, None, 2, CpuMMX, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|Qword|NoRex64, { RegMMX, BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegMMX }
+movq, 2, 0xf30f7e, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|Qword|NoRex64, { BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM }
+movq, 2, 0x660fd6, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|Qword|NoRex64, { RegXMM, BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM }
+movq, 2, 0xf6e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|CheckSize|wWord|No_ldSuf, { Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S, RegMMX }
+movq, 2, 0xf7e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|Qword, { RegMMX, Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
+movq, 2, 0x660f6e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|Qword, { Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S, RegXMM }
+movq, 2, 0x660f7e, None, 2, Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|CheckSize|Qword, { RegXMM, Reg64|BaseIndex|Disp8|Disp16|Disp32|Disp32S }
 // We put the 64bit displacement first and we only mark constants
 // larger than 32bit as Disp64.
 movq, 2, 0xa0, None, 1, Cpu64, D|W|Size64|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Disp64, Acc }