aboutsummaryrefslogtreecommitdiff
path: root/gcc/c/c-decl.cc
diff options
context:
space:
mode:
authorAndrew Pinski <apinski@marvell.com>2023-09-03 10:17:29 -0700
committerAndrew Pinski <apinski@marvell.com>2023-09-05 14:14:54 -0700
commit8e995e84233661a1a246807a66cc84003426b1df (patch)
tree303c2d0b4ebcfffdef5359b0ac1991873c413f97 /gcc/c/c-decl.cc
parente6bcf83989478348428c732c11e6c0f1719e9214 (diff)
downloadgcc-8e995e84233661a1a246807a66cc84003426b1df.zip
gcc-8e995e84233661a1a246807a66cc84003426b1df.tar.gz
gcc-8e995e84233661a1a246807a66cc84003426b1df.tar.bz2
MATCH: Add pattern for `(x | y) & (x & z)`
Like the pattern already there for `(x | y) & x`, this adds a simple pattern to optimize `(x | y) & (x & z)` to just `x & z`. OK? Bootstrapped and tested on x86-64-linux-gnu with no regressions. gcc/ChangeLog: PR tree-optimization/103536 * match.pd (`(x | y) & (x & z)`, `(x & y) | (x | z)`): New patterns. gcc/testsuite/ChangeLog: PR tree-optimization/103536 * gcc.dg/tree-ssa/andor-6.c: New test. * gcc.dg/tree-ssa/andor-bool-1.c: New test.
Diffstat (limited to 'gcc/c/c-decl.cc')
0 files changed, 0 insertions, 0 deletions