* Drop self_time from inline_summary
@ 2017-05-22 11:20 Jan Hubicka
0 siblings, 0 replies; only message in thread
From: Jan Hubicka @ 2017-05-22 11:20 UTC (permalink / raw)
To: gcc-patches
Hi,
self_time is currently write only and there is quite good reason for it (one
should not care about running time of unoptimized body without context at all).
Bootstrapped/regtested x86_64-linux, comitted.
Honza
* ipa-inline-analysis.c (inline_summary::reset): Do not reset
self_time.
(dump_inline_summary): Do not print self_time.
(estimate_function_body_sizes): Do not set self_time.
(compute_inline_parameters): Likewise.
(inline_read_section, inline_write_summary): Do not stream self_time.
* ipa-inline.h (inline_summary): Drop self_time.
Index: ipa-inline-analysis.c
===================================================================
--- ipa-inline-analysis.c (revision 248322)
+++ ipa-inline-analysis.c (working copy)
@@ -560,7 +560,6 @@ inline_summary::reset (struct cgraph_nod
struct cgraph_edge *e;
self_size = 0;
- self_time = 0;
estimated_stack_size = 0;
estimated_self_stack_size = 0;
stack_frame_offset = 0;
@@ -920,8 +919,7 @@ dump_inline_summary (FILE *f, struct cgr
fprintf (f, " contains_cilk_spawn");
if (s->fp_expressions)
fprintf (f, " fp_expression");
- fprintf (f, "\n self time: %f\n", s->self_time.to_double ());
- fprintf (f, " global time: %f\n", s->time.to_double ());
+ fprintf (f, "\n global time: %f\n", s->time.to_double ());
fprintf (f, " self size: %i\n", s->self_size);
fprintf (f, " global size: %i\n", s->size);
fprintf (f, " min size: %i\n", s->min_size);
@@ -2415,7 +2413,7 @@ estimate_function_body_sizes (struct cgr
e->aux = NULL;
}
}
- inline_summaries->get (node)->self_time = time;
+ inline_summaries->get (node)->time = time;
inline_summaries->get (node)->self_size = size;
nonconstant_names.release ();
ipa_release_body_info (&fbi);
@@ -2472,7 +2470,6 @@ compute_inline_parameters (struct cgraph
info->account_size_time (2 * INLINE_SIZE_SCALE, 0, t, t);
inline_update_overall_summary (node);
info->self_size = info->size;
- info->self_time = info->time;
/* We can not inline instrumentation clones. */
if (node->thunk.add_pointer_bounds_args)
{
@@ -2539,7 +2536,6 @@ compute_inline_parameters (struct cgraph
node->calls_comdat_local = (e != NULL);
/* Inlining characteristics are maintained by the cgraph_mark_inline. */
- info->time = info->self_time;
info->size = info->self_size;
info->stack_frame_offset = 0;
info->estimated_stack_size = info->estimated_self_stack_size;
@@ -2548,8 +2544,7 @@ compute_inline_parameters (struct cgraph
inline_update_overall_summary but because computation happens in
different order the roundoff errors result in slight changes. */
inline_update_overall_summary (node);
- gcc_assert (!(info->time - info->self_time).to_int ()
- && info->size == info->self_size);
+ gcc_assert (info->size == info->self_size);
}
@@ -3695,7 +3690,7 @@ inline_read_section (struct lto_file_dec
info->estimated_stack_size
= info->estimated_self_stack_size = streamer_read_uhwi (&ib);
info->size = info->self_size = streamer_read_uhwi (&ib);
- info->time = info->self_time = sreal::stream_in (&ib);
+ info->time = sreal::stream_in (&ib);
bp = streamer_read_bitpack (&ib);
info->inlinable = bp_unpack_value (&bp, 1);
@@ -3848,7 +3843,7 @@ inline_write_summary (void)
streamer_write_uhwi (ob, lto_symtab_encoder_encode (encoder, cnode));
streamer_write_hwi (ob, info->estimated_self_stack_size);
streamer_write_hwi (ob, info->self_size);
- info->self_time.stream_out (ob);
+ info->time.stream_out (ob);
bp = bitpack_create (ob->main_stream);
bp_pack_value (&bp, info->inlinable, 1);
bp_pack_value (&bp, info->contains_cilk_spawn, 1);
Index: ipa-inline.h
===================================================================
--- ipa-inline.h (revision 248322)
+++ ipa-inline.h (working copy)
@@ -96,8 +96,6 @@ struct GTY(()) inline_summary
HOST_WIDE_INT estimated_self_stack_size;
/* Size of the function body. */
int self_size;
- /* Time of the function body. */
- sreal GTY((skip)) self_time;
/* Minimal size increase after inlining. */
int min_size;
@@ -149,7 +147,7 @@ struct GTY(()) inline_summary
/* Keep all field empty so summary dumping works during its computation.
This is useful for debugging. */
inline_summary ()
- : estimated_self_stack_size (0), self_size (0), self_time (0), min_size (0),
+ : estimated_self_stack_size (0), self_size (0), min_size (0),
inlinable (false), contains_cilk_spawn (false), single_caller (false),
fp_expressions (false), estimated_stack_size (false),
stack_frame_offset (false), time (0), size (0), conds (NULL),
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-05-22 10:42 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-22 11:20 Drop self_time from inline_summary Jan Hubicka
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).