[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: |
Mon, 21 Jan 2019 05:15:20 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 |
On 20/01/2019 20:28, David Gibson wrote:
> On Fri, Jan 18, 2019 at 01:25:37PM +0000, Mark Cave-Ayland wrote:
>> 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?
>
> Yeah, probably. I've pushed it out now.
Thanks David. I've just had another quick look, and whilst I can see newer
commits in
the branch, I think these ones belonging to this patchset are still missing?
ATB,
Mark.