On Fri, Oct 02, 2015 at 10:17:11AM +0100, Renlin Li wrote: > Hi all, > > This is a simple patch to add a new cmovdi_insn_uxtw rtx pattern to > aarch64 backend. > > For the following simple test case: > > unsigned long long > foo (unsigned int a, unsigned int b, unsigned int c) > { > return a ? b : c; > } > > With this new pattern, the new code-generation will be: > > cmp w0, wzr > csel w0, w1, w2, ne > ret > > Without the path, the old code-generation is like this: > uxtw x2, w2 > uxtw x1, w1 > cmp w0, wzr > csel x0, x2, x1, eq > ret > > > aarch64-none-elf regression test Okay. Okay to commit?
OK. Thanks, James > gcc/ChangeLog: > > 2015-10-02 Renlin Li <renlin...@arm.com> > > PR target/66776 > * config/aarch64/aarch64.md (cmovdi_insn_uxtw): New pattern. > > gcc/testsuite/ChangeLog: > > 2015-10-02 Renlin Li <renlin...@arm.com> > > PR target/66776 > * gcc.target/aarch64/pr66776.c: New. >