Fold bit_not through ASR and rotate
authorMikhail Maltsev <maltsevm@gmail.com>
Tue, 17 May 2016 20:50:22 +0000 (20:50 +0000)
committerMikhail Maltsev <miyuki@gcc.gnu.org>
Tue, 17 May 2016 20:50:22 +0000 (20:50 +0000)
commitad1d92ab9f65c539bf819ec5eda91789804f4e3f
tree6e7f69ed31d0d72acc9e4e9fd1a129a9d50e480a
parent47768df837de3d5d8e87ea4add0ef859b7b5f8f9
Fold bit_not through ASR and rotate

gcc/

PR tree-optimization/54579
PR middle-end/55299
* match.pd (~(~X >> Y), ~(~X >>r Y), ~(~X <<r Y)): New patterns.

gcc/testsuite

PR tree-optimization/54579
PR middle-end/55299
* gcc.dg/fold-notrotate-1.c: New test.
* gcc.dg/fold-notshift-1.c: New test.
* gcc.dg/fold-notshift-2.c: New test.

From-SVN: r236344
gcc/ChangeLog
gcc/match.pd
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/fold-notrotate-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/fold-notshift-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/fold-notshift-2.c [new file with mode: 0644]