diff options
author | Andrew Pinski <apinski@marvell.com> | 2023-07-16 22:31:59 +0000 |
---|---|---|
committer | Andrew Pinski <apinski@marvell.com> | 2023-07-17 06:43:19 +0000 |
commit | 0407ae8a7732d90622a65ddf1798c9d51d450e9d (patch) | |
tree | 420e1ec558bcfb08cb751b5534c8df689b512613 /gcc/value-range.cc | |
parent | 5ae1f391934a853a36f4bcc5a849c7900bec43b0 (diff) | |
download | gcc-0407ae8a7732d90622a65ddf1798c9d51d450e9d.zip gcc-0407ae8a7732d90622a65ddf1798c9d51d450e9d.tar.gz gcc-0407ae8a7732d90622a65ddf1798c9d51d450e9d.tar.bz2 |
PR 95923: More (boolean) bitop simplifications in match.pd
This adds the boolean version of some of the simplifications
that were added with r8-4395-ge268a77b59cb78.
That are the following:
(a | b) & (a == b) --> a & b
a | (a == b) --> a | (b ^ 1)
(a & b) | (a == b) --> a == b
OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.
gcc/ChangeLog:
PR tree-optimization/95923
* match.pd ((a|b)&(a==b),a|(a==b),(a&b)|(a==b)): New transformation.
gcc/testsuite/ChangeLog:
PR tree-optimization/95923
* gcc.dg/tree-ssa/bitops-2.c: New test.
* gcc.dg/tree-ssa/bool-checks-1.c: New test.
Diffstat (limited to 'gcc/value-range.cc')
0 files changed, 0 insertions, 0 deletions