From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 42373 invoked by alias); 2 Jun 2015 11:14:39 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 42325 invoked by uid 89); 2 Jun 2015 11:14:34 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=1.2 required=5.0 tests=AWL,BAYES_50,KAM_ASCII_DIVIDERS,KAM_LAZY_DOMAIN_SECURITY autolearn=no version=3.3.2 X-HELO: mx2.suse.de Received: from cantor2.suse.de (HELO mx2.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (CAMELLIA256-SHA encrypted) ESMTPS; Tue, 02 Jun 2015 11:14:33 +0000 Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 20A09ABB5 for ; Tue, 2 Jun 2015 11:14:30 +0000 (UTC) Resent-From: =?UTF-8?B?TWFydGluIExpxaFrYQ==?= Resent-To: GCC Patches Resent-Date: Tue, 2 Jun 2015 13:14:29 +0200 Resent-Message-ID: <556D9015.4070004@suse.cz> Resent-User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 Message-Id: In-Reply-To: References: From: mliska Date: Tue, 02 Jun 2015 11:18:00 -0000 Subject: [PATCH 2/2] Fix memory report layout at various places. To: gcc-patches@gcc.gnu.org X-IsSubscribed: yes X-SW-Source: 2015-06/txt/msg00184.txt.bz2 gcc/ChangeLog: 2015-06-02 Martin Liska * alloc-pool.h (struct pool_usage): Correct space padding. * ggc-page.c (ggc_print_statistics): Align columns in a report. * mem-stats.h (struct mem_usage): Add argument to print_dash_line. * tree.c (dump_tree_statistics): Align columns in a report. --- gcc/alloc-pool.h | 2 +- gcc/ggc-page.c | 46 +++++++++++++++++++++++++--------------------- gcc/mem-stats.h | 4 ++-- gcc/tree.c | 19 ++++++++++++------- 4 files changed, 40 insertions(+), 31 deletions(-) diff --git a/gcc/alloc-pool.h b/gcc/alloc-pool.h index a1727ce..6f1bbed 100644 --- a/gcc/alloc-pool.h +++ b/gcc/alloc-pool.h @@ -78,7 +78,7 @@ struct pool_usage: public mem_usage inline void dump_footer () { print_dash_line (); - fprintf (stderr, "%s%75li%10li\n", "Total", (long)m_instances, + fprintf (stderr, "%s%82li%10li\n", "Total", (long)m_instances, (long)m_allocated); print_dash_line (); } diff --git a/gcc/ggc-page.c b/gcc/ggc-page.c index 158156a..7fceeba 100644 --- a/gcc/ggc-page.c +++ b/gcc/ggc-page.c @@ -2268,7 +2268,7 @@ ggc_print_statistics (void) allocation. */ fprintf (stderr, "Memory still allocated at the end of the compilation process\n"); - fprintf (stderr, "%-5s %10s %10s %10s\n", + fprintf (stderr, "%-8s %10s %10s %10s\n", "Size", "Allocated", "Used", "Overhead"); for (i = 0; i < NUM_ORDERS; ++i) { @@ -2295,47 +2295,51 @@ ggc_print_statistics (void) overhead += (sizeof (page_entry) - sizeof (long) + BITMAP_SIZE (OBJECTS_IN_PAGE (p) + 1)); } - fprintf (stderr, "%-5lu %10lu%c %10lu%c %10lu%c\n", + fprintf (stderr, "%-8lu %10lu%c %10lu%c %10lu%c\n", (unsigned long) OBJECT_SIZE (i), SCALE (allocated), STAT_LABEL (allocated), SCALE (in_use), STAT_LABEL (in_use), SCALE (overhead), STAT_LABEL (overhead)); total_overhead += overhead; } - fprintf (stderr, "%-5s %10lu%c %10lu%c %10lu%c\n", "Total", + fprintf (stderr, "%-8s %10lu%c %10lu%c %10lu%c\n", "Total", SCALE (G.bytes_mapped), STAT_LABEL (G.bytes_mapped), SCALE (G.allocated), STAT_LABEL (G.allocated), SCALE (total_overhead), STAT_LABEL (total_overhead)); if (GATHER_STATISTICS) { - fprintf (stderr, "\nTotal allocations and overheads during the compilation process\n"); + fprintf (stderr, "\nTotal allocations and overheads during " + "the compilation process\n"); - fprintf (stderr, "Total Overhead: %10" HOST_LONG_LONG_FORMAT "d\n", - G.stats.total_overhead); - fprintf (stderr, "Total Allocated: %10" HOST_LONG_LONG_FORMAT "d\n", + fprintf (stderr, "Total Overhead: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_overhead); + fprintf (stderr, "Total Allocated: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_allocated); - fprintf (stderr, "Total Overhead under 32B: %10" HOST_LONG_LONG_FORMAT "d\n", - G.stats.total_overhead_under32); - fprintf (stderr, "Total Allocated under 32B: %10" HOST_LONG_LONG_FORMAT "d\n", - G.stats.total_allocated_under32); - fprintf (stderr, "Total Overhead under 64B: %10" HOST_LONG_LONG_FORMAT "d\n", - G.stats.total_overhead_under64); - fprintf (stderr, "Total Allocated under 64B: %10" HOST_LONG_LONG_FORMAT "d\n", - G.stats.total_allocated_under64); - fprintf (stderr, "Total Overhead under 128B: %10" HOST_LONG_LONG_FORMAT "d\n", - G.stats.total_overhead_under128); - fprintf (stderr, "Total Allocated under 128B: %10" HOST_LONG_LONG_FORMAT "d\n", - G.stats.total_allocated_under128); + fprintf (stderr, "Total Overhead under 32B: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_overhead_under32); + fprintf (stderr, "Total Allocated under 32B: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_allocated_under32); + fprintf (stderr, "Total Overhead under 64B: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_overhead_under64); + fprintf (stderr, "Total Allocated under 64B: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_allocated_under64); + fprintf (stderr, "Total Overhead under 128B: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_overhead_under128); + fprintf (stderr, "Total Allocated under 128B: %10" + HOST_LONG_LONG_FORMAT "d\n", G.stats.total_allocated_under128); for (i = 0; i < NUM_ORDERS; i++) if (G.stats.total_allocated_per_order[i]) { - fprintf (stderr, "Total Overhead page size %7lu: %10" HOST_LONG_LONG_FORMAT "d\n", + fprintf (stderr, "Total Overhead page size %9lu: %10" + HOST_LONG_LONG_FORMAT "d\n", (unsigned long) OBJECT_SIZE (i), G.stats.total_overhead_per_order[i]); - fprintf (stderr, "Total Allocated page size %7lu: %10" HOST_LONG_LONG_FORMAT "d\n", + fprintf (stderr, "Total Allocated page size %9lu: %10" + HOST_LONG_LONG_FORMAT "d\n", (unsigned long) OBJECT_SIZE (i), G.stats.total_allocated_per_order[i]); } diff --git a/gcc/mem-stats.h b/gcc/mem-stats.h index fea68fa..9914425 100644 --- a/gcc/mem-stats.h +++ b/gcc/mem-stats.h @@ -168,9 +168,9 @@ struct mem_usage } /* Print line made of dashes. */ - static inline void print_dash_line () + static inline void print_dash_line (size_t count = 140) { - fprintf (stderr, "%s\n", std::string (140, '-').c_str ()); + fprintf (stderr, "%s\n", std::string (count, '-').c_str ()); } /* Dump header with NAME. */ diff --git a/gcc/tree.c b/gcc/tree.c index ca48c60..441ab3a 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -9125,6 +9125,8 @@ get_callee_fndecl (const_tree call) return NULL_TREE; } +#define TREE_MEM_USAGE_SPACES 40 + /* Print debugging information about tree nodes generated during the compile, and any language-specific information. */ @@ -9135,8 +9137,8 @@ dump_tree_statistics (void) { int i; int total_nodes, total_bytes; - fprintf (stderr, "Kind Nodes Bytes\n"); - fprintf (stderr, "---------------------------------------\n"); + fprintf (stderr, "\nKind Nodes Bytes\n"); + mem_usage::print_dash_line (TREE_MEM_USAGE_SPACES); total_nodes = total_bytes = 0; for (i = 0; i < (int) all_kinds; i++) { @@ -9145,17 +9147,20 @@ dump_tree_statistics (void) total_nodes += tree_node_counts[i]; total_bytes += tree_node_sizes[i]; } - fprintf (stderr, "---------------------------------------\n"); + mem_usage::print_dash_line (TREE_MEM_USAGE_SPACES); fprintf (stderr, "%-20s %7d %10d\n", "Total", total_nodes, total_bytes); - fprintf (stderr, "---------------------------------------\n"); + mem_usage::print_dash_line (TREE_MEM_USAGE_SPACES); fprintf (stderr, "Code Nodes\n"); - fprintf (stderr, "----------------------------\n"); + mem_usage::print_dash_line (TREE_MEM_USAGE_SPACES); for (i = 0; i < (int) MAX_TREE_CODES; i++) - fprintf (stderr, "%-20s %7d\n", get_tree_code_name ((enum tree_code) i), + fprintf (stderr, "%-32s %7d\n", get_tree_code_name ((enum tree_code) i), tree_code_counts[i]); - fprintf (stderr, "----------------------------\n"); + mem_usage::print_dash_line (TREE_MEM_USAGE_SPACES); + fprintf (stderr, "\n"); ssanames_print_statistics (); + fprintf (stderr, "\n"); phinodes_print_statistics (); + fprintf (stderr, "\n"); } else fprintf (stderr, "(No per-node statistics)\n"); -- 2.1.4