Remove misleading sorting function in ggc memory report.
authorMartin Liska <mliska@suse.cz>
Tue, 29 Oct 2019 08:44:28 +0000 (09:44 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Tue, 29 Oct 2019 08:44:28 +0000 (08:44 +0000)
2019-10-29  Martin Liska  <mliska@suse.cz>

* cgraphunit.c (symbol_table::compile): Remove argument
for dump_memory_report.
* ggc-common.c (dump_ggc_loc_statistics): Likewise.
(compare_final): Remove in order to make report
better readable.
* ggc.h (dump_ggc_loc_statistics):  Remove argument.
* mem-stats.h (mem_alloc_description::get_list):
Do not pass cmp.
(mem_alloc_description::dump): Likewise here.
* toplev.c (dump_memory_report): Remove final
argument.
(finalize): Likewise.
* toplev.h (dump_memory_report): Remove argument.
2019-10-29  Martin Liska  <mliska@suse.cz>

* lto.c (do_whole_program_analysis): Remove argument.

From-SVN: r277557

gcc/ChangeLog
gcc/cgraphunit.c
gcc/ggc-common.c
gcc/ggc.h
gcc/lto/ChangeLog
gcc/lto/lto.c
gcc/mem-stats.h
gcc/toplev.c
gcc/toplev.h

index a85c2ae355c520a178a25a11a1be3552fc094327..1942f4e315a1f6aa78794b0fc0fe0b5f0b414a42 100644 (file)
@@ -1,3 +1,19 @@
+2019-10-29  Martin Liska  <mliska@suse.cz>
+
+       * cgraphunit.c (symbol_table::compile): Remove argument
+       for dump_memory_report.
+       * ggc-common.c (dump_ggc_loc_statistics): Likewise.
+       (compare_final): Remove in order to make report
+       better readable.
+       * ggc.h (dump_ggc_loc_statistics):  Remove argument.
+       * mem-stats.h (mem_alloc_description::get_list):
+       Do not pass cmp.
+       (mem_alloc_description::dump): Likewise here.
+       * toplev.c (dump_memory_report): Remove final
+       argument.
+       (finalize): Likewise.
+       * toplev.h (dump_memory_report): Remove argument.
+
 2019-10-29  Richard Sandiford  <richard.sandiford@arm.com>
 
        * config/aarch64/aarch64.c (aarch64_sve_cmp_immediate_p)
index 3f751fa1044358de7e45dd2809cc585386a28604..9873b9b7aac303f453e96b132784cdda35cabbfe 100644 (file)
@@ -2604,7 +2604,7 @@ symbol_table::compile (void)
   if (pre_ipa_mem_report)
     {
       fprintf (stderr, "Memory consumption before IPA\n");
-      dump_memory_report (false);
+      dump_memory_report ();
     }
   if (!quiet_flag)
     fprintf (stderr, "Performing interprocedural optimizations\n");
@@ -2639,7 +2639,7 @@ symbol_table::compile (void)
   if (post_ipa_mem_report)
     {
       fprintf (stderr, "Memory consumption after IPA\n");
-      dump_memory_report (false);
+      dump_memory_report ();
     }
   timevar_pop (TV_CGRAPHOPT);
 
index 0968d9769faeb31c622bccc39ad66b1b0408fb8b..8bc77a0a0366b9c25ddda8fd719a6a34da7db93c 100644 (file)
@@ -933,21 +933,6 @@ public:
     return s.second->get_balance () - f.second->get_balance ();
   }
 
-  /* Compare rows in final GGC summary dump.  */
-  static int
-  compare_final (const void *first, const void *second)
-  {
-    typedef std::pair<mem_location *, ggc_usage *> mem_pair_t;
-
-    const ggc_usage *f = ((const mem_pair_t *)first)->second;
-    const ggc_usage *s = ((const mem_pair_t *)second)->second;
-
-    size_t a = f->m_allocated + f->m_overhead - f->m_freed;
-    size_t b = s->m_allocated + s->m_overhead - s->m_freed;
-
-    return a == b ? 0 : (a < b ? 1 : -1);
-  }
-
   /* Dump header with NAME.  */
   static inline void
   dump_header (const char *name)
@@ -970,7 +955,7 @@ static mem_alloc_description<ggc_usage> ggc_mem_desc;
 /* Dump per-site memory statistics.  */
 
 void
-dump_ggc_loc_statistics (bool final)
+dump_ggc_loc_statistics ()
 {
   if (! GATHER_STATISTICS)
     return;
@@ -978,7 +963,7 @@ dump_ggc_loc_statistics (bool final)
   ggc_force_collect = true;
   ggc_collect ();
 
-  ggc_mem_desc.dump (GGC_ORIGIN, final ? ggc_usage::compare_final : NULL);
+  ggc_mem_desc.dump (GGC_ORIGIN);
 
   ggc_force_collect = false;
 }
index 31606dc843fb72186b5f13231ab6b101906efe84..64d1f188eb0b74264f15d5c0b78d0b3cb2d34787 100644 (file)
--- a/gcc/ggc.h
+++ b/gcc/ggc.h
@@ -149,7 +149,7 @@ extern void *ggc_realloc (void *, size_t CXX_MEM_STAT_INFO);
 /* Free a block.  To be used when known for certain it's not reachable.  */
 extern void ggc_free (void *);
 
-extern void dump_ggc_loc_statistics (bool);
+extern void dump_ggc_loc_statistics ();
 
 /* Reallocator.  */
 #define GGC_RESIZEVEC(T, P, N) \
