Commit edc74207 by Richard Guenther Committed by Richard Biener

re PR tree-optimization/45073 (gfortran.dg/assumed_charlen_function_3.f90 ICEs…

re PR tree-optimization/45073 (gfortran.dg/assumed_charlen_function_3.f90 ICEs with -fprofile-generate)

2010-07-26  Richard Guenther  <rguenther@suse.de>

	PR middle-end/45073
	* gimple-fold.c (gimplify_and_update_call_from_tree): Conditionalize
	SSA updating on being in SSA form.

From-SVN: r162537
parent bd422c4a
2010-07-26 Richard Guenther <rguenther@suse.de> 2010-07-26 Richard Guenther <rguenther@suse.de>
PR middle-end/45073
* gimple-fold.c (gimplify_and_update_call_from_tree): Conditionalize
SSA updating on being in SSA form.
2010-07-26 Richard Guenther <rguenther@suse.de>
PR middle-end/45056 PR middle-end/45056
* gimple-fold.c (fold_stmt_1): Also fold references in * gimple-fold.c (fold_stmt_1): Also fold references in
debug stmts. debug stmts.
......
...@@ -853,8 +853,11 @@ gimplify_and_update_call_from_tree (gimple_stmt_iterator *si_p, tree expr) ...@@ -853,8 +853,11 @@ gimplify_and_update_call_from_tree (gimple_stmt_iterator *si_p, tree expr)
gsi_next (si_p); gsi_next (si_p);
} }
new_stmt = gsi_stmt (i); new_stmt = gsi_stmt (i);
find_new_referenced_vars (new_stmt); if (gimple_in_ssa_p (cfun))
mark_symbols_for_renaming (new_stmt); {
find_new_referenced_vars (new_stmt);
mark_symbols_for_renaming (new_stmt);
}
/* If the new statement has a VUSE, update it with exact SSA name we /* If the new statement has a VUSE, update it with exact SSA name we
know will reach this one. */ know will reach this one. */
if (gimple_vuse (new_stmt)) if (gimple_vuse (new_stmt))
...@@ -892,7 +895,7 @@ gimplify_and_update_call_from_tree (gimple_stmt_iterator *si_p, tree expr) ...@@ -892,7 +895,7 @@ gimplify_and_update_call_from_tree (gimple_stmt_iterator *si_p, tree expr)
SSA_NAME_DEF_STMT (gimple_vdef (stmt)) = laststore; SSA_NAME_DEF_STMT (gimple_vdef (stmt)) = laststore;
update_stmt (laststore); update_stmt (laststore);
} }
else else if (gimple_in_ssa_p (cfun))
{ {
unlink_stmt_vdef (stmt); unlink_stmt_vdef (stmt);
release_defs (stmt); release_defs (stmt);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment