KVM: x86 emulator: initialize src.val and dst.val for register operands
This lets us treat the case where mod == 3 in the same manner as other cases. Signed-off-by: Avi Kivity <avi@qumranet.com>
This commit is contained in:
parent
a79d2f1805
commit
66b8550573
1 changed files with 2 additions and 0 deletions
|
@ -1001,6 +1001,7 @@ x86_decode_insn(struct x86_emulate_ctxt *ctxt, struct x86_emulate_ops *ops)
|
|||
*/
|
||||
if ((c->d & ModRM) && c->modrm_mod == 3) {
|
||||
c->src.type = OP_REG;
|
||||
c->src.val = c->modrm_val;
|
||||
break;
|
||||
}
|
||||
c->src.type = OP_MEM;
|
||||
|
@ -1044,6 +1045,7 @@ x86_decode_insn(struct x86_emulate_ctxt *ctxt, struct x86_emulate_ops *ops)
|
|||
case DstMem:
|
||||
if ((c->d & ModRM) && c->modrm_mod == 3) {
|
||||
c->dst.type = OP_REG;
|
||||
c->dst.val = c->dst.orig_val = c->modrm_val;
|
||||
break;
|
||||
}
|
||||
c->dst.type = OP_MEM;
|
||||
|
|
Loading…
Add table
Reference in a new issue