index 5d26f6a19799be3587c9bc8bf504e6623f382edf..2aefc366701601317dd262b4f98ef74a2427e8ed 100644 (file)
@@ -1,3 +1,7 @@
+2019-10-29  Martin Liska  <mliska@suse.cz>
+
+       * lto.c (do_whole_program_analysis): Remove argument.
+
 2019-10-24  Jan Hubicka  <hubicka@ucw.cz>
 
        * lto-partition.c (add_symbol_to_partition_1): Update.
index 9b8c3272977a7e0174b092e4a6d1615af1d44df8..5dca73ffdb38c85a214c8b113928ab0a88b6969c 100644 (file)
@@ -457,7 +457,7 @@ do_whole_program_analysis (void)
   if (pre_ipa_mem_report)
     {
       fprintf (stderr, "Memory consumption before IPA\n");
-      dump_memory_report (false);
+      dump_memory_report ();
     }
 
   symtab->function_flags_ready = true;
@@ -539,14 +539,14 @@ do_whole_program_analysis (void)
   if (post_ipa_mem_report)
     {
       fprintf (stderr, "Memory consumption after IPA\n");
-      dump_memory_report (false);
+      dump_memory_report ();
     }
 
   /* Show the LTO report before launching LTRANS.  */
   if (flag_lto_report || (flag_wpa && flag_lto_report_wpa))
     print_lto_report_1 ();
   if (mem_report_wpa)
-    dump_memory_report (true);
+    dump_memory_report ();
 }
 
 /* Create artificial pointers for "omp declare target link" vars.  */
index 9ceb9ccc55b3d3c302e1908e119f655f41b8be54..c2329c2b14d96bc6d22c30d47c69e349119c5de0 100644 (file)
@@ -361,14 +361,11 @@ public:
      are filtered by ORIGIN type, LENGTH is return value where we register
      the number of elements in the list. If we want to process custom order,
      CMP comparator can be provided.  */
-  mem_list_t *get_list (mem_alloc_origin origin, unsigned *length,
-                       int (*cmp) (const void *first,
-                                   const void *second) = NULL);
+  mem_list_t *get_list (mem_alloc_origin origin, unsigned *length);
 
   /* Dump all tracked instances of type ORIGIN. If we want to process custom
      order, CMP comparator can be provided.  */
-  void dump (mem_alloc_origin origin,
-            int (*cmp) (const void *first, const void *second) = NULL);
+  void dump (mem_alloc_origin origin);
 
   /* Reverse object map used for every object allocation mapping.  */
   reverse_object_map_t *m_reverse_object_map;
@@ -593,9 +590,7 @@ mem_alloc_description<T>::~mem_alloc_description ()
 template <class T>
 inline
 typename mem_alloc_description<T>::mem_list_t *
-mem_alloc_description<T>::get_list (mem_alloc_origin origin, unsigned *length,
-                                   int (*cmp) (const void *first,
-                                               const void *second))
+mem_alloc_description<T>::get_list (mem_alloc_origin origin, unsigned *length)
 {
   /* vec data structure is not used because all vectors generate memory
      allocation info a it would create a cycle.  */
@@ -608,7 +603,7 @@ mem_alloc_description<T>::get_list (mem_alloc_origin origin, unsigned *length,
     if ((*it).first->m_origin == origin)
       list[i++] = std::pair<mem_location*, T*> (*it);
 
-  qsort (list, i, element_size, cmp == NULL ? T::compare : cmp);
+  qsort (list, i, element_size, T::compare);
   *length = i;
 
   return list;
@@ -637,15 +632,13 @@ mem_alloc_description<T>::get_sum (mem_alloc_origin origin)
 
 template <class T>
 inline void
-mem_alloc_description<T>::dump (mem_alloc_origin origin,
-                               int (*cmp) (const void *first,
-                                           const void *second))
+mem_alloc_description<T>::dump (mem_alloc_origin origin)
 {
   unsigned length;
 
   fprintf (stderr, "\n");
 
-  mem_list_t *list = get_list (origin, &length, cmp);
+  mem_list_t *list = get_list (origin, &length);
   T total = get_sum (origin);
 
   T::print_dash_line ();
index 1c7002f5c37cddf39c16a01b233bf058d2bd3041..8a152b8e3b144b79f6b24aa09d9ff099e560a684 100644 (file)
@@ -1994,7 +1994,7 @@ target_reinit (void)
 }
 
 void
-dump_memory_report (bool final)
+dump_memory_report ()
 {
   dump_line_table_statistics ();
   ggc_print_statistics ();
@@ -2006,7 +2006,7 @@ dump_memory_report (bool final)
   dump_bitmap_statistics ();
   dump_hash_table_loc_statistics ();
   dump_vec_loc_statistics ();
-  dump_ggc_loc_statistics (final);
+  dump_ggc_loc_statistics ();
   dump_alias_stats (stderr);
   dump_pta_stats (stderr);
 }
@@ -2058,7 +2058,7 @@ finalize (bool no_backend)
     }
 
   if (mem_report)
-    dump_memory_report (true);
+    dump_memory_report ();
 
   if (profile_report)
     dump_profile_report ();
index 48cb10c997e6490278562f92d41ce4737e8fa6ec..91e346570db49e0b63e6e414a9971486d92748de 100644 (file)
@@ -66,7 +66,7 @@ extern bool wrapup_global_declarations (tree *, int);
 
 extern void global_decl_processing (void);
 
-extern void dump_memory_report (bool);
+extern void dump_memory_report ();
 extern void dump_profile_report (void);
 
 extern void target_reinit (void);