[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] x86emul: minor cleanup



>>> On 12.06.17 at 17:03, <andrew.cooper3@xxxxxxxxxx> wrote:
> On 12/06/17 15:06, Jan Beulich wrote:
>>>>> On 12.06.17 at 14:41, <andrew.cooper3@xxxxxxxxxx> wrote:
>>> On 12/06/17 07:23, Jan Beulich wrote:
>>>> As a side note, I'm removing these here since the further
>>>> SIMD emulation patches I have ready, but would prefer to
>>>> post only once 4.9 is out, do not add respective code in the
>>>> first place. Without knowing this in advance I'm not even
>>>> sure this would be reliably spottable during review.
>>> These what?  Again sorry, I don't understand what you mean.
>> I have patches to add full AVX, F16C, FMA4, FMA, AVX2, XOP,
>> and 3DNow! support to the emulator. Various of the instructions
>> added can't raise #XM, and the patches don't set insn_bytes if
>> it's not needed for aforementioned generic code inserting RET.
>> I.e. what the patch here removes is what those patches won't
>> add in the first place, yielding an overall consistent result.
> 
> Does this mean you have altered some of the instructions to be straight
> inline?  I can't see how you could get away without a RET otherwise.

No, there are already now two cases: One (the most common) is
for SIMD insns to be taken care of by the respective code block
right after the big switch(). That code needs to know insn_bytes
to put the RET at the right spot. The other case is various less
generic insns being handled entirely inside their case blocks. The
respective code needs to place the RET itself, or else it couldn't
invoke the stub. But it doesn't need to set insn_bytes for that
reason. It is effectively one such case where the patch removes
the setting of the field (as well as the check_xmm_exn()), plus
one other case where the field simply is being set later, at a
point more consistent with how it's being done elsewhere (and
where there already is no matching check_xmm_exn()).

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.