diff options
author | Richard Biener <rguenther@suse.de> | 2022-12-12 08:13:33 +0100 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2022-12-12 08:54:53 +0100 |
commit | 2dc5d6b1e7ec8822f5bd78761962ca2c85d4a2b4 (patch) | |
tree | 4813826210ce72d04237ce61df050b4300f418e0 /gcc/tree.h | |
parent | 324e9953400999872a0a57524399d86e6414c149 (diff) | |
download | gcc-2dc5d6b1e7ec8822f5bd78761962ca2c85d4a2b4.zip gcc-2dc5d6b1e7ec8822f5bd78761962ca2c85d4a2b4.tar.gz gcc-2dc5d6b1e7ec8822f5bd78761962ca2c85d4a2b4.tar.bz2 |
tree-optimization/89317 - another pattern for &p->x != p + 4
As seen in the original testcase for PR89317 we are missing
comparison simplification patterns for &p->x != p + 4. Fixed
by making an existing one apply. To make the pattern apply
during CCP we need to simplify ccp_fold to not use GENERIC
folding of conditions but also use GIMPLE folding.
PR tree-optimization/89317
* tree-ssa-ccp.cc (ccp_fold): Handle GIMPLE_COND via
gimple_fold_stmt_to_constant_1.
* match.pd (&a != &a + c): Apply to pointer_plus with non-ADDR_EXPR
base as well.
* gcc.dg/tree-ssa/pr89317.c: Amend.
Diffstat (limited to 'gcc/tree.h')
0 files changed, 0 insertions, 0 deletions