diff options
author | Richard Guenther <rguenther@suse.de> | 2010-04-07 12:31:32 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-04-07 12:31:32 +0000 |
commit | 12bd5a1e9f42026f7ead1bad788f9cade67f88b7 (patch) | |
tree | 92208bc8d4ba4a670add9a969acc3e87e362914a /gcc/tree-ssa-sccvn.h | |
parent | a775239672d98c299f0bdde4e7465529388af8eb (diff) | |
download | gcc-12bd5a1e9f42026f7ead1bad788f9cade67f88b7.tar.gz |
re PR tree-optimization/43270 (array-bounds false negative)
2010-04-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43270
* tree-vrp.c (check_array_ref): Fix flexible array member
detection.
* tree-ssa-sccvn.h (fully_constant_vn_reference_p): Declare.
* tree-ssa-pre.c (phi_translate_1): Adjust.
(fully_constant_expression): Split out vn_reference handling to ...
* tree-ssa-sccvn.c (fully_constant_vn_reference_p): ... here.
Fold reads from constant strings.
(vn_reference_lookup): Handle fully constant references.
(vn_reference_lookup_pieces): Likewise.
* Makefile.in (expmed.o-warn): Add -Wno-error.
* g++.dg/warn/Warray-bounds-4.C: New testcase.
* gcc.dg/Warray-bounds-7.c: Likewise.
From-SVN: r158058
Diffstat (limited to 'gcc/tree-ssa-sccvn.h')
-rw-r--r-- | gcc/tree-ssa-sccvn.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-ssa-sccvn.h b/gcc/tree-ssa-sccvn.h index c60c28ac11a..8f93b0b2518 100644 --- a/gcc/tree-ssa-sccvn.h +++ b/gcc/tree-ssa-sccvn.h @@ -204,4 +204,5 @@ unsigned int get_next_value_id (void); unsigned int get_constant_value_id (tree); unsigned int get_or_alloc_constant_value_id (tree); bool value_id_constant_p (unsigned int); +tree fully_constant_vn_reference_p (vn_reference_t); #endif /* TREE_SSA_SCCVN_H */ |