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? ATB, Mark.
