On Tue, Jan 15, 2013 at 9:21 PM, Hurugalawadi, Naveen <naveen.hurugalaw...@caviumnetworks.com> wrote: > Hi, > > The slsr-*.c testsuite failures are due to not matching widening add > (or multiply-add) in AARCH64. > The LP64 targets generates WIDEN_MULT_PLUS_EXPR which is correct and > even better code generation will be produced. However, the testcase > expects +OP2 in these cases and hence FAIL's. > > Please find attached the patch that checks "+ OP2" as earlier OR > ", OP2>" as produced with "WIDEN_MULT_PLUS_EXPR <1(D), 4, 12>" in LP64 > targets that use a widening multiplication.
It is not the target is LP64 but rather the target supports unsigned widening from 32bit to 64bit multiple/plus instruction. It is one of the few targets which support this. Thanks, Andrew Pinski > > Tested on aarch64-thunder-elf, x86_64-elf, arm-none-eabi and rx-elf. > > Please review the patch and let me know if there should be any further > modifications in pattern check. > > Regards, > Naveen > > 2013-01-16 Naveen H.S <naveen.hurugalaw...@caviumnetworks.com> > > gcc/testsuite/ > * gcc.dg/tree-ssa/slsr-1.c: Allow widening multiplications. > * gcc.dg/tree-ssa/slsr-2.c: Likewise. > * gcc.dg/tree-ssa/slsr-3.c: Likewise.