cgraph.c (cgraph_clone_node): Take decl argument and insert clone into hash when...
authorJan Hubicka <jh@suse.cz>
Sun, 16 May 2010 21:49:36 +0000 (23:49 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Sun, 16 May 2010 21:49:36 +0000 (21:49 +0000)
commit91fbf0c7c60930152acf7ec888ffa08383a20453
treeb941299e1cca65763fc24db9b4af875a72897cdf
parentcdc6637d7c78ec66bff42ef5a38c1f5a4cd2074d
cgraph.c (cgraph_clone_node): Take decl argument and insert clone into hash when it is different from orig.

* cgraph.c (cgraph_clone_node): Take decl argument and insert
clone into hash when it is different from orig.
(cgraph_create_virtual_clone): Update use of cgraph_clone_node.
* cgraph.h (cgraph_clone_node): Update prototype.
* lto-cgrpah.c (lto_cgraph_encoder_new): Create body map.
(lto_cgraph_encoder_delete): Delete body map.
(lto_cgraph_encoder_size): Move to header.
(lto_cgraph_encoder_encode_body_p, lto_set_cgraph_encoder_encode_body): New.
(lto_output_node): Do not take written_decls argument; output clone_of
pointer.
(add_node_to): Add include_body_argument; call
lto_set_cgraph_encoder_encode_body on master of the clone.
(add_references): Update use of add_node_to.
(compute_ltrans_boundary): Likewise.
(output_cgraph): Do not create written_decls bitmap.
(input_node): Take nodes argument; stream in clone_of correctly.
(input_cgraph_1): Update use of input_node.
* lto-streamer-out.c (lto_output): Use encoder info to decide
what bodies to output.
* ipa-inline.c (cgraph_clone_inlined_nodes,
cgraph_decide_recursive_inlining): Update call of cgraph_clone_node.
* lto-streamer.h (lto_cgraph_encoder_d): Add body.
(lto_cgraph_encoder_size): Define here.
(lto_cgraph_encoder_encode_body_p, lto_varpool_encoder_encode_body_p):
Declare.

From-SVN: r159466
gcc/ChangeLog
gcc/cgraph.c
gcc/cgraph.h
gcc/ipa-inline.c
gcc/lto-cgraph.c
gcc/lto-streamer-out.c
gcc/lto-streamer.h