aboutsummaryrefslogtreecommitdiff
path: root/gcc/passes.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2010-05-10 18:13:52 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2010-05-10 16:13:52 +0000
commit5c4f225fcfbad841f98fe6b7813bf07de8817cea (patch)
treeaf4fa061a1b315f2199661fa8e32fbeec97d0a94 /gcc/passes.c
parentde61f46712258bf735c5173e92655569bc732f13 (diff)
downloadgcc-5c4f225fcfbad841f98fe6b7813bf07de8817cea.zip
gcc-5c4f225fcfbad841f98fe6b7813bf07de8817cea.tar.gz
gcc-5c4f225fcfbad841f98fe6b7813bf07de8817cea.tar.bz2
passes.c (ipa_write_summaries_1, [...]): Allocate encoders.
* passes.c (ipa_write_summaries_1, ipa_write_optimization_summaries): Allocate encoders. * lto-section-out.c (lto_new_out_decl_state): Do not allocate it here. * lto-streamer.c (lto_streamer_cache_insert_1): Use alloc pool. (lto_streamer_cache_create): Init alloc pool. (lto_streamer_cache_delete): Free alloc pool. * lto-streamer.h: Include alloc pool. (lto_streamer_cache_d): Use alloc pool. * lto-stramer-out.c (produce_asm_for_decls): Delete fn_out_states. From-SVN: r159230
Diffstat (limited to 'gcc/passes.c')
-rw-r--r--gcc/passes.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/passes.c b/gcc/passes.c
index f482437..c087750 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -1694,6 +1694,9 @@ static void
ipa_write_summaries_1 (cgraph_node_set set, varpool_node_set vset)
{
struct lto_out_decl_state *state = lto_new_out_decl_state ();
+ state->cgraph_node_encoder = lto_cgraph_encoder_new ();
+ state->varpool_node_encoder = lto_varpool_encoder_new ();
+
lto_push_out_decl_state (state);
gcc_assert (!flag_wpa);
@@ -1805,6 +1808,8 @@ void
ipa_write_optimization_summaries (cgraph_node_set set, varpool_node_set vset)
{
struct lto_out_decl_state *state = lto_new_out_decl_state ();
+ state->cgraph_node_encoder = lto_cgraph_encoder_new ();
+ state->varpool_node_encoder = lto_varpool_encoder_new ();
lto_push_out_decl_state (state);
gcc_assert (flag_wpa);