diff options
author | Richard Biener <rguenth@gcc.gnu.org> | 2011-04-26 10:12:14 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2011-04-26 10:12:14 +0000 |
commit | 961562d8d8720d823f3904050c16a2c65c9a5599 (patch) | |
tree | 5ae45dbeef3467012f6cb5c4e2396e9be874cdf0 | |
parent | ce3ba3827f2215553367dd9946b9e3cfe3befc92 (diff) | |
download | gcc-961562d8d8720d823f3904050c16a2c65c9a5599.zip gcc-961562d8d8720d823f3904050c16a2c65c9a5599.tar.gz gcc-961562d8d8720d823f3904050c16a2c65c9a5599.tar.bz2 |
re PR tree-optimization/48694 (possible memory hog bug)
2011-04-26 Richard Guenther <rguenther@suse.de>
PR middle-end/48694
* tree.h (OEP_CONSTANT_ADDRESS_OF): New operand_equal_flag.
* fold-const.c (operand_equal_p): For TREE_CONSTANT ADDR_EXPRs
compare the operands with OEP_CONSTANT_ADDRESS_OF. Treat
trees with TREE_SIDE_EFFECTS equal when OEP_CONSTANT_ADDRESS_OF
is set.
* gcc.dg/torture/pr48694-1.c: New testcase.
* gcc.dg/torture/pr48694-2.c: Likewise.
From-SVN: r172957
-rw-r--r-- | gcc/ChangeLog | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 69132f4..43c6b23 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +2011-04-26 Richard Guenther <rguenther@suse.de> + + * c-typeck.c (build_unary_op): Do not expand array-refs via + pointer arithmetic. Only adjust qualifiers for function types. + +2011-04-26 Richard Guenther <rguenther@suse.de> + + PR middle-end/48694 + * tree.h (OEP_CONSTANT_ADDRESS_OF): New operand_equal_flag. + * fold-const.c (operand_equal_p): For TREE_CONSTANT ADDR_EXPRs + compare the operands with OEP_CONSTANT_ADDRESS_OF. Treat + trees with TREE_SIDE_EFFECTS equal when OEP_CONSTANT_ADDRESS_OF + is set. + 2011-04-25 Paolo Carlini <paolo.carlini@oracle.com> * c-family/c-common.c (struct c_common_resword): Add |