Commit 8f984534 by Richard Biener

tree-dfa.c (renumber_gimple_stmt_uids): Also number PHIs.

2011-03-30  Richard Guenther  <rguenther@suse.de>

	* tree-dfa.c (renumber_gimple_stmt_uids): Also number PHIs.
	* lto-streamer-out.c (output_function): Do not use
	renumber_gimple_stmt_uids.
	* lto-streamer-in.c (input_function): Likewise.

From-SVN: r171734
parent 4f431835
......@@ -1287,7 +1287,16 @@ input_function (tree fn_decl, struct data_in *data_in,
/* Fix up the call statements that are mentioned in the callgraph
edges. */
renumber_gimple_stmt_uids ();
set_gimple_stmt_max_uid (cfun, 0);
FOR_ALL_BB (bb)
{
gimple_stmt_iterator gsi;
for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
{
gimple stmt = gsi_stmt (gsi);
gimple_set_uid (stmt, inc_gimple_stmt_max_uid (cfun));
}
}
stmts = (gimple *) xcalloc (gimple_stmt_max_uid (fn), sizeof (gimple));
FOR_ALL_BB (bb)
{
......
......@@ -1981,8 +1981,19 @@ output_function (struct cgraph_node *node)
/* We will renumber the statements. The code that does this uses
the same ordering that we use for serializing them so we can use
the same code on the other end and not have to write out the
statement numbers. */
renumber_gimple_stmt_uids ();
statement numbers. We do not assign UIDs to PHIs here because
virtual PHIs get re-computed on-the-fly which would make numbers
inconsistent. */
set_gimple_stmt_max_uid (cfun, 0);
FOR_ALL_BB (bb)
{
gimple_stmt_iterator gsi;
for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
{
gimple stmt = gsi_stmt (gsi);
gimple_set_uid (stmt, inc_gimple_stmt_max_uid (cfun));
}
}
/* Output the code for the function. */
FOR_ALL_BB_FN (bb, fn)
......
......@@ -151,6 +151,11 @@ renumber_gimple_stmt_uids (void)
FOR_ALL_BB (bb)
{
gimple_stmt_iterator bsi;
for (bsi = gsi_start_phis (bb); !gsi_end_p (bsi); gsi_next (&bsi))
{
gimple stmt = gsi_stmt (bsi);
gimple_set_uid (stmt, inc_gimple_stmt_max_uid (cfun));
}
for (bsi = gsi_start_bb (bb); !gsi_end_p (bsi); gsi_next (&bsi))
{
gimple stmt = gsi_stmt (bsi);
......
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