]> gcc.gnu.org Git - gcc.git/commit
re PR tree-optimization/54733 (Missing opportunity to optimize endian independent...
authorThomas Preud'homme <thomas.preudhomme@arm.com>
Fri, 23 May 2014 03:33:28 +0000 (03:33 +0000)
committerThomas Preud'homme <thopre01@gcc.gnu.org>
Fri, 23 May 2014 03:33:28 +0000 (03:33 +0000)
commit73984f8494f31ba93aaebf84a50dc77fd4017c11
tree8bab8083343643305fc3a4dbcbdc58042c48e5ed
parenteaa33a6a651713511f9642f5a3e2eff8639edf41
re PR tree-optimization/54733 (Missing opportunity to optimize endian independent load/store)

2014-05-23  Thomas Preud'homme  <thomas.preudhomme@arm.com>

PR tree-optimization/54733
gcc/
* tree-ssa-math-opts.c (nop_stats): New "bswap_stats" structure.
(CMPNOP): Define.
(find_bswap_or_nop_load): New.
(find_bswap_1): Renamed to ...
(find_bswap_or_nop_1): This. Also add support for memory source.
(find_bswap): Renamed to ...
(find_bswap_or_nop): This. Also add support for memory source and
detection of bitwise operations equivalent to load in host endianness.
(execute_optimize_bswap): Likewise. Also move its leading comment back
in place and split statement transformation into ...
(bswap_replace): This.

gcc/testsuite
* gcc.dg/optimize-bswapdi-3.c: New test to check extension of bswap
optimization to support memory sources and bitwise operations
equivalent to load in host endianness.
* gcc.dg/optimize-bswaphi-1.c: Likewise.
* gcc.dg/optimize-bswapsi-2.c: Likewise.
* gcc.c-torture/execute/bswap-2.c: Likewise.

From-SVN: r210843
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/bswap-2.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/optimize-bswapdi-3.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/optimize-bswaphi-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/optimize-bswapsi-2.c [new file with mode: 0644]
gcc/tree-ssa-math-opts.c
This page took 0.062853 seconds and 5 git commands to generate.