diff options
author | Richard Guenther <rguenther@suse.de> | 2010-07-08 14:58:20 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-07-08 14:58:20 +0000 |
commit | d0c422cb29c67f05b7696f7cadf55b3455124f00 (patch) | |
tree | 8ce992db0410d47c519f22cd6e164e898ff73164 /gcc | |
parent | b298f92498764494e449b572ef7e638b3166759c (diff) | |
download | gcc-d0c422cb29c67f05b7696f7cadf55b3455124f00.zip gcc-d0c422cb29c67f05b7696f7cadf55b3455124f00.tar.gz gcc-d0c422cb29c67f05b7696f7cadf55b3455124f00.tar.bz2 |
tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Fix stmt check for POINTER_PLUS_EXPRs, fix the pointer assignment.
2010-07-08 Richard Guenther <rguenther@suse.de>
* tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Fix
stmt check for POINTER_PLUS_EXPRs, fix the pointer assignment.
From-SVN: r161959
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-ssa-sccvn.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e2339f6..98077e1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2010-07-08 Richard Guenther <rguenther@suse.de> + + * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Fix + stmt check for POINTER_PLUS_EXPRs, fix the pointer assignment. + 2010-07-08 Jakub Jelinek <jakub@redhat.com> * dwarf2out.c (mem_loc_descriptor): Use DW_OP_const[48]u diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c index e0ba030..9959803 100644 --- a/gcc/tree-ssa-sccvn.c +++ b/gcc/tree-ssa-sccvn.c @@ -986,7 +986,7 @@ vn_reference_maybe_forwprop_address (VEC (vn_reference_op_s, heap) **ops, double_int off; def_stmt = SSA_NAME_DEF_STMT (op->op0); - if (!gimple_assign_single_p (def_stmt)) + if (!is_gimple_assign (def_stmt)) return; code = gimple_assign_rhs_code (def_stmt); @@ -1026,7 +1026,7 @@ vn_reference_maybe_forwprop_address (VEC (vn_reference_op_s, heap) **ops, return; off = double_int_add (off, tree_to_double_int (ptroff)); - op->op0 = TREE_OPERAND (ptr, 0); + op->op0 = ptr; } mem_op->op0 = double_int_to_tree (TREE_TYPE (mem_op->op0), off); |