diff options
author | Richard Guenther <rguenther@suse.de> | 2012-08-14 11:22:23 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2012-08-14 11:22:23 +0000 |
commit | 2ad728d2723fbc0386be5a9379befc1b68e0ab8d (patch) | |
tree | fd4084fc9466e792c2096d7dbfe52c540c1e1904 /gcc/sese.c | |
parent | d8d707b4b576ebceac3e902d31bf954bca728660 (diff) | |
download | gcc-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.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -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); } |