[XEN] Fix SIB byte decode when extended by REX.X and REX.B.

Signed-off-by: Keir Fraser <keir@xensource.com>
This commit is contained in:
kfraser@localhost.localdomain committed 2006-11-30 14:04:36 +00:00
1 parent a79440f603
commit dee3a9f6fa
1 file changed
+2 -2
+2 -2
View File
@@ -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;
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.