ia64/xen-unstable

changeset 18629:9b227eb09263

x86_emulate: Fix after decode changes. Valid opcode decode values must
be non-zero.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Tue Oct 14 19:19:48 2008 +0100 (2008-10-14)
parents a72eebf02915
children 91ec8f01d6b9 8c3144b1ff63
files xen/arch/x86/x86_emulate/x86_emulate.c
line diff
     1.1 --- a/xen/arch/x86/x86_emulate/x86_emulate.c	Tue Oct 14 11:49:08 2008 +0100
     1.2 +++ b/xen/arch/x86/x86_emulate/x86_emulate.c	Tue Oct 14 19:19:48 2008 +0100
     1.3 @@ -31,13 +31,14 @@
     1.4  #define DstMem      (3<<1) /* Memory operand. */
     1.5  #define DstMask     (3<<1)
     1.6  /* Source operand type. */
     1.7 -#define SrcNone     (0<<3) /* No source operand. */
     1.8 -#define SrcImplicit (0<<3) /* Source operand is implicit in the opcode. */
     1.9 -#define SrcReg      (1<<3) /* Register operand. */
    1.10 -#define SrcMem      (2<<3) /* Memory operand. */
    1.11 -#define SrcMem16    (3<<3) /* Memory operand (16-bit). */
    1.12 -#define SrcImm      (4<<3) /* Immediate operand. */
    1.13 -#define SrcImmByte  (5<<3) /* 8-bit sign-extended immediate operand. */
    1.14 +#define SrcInvalid  (0<<3) /* Unimplemented opcode. */
    1.15 +#define SrcNone     (1<<3) /* No source operand. */
    1.16 +#define SrcImplicit (1<<3) /* Source operand is implicit in the opcode. */
    1.17 +#define SrcReg      (2<<3) /* Register operand. */
    1.18 +#define SrcMem      (3<<3) /* Memory operand. */
    1.19 +#define SrcMem16    (4<<3) /* Memory operand (16-bit). */
    1.20 +#define SrcImm      (5<<3) /* Immediate operand. */
    1.21 +#define SrcImmByte  (6<<3) /* 8-bit sign-extended immediate operand. */
    1.22  #define SrcMask     (7<<3)
    1.23  /* Generic ModRM decode. */
    1.24  #define ModRM       (1<<6)