aboutsummaryrefslogtreecommitdiff
path: root/gcc/sese.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2012-08-14 11:22:23 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2012-08-14 11:22:23 +0000
commit2ad728d2723fbc0386be5a9379befc1b68e0ab8d (patch)
treefd4084fc9466e792c2096d7dbfe52c540c1e1904 /gcc/sese.c
parentd8d707b4b576ebceac3e902d31bf954bca728660 (diff)
downloadgcc-2ad728d2723fbc0386be5a9379befc1b68e0ab8d.zip
gcc-2ad728d2723fbc0386be5a9379befc1b68e0ab8d.tar.gz
gcc-2ad728d2723fbc0386be5a9379befc1b68e0ab8d.tar.bz2
gimplify.c (create_tmp_from_val): Mark temporary with DECL_GIMPLE_REG_P here ...
2012-08-14 Richard Guenther <rguenther@suse.de> * gimplify.c (create_tmp_from_val): Mark temporary with DECL_GIMPLE_REG_P here ... (internal_get_tmp_var): ... instead of here. If we go into SSA create an SSA name instead of a VAR_DECL. (gimplify_modify_expr): Do not create SSA names here, assert we already got them. (force_gimple_operand_1): Create an SSA name if we go into SSA. * sese.c (rename_uses): Simplify. From-SVN: r190381
Diffstat (limited to 'gcc/sese.c')
-rw-r--r--gcc/sese.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/sese.c b/gcc/sese.c
index f3dc2b7..44bc740 100644
--- a/gcc/sese.c
+++ b/gcc/sese.c
@@ -504,11 +504,10 @@ rename_uses (gimple copy, htab_t rename_map, gimple_stmt_iterator *gsi_tgt,
{
tree var = create_tmp_var (type_old_name, "var");
- if (type_old_name != type_new_expr)
+ if (!useless_type_conversion_p (type_old_name, type_new_expr))
new_expr = fold_convert (type_old_name, new_expr);
- new_expr = build2 (MODIFY_EXPR, type_old_name, var, new_expr);
- new_expr = force_gimple_operand (new_expr, &stmts, true, NULL);
+ new_expr = force_gimple_operand (new_expr, &stmts, true, var);
gsi_insert_seq_before (gsi_tgt, stmts, GSI_SAME_STMT);
}