ia64/xen-unstable

changeset 16696:b5b3e27f1af3

x86_emulate: Correct RIP-relative addressing offset for SHLD/SHRD with
immediate byte third operand.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Wed Jan 09 10:11:31 2008 +0000 (2008-01-09)
parents 4c1a0d2a318d
children 1b2be7cf0b7b
files xen/arch/x86/x86_emulate.c
line diff
     1.1 --- a/xen/arch/x86/x86_emulate.c	Wed Jan 09 10:09:04 2008 +0000
     1.2 +++ b/xen/arch/x86/x86_emulate.c	Wed Jan 09 10:11:31 2008 +0000
     1.3 @@ -1064,6 +1064,9 @@ x86_emulate(
     1.4                      /* Special case in Grp3: test has immediate operand. */
     1.5                      ea.mem.off += (d & ByteOp) ? 1
     1.6                          : ((op_bytes == 8) ? 4 : op_bytes);
     1.7 +                else if ( (b == 0xf7) == 0xa4 )
     1.8 +                    /* SHLD/SHRD with immediate byte third operand. */
     1.9 +                    ea.mem.off++;
    1.10                  break;
    1.11              case 1:
    1.12                  ea.mem.off += insn_fetch_type(int8_t);