Messages in this thread Patch in this message |  | | From | Nadav Amit <> | | Subject | [PATCH] KVM: Fix MOVSX emulation | | Date | Sat, 14 Jan 2012 20:34:08 +0200 |
| |
The destination register of MOVSX should be decoded similarily to MOVZX.
Signed-off-by: Nadav Amit <nadav.amit@gmail.com> --- arch/x86/kvm/emulate.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c index 05a562b..7644a83 100644 --- a/arch/x86/kvm/emulate.c +++ b/arch/x86/kvm/emulate.c @@ -3553,7 +3553,8 @@ static int decode_operand(struct x86_emulate_ctxt *ctxt, struct operand *op, case OpReg: decode_register_operand(ctxt, op, op == &ctxt->dst && - ctxt->twobyte && (ctxt->b == 0xb6 || ctxt->b == 0xb7)); + ctxt->twobyte && ((ctxt->b & 0xfe) == 0xb6 || + (ctxt->b & 0xfe) == 0xbe)); break; case OpImmUByte: rc = decode_imm(ctxt, op, 1, false); -- 1.7.4.1
|  |