OSDN Git Service

2011-04-26 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Apr 2011 10:12:14 +0000 (10:12 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Apr 2011 10:12:14 +0000 (10:12 +0000)
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172957 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog

index 69132f4..43c6b23 100644 (file)
@@ -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