diff options
Diffstat (limited to 'gcc/tree-ssa-propagate.c')
-rw-r--r-- | gcc/tree-ssa-propagate.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/tree-ssa-propagate.c b/gcc/tree-ssa-propagate.c index cd58ab2..f5643b6 100644 --- a/gcc/tree-ssa-propagate.c +++ b/gcc/tree-ssa-propagate.c @@ -791,11 +791,11 @@ update_call_from_tree (gimple_stmt_iterator *si_p, tree expr) variable. Create an assignment statement with a dummy (unused) lhs variable. */ STRIP_USELESS_TYPE_CONVERSION (expr); - lhs = create_tmp_var (TREE_TYPE (expr), NULL); - new_stmt = gimple_build_assign (lhs, expr); if (gimple_in_ssa_p (cfun)) - lhs = make_ssa_name (lhs, new_stmt); - gimple_assign_set_lhs (new_stmt, lhs); + lhs = make_ssa_name (TREE_TYPE (expr), NULL); + else + lhs = create_tmp_var (TREE_TYPE (expr), NULL); + new_stmt = gimple_build_assign (lhs, expr); gimple_set_vuse (new_stmt, gimple_vuse (stmt)); gimple_set_vdef (new_stmt, gimple_vdef (stmt)); move_ssa_defining_stmt_for_defs (new_stmt, stmt); |