Re: Add uaddv4_optab, usubv4_optab

2015-11-20 Thread Eric Botcazou
> Eric has just submitted a documentation path that documented the > {add,sub,mul,umul}v4 and negv3 patterns, so this should be > applied on top of that. OK, I'm going to apply it, thanks. Note that the comment at the beginning of expand_addsub_overflow describing the overall strategy ought to

Add uaddv4_optab, usubv4_optab

2015-11-20 Thread Richard Henderson
Toward fixing PR68385. I'm just starting a full round of testing, but extern void underflow(void) __attribute__((noreturn)); unsigned sub1(unsigned a, unsigned b) { unsigned r = a - b; if (r > a) underflow(); return r; } unsigned sub2(unsigned a, unsigned b) { unsigned r;

Re: Add uaddv4_optab, usubv4_optab

2015-11-20 Thread Jakub Jelinek
On Fri, Nov 20, 2015 at 11:27:48AM +0100, Richard Henderson wrote: > Toward fixing PR68385. I'm just starting a full round of testing, but > > extern void underflow(void) __attribute__((noreturn)); > unsigned sub1(unsigned a, unsigned b) > { > unsigned r = a - b; > if (r > a)

Re: Add uaddv4_optab, usubv4_optab

2015-11-20 Thread Eric Botcazou
> Toward fixing PR68385. I'm just starting a full round of testing, but Do you mind if I install my doc patch? It's slightly more thorough. -- Eric Botcazou

Re: Add uaddv4_optab, usubv4_optab

2015-11-20 Thread Richard Henderson
On 11/20/2015 11:56 AM, Eric Botcazou wrote: Eric has just submitted a documentation path that documented the {add,sub,mul,umul}v4 and negv3 patterns, so this should be applied on top of that. OK, I'm going to apply it, thanks. Thanks. Note that the comment at the beginning of

Re: Add uaddv4_optab, usubv4_optab

2015-11-20 Thread Richard Henderson
On 11/20/2015 11:43 AM, Jakub Jelinek wrote: +(define_expand "uaddv4" + [(parallel [(set (reg:CCC FLAGS_REG) + (compare:CCC +(plus:SWI (match_dup 1) (match_dup 2)) +(match_dup 1))) + (set (match_dup 0) +