Re: Partial fix for PR opt/55177

2013-05-28 Thread Eric Botcazou
> builtin-bswap-9.c fails on ia64, it still generates bswap:DI for foo2, > foo3 and foo4. It turns out that you need to combine 4 instructions on the IA-64 to get rid of the bswaps, so -O2 (actually -fexpensive-optimizations) is required. Tested on x86_64-suse-linux, applied on the mainline. 2

Re: Partial fix for PR opt/55177

2013-05-25 Thread Eric Botcazou
> What is the significance of the target selection? Copied from optimize-bswapdi-1.c, but I should probably have copied it from optimize-bswapsi-1.c for the bswapsi case. Will adjust. > builtin-bswap-9.c fails on ia64, it still generates bswap:DI for foo2, > foo3 and foo4. OK, I'll take a look

Re: Partial fix for PR opt/55177

2013-05-25 Thread Andreas Schwab
Eric Botcazou writes: > /* { dg-do compile { target arm*-*-* alpha*-*-* ia64*-*-* x86_64-*-* > s390x-*-* powerpc*-*-* rs6000-*-* } } */ What is the significance of the target selection? builtin-bswap-9.c fails on ia64, it still generates bswap:DI for foo2, foo3 and foo4. Andreas. -- Andreas

Re: Partial fix for PR opt/55177

2013-05-23 Thread Jeff Law
On 05/23/2013 10:05 AM, Eric Botcazou wrote: The PR is about missed simplifications for __builtin_swap. IIUC Andrew has patches for them at the Tree level, but I think having basic simplifications at the RTL level for BSWAP is also worthwhile, hence the attached patch. Tested on x86_64-suse-lin

Partial fix for PR opt/55177

2013-05-23 Thread Eric Botcazou
The PR is about missed simplifications for __builtin_swap. IIUC Andrew has patches for them at the Tree level, but I think having basic simplifications at the RTL level for BSWAP is also worthwhile, hence the attached patch. Tested on x86_64-suse-linux. Comments? 2013-05-23 Eric Botcazou