2008-08-13 Richard Guenther <rguenther@suse.de>
commit5768aeb3c88117d813e1b958c58a5c871bf43667
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Aug 2008 14:22:19 +0000 (13 14:22 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Aug 2008 14:22:19 +0000 (13 14:22 +0000)
treea132b33918fa2aabf5676cd2cede6a9b1320407a
parent5519c0df626b0baf3d1372f60d00be068d464d7b
2008-08-13  Richard Guenther  <rguenther@suse.de>

* tree.h (maybe_fold_offset_to_address): Declare.
* tree-ssa-ccp.c (surely_varying_stmt_p): Fix typo in last commit.
(ccp_fold): Handle pointer conversions the same as fold_stmt.
Likewise for POINTER_PLUS_EXPR.
(maybe_fold_offset_to_reference): Enable disabled code.
(maybe_fold_offset_to_address): New function.
(fold_stmt_r): Use it.
(fold_gimple_assign): Likewise.
* gimplify.c (gimplify_conversion): Use maybe_fold_offset_to_address.
(gimplify_expr): Likewise.

* gcc.dg/tree-ssa/ssa-ccp-21.c: New testcase.
* gcc.dg/tree-ssa/ssa-ccp-22.c: Likewise.
* gcc.dg/tree-ssa/ssa-ccp-23.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@139061 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/gimplify.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-21.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-22.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-23.c [new file with mode: 0644]
gcc/tree-ssa-ccp.c
gcc/tree.h