aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-copy.c
diff options
context:
space:
mode:
authorXinliang David Li <davidxl@google.com>2009-03-27 17:18:58 +0000
committerXinliang David Li <davidxl@gcc.gnu.org>2009-03-27 17:18:58 +0000
commit4577cea1cde9b4c1c9d92d63920a3bd8ff81c2c4 (patch)
treea8ca7ed410f4b6d55c2ad1ff5ef09a34dc57c94f /gcc/tree-ssa-copy.c
parent0f7464f40330f3c81d57aa433f5285fe9f00abd8 (diff)
downloadgcc-4577cea1cde9b4c1c9d92d63920a3bd8ff81c2c4.zip
gcc-4577cea1cde9b4c1c9d92d63920a3bd8ff81c2c4.tar.gz
gcc-4577cea1cde9b4c1c9d92d63920a3bd8ff81c2c4.tar.bz2
Fix for PR39548
From-SVN: r145118
Diffstat (limited to 'gcc/tree-ssa-copy.c')
-rw-r--r--gcc/tree-ssa-copy.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-ssa-copy.c b/gcc/tree-ssa-copy.c
index 654ba95..64c697a 100644
--- a/gcc/tree-ssa-copy.c
+++ b/gcc/tree-ssa-copy.c
@@ -908,7 +908,8 @@ copy_prop_visit_phi_node (gimple phi)
}
}
- if (phi_val.value && set_copy_of_val (lhs, phi_val.value))
+ if (phi_val.value && may_propagate_copy (lhs, phi_val.value)
+ && set_copy_of_val (lhs, phi_val.value))
retval = (phi_val.value != lhs) ? SSA_PROP_INTERESTING : SSA_PROP_VARYING;
else
retval = SSA_PROP_NOT_INTERESTING;