public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* 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).