From ede51b1f13813c70b32070410496e34f573b2376 Mon Sep 17 00:00:00 2001 From: Richard Guenther Date: Tue, 15 Dec 2009 11:28:10 +0000 Subject: [PATCH] lto-cgraph.c (lto_output_node): Also stream the alias for regular aliases. 2009-12-15 Richard Guenther * lto-cgraph.c (lto_output_node): Also stream the alias for regular aliases. (input_node): Likewise. From-SVN: r155249 --- gcc/ChangeLog | 6 ++++++ gcc/lto-cgraph.c | 13 +++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 292ac692c05..df110ad4df6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2009-12-15 Richard Guenther + + * lto-cgraph.c (lto_output_node): Also stream the alias + for regular aliases. + (input_node): Likewise. + 2009-12-15 Paolo Bonzini Shujing Zhao diff --git a/gcc/lto-cgraph.c b/gcc/lto-cgraph.c index e02999d98a1..e3deb9c8b06 100644 --- a/gcc/lto-cgraph.c +++ b/gcc/lto-cgraph.c @@ -340,7 +340,11 @@ lto_output_node (struct lto_simple_output_block *ob, struct cgraph_node *node, alias->thunk.alias); } else - lto_output_uleb128_stream (ob->main_stream, 0); + { + lto_output_uleb128_stream (ob->main_stream, 0); + lto_output_fn_decl_index (ob->decl_state, ob->main_stream, + alias->thunk.alias); + } alias = alias->previous; } while (alias); @@ -630,7 +634,12 @@ input_node (struct lto_file_decl_data *file_data, alias_decl = lto_file_decl_data_get_fn_decl (file_data, decl_index); type = lto_input_uleb128 (ib); if (!type) - cgraph_same_body_alias (alias_decl, fn_decl); + { + tree real_alias; + decl_index = lto_input_uleb128 (ib); + real_alias = lto_file_decl_data_get_fn_decl (file_data, decl_index); + cgraph_same_body_alias (alias_decl, real_alias); + } else { HOST_WIDE_INT fixed_offset = lto_input_uleb128 (ib); -- 2.30.2