diff options
author | Andi Kleen <ak@linux.intel.com> | 2010-07-23 05:33:51 +0000 |
---|---|---|
committer | Andi Kleen <ak@gcc.gnu.org> | 2010-07-23 05:33:51 +0000 |
commit | 73ce4d1ed68a2f4e36c27be604ce35c242048f9d (patch) | |
tree | 50e055bbea281c232261eb1e07af42e60ab3a165 /gcc/lto-section-out.c | |
parent | 0011a34c22ab26fc474b70bb7773bdf2f95c8d6f (diff) | |
download | gcc-73ce4d1ed68a2f4e36c27be604ce35c242048f9d.zip gcc-73ce4d1ed68a2f4e36c27be604ce35c242048f9d.tar.gz gcc-73ce4d1ed68a2f4e36c27be604ce35c242048f9d.tar.bz2 |
re PR lto/44992 (ld -r breaks LTO)
gcc:
2010-07-10 Andi Kleen <ak@linux.intel.com>
PR lto/44992
* lto-opts.c (lto_write_options): Add NULL file_data argument to
lto_get_section_name.
* lto-section-out.c (lto_destroy_simple_output_block): Likewise.
* lto-streamer-out.c (produce_asm): Likewise.
(copy_function): Likewise.
(produce_symtab): Likewise.
(produce_asm_for_decls): Likewise.
* lto-streamer.c (lto_get_section_name): Add file_data argument.
Rewrite to add random postfix to LTO sections.
* lto-streamer.h (lto_file_decl_data): Add next, id, resolutions.
(lto_get_section_name): Add file_data argument to prototype.
lto:
2010-07-10 Andi Kleen <ak@linux.intel.com>
PR lto/44992
* lto.c: Include splay-tree.h
(lto_resolution_read): Change to walk file_ids tree and parse
extra file_id in resolution file.
(lto_section_with_id): Add.
(create_subid_section_table): Add.
(lwstate): Add.
(lto_create_files_from_ids): Add.
(lto_file_read): Change to handle sub file ids and create list
of file_datas. Add output argument for count.
(get_section_data): Pass file_data to lto_get_section_name.
(lto_flatten_file): Add.
(read_cgraph_and_symbols): Handle linked lists of file_datas.
lto-plugin:
2010-07-10 Andi Kleen <ak@linux.intel.com>
PR lto/44992
* lto-plugin.c (sym_aux): Add.
(plugin_symtab): Remove slots. Add aux and id.
(parse_table_entry): Change to use aux instead of slots.
(LTO_SECTION_PREFIX): Add.
(translate): Improve buffer allocation. Change to append
symbols to existing out buffer.
(get_section): Remove.
(process_symtab): Add.
(free_2): Free symtab->aux.
(write_resolution): Handle aux instead of slots.
Print sub id to resolution file.
(claim_file_handler): Clear lto_file. Replace get_symtab/translate
calls with call to process_symtab.
From-SVN: r162443
Diffstat (limited to 'gcc/lto-section-out.c')
-rw-r--r-- | gcc/lto-section-out.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/lto-section-out.c b/gcc/lto-section-out.c index b5353f3..e9b7b0a 100644 --- a/gcc/lto-section-out.c +++ b/gcc/lto-section-out.c @@ -486,7 +486,7 @@ lto_destroy_simple_output_block (struct lto_simple_output_block *ob) struct lto_simple_header header; struct lto_output_stream *header_stream; - section_name = lto_get_section_name (ob->section_type, NULL); + section_name = lto_get_section_name (ob->section_type, NULL, NULL); lto_begin_section (section_name, !flag_wpa); free (section_name); |