timevar.def (TV_IPA_LTO_DECOMPRESS, [...]): New.
authorJan Hubicka <hubicka@ucw.cz>
Wed, 25 Nov 2015 20:00:47 +0000 (21:00 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Wed, 25 Nov 2015 20:00:47 +0000 (20:00 +0000)
* timevar.def (TV_IPA_LTO_DECOMPRESS, TV_IPA_LTO_COMPRESS,
TV_IPA_LTO_OUTPUT): New.
* lto-compress.c: Include timevar.h
(lto_end_compression, lto_end_uncompression): Add timers.
* langhooks.c: Include timevar.h
(lhd_append_data): Add timer.

From-SVN: r230902

gcc/ChangeLog
gcc/langhooks.c
gcc/lto-compress.c
gcc/timevar.def

index 9ee04518fcb9e118a6f6b57082be9166f1f0baa8..2950141066cba6a04643cd95ec495d5bd025958f 100644 (file)
@@ -1,3 +1,12 @@
+2015-11-25  Jan Hubicka  <hubicka@ucw.cz>
+
+       * timevar.def (TV_IPA_LTO_DECOMPRESS, TV_IPA_LTO_COMPRESS,
+       TV_IPA_LTO_OUTPUT): New.
+       * lto-compress.c: Include timevar.h
+       (lto_end_compression, lto_end_uncompression): Add timers.
+       * langhooks.c: Include timevar.h
+       (lhd_append_data): Add timer.
+
 2015-11-25  Jan Hubicka  <hubicka@ucw.cz>
 
        * varasm.c (default_elf_asm_output_limited_string,
index e7d9ae1d303034bfcfa31d9a99f86453991cd1e4..9d4f331fc4881f83d97b3fe99455d26eb2cc14a3 100644 (file)
@@ -34,6 +34,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "langhooks.h"
 #include "tree-diagnostic.h"
 #include "output.h"
+#include "timevar.h"
 
 /* Do nothing; in many cases the default hook.  */
 
@@ -658,7 +659,11 @@ void
 lhd_append_data (const void *data, size_t len, void *)
 {
   if (data)
-    assemble_string ((const char *)data, len);
+    {
+      timevar_push (TV_IPA_LTO_OUTPUT);
+      assemble_string ((const char *)data, len);
+      timevar_pop (TV_IPA_LTO_OUTPUT);
+    }
 }
 
 
index 7d758ecb7c807c7b8105c7869694166b08f85aad..204ca419d74b887db5f568fb2f1b53f169e9d827 100644 (file)
@@ -33,6 +33,7 @@ along with GCC; see the file COPYING3.  If not see
    system.h.  */
 #include <zlib.h>
 #include "lto-compress.h"
+#include "timevar.h"
 
 /* Compression stream structure, holds the flush callback and opaque token,
    the buffered data, and a note of whether compressing or uncompressing.  */
@@ -177,6 +178,8 @@ lto_end_compression (struct lto_compression_stream *stream)
 
   gcc_assert (stream->is_compression);
 
+  timevar_push (TV_IPA_LTO_COMPRESS);
+
   out_stream.next_out = outbuf;
   out_stream.avail_out = outbuf_length;
   out_stream.next_in = cursor;
@@ -220,6 +223,7 @@ lto_end_compression (struct lto_compression_stream *stream)
 
   lto_destroy_compression_stream (stream);
   free (outbuf);
+  timevar_pop (TV_IPA_LTO_COMPRESS);
 }
 
 /* Return a new uncompression stream, with CALLBACK flush function passed
@@ -260,6 +264,7 @@ lto_end_uncompression (struct lto_compression_stream *stream)
   size_t uncompressed_bytes = 0;
 
   gcc_assert (!stream->is_compression);
+  timevar_push (TV_IPA_LTO_DECOMPRESS);
 
   while (remaining > 0)
     {
@@ -311,4 +316,5 @@ lto_end_uncompression (struct lto_compression_stream *stream)
 
   lto_destroy_compression_stream (stream);
   free (outbuf);
+  timevar_pop (TV_IPA_LTO_DECOMPRESS);
 }
index 45e3b709af1a58499f8e46fd676e94d2a742f8d3..535597fcbb1166f141aed5f219288179fb0a52f1 100644 (file)
@@ -79,6 +79,9 @@ DEFTIMEVAR (TV_IPA_INLINING          , "ipa inlining heuristics")
 DEFTIMEVAR (TV_IPA_FNSPLIT           , "ipa function splitting")
 DEFTIMEVAR (TV_IPA_COMDATS          , "ipa comdats")
 DEFTIMEVAR (TV_IPA_OPT              , "ipa various optimizations")
+DEFTIMEVAR (TV_IPA_LTO_DECOMPRESS    , "lto stream inflate")
+DEFTIMEVAR (TV_IPA_LTO_COMPRESS      , "lto stream deflate")
+DEFTIMEVAR (TV_IPA_LTO_OUTPUT        , "lto stream output")
 DEFTIMEVAR (TV_IPA_LTO_GIMPLE_IN     , "ipa lto gimple in")
 DEFTIMEVAR (TV_IPA_LTO_GIMPLE_OUT    , "ipa lto gimple out")
 DEFTIMEVAR (TV_IPA_LTO_DECL_IN       , "ipa lto decl in")