summaryrefslogtreecommitdiff
path: root/gcc/gimplify.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2008-02-12 20:49:21 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2008-02-12 20:49:21 +0000
commit81186f7b231d9f3ac02fcc7c19a74e8c94363f68 (patch)
tree5326bc0cc6a893136020f1071215c168b409676d /gcc/gimplify.c
parenta1bd4be4e2b5081c4ab1d53969eb0156dab84538 (diff)
downloadgcc-81186f7b231d9f3ac02fcc7c19a74e8c94363f68.tar.gz
re PR middle-end/35136 (ICE caused by address calculation with loop variable when optimization is on)
PR middle-end/35136 * gimplify.c (force_gimple_operand_bsi): Move SSA renaming code from here to... (force_gimple_operand): ...here. From-SVN: r132267
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r--gcc/gimplify.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 04ed39c533a..bc576a0ca00 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -6629,6 +6629,14 @@ force_gimple_operand (tree expr, tree *stmts, bool simple, tree var)
pop_gimplify_context (NULL);
+ if (*stmts && gimple_in_ssa_p (cfun))
+ {
+ tree_stmt_iterator tsi;
+
+ for (tsi = tsi_start (*stmts); !tsi_end_p (tsi); tsi_next (&tsi))
+ mark_symbols_for_renaming (tsi_stmt (tsi));
+ }
+
return expr;
}
@@ -6648,14 +6656,6 @@ force_gimple_operand_bsi (block_stmt_iterator *bsi, tree expr,
expr = force_gimple_operand (expr, &stmts, simple_p, var);
if (stmts)
{
- if (gimple_in_ssa_p (cfun))
- {
- tree_stmt_iterator tsi;
-
- for (tsi = tsi_start (stmts); !tsi_end_p (tsi); tsi_next (&tsi))
- mark_symbols_for_renaming (tsi_stmt (tsi));
- }
-
if (before)
bsi_insert_before (bsi, stmts, m);
else