Re: [PATCH,rs6000] Add built-in function support for Power9 byte instructions

2016-11-15 Thread Segher Boessenkool
On Tue, Nov 15, 2016 at 12:16:19PM -0700, Kelvin Nilsen wrote: > The reason I am using SI mode is so that I don't have to disqualify the > use of these functions on a 32-bit big-endian configuration. > > Do you want me to switch to DI mode for all the operands? SI is fine, and can give slightly b

Re: [PATCH,rs6000] Add built-in function support for Power9 byte instructions

2016-11-15 Thread Kelvin Nilsen
> >> Thanks for catching this. I think I got endian confusion inside my head >> while I was writing the above. I will rewrite these comments, below also. > > Note the ISA calls the bits in 32-bit registers 32..63, so that 63 is > the rightmost bit in all registers. > True, but the ISA only u

Re: [PATCH,rs6000] Add built-in function support for Power9 byte instructions

2016-11-15 Thread Segher Boessenkool
On Tue, Nov 15, 2016 at 11:05:07AM -0700, Kelvin Nilsen wrote: > >>* config/rs6000/altivec.md (UNSPEC_CMPRB): New unspec value. > >>(UNSPEC_CMPRB2): New unspec value. > > > > I wonder if you really need both? The number of arguments will tell > > which is which, anyway? > > I appreciate

Re: [PATCH,rs6000] Add built-in function support for Power9 byte instructions

2016-11-15 Thread Kelvin Nilsen
Thank you very much for the prompt and thorough review. There are a few points below where I'd like to seek further clarification. On 11/15/2016 04:19 AM, Segher Boessenkool wrote: > Hi! > > On Mon, Nov 14, 2016 at 04:43:35PM -0700, Kelvin Nilsen wrote: >> * config/rs6000/altivec.md (UNSPE

Re: [PATCH,rs6000] Add built-in function support for Power9 byte instructions

2016-11-15 Thread Segher Boessenkool
Hi! On Mon, Nov 14, 2016 at 04:43:35PM -0700, Kelvin Nilsen wrote: > * config/rs6000/altivec.md (UNSPEC_CMPRB): New unspec value. > (UNSPEC_CMPRB2): New unspec value. I wonder if you really need both? The number of arguments will tell which is which, anyway? > (cmprb_p): New e

[PATCH,rs6000] Add built-in function support for Power9 byte instructions

2016-11-14 Thread Kelvin Nilsen
This patch adds built-in function support for the new setb, cmprb, and cmpeqb Power9 instructions. The patch has been bootstrapped and tested on powerpc64le-unknown-linux and powerpc-unknown-linux (big-endian, with both -m32 and -m64 target options) with no regresions. Is this ok for the trunk?