summaryrefslogtreecommitdiff
path: root/gcc/lto-streamer-out.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-30 15:43:59 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-30 15:43:59 +0000
commitd55c4ba8d207113f309395300961e515d33e0e0b (patch)
tree123be862ce33afbae14b31a01f85460d40b297f0 /gcc/lto-streamer-out.c
parent8b794819ddd5daadc75ad2c4f19d85bfd0ea1955 (diff)
downloadgcc-d55c4ba8d207113f309395300961e515d33e0e0b.tar.gz
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171734 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lto-streamer-out.c')
-rw-r--r--gcc/lto-streamer-out.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 48579478b4d..d740d03b738 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -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)