Re: [PATCH] Use narrow mode of constant when expanding widening multiplication

2019-10-21 Thread Jozef Lawrynowicz
On Mon, 21 Oct 2019 08:40:11 +0100 Richard Sandiford wrote: > Jozef Lawrynowicz writes: > > I experienced the following ICE when working on a downstream patch for > > msp430: > > > > void > > foo (unsigned int r, unsigned int y) > > { > > __builtin_umul_overflow ((unsigned int) (-1), y, &r);

Re: [PATCH] Use narrow mode of constant when expanding widening multiplication

2019-10-21 Thread Richard Sandiford
Jozef Lawrynowicz writes: > I experienced the following ICE when working on a downstream patch for msp430: > > void > foo (unsigned int r, unsigned int y) > { > __builtin_umul_overflow ((unsigned int) (-1), y, &r); > } > >> msp430-elf-gcc -S tester.c -O0 > > tester.c: In function 'foo': > tester

[PATCH] Use narrow mode of constant when expanding widening multiplication

2019-10-18 Thread Jozef Lawrynowicz
00 Subject: [PATCH] Use narrow mode of constant when expanding widening multiplication gcc/ChangeLog: 2019-10-18 Jozef Lawrynowicz * expr.c (expand_expr_real_2): Use op1 in its original narrow mode when calling expand_mult_highpart_adjust. --- gcc/expr.c | 7 +-- 1 file changed