diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c index c9cf30b443..c5443dd3ec 100644 --- a/xen/arch/x86/x86_emulate/x86_emulate.c +++ b/xen/arch/x86/x86_emulate/x86_emulate.c @@ -2461,8 +2461,8 @@ x86_emulate( else { generate_exception_if(!n, X86_EXC_DE); - _regs.al = _regs.al % n; _regs.ah = _regs.al / n; + _regs.al = _regs.al % n; } _regs.eflags &= ~(X86_EFLAGS_SF | X86_EFLAGS_ZF | X86_EFLAGS_PF); _regs.eflags |= !_regs.al ? X86_EFLAGS_ZF : 0;