[Top][All Lists]

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

Re: [Qemu-ppc] [Qemu-devel] [PATCH v2 0/8] target/ppc: remove various en

From: Mark Cave-Ayland
Subject: Re: [Qemu-ppc] [Qemu-devel] [PATCH v2 0/8] target/ppc: remove various endian hacks from int_helper.c
Date: Fri, 18 Jan 2019 13:25:37 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0

On 02/01/2019 02:59, David Gibson wrote:

> On Fri, Dec 28, 2018 at 01:52:27PM +0000, Mark Cave-Ayland wrote:
>> >From working on the TCG vector operations patchset, it is apparent that 
>> >there
>> are a large number of endian-based hacks in int_helper.c which can be 
>> removed by
>> making use of the various Vsr* macros.
>> Patch 1 is simple enough, and implements the complete set of Vsr* macros for
>> both big endian and little endian hosts.
>> Patches 2 and 3 rework the vector merge and multiply algorithms so that they
>> no longer require the endian-dependent HI_IDX and LO_IDX macros.
>> Patches 4 and 5 then completely remove the HI_IDX/LO_IDX and EL_IDX macros by
>> replacing the element accesses with their equivalent Vsr* macro instead.
>> Patches 6 and 7 tidy up the VEXT_SIGNED macro and fix a potential shift bug
>> in the ROTRu32 and ROTRu64 macros pointed out by Richard during the review of
>> v1.
>> Finally patch 8 is an inspection-based removal of other HOST_WORDS_BIGENDIAN
>> hacks in int_helper.c, again replacing accesses with the relevant Vsr* macro
>> instead.
>> Note that there are still some endian hacks left in int_helper.c after this
>> patchset: in particular the delightfully evil VECTOR_FOR_INORDER_I macro 
>> still
>> remains in places where the index variable was used for purposes other than
>> accessing elements within the vector.
>> There were also some parts where additional conversion could be done, but I
>> wasn't confident enough to make the change without access to PPC64 test 
>> images
>> or real big-endian host hardware.
> Applied to ppc-for-4.0, thanks.

Just checking your ppc-for-4.0 branch on github, I can't see where this has been
applied? Is it queued in a local branch still?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]