diff options
author | Richard Guenther <rguenther@suse.de> | 2009-12-15 11:28:10 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2009-12-15 11:28:10 +0000 |
commit | ede51b1f13813c70b32070410496e34f573b2376 (patch) | |
tree | bac6fdfc423c68b98d2a4ef4d853895bf5a473a3 /gcc | |
parent | d94be5e02d4a25241e6e3b1cfbf098b5f1b68b39 (diff) | |
download | gcc-ede51b1f13813c70b32070410496e34f573b2376.zip gcc-ede51b1f13813c70b32070410496e34f573b2376.tar.gz gcc-ede51b1f13813c70b32070410496e34f573b2376.tar.bz2 |
lto-cgraph.c (lto_output_node): Also stream the alias for regular aliases.
2009-12-15 Richard Guenther <rguenther@suse.de>
* lto-cgraph.c (lto_output_node): Also stream the alias
for regular aliases.
(input_node): Likewise.
From-SVN: r155249
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | 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 <rguenther@suse.de> + + * lto-cgraph.c (lto_output_node): Also stream the alias + for regular aliases. + (input_node): Likewise. + 2009-12-15 Paolo Bonzini <bonzini@gnu.org> Shujing Zhao <pearly.zhao@oracle.com> 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); |