[Bug lto/44992] ld -r breaks LTO

2010-07-22 Thread ak at gcc dot gnu dot org


--- Comment #6 from ak at gcc dot gnu dot org  2010-07-23 05:34 ---
Subject: Bug 44992

Author: ak
Date: Fri Jul 23 05:33:51 2010
New Revision: 162443

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=162443
Log:
gcc:

2010-07-10   Andi Kleen 

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 

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 

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.  

Modified:
trunk/gcc/ChangeLog
trunk/gcc/lto-opts.c
trunk/gcc/lto-section-out.c
trunk/gcc/lto-streamer-out.c
trunk/gcc/lto-streamer.c
trunk/gcc/lto-streamer.h
trunk/gcc/lto/ChangeLog
trunk/gcc/lto/lto.c
trunk/lto-plugin/ChangeLog
trunk/lto-plugin/lto-plugin.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44992



[Bug lto/45475] target use in libcpp breaks LTO bootstrap

2010-09-01 Thread ak at gcc dot gnu dot org


--- Comment #4 from ak at gcc dot gnu dot org  2010-09-01 17:04 ---
Subject: Bug 45475

Author: ak
Date: Wed Sep  1 17:03:56 2010
New Revision: 163740

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163740
Log:
2010-09-01  Andi Kleen  

PR lto/45475
* lto-streamer-in.c (lto_input_ts_target_option): Add.
(lto_input_tree_pointers): Call lto_input_ts_target_option.
* lto-streamer-out: (lto_output_ts_target_option): Add.
(lto_output_tree_pointers): Call lto_output_ts_target_option.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/lto-streamer-in.c
trunk/gcc/lto-streamer-out.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45475