aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-sccvn.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2009-04-15 14:18:22 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2009-04-15 14:18:22 +0000
commitf116fecf890dbc4aaacd256eb26459d7ece30e99 (patch)
treed3fafed5c7015ded94c8c73fef791671f893cbc0 /gcc/tree-ssa-sccvn.c
parent25e20805c0689319973ce9a5201cd0c3e149c9e2 (diff)
downloadgcc-f116fecf890dbc4aaacd256eb26459d7ece30e99.zip
gcc-f116fecf890dbc4aaacd256eb26459d7ece30e99.tar.gz
gcc-f116fecf890dbc4aaacd256eb26459d7ece30e99.tar.bz2
tree-ssa-pre.c (eliminate): When replacing a PHI node carry out a necessary conversion.
2009-04-15 Richard Guenther <rguenther@suse.de> * tree-ssa-pre.c (eliminate): When replacing a PHI node carry out a necessary conversion. * tree-ssa-sccvn.c (run_scc_vn): Also assign value-ids to names we didn't value number. * tree-mudflap.c (mf_build_check_statement_for): Use correct types. From-SVN: r146121
Diffstat (limited to 'gcc/tree-ssa-sccvn.c')
-rw-r--r--gcc/tree-ssa-sccvn.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c
index f3b00e9..b101aeb 100644
--- a/gcc/tree-ssa-sccvn.c
+++ b/gcc/tree-ssa-sccvn.c
@@ -2886,7 +2886,8 @@ run_scc_vn (bool may_insert_arg)
if (!name)
continue;
info = VN_INFO (name);
- if (info->valnum == name)
+ if (info->valnum == name
+ || info->valnum == VN_TOP)
info->value_id = get_next_value_id ();
else if (is_gimple_min_invariant (info->valnum))
info->value_id = get_or_alloc_constant_value_id (info->valnum);