tree-cfg.c (bsi_replace): Shortcut when replacing the statement with the same one; always update histograms.

* tree-cfg.c (bsi_replace): Shortcut when replacing the statement with
	the same one; always update histograms.

From-SVN: r121724
This commit is contained in:
Jan Hubicka 2007-02-08 23:04:22 +01:00 committed by Jan Hubicka
parent b3f7d793a9
commit ff39b79b8f
2 changed files with 9 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2007-02-08 Jan Hubicka <jh@suse.cz>
* tree-cfg.c (bsi_replace): Shortcut when replacing the statement with
the same one; always update histograms.
2007-02-08 Diego Novillo <dnovillo@redhat.com>
* passes.c (init_optimization_passes): Tidy comment.

View File

@ -2840,6 +2840,8 @@ bsi_replace (const block_stmt_iterator *bsi, tree stmt, bool update_eh_info)
int eh_region;
tree orig_stmt = bsi_stmt (*bsi);
if (stmt == orig_stmt)
return;
SET_EXPR_LOCUS (stmt, EXPR_LOCUS (orig_stmt));
set_bb_for_stmt (stmt, bsi->bb);
@ -2852,11 +2854,11 @@ bsi_replace (const block_stmt_iterator *bsi, tree stmt, bool update_eh_info)
{
remove_stmt_from_eh_region (orig_stmt);
add_stmt_to_eh_region (stmt, eh_region);
gimple_duplicate_stmt_histograms (cfun, stmt, cfun, orig_stmt);
gimple_remove_stmt_histograms (cfun, orig_stmt);
}
}
gimple_duplicate_stmt_histograms (cfun, stmt, cfun, orig_stmt);
gimple_remove_stmt_histograms (cfun, orig_stmt);
delink_stmt_imm_use (orig_stmt);
*bsi_stmt_ptr (*bsi) = stmt;
mark_stmt_modified (stmt);