aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-sccvn.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2009-04-08 18:49:22 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2009-04-08 18:49:22 +0000
commitd27f0ddc1ef8c08cacbda578966f9fa2a52e996e (patch)
treee2ac944efbc7f539f1b6aa9e7827d836ba95eb55 /gcc/tree-ssa-sccvn.c
parentcba2a54e5eb6b29ac3cb681e9a5d9e9626149c1e (diff)
downloadgcc-d27f0ddc1ef8c08cacbda578966f9fa2a52e996e.zip
gcc-d27f0ddc1ef8c08cacbda578966f9fa2a52e996e.tar.gz
gcc-d27f0ddc1ef8c08cacbda578966f9fa2a52e996e.tar.bz2
tree-ssa-sccvn.c (valueize_refs): Do not continue to valueize random data.
2009-04-08 Richard Guenther <rguenther@suse.de> * tree-ssa-sccvn.c (valueize_refs): Do not continue to valueize random data. From-SVN: r145768
Diffstat (limited to 'gcc/tree-ssa-sccvn.c')
-rw-r--r--gcc/tree-ssa-sccvn.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c
index 2982e8c..416fa7f 100644
--- a/gcc/tree-ssa-sccvn.c
+++ b/gcc/tree-ssa-sccvn.c
@@ -833,7 +833,10 @@ valueize_refs (VEC (vn_reference_op_s, heap) *orig)
if (i > 0 && TREE_CODE (vro->op0) == ADDR_EXPR
&& VEC_index (vn_reference_op_s,
orig, i - 1)->opcode == INDIRECT_REF)
- vn_reference_fold_indirect (&orig, &i);
+ {
+ vn_reference_fold_indirect (&orig, &i);
+ continue;
+ }
}
if (vro->op1 && TREE_CODE (vro->op1) == SSA_NAME)
vro->op1 = SSA_VAL (vro->op1);