[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
Re: [Qemu-ppc] [Qemu-devel] [PATCH v2 0/8] target/ppc: remove various endian hacks from int_helper.c
Mon, 21 Jan 2019 09:28:25 +1300
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
> applied? Is it queued in a local branch still?
Yeah, probably. I've pushed it out now.
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
Description: PGP signature