[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [XEN] Fix SIB byte decode when extended by REX.X and REX.B.
# HG changeset patch # User kfraser@xxxxxxxxxxxxxxxxxxxxx # Node ID b1d538e557eebfdc72680c3d9087ecea396d0abe # Parent 5d6be0099bdfebb260480176a2e051d83b18d3ed [XEN] Fix SIB byte decode when extended by REX.X and REX.B. Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> --- xen/arch/x86/x86_emulate.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -r 5d6be0099bdf -r b1d538e557ee xen/arch/x86/x86_emulate.c --- a/xen/arch/x86/x86_emulate.c Thu Nov 30 13:05:27 2006 +0000 +++ b/xen/arch/x86/x86_emulate.c Thu Nov 30 14:04:36 2006 +0000 @@ -611,8 +611,8 @@ x86_emulate_memop( if ( modrm_rm == 4 ) { sib = insn_fetch(uint8_t); - sib_index = ((sib >> 3) & 7) | ((modrm << 2) & 8); - sib_base = (sib & 7) | ((modrm << 3) & 8); + sib_index = ((sib >> 3) & 7) | ((rex_prefix << 2) & 8); + sib_base = (sib & 7) | ((rex_prefix << 3) & 8); if ( sib_index != 4 ) ea_off = *(long *)decode_register(sib_index, &_regs, 0); ea_off <<= (sib >> 6) & 3; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |