From 51f438068c3b4027d5cf7149d9c7d4dc9d194c28 Mon Sep 17 00:00:00 2001 From: rguenth Date: Tue, 15 Dec 2009 11:28:10 +0000 Subject: [PATCH] 2009-12-15 Richard Guenther * lto-cgraph.c (lto_output_node): Also stream the alias for regular aliases. (input_node): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155249 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/lto-cgraph.c | 13 +++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 292ac69..df110ad 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 e02999d..e3deb9c 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.7.4