Re: [PATCH v2] target/ppc: add vmsumudm vmsumcud instructions

2020-06-19 Thread Richard Henderson
On 6/18/20 10:10 PM, Lijun Pan wrote: >> Unfortunately, I can't find the v3.1 spec online yet, so I can't look at this >> myself. What is the instruction supposed to produce? > > https://ibm.ent.box.com/s/hhjfw0x0lrbtyzmiaffnbxh2fuo0fog0 Thank you. So it really is the sum of an input and two se

Re: [PATCH v2] target/ppc: add vmsumudm vmsumcud instructions

2020-06-18 Thread Lijun Pan
> On Jun 18, 2020, at 6:09 PM, Richard Henderson > wrote: > > On 6/15/20 1:53 PM, Lijun Pan wrote: +static inline void uint128_add(uint64_t ah, uint64_t al, uint64_t bh, + uint64_t bl, uint64_t *rh, uint64_t *rl, uint64_t *ca) +{ + __uint128_t a = (__uint128_t)ah

Re: [PATCH v2] target/ppc: add vmsumudm vmsumcud instructions

2020-06-18 Thread Richard Henderson
On 6/15/20 1:53 PM, Lijun Pan wrote: >>> +static inline void uint128_add(uint64_t ah, uint64_t al, uint64_t bh, >>> + uint64_t bl, uint64_t *rh, uint64_t *rl, uint64_t *ca) >>> +{ >>> + __uint128_t a = (__uint128_t)ah << 64 | (__uint128_t)al; >>> + __uint128_t b = (__uint128_t)bh << 6

Re: [PATCH v2] target/ppc: add vmsumudm vmsumcud instructions

2020-06-15 Thread Lijun Pan
> On Jun 15, 2020, at 11:12 AM, Richard Henderson > wrote: > > On 6/12/20 8:55 PM, Lijun Pan wrote: >> vmsumudm (Power ISA 3.0) - Vector Multiply-Sum Unsigned Doubleword Modulo >> VA-form. >> vmsumcud (Power ISA 3.1) - Vector Multiply-Sum & write Carry-out Unsigned >> Doubleword VA-form. >>

Re: [PATCH v2] target/ppc: add vmsumudm vmsumcud instructions

2020-06-15 Thread Richard Henderson
On 6/12/20 8:55 PM, Lijun Pan wrote: > vmsumudm (Power ISA 3.0) - Vector Multiply-Sum Unsigned Doubleword Modulo > VA-form. > vmsumcud (Power ISA 3.1) - Vector Multiply-Sum & write Carry-out Unsigned > Doubleword VA-form. > > Signed-off-by: Lijun Pan > --- > v2: move vmsumcudm() to qemu/int128.h

[PATCH v2] target/ppc: add vmsumudm vmsumcud instructions

2020-06-12 Thread Lijun Pan
vmsumudm (Power ISA 3.0) - Vector Multiply-Sum Unsigned Doubleword Modulo VA-form. vmsumcud (Power ISA 3.1) - Vector Multiply-Sum & write Carry-out Unsigned Doubleword VA-form. Signed-off-by: Lijun Pan --- v2: move vmsumcudm() to qemu/int128.h as Richard Henderson suggested, also rename addu1