debuggers.hg
changeset 16734: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>
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);