aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-im.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2020-05-04 10:57:46 +0200
committerJakub Jelinek <jakub@redhat.com>2020-05-04 10:57:46 +0200
commit73a8043481d24ac86ce8d19459276181dfd9c858 (patch)
tree7a8030878e93027d910a55ad8a1025996e207b12 /gcc/tree-ssa-loop-im.c
parentefaffc6997f33f663f887f63c72e589d4318f902 (diff)
downloadgcc-73a8043481d24ac86ce8d19459276181dfd9c858.zip
gcc-73a8043481d24ac86ce8d19459276181dfd9c858.tar.gz
gcc-73a8043481d24ac86ce8d19459276181dfd9c858.tar.bz2
match.pd: Move (X & C) eqne (Y & C) -> -> (X ^ Y) & C eqne 0 opt to match.pd [PR94718]
This patch moves this optimization from fold-const.c to match.pd where it is actually much shorter to do and lets optimize even code not seen together in a single expression in the source, as the first step towards fixing the PR. 2020-05-04 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/94718 * fold-const.c (fold_binary_loc): Move (X & C) eqne (Y & C) -> (X ^ Y) & C eqne 0 optimization to ... * match.pd ((X & C) op (Y & C) into (X ^ Y) & C op 0): ... here. * gcc.dg/tree-ssa/pr94718-1.c: New test. * gcc.dg/tree-ssa/pr94718-2.c: New test.
Diffstat (limited to 'gcc/tree-ssa-loop-im.c')
0 files changed, 0 insertions, 0 deletions