On 02/01/2019 06:35, David Gibson wrote:

> On Sun, Dec 23, 2018 at 11:15:24AM +0000, Mark Cave-Ayland wrote:
>> The VSX register array is a block of 64 128-bit registers where the first 32
>> registers consist of the existing 64-bit FP registers extended to 128-bit
>> using new VSR registers, and the last 32 registers are the VMX 128-bit
>> registers as show below:
>>
>>             64-bit               64-bit
>>     +--------------------+--------------------+
>>     |        FP0         |                    |  VSR0
>>     +--------------------+--------------------+
>>     |        FP1         |                    |  VSR1
>>     +--------------------+--------------------+
>>     |        ...         |        ...         |  ...
>>     +--------------------+--------------------+
>>     |        FP30        |                    |  VSR30
>>     +--------------------+--------------------+
>>     |        FP31        |                    |  VSR31
>>     +--------------------+--------------------+
>>     |                  VMX0                   |  VSR32
>>     +-----------------------------------------+
>>     |                  VMX1                   |  VSR33
>>     +-----------------------------------------+
>>     |                  ...                    |  ...
>>     +-----------------------------------------+
>>     |                  VMX30                  |  VSR62
>>     +-----------------------------------------+
>>     |                  VMX31                  |  VSR63
>>     +-----------------------------------------+
>>
>> In order to allow for future conversion of VSX instructions to use TCG vector
>> operations, recreate the same layout using an aligned version of the existing
>> vsr register array.
>>
>> Since the old fpr and avr register arrays are removed, the existing callers
>> must also be updated to use the correct offset in the vsr register array. 
>> This
>> also includes switching the relevant VMState fields over to using subarrays
>> to make sure that migration is preserved.
>>
>> Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk>
>> Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
>> Acked-by: David Gibson <da...@gibson.dropbear.id.au>
> 
> Sorry, I had to pull this out of ppc-for-4.0 again (and I pulled all
> the later patches in the series out for safety as well).  It breaks
> build on a ppc host - looks like you haven't updated the code to push
> pull the VSX state to KVM.

Apologies for that. I've now fixed up and compile tested target/ppc/kvm.c on a 
PPC
host, and will post an updated v5 shortly.


ATB,

Mark.

Reply via email to