summaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-tail-merge.c
diff options
context:
space:
mode:
authorvries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-23 13:26:45 +0000
committervries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-23 13:26:45 +0000
commit888da683ecda500c087776aaa708d74d25a1e55f (patch)
tree9eaf6cd1b1c2baf624da7125ea93a82260620b34 /gcc/tree-ssa-tail-merge.c
parentde6af02914dc635a2bad27542b0150b2fc39d237 (diff)
downloadgcc-888da683ecda500c087776aaa708d74d25a1e55f.tar.gz
Add missing check in stmt_local_def for tail-merge.
2013-10-22 Tom de Vries <tom@codesourcery.com> PR tree-optimization/58805 * tree-ssa-tail-merge.c (stmt_local_def): Add gimple_vdef check. * gcc.dg/pr58805.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203973 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-tail-merge.c')
-rw-r--r--gcc/tree-ssa-tail-merge.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree-ssa-tail-merge.c
index 785d986c65d..be5b71e58a8 100644
--- a/gcc/tree-ssa-tail-merge.c
+++ b/gcc/tree-ssa-tail-merge.c
@@ -304,7 +304,8 @@ stmt_local_def (gimple stmt)
tree val;
def_operand_p def_p;
- if (gimple_has_side_effects (stmt))
+ if (gimple_has_side_effects (stmt)
+ || gimple_vdef (stmt) != NULL_TREE)
return false;
def_p = SINGLE_SSA_DEF_OPERAND (stmt, SSA_OP_DEF);