summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-if-conv.c17
2 files changed, 5 insertions, 17 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ba9097747ba..16653538d8c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-04-13 Devang Patel <dpatel@apple.com>
+
+ * tree-if-conv.c (tree_if_convert_cond_expr): Do not create extra
+ temp variables.
+
2005-04-13 Hans-Peter Nilsson <hp@axis.com>
CRIS prologue as RTL.
diff --git a/gcc/tree-if-conv.c b/gcc/tree-if-conv.c
index e63dc669df2..2770539d435 100644
--- a/gcc/tree-if-conv.c
+++ b/gcc/tree-if-conv.c
@@ -277,15 +277,6 @@ tree_if_convert_cond_expr (struct loop *loop, tree stmt, tree cond,
c = COND_EXPR_COND (stmt);
- /* Create temp. for condition. */
- if (!is_gimple_condexpr (c))
- {
- tree new_stmt;
- new_stmt = ifc_temp_var (TREE_TYPE (c), unshare_expr (c));
- bsi_insert_before (bsi, new_stmt, BSI_SAME_STMT);
- c = TREE_OPERAND (new_stmt, 0);
- }
-
extract_true_false_edges_from_block (bb_for_stmt (stmt),
&true_edge, &false_edge);
@@ -295,14 +286,6 @@ tree_if_convert_cond_expr (struct loop *loop, tree stmt, tree cond,
add_to_dst_predicate_list (loop, true_edge->dest, cond,
unshare_expr (c), bsi);
- if (!is_gimple_reg(c) && is_gimple_condexpr (c))
- {
- tree new_stmt;
- new_stmt = ifc_temp_var (TREE_TYPE (c), unshare_expr (c));
- bsi_insert_before (bsi, new_stmt, BSI_SAME_STMT);
- c = TREE_OPERAND (new_stmt, 0);
- }
-
/* If 'c' is false then FALSE_EDGE is taken. */
c2 = invert_truthvalue (unshare_expr (c));
add_to_dst_predicate_list (loop, false_edge->dest, cond, c2, bsi);