x86_emulate: Fix after decode changes. Valid opcode decode values must
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 14 Oct 2008 18:19:48 +0000 (19:19 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 14 Oct 2008 18:19:48 +0000 (19:19 +0100)
be non-zero.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/arch/x86/x86_emulate/x86_emulate.c

index a7de70650602afa496ea8c22376bd37bff9780f6..8a6202b934c35b7f21cdcd9c6ad4966d65dcd1d5 100644 (file)
 #define DstMem      (3<<1) /* Memory operand. */
 #define DstMask     (3<<1)
 /* Source operand type. */
-#define SrcNone     (0<<3) /* No source operand. */
-#define SrcImplicit (0<<3) /* Source operand is implicit in the opcode. */
-#define SrcReg      (1<<3) /* Register operand. */
-#define SrcMem      (2<<3) /* Memory operand. */
-#define SrcMem16    (3<<3) /* Memory operand (16-bit). */
-#define SrcImm      (4<<3) /* Immediate operand. */
-#define SrcImmByte  (5<<3) /* 8-bit sign-extended immediate operand. */
+#define SrcInvalid  (0<<3) /* Unimplemented opcode. */
+#define SrcNone     (1<<3) /* No source operand. */
+#define SrcImplicit (1<<3) /* Source operand is implicit in the opcode. */
+#define SrcReg      (2<<3) /* Register operand. */
+#define SrcMem      (3<<3) /* Memory operand. */
+#define SrcMem16    (4<<3) /* Memory operand (16-bit). */
+#define SrcImm      (5<<3) /* Immediate operand. */
+#define SrcImmByte  (6<<3) /* 8-bit sign-extended immediate operand. */
 #define SrcMask     (7<<3)
 /* Generic ModRM decode. */
 #define ModRM       (1<<6)