KVM: x86 emulator: fix popf emulation
Set operand type and size to get correct writeback behavior. Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
cf5de4f886
commit
2b48cc75b2
@ -1552,7 +1552,9 @@ special_insn:
|
|||||||
emulate_push(ctxt);
|
emulate_push(ctxt);
|
||||||
break;
|
break;
|
||||||
case 0x9d: /* popf */
|
case 0x9d: /* popf */
|
||||||
|
c->dst.type = OP_REG;
|
||||||
c->dst.ptr = (unsigned long *) &ctxt->eflags;
|
c->dst.ptr = (unsigned long *) &ctxt->eflags;
|
||||||
|
c->dst.bytes = c->op_bytes;
|
||||||
goto pop_instruction;
|
goto pop_instruction;
|
||||||
case 0xa0 ... 0xa1: /* mov */
|
case 0xa0 ... 0xa1: /* mov */
|
||||||
c->dst.ptr = (unsigned long *)&c->regs[VCPU_REGS_RAX];
|
c->dst.ptr = (unsigned long *)&c->regs[VCPU_REGS_RAX];
|
||||||
|
Loading…
Reference in New Issue
Block a user