aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2011-04-14 15:26:44 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2011-04-14 13:26:44 +0000
commit10a5dd5d3d4cc53613b8e44b78e99b7d61f85d77 (patch)
treeeb6e4c913e14b3874133c0765b5a7b51b8c55868 /gcc/lto
parentb602d918bc8a134e29e065c38776ecf1a382e932 (diff)
downloadgcc-10a5dd5d3d4cc53613b8e44b78e99b7d61f85d77.zip
gcc-10a5dd5d3d4cc53613b8e44b78e99b7d61f85d77.tar.gz
gcc-10a5dd5d3d4cc53613b8e44b78e99b7d61f85d77.tar.bz2
cgraph.c (dump_cgraph_node): Do not dump inline summaries.
* cgraph.c (dump_cgraph_node): Do not dump inline summaries. * cgraph.h (struct inline_summary): Move to ipa-inline.h (cgraph_local_info): Remove inline_summary. * ipa-cp.c: Include ipa-inline.h. (ipcp_cloning_candidate_p, ipcp_estimate_growth, ipcp_estimate_cloning_cost, ipcp_insert_stage): Use inline_summary accesor. * lto-cgraph.c (lto_output_node): Do not stream inline summary. (input_overwrite_node): Do not set inline summary. (input_node): Do not stream inline summary. * ipa-inline.c (cgraph_decide_inlining): Dump inline summaries. (cgraph_decide_inlining_incrementally): Do not try to estimate overall growth; we do not have inline parameters computed for that anyway. (cgraph_early_inlining): After inlining compute call_stmt_sizes. * ipa-inline.h (struct inline_summary): Move here from ipa-inline.h (inline_summary_t): New type and VECtor. (debug_inline_summary, dump_inline_summaries): Declare. (inline_summary): Use VOCtor. (estimate_edge_growth): Kill hack computing call stmt size directly. * lto-section-in.c (lto_section_name): Add inline section. * ipa-inline-analysis.c: Include lto-streamer.h (node_removal_hook_holder, node_duplication_hook_holder): New holders (inline_node_removal_hook, inline_node_duplication_hook): New functions. (inline_summary_vec): Define. (inline_summary_alloc, dump_inline_summary, debug_inline_summary, dump_inline_summaries): New functions. (estimate_function_body_sizes): Properly compute size/time of outgoing calls. (compute_inline_parameters): Alloc inline_summary; do not compute size/time of incomming calls. (estimate_edge_time): Avoid missing time summary hack. (inline_read_summary): Read inline summary info. (inline_write_summary): Write inline summary info. (inline_free_summary): Free all hooks and inline summary vector. * lto-streamer.h: Add LTO_section_inline_summary section. * Makefile.in (ipa-cp.o, ipa-inline-analysis.o): Update dependencies. * ipa.c (cgraph_remove_unreachable_nodes): Fix dump file formating. * lto.c: Include ipa-inline.h (add_cgraph_node_to_partition, undo_partition): Use inline_summary accessor. (ipa_node_duplication_hook): Fix declaration. * Make-lang.in (lto.o): Update dependencies. From-SVN: r172430
Diffstat (limited to 'gcc/lto')
-rw-r--r--gcc/lto/ChangeLog7
-rw-r--r--gcc/lto/Make-lang.in3
-rw-r--r--gcc/lto/lto.c5
3 files changed, 12 insertions, 3 deletions
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index bc72f2f..45dd300 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,10 @@
+2011-04-14 Jan Hubicka <jh@suse.cz>
+
+ * lto.c: Include ipa-inline.h
+ (add_cgraph_node_to_partition, undo_partition): Use inline_summary accessor.
+ (ipa_node_duplication_hook): Fix declaration.
+ * Make-lang.in (lto.o): Update dependencies.
+
2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
* lto-tree.h (union lang_tree_node): Check for TS_COMMON before
diff --git a/gcc/lto/Make-lang.in b/gcc/lto/Make-lang.in
index 1c8618d..5287c12 100644
--- a/gcc/lto/Make-lang.in
+++ b/gcc/lto/Make-lang.in
@@ -85,7 +85,8 @@ lto/lto.o: lto/lto.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(OPTS_H) \
$(CGRAPH_H) $(GGC_H) tree-ssa-operands.h $(TREE_PASS_H) \
langhooks.h $(VEC_H) $(BITMAP_H) pointer-set.h $(IPA_PROP_H) \
$(COMMON_H) debug.h $(TIMEVAR_H) $(GIMPLE_H) $(LTO_H) $(LTO_TREE_H) \
- $(LTO_TAGS_H) $(LTO_STREAMER_H) $(SPLAY_TREE_H) gt-lto-lto.h $(PARAMS_H)
+ $(LTO_TAGS_H) $(LTO_STREAMER_H) $(SPLAY_TREE_H) gt-lto-lto.h $(PARAMS_H) \
+ ipa-inline.h
lto/lto-object.o: lto/lto-object.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(DIAGNOSTIC_CORE_H) $(LTO_H) $(TM_H) $(LTO_STREAMER_H) \
../include/simple-object.h
diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c
index eebc50f..9103af4 100644
--- a/gcc/lto/lto.c
+++ b/gcc/lto/lto.c
@@ -44,6 +44,7 @@ along with GCC; see the file COPYING3. If not see
#include "lto-streamer.h"
#include "splay-tree.h"
#include "params.h"
+#include "ipa-inline.h"
static GTY(()) tree first_personality_decl;
@@ -750,7 +751,7 @@ add_cgraph_node_to_partition (ltrans_partition part, struct cgraph_node *node)
{
struct cgraph_edge *e;
- part->insns += node->local.inline_summary.self_size;
+ part->insns += inline_summary (node)->self_size;
if (node->aux)
{
@@ -811,7 +812,7 @@ undo_partition (ltrans_partition partition, unsigned int n_cgraph_nodes,
struct cgraph_node *node = VEC_index (cgraph_node_ptr,
partition->cgraph_set->nodes,
n_cgraph_nodes);
- partition->insns -= node->local.inline_summary.self_size;
+ partition->insns -= inline_summary (node)->self_size;
cgraph_node_set_remove (partition->cgraph_set, node);
node->aux = (void *)((size_t)node->aux - 1);
}