[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4FA7910A.9040508@redhat.com>
Date: Mon, 07 May 2012 12:08:26 +0300
From: Avi Kivity <avi@...hat.com>
To: Joerg Roedel <joerg.roedel@....com>
CC: Marcelo Tosatti <mtosatti@...hat.com>, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] KVM: X86: Add mmx movq emulation
On 05/07/2012 11:56 AM, Joerg Roedel wrote:
> > Since you've just thought of the issues involved, I'd appreciate a
> > review of the commits above, both wrt correctness and
> > maintainability.
>
> The patches above look correct to me. In fact cbe2c9d30 is more general
> than my implementation because it fetches all possible mmx operands.
>
> My implementation on the other side should be a bit faster because it
> looks for FP exceptions directly when the registers are accessed which
> saves one get_fpu/put_fpu cycle (and an fwait instruction).
The get_fpu/put_fpu are nops (unless we schedule in between), since we
only put_fpu() doesn't really unload the fpu. You're correct about the
fwait; my motivation was to get the #MF exception early instead of doing
the accesses first.
> > In fact I already see one difference - my patches do reg &= 7, while
> > your patches generate #UD for %mm8-%mm15.
>
> Your version is correct. Documentation says that REX-prefixes are
> ignored where not supported or misplaced. I also tried that directly on
> hardware and it works as documented and implemented in KVM.
Thanks for verifying.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists