Author: njn
Date: 2007-10-05 08:24:18 +0100 (Fri, 05 Oct 2007)
New Revision: 6955

Log:
Removed redundant .total_szB field from Snapshot.  It can be computed from
other fields in Snapshot.  Also remove the similarly redundant "mem_total_B"
lines from the output file format, which makes them more compact.

Modified:
   branches/MASSIF2/massif/ms_main.c
   branches/MASSIF2/massif/ms_print


Modified: branches/MASSIF2/massif/ms_main.c
===================================================================
--- branches/MASSIF2/massif/ms_main.c   2007-10-05 05:16:33 UTC (rev 6954)
+++ branches/MASSIF2/massif/ms_main.c   2007-10-05 07:24:18 UTC (rev 6955)
@@ -348,6 +348,7 @@
         VG_BOOL_CLO(arg, "--heap",       clo_heap)
    else VG_BOOL_CLO(arg, "--stacks",     clo_stacks)
 
+   // XXX: currently allows negative heap admin sizes!  Abort if negative.
    else VG_NUM_CLO (arg, "--heap-admin", clo_heap_admin)
    else VG_BNUM_CLO(arg, "--depth",      clo_depth, 1, MAX_DEPTH)
 
@@ -839,8 +840,6 @@
    struct {
       SnapshotKind kind;
       Time  time;
-      // XXX: total_szB is redundant!  remove it
-      SizeT total_szB;     // Size of all allocations at that snapshot time.
       SizeT heap_szB;
       SizeT heap_admin_szB;
       SizeT stacks_szB;
@@ -856,7 +855,6 @@
    if (Unused == snapshot->kind) {
       // If snapshot is unused, check all the fields are unset.
       tl_assert(snapshot->time           == UNUSED_SNAPSHOT_TIME);
-      tl_assert(snapshot->total_szB      == 0);
       tl_assert(snapshot->heap_admin_szB == 0);
       tl_assert(snapshot->heap_szB       == 0);
       tl_assert(snapshot->stacks_szB     == 0);
@@ -875,8 +873,6 @@
 
 static void sanity_check_snapshot(Snapshot* snapshot)
 {
-   tl_assert(snapshot->total_szB ==
-      snapshot->heap_admin_szB + snapshot->heap_szB + snapshot->stacks_szB);
    if (snapshot->alloc_xpt) {
       sanity_check_XTree(snapshot->alloc_xpt, /*parent*/NULL);
    }
@@ -901,7 +897,6 @@
    sanity_check_snapshot(snapshot);
    snapshot->kind           = Unused;
    snapshot->time           = UNUSED_SNAPSHOT_TIME;
-   snapshot->total_szB      = 0;
    snapshot->heap_admin_szB = 0;
    snapshot->heap_szB       = 0;
    snapshot->stacks_szB     = 0;
@@ -1131,8 +1126,6 @@
    // Rest of snapshot.
    snapshot->kind = kind;
    snapshot->time = time;
-   snapshot->total_szB =
-      snapshot->heap_szB + snapshot->heap_admin_szB + snapshot->stacks_szB;
    sanity_check_snapshot(snapshot);
 
    n_real_snapshots++;
@@ -1697,7 +1690,6 @@
    FP("snapshot=%d\n", snapshot_n);
    FP("#-----------\n");
    FP("time=%lld\n",            snapshot->time);
-   FP("mem_total_B=%lu\n",      snapshot->total_szB);
    FP("mem_heap_B=%lu\n",       snapshot->heap_szB);
    FP("mem_heap_admin_B=%lu\n", snapshot->heap_admin_szB);
    FP("mem_stacks_B=%lu\n",     snapshot->stacks_szB);
@@ -1706,12 +1698,14 @@
       // Detailed snapshot -- print heap tree.
       Int   depth_str_len = clo_depth + 3;
       Char* depth_str = VG_(malloc)(sizeof(Char) * depth_str_len);
+      SizeT snapshot_total_szB =
+         snapshot->heap_szB + snapshot->heap_admin_szB + snapshot->stacks_szB;
       depth_str[0] = '\0';   // Initialise depth_str to "".
 
       FP("heap_tree=...\n");
       pp_snapshot_XPt(fd, snapshot->alloc_xpt, 0, depth_str,
                       depth_str_len, snapshot->heap_szB,
-                      snapshot->total_szB);
+                      snapshot_total_szB);
 
       VG_(free)(depth_str);
 

Modified: branches/MASSIF2/massif/ms_print
===================================================================
--- branches/MASSIF2/massif/ms_print    2007-10-05 05:16:33 UTC (rev 6954)
+++ branches/MASSIF2/massif/ms_print    2007-10-05 07:24:18 UTC (rev 6955)
@@ -387,10 +387,10 @@
     while (defined $line) {
         my $snapshot_num     = equals_num_line($line,      "snapshot");
         my $time             = equals_num_line(get_line(), "time");
-        my $mem_total_B      = equals_num_line(get_line(), "mem_total_B");
         my $mem_heap_B       = equals_num_line(get_line(), "mem_heap_B");
         my $mem_heap_admin_B = equals_num_line(get_line(), "mem_heap_admin_B");
         my $mem_stacks_B     = equals_num_line(get_line(), "mem_stacks_B");
+        my $mem_total_B      = $mem_heap_B + $mem_heap_admin_B + $mem_stacks_B;
         my $heap_tree        = equals_num_line(get_line(), "heap_tree");
 
         # Print the snapshot data to $tmp_file.
@@ -427,7 +427,6 @@
         } else {
             die("Line $.: expected 'empty' or '...' after 'heap_tree='\n");
         }
-
     }
 
     close(INPUTFILE);


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Valgrind-developers mailing list
Valgrind-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-developers

Reply via email to