|
From: <sv...@va...> - 2007-09-18 07:15:10
|
Author: njn
Date: 2007-09-18 08:15:10 +0100 (Tue, 18 Sep 2007)
New Revision: 6859
Log:
- Fix the 'posttest' facility in vg_regtest which wasn't quite working.
Rename it 'post'.
- Add a new test, 'basic'. Uses the 'post' facility to check the output of
'ms_print' as well, yay.
- Remove old irrelevant tests.
- Fix off-by-one error in detailed snapshot frequencies.
Added:
branches/MASSIF2/massif/tests/basic.c
branches/MASSIF2/massif/tests/basic.post.exp
branches/MASSIF2/massif/tests/basic.stderr.exp
branches/MASSIF2/massif/tests/basic.vgtest
Removed:
branches/MASSIF2/massif/tests/true_html.stderr.exp
branches/MASSIF2/massif/tests/true_html.vgtest
branches/MASSIF2/massif/tests/true_text.stderr.exp
branches/MASSIF2/massif/tests/true_text.vgtest
Modified:
branches/MASSIF2/massif/ms_main.c
branches/MASSIF2/massif/tests/Makefile.am
branches/MASSIF2/massif/tests/basic_malloc.stderr.exp
branches/MASSIF2/massif/tests/basic_malloc.vgtest
branches/MASSIF2/massif/tests/filter_stderr
branches/MASSIF2/massif/tests/toobig-allocs.stderr.exp
branches/MASSIF2/tests/vg_regtest.in
Modified: branches/MASSIF2/massif/ms_main.c
===================================================================
--- branches/MASSIF2/massif/ms_main.c 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/ms_main.c 2007-09-18 07:15:10 UTC (rev 6859)
@@ -1005,7 +1005,7 @@
if (clo_heap) {
snapshot->heap_szB = heap_szB;
// Take a detailed snapshot if it's been long enough since the last one.
- if (DETAILED_SNAPSHOT_FREQ == n_snapshots_since_last_detailed) {
+ if (DETAILED_SNAPSHOT_FREQ == n_snapshots_since_last_detailed+1) {
snapshot->alloc_xpt = dup_XTree(alloc_xpt, /*parent*/NULL);
tl_assert(snapshot->alloc_xpt->curr_szB == heap_szB);
n_snapshots_since_last_detailed = 0;
Modified: branches/MASSIF2/massif/tests/Makefile.am
===================================================================
--- branches/MASSIF2/massif/tests/Makefile.am 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/Makefile.am 2007-09-18 07:15:10 UTC (rev 6859)
@@ -5,13 +5,13 @@
noinst_SCRIPTS = filter_stderr
EXTRA_DIST = $(noinst_SCRIPTS) \
+ basic.post.exp basic.stderr.exp basic.vgtest \
basic_malloc.stderr.exp basic_malloc.vgtest \
- toobig-allocs.stderr.exp toobig-allocs.vgtest \
- true_html.stderr.exp true_html.vgtest \
- true_text.stderr.exp true_text.vgtest
+ toobig-allocs.stderr.exp toobig-allocs.vgtest
AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g $(AM_FLAG_M3264_PRI)
check_PROGRAMS = \
+ basic \
basic_malloc
Added: branches/MASSIF2/massif/tests/basic.c
===================================================================
--- branches/MASSIF2/massif/tests/basic.c (rev 0)
+++ branches/MASSIF2/massif/tests/basic.c 2007-09-18 07:15:10 UTC (rev 6859)
@@ -0,0 +1,21 @@
+#include <stdlib.h>
+
+// Allocate some memory and then deallocate it, to get a nice up-then-down
+// graph.
+
+int main(void)
+{
+ // N=36 gives us 72 sample points, which fills the text graph nicely.
+ #define N 36
+ int i;
+ int* a[N];
+
+ for (i = 0; i < N; i++) {
+ a[i] = malloc(100);
+ }
+ for (i = 0; i < N; i++) {
+ free(a[i]);
+ }
+
+ return 0;
+}
Added: branches/MASSIF2/massif/tests/basic.post.exp
===================================================================
--- branches/MASSIF2/massif/tests/basic.post.exp (rev 0)
+++ branches/MASSIF2/massif/tests/basic.post.exp 2007-09-18 07:15:10 UTC (rev 6859)
@@ -0,0 +1,634 @@
+--------------------------------------------------------------------------------
+Command: ./basic
+Data file: massif.out
+Description: XXX
+
+
+3.9k| :
+ | .:::.
+ | .::::::@.
+ | .::::::::@::.
+ | .@:::::::::@::::.
+ | ::@:::::::::@::::::
+ | .:::@:::::::::@:::::::.
+ | .:::::@:::::::::@:::::::::.
+ | .:::::::@:::::::::@:::::::::@:.
+ | .:::::::::@:::::::::@:::::::::@:::.
+ | :@:::::::::@:::::::::@:::::::::@:::::
+ | .::@:::::::::@:::::::::@:::::::::@::::::.
+ | .::::@:::::::::@:::::::::@:::::::::@::::::::.
+ | .::::::@:::::::::@:::::::::@:::::::::@:::::::::@.
+ | .::::::::@:::::::::@:::::::::@:::::::::@:::::::::@::.
+ | @:::::::::@:::::::::@:::::::::@:::::::::@:::::::::@::::
+ | .:@:::::::::@:::::::::@:::::::::@:::::::::@:::::::::@:::::.
+ | .:::@:::::::::@:::::::::@:::::::::@:::::::::@:::::::::@:::::::.
+ | .:::::@:::::::::@:::::::::@:::::::::@:::::::::@:::::::::@:::::::::.
+ |.:::::::@:::::::::@:::::::::@:::::::::@:::::::::@:::::::::@:::::::::@:.
+ 0 +--------@---------@---------@---------@---------@---------@---------@---
+
+ snapshot 0: t = 0 B, size = 0 bytes
+ snapshot 1: t = 100 B, size = 108 bytes
+ snapshot 2: t = 200 B, size = 216 bytes
+ snapshot 3: t = 300 B, size = 324 bytes
+ snapshot 4: t = 400 B, size = 432 bytes
+ snapshot 5: t = 500 B, size = 540 bytes
+ snapshot 6: t = 600 B, size = 648 bytes
+ snapshot 7: t = 700 B, size = 756 bytes
+ snapshot 8: t = 800 B, size = 864 bytes
+ snapshot 9: t = 900 B, size = 972 bytes
+ snapshot 10: t = 1,000 B, size = 1,080 bytes
+ snapshot 11: t = 1,100 B, size = 1,188 bytes
+ snapshot 12: t = 1,200 B, size = 1,296 bytes
+ snapshot 13: t = 1,300 B, size = 1,404 bytes
+ snapshot 14: t = 1,400 B, size = 1,512 bytes
+ snapshot 15: t = 1,500 B, size = 1,620 bytes
+ snapshot 16: t = 1,600 B, size = 1,728 bytes
+ snapshot 17: t = 1,700 B, size = 1,836 bytes
+ snapshot 18: t = 1,800 B, size = 1,944 bytes
+ snapshot 19: t = 1,900 B, size = 2,052 bytes
+ snapshot 20: t = 2,000 B, size = 2,160 bytes
+ snapshot 21: t = 2,100 B, size = 2,268 bytes
+ snapshot 22: t = 2,200 B, size = 2,376 bytes
+ snapshot 23: t = 2,300 B, size = 2,484 bytes
+ snapshot 24: t = 2,400 B, size = 2,592 bytes
+ snapshot 25: t = 2,500 B, size = 2,700 bytes
+ snapshot 26: t = 2,600 B, size = 2,808 bytes
+ snapshot 27: t = 2,700 B, size = 2,916 bytes
+ snapshot 28: t = 2,800 B, size = 3,024 bytes
+ snapshot 29: t = 2,900 B, size = 3,132 bytes
+ snapshot 30: t = 3,000 B, size = 3,240 bytes
+ snapshot 31: t = 3,100 B, size = 3,348 bytes
+ snapshot 32: t = 3,200 B, size = 3,456 bytes
+ snapshot 33: t = 3,300 B, size = 3,564 bytes
+ snapshot 34: t = 3,400 B, size = 3,672 bytes
+ snapshot 35: t = 3,500 B, size = 3,780 bytes
+ snapshot 36: t = 3,600 B, size = 3,888 bytes
+ snapshot 37: t = 3,700 B, size = 3,780 bytes
+ snapshot 38: t = 3,800 B, size = 3,672 bytes
+ snapshot 39: t = 3,900 B, size = 3,564 bytes
+ snapshot 40: t = 4,000 B, size = 3,456 bytes
+ snapshot 41: t = 4,100 B, size = 3,348 bytes
+ snapshot 42: t = 4,200 B, size = 3,240 bytes
+ snapshot 43: t = 4,300 B, size = 3,132 bytes
+ snapshot 44: t = 4,400 B, size = 3,024 bytes
+ snapshot 45: t = 4,500 B, size = 2,916 bytes
+ snapshot 46: t = 4,600 B, size = 2,808 bytes
+ snapshot 47: t = 4,700 B, size = 2,700 bytes
+ snapshot 48: t = 4,800 B, size = 2,592 bytes
+ snapshot 49: t = 4,900 B, size = 2,484 bytes
+ snapshot 50: t = 5,000 B, size = 2,376 bytes
+ snapshot 51: t = 5,100 B, size = 2,268 bytes
+ snapshot 52: t = 5,200 B, size = 2,160 bytes
+ snapshot 53: t = 5,300 B, size = 2,052 bytes
+ snapshot 54: t = 5,400 B, size = 1,944 bytes
+ snapshot 55: t = 5,500 B, size = 1,836 bytes
+ snapshot 56: t = 5,600 B, size = 1,728 bytes
+ snapshot 57: t = 5,700 B, size = 1,620 bytes
+ snapshot 58: t = 5,800 B, size = 1,512 bytes
+ snapshot 59: t = 5,900 B, size = 1,404 bytes
+ snapshot 60: t = 6,000 B, size = 1,296 bytes
+ snapshot 61: t = 6,100 B, size = 1,188 bytes
+ snapshot 62: t = 6,200 B, size = 1,080 bytes
+ snapshot 63: t = 6,300 B, size = 972 bytes
+ snapshot 64: t = 6,400 B, size = 864 bytes
+ snapshot 65: t = 6,500 B, size = 756 bytes
+ snapshot 66: t = 6,600 B, size = 648 bytes
+ snapshot 67: t = 6,700 B, size = 540 bytes
+ snapshot 68: t = 6,800 B, size = 432 bytes
+ snapshot 69: t = 6,900 B, size = 324 bytes
+ snapshot 70: t = 7,000 B, size = 216 bytes
+ snapshot 71: t = 7,100 B, size = 108 bytes
+ snapshot 72: t = 7,200 B, size = 0 bytes
+
+=================================
+== snapshot 0 (0 B)
+=================================
+Total memory usage: 0 bytes
+Useful heap usage : 0 bytes
+Admin heap usage : 0 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 1 (100 B)
+=================================
+Total memory usage: 108 bytes
+Useful heap usage : 100 bytes
+Admin heap usage : 8 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 2 (200 B)
+=================================
+Total memory usage: 216 bytes
+Useful heap usage : 200 bytes
+Admin heap usage : 16 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 3 (300 B)
+=================================
+Total memory usage: 324 bytes
+Useful heap usage : 300 bytes
+Admin heap usage : 24 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 4 (400 B)
+=================================
+Total memory usage: 432 bytes
+Useful heap usage : 400 bytes
+Admin heap usage : 32 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 5 (500 B)
+=================================
+Total memory usage: 540 bytes
+Useful heap usage : 500 bytes
+Admin heap usage : 40 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 6 (600 B)
+=================================
+Total memory usage: 648 bytes
+Useful heap usage : 600 bytes
+Admin heap usage : 48 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 7 (700 B)
+=================================
+Total memory usage: 756 bytes
+Useful heap usage : 700 bytes
+Admin heap usage : 56 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 8 (800 B)
+=================================
+Total memory usage: 864 bytes
+Useful heap usage : 800 bytes
+Admin heap usage : 64 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 9 (900 B)
+=================================
+Total memory usage: 972 bytes
+Useful heap usage : 900 bytes
+Admin heap usage : 72 bytes
+Stacks usage : 0 bytes
+92.59% (900B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.59% (900B) 0x80483E5: main (basic.c:14)
+
+=================================
+== snapshot 10 (1,000 B)
+=================================
+Total memory usage: 1,080 bytes
+Useful heap usage : 1,000 bytes
+Admin heap usage : 80 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 11 (1,100 B)
+=================================
+Total memory usage: 1,188 bytes
+Useful heap usage : 1,100 bytes
+Admin heap usage : 88 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 12 (1,200 B)
+=================================
+Total memory usage: 1,296 bytes
+Useful heap usage : 1,200 bytes
+Admin heap usage : 96 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 13 (1,300 B)
+=================================
+Total memory usage: 1,404 bytes
+Useful heap usage : 1,300 bytes
+Admin heap usage : 104 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 14 (1,400 B)
+=================================
+Total memory usage: 1,512 bytes
+Useful heap usage : 1,400 bytes
+Admin heap usage : 112 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 15 (1,500 B)
+=================================
+Total memory usage: 1,620 bytes
+Useful heap usage : 1,500 bytes
+Admin heap usage : 120 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 16 (1,600 B)
+=================================
+Total memory usage: 1,728 bytes
+Useful heap usage : 1,600 bytes
+Admin heap usage : 128 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 17 (1,700 B)
+=================================
+Total memory usage: 1,836 bytes
+Useful heap usage : 1,700 bytes
+Admin heap usage : 136 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 18 (1,800 B)
+=================================
+Total memory usage: 1,944 bytes
+Useful heap usage : 1,800 bytes
+Admin heap usage : 144 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 19 (1,900 B)
+=================================
+Total memory usage: 2,052 bytes
+Useful heap usage : 1,900 bytes
+Admin heap usage : 152 bytes
+Stacks usage : 0 bytes
+92.59% (1900B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.59% (1900B) 0x80483E5: main (basic.c:14)
+
+=================================
+== snapshot 20 (2,000 B)
+=================================
+Total memory usage: 2,160 bytes
+Useful heap usage : 2,000 bytes
+Admin heap usage : 160 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 21 (2,100 B)
+=================================
+Total memory usage: 2,268 bytes
+Useful heap usage : 2,100 bytes
+Admin heap usage : 168 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 22 (2,200 B)
+=================================
+Total memory usage: 2,376 bytes
+Useful heap usage : 2,200 bytes
+Admin heap usage : 176 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 23 (2,300 B)
+=================================
+Total memory usage: 2,484 bytes
+Useful heap usage : 2,300 bytes
+Admin heap usage : 184 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 24 (2,400 B)
+=================================
+Total memory usage: 2,592 bytes
+Useful heap usage : 2,400 bytes
+Admin heap usage : 192 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 25 (2,500 B)
+=================================
+Total memory usage: 2,700 bytes
+Useful heap usage : 2,500 bytes
+Admin heap usage : 200 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 26 (2,600 B)
+=================================
+Total memory usage: 2,808 bytes
+Useful heap usage : 2,600 bytes
+Admin heap usage : 208 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 27 (2,700 B)
+=================================
+Total memory usage: 2,916 bytes
+Useful heap usage : 2,700 bytes
+Admin heap usage : 216 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 28 (2,800 B)
+=================================
+Total memory usage: 3,024 bytes
+Useful heap usage : 2,800 bytes
+Admin heap usage : 224 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 29 (2,900 B)
+=================================
+Total memory usage: 3,132 bytes
+Useful heap usage : 2,900 bytes
+Admin heap usage : 232 bytes
+Stacks usage : 0 bytes
+92.59% (2900B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.59% (2900B) 0x80483E5: main (basic.c:14)
+
+=================================
+== snapshot 30 (3,000 B)
+=================================
+Total memory usage: 3,240 bytes
+Useful heap usage : 3,000 bytes
+Admin heap usage : 240 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 31 (3,100 B)
+=================================
+Total memory usage: 3,348 bytes
+Useful heap usage : 3,100 bytes
+Admin heap usage : 248 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 32 (3,200 B)
+=================================
+Total memory usage: 3,456 bytes
+Useful heap usage : 3,200 bytes
+Admin heap usage : 256 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 33 (3,300 B)
+=================================
+Total memory usage: 3,564 bytes
+Useful heap usage : 3,300 bytes
+Admin heap usage : 264 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 34 (3,400 B)
+=================================
+Total memory usage: 3,672 bytes
+Useful heap usage : 3,400 bytes
+Admin heap usage : 272 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 35 (3,500 B)
+=================================
+Total memory usage: 3,780 bytes
+Useful heap usage : 3,500 bytes
+Admin heap usage : 280 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 36 (3,600 B)
+=================================
+Total memory usage: 3,888 bytes
+Useful heap usage : 3,600 bytes
+Admin heap usage : 288 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 37 (3,700 B)
+=================================
+Total memory usage: 3,780 bytes
+Useful heap usage : 3,500 bytes
+Admin heap usage : 280 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 38 (3,800 B)
+=================================
+Total memory usage: 3,672 bytes
+Useful heap usage : 3,400 bytes
+Admin heap usage : 272 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 39 (3,900 B)
+=================================
+Total memory usage: 3,564 bytes
+Useful heap usage : 3,300 bytes
+Admin heap usage : 264 bytes
+Stacks usage : 0 bytes
+92.59% (3300B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.59% (3300B) 0x80483E5: main (basic.c:14)
+
+=================================
+== snapshot 40 (4,000 B)
+=================================
+Total memory usage: 3,456 bytes
+Useful heap usage : 3,200 bytes
+Admin heap usage : 256 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 41 (4,100 B)
+=================================
+Total memory usage: 3,348 bytes
+Useful heap usage : 3,100 bytes
+Admin heap usage : 248 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 42 (4,200 B)
+=================================
+Total memory usage: 3,240 bytes
+Useful heap usage : 3,000 bytes
+Admin heap usage : 240 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 43 (4,300 B)
+=================================
+Total memory usage: 3,132 bytes
+Useful heap usage : 2,900 bytes
+Admin heap usage : 232 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 44 (4,400 B)
+=================================
+Total memory usage: 3,024 bytes
+Useful heap usage : 2,800 bytes
+Admin heap usage : 224 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 45 (4,500 B)
+=================================
+Total memory usage: 2,916 bytes
+Useful heap usage : 2,700 bytes
+Admin heap usage : 216 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 46 (4,600 B)
+=================================
+Total memory usage: 2,808 bytes
+Useful heap usage : 2,600 bytes
+Admin heap usage : 208 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 47 (4,700 B)
+=================================
+Total memory usage: 2,700 bytes
+Useful heap usage : 2,500 bytes
+Admin heap usage : 200 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 48 (4,800 B)
+=================================
+Total memory usage: 2,592 bytes
+Useful heap usage : 2,400 bytes
+Admin heap usage : 192 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 49 (4,900 B)
+=================================
+Total memory usage: 2,484 bytes
+Useful heap usage : 2,300 bytes
+Admin heap usage : 184 bytes
+Stacks usage : 0 bytes
+92.59% (2300B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.59% (2300B) 0x80483E5: main (basic.c:14)
+
+=================================
+== snapshot 50 (5,000 B)
+=================================
+Total memory usage: 2,376 bytes
+Useful heap usage : 2,200 bytes
+Admin heap usage : 176 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 51 (5,100 B)
+=================================
+Total memory usage: 2,268 bytes
+Useful heap usage : 2,100 bytes
+Admin heap usage : 168 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 52 (5,200 B)
+=================================
+Total memory usage: 2,160 bytes
+Useful heap usage : 2,000 bytes
+Admin heap usage : 160 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 53 (5,300 B)
+=================================
+Total memory usage: 2,052 bytes
+Useful heap usage : 1,900 bytes
+Admin heap usage : 152 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 54 (5,400 B)
+=================================
+Total memory usage: 1,944 bytes
+Useful heap usage : 1,800 bytes
+Admin heap usage : 144 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 55 (5,500 B)
+=================================
+Total memory usage: 1,836 bytes
+Useful heap usage : 1,700 bytes
+Admin heap usage : 136 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 56 (5,600 B)
+=================================
+Total memory usage: 1,728 bytes
+Useful heap usage : 1,600 bytes
+Admin heap usage : 128 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 57 (5,700 B)
+=================================
+Total memory usage: 1,620 bytes
+Useful heap usage : 1,500 bytes
+Admin heap usage : 120 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 58 (5,800 B)
+=================================
+Total memory usage: 1,512 bytes
+Useful heap usage : 1,400 bytes
+Admin heap usage : 112 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 59 (5,900 B)
+=================================
+Total memory usage: 1,404 bytes
+Useful heap usage : 1,300 bytes
+Admin heap usage : 104 bytes
+Stacks usage : 0 bytes
+92.59% (1300B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.59% (1300B) 0x80483E5: main (basic.c:14)
+
+=================================
+== snapshot 60 (6,000 B)
+=================================
+Total memory usage: 1,296 bytes
+Useful heap usage : 1,200 bytes
+Admin heap usage : 96 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 61 (6,100 B)
+=================================
+Total memory usage: 1,188 bytes
+Useful heap usage : 1,100 bytes
+Admin heap usage : 88 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 62 (6,200 B)
+=================================
+Total memory usage: 1,080 bytes
+Useful heap usage : 1,000 bytes
+Admin heap usage : 80 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 63 (6,300 B)
+=================================
+Total memory usage: 972 bytes
+Useful heap usage : 900 bytes
+Admin heap usage : 72 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 64 (6,400 B)
+=================================
+Total memory usage: 864 bytes
+Useful heap usage : 800 bytes
+Admin heap usage : 64 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 65 (6,500 B)
+=================================
+Total memory usage: 756 bytes
+Useful heap usage : 700 bytes
+Admin heap usage : 56 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 66 (6,600 B)
+=================================
+Total memory usage: 648 bytes
+Useful heap usage : 600 bytes
+Admin heap usage : 48 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 67 (6,700 B)
+=================================
+Total memory usage: 540 bytes
+Useful heap usage : 500 bytes
+Admin heap usage : 40 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 68 (6,800 B)
+=================================
+Total memory usage: 432 bytes
+Useful heap usage : 400 bytes
+Admin heap usage : 32 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 69 (6,900 B)
+=================================
+Total memory usage: 324 bytes
+Useful heap usage : 300 bytes
+Admin heap usage : 24 bytes
+Stacks usage : 0 bytes
+92.59% (300B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.59% (300B) 0x80483E5: main (basic.c:14)
+
+=================================
+== snapshot 70 (7,000 B)
+=================================
+Total memory usage: 216 bytes
+Useful heap usage : 200 bytes
+Admin heap usage : 16 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 71 (7,100 B)
+=================================
+Total memory usage: 108 bytes
+Useful heap usage : 100 bytes
+Admin heap usage : 8 bytes
+Stacks usage : 0 bytes
+=================================
+== snapshot 72 (7,200 B)
+=================================
+Total memory usage: 0 bytes
+Useful heap usage : 0 bytes
+Admin heap usage : 0 bytes
+Stacks usage : 0 bytes
Added: branches/MASSIF2/massif/tests/basic.stderr.exp
===================================================================
--- branches/MASSIF2/massif/tests/basic.stderr.exp (rev 0)
+++ branches/MASSIF2/massif/tests/basic.stderr.exp 2007-09-18 07:15:10 UTC (rev 6859)
@@ -0,0 +1,2 @@
+
+
Added: branches/MASSIF2/massif/tests/basic.vgtest
===================================================================
--- branches/MASSIF2/massif/tests/basic.vgtest (rev 0)
+++ branches/MASSIF2/massif/tests/basic.vgtest 2007-09-18 07:15:10 UTC (rev 6859)
@@ -0,0 +1,4 @@
+prog: basic
+vgopts: --stacks=no --time-unit=B
+post: perl ../../massif/ms_print massif.out
+cleanup: rm massif.out
Modified: branches/MASSIF2/massif/tests/basic_malloc.stderr.exp
===================================================================
--- branches/MASSIF2/massif/tests/basic_malloc.stderr.exp 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/basic_malloc.stderr.exp 2007-09-18 07:15:10 UTC (rev 6859)
@@ -1,6 +1,2 @@
-Total spacetime:
-heap:
-heap admin:
-stack(s):
Modified: branches/MASSIF2/massif/tests/basic_malloc.vgtest
===================================================================
--- branches/MASSIF2/massif/tests/basic_malloc.vgtest 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/basic_malloc.vgtest 2007-09-18 07:15:10 UTC (rev 6859)
@@ -1,2 +1,2 @@
prog: basic_malloc
-cleanup: rm massif.*.*
+cleanup: rm massif.out
Modified: branches/MASSIF2/massif/tests/filter_stderr
===================================================================
--- branches/MASSIF2/massif/tests/filter_stderr 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/filter_stderr 2007-09-18 07:15:10 UTC (rev 6859)
@@ -5,11 +5,5 @@
$dir/../../tests/filter_stderr_basic |
# Remove "Massif, ..." line and the following copyright line.
-sed "/^Massif, a space profiler./ , /./ d" |
+sed "/^Massif, a space profiler./ , /./ d"
-# Remove numbers from all lines (and "(n/a)" strings)
-sed "s/\(Total spacetime: \).*$/\1/" |
-sed "s/\(heap: \).*$/\1/" |
-sed "s/\(heap admin: \).*$/\1/" |
-sed "s/\(stack(s): \).*$/\1/"
-
Modified: branches/MASSIF2/massif/tests/toobig-allocs.stderr.exp
===================================================================
--- branches/MASSIF2/massif/tests/toobig-allocs.stderr.exp 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/toobig-allocs.stderr.exp 2007-09-18 07:15:10 UTC (rev 6859)
@@ -2,7 +2,3 @@
Attempting too-big malloc()...
Attempting too-big mmap()...
-Total spacetime:
-heap:
-heap admin:
-stack(s):
Deleted: branches/MASSIF2/massif/tests/true_html.stderr.exp
===================================================================
--- branches/MASSIF2/massif/tests/true_html.stderr.exp 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/true_html.stderr.exp 2007-09-18 07:15:10 UTC (rev 6859)
@@ -1,6 +0,0 @@
-
-
-Total spacetime:
-heap:
-heap admin:
-stack(s):
Deleted: branches/MASSIF2/massif/tests/true_html.vgtest
===================================================================
--- branches/MASSIF2/massif/tests/true_html.vgtest 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/true_html.vgtest 2007-09-18 07:15:10 UTC (rev 6859)
@@ -1,3 +0,0 @@
-prog: ../../tests/true
-vgopts: --format=html
-cleanup: rm massif.*.*
Deleted: branches/MASSIF2/massif/tests/true_text.stderr.exp
===================================================================
--- branches/MASSIF2/massif/tests/true_text.stderr.exp 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/true_text.stderr.exp 2007-09-18 07:15:10 UTC (rev 6859)
@@ -1,6 +0,0 @@
-
-
-Total spacetime:
-heap:
-heap admin:
-stack(s):
Deleted: branches/MASSIF2/massif/tests/true_text.vgtest
===================================================================
--- branches/MASSIF2/massif/tests/true_text.vgtest 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/massif/tests/true_text.vgtest 2007-09-18 07:15:10 UTC (rev 6859)
@@ -1,3 +0,0 @@
-prog: ../../tests/true
-vgopts: --format=text
-cleanup: rm massif.*.*
Modified: branches/MASSIF2/tests/vg_regtest.in
===================================================================
--- branches/MASSIF2/tests/vg_regtest.in 2007-09-18 06:38:43 UTC (rev 6858)
+++ branches/MASSIF2/tests/vg_regtest.in 2007-09-18 07:15:10 UTC (rev 6859)
@@ -55,8 +55,8 @@
# - stdout_filter: <filter to run stdout through> (default: none)
# - stderr_filter: <filter to run stderr through> (default: ./filter_stderr)
# - prereq: <prerequisite command> (default: none)
-# - posttest: <post-test check command> (default: none)
-# - cleanup: <post-test cleanup cmd to run> (default: none)
+# - post: <post-test check command> (default: none)
+# - cleanup: <post-test cleanup cmd> (default: none)
#
# Note that filters are necessary for stderr results to filter out things that
# always change, eg. process id numbers.
@@ -67,7 +67,7 @@
#
# The prerequisite command, if present, must return 0 otherwise the test is
# skipped. The post-test command, if present, must return 0 and its stdout
-# must match the expected stdout which is kept in <test>.posttest.exp[0-9]*.
+# must match the expected stdout which is kept in <test>.post.exp[0-9]*.
#
# If results don't match, the output can be found in <test>.std<strm>.out,
# and the diff between expected and actual in <test>.std<strm>.diff[0-9]*.
@@ -99,13 +99,13 @@
my $stdout_filter; # filter program to run stdout results file through
my $stderr_filter; # filter program to run stderr results file through
my $prereq; # prerequisite test to satisfy before running test
-my $posttest; # check command after running test
+my $post; # check command after running test
my $cleanup; # cleanup command to run
my @failures; # List of failed tests
my $num_tests_done = 0;
-my %num_failures = (stderr => 0, stdout => 0, posttest => 0);
+my %num_failures = (stderr => 0, stdout => 0, post => 0);
# Default valgrind to use is this build tree's (uninstalled) one
my $valgrind = "./coregrind/valgrind";
@@ -192,7 +192,7 @@
# Defaults.
($vgopts, $prog, $args) = ("", undef, "");
($stdout_filter, $stderr_filter) = (undef, undef);
- ($prereq, $posttest, $cleanup) = (undef, undef, undef);
+ ($prereq, $post, $cleanup) = (undef, undef, undef);
# Every test directory must have a "filter_stderr"
$stderr_filter = validate_program(".", $default_stderr_filter, 1, 1);
@@ -214,8 +214,8 @@
$stderr_filter = validate_program(".", $1, 1, 1);
} elsif ($line =~ /^\s*prereq:\s*(.*)$/) {
$prereq = $1;
- } elsif ($line =~ /^\s*posttest:\s*(.*)$/) {
- $posttest = $1;
+ } elsif ($line =~ /^\s*post:\s*(.*)$/) {
+ $post = $1;
} elsif ($line =~ /^\s*cleanup:\s*(.*)$/) {
$cleanup = $1;
} else {
@@ -236,7 +236,9 @@
# propagate a Ctrl-C enabling us to quit.
sub mysystem($)
{
- (system($_[0]) != 2) or exit 1; # 2 is SIGINT
+ my $exit_code = system($_[0]);
+ ($exit_code == 2) and exit 1; # 2 is SIGINT
+ return $exit_code;
}
# from a directory name like "/foo/cachesim/tests/" determine the tool name
@@ -332,15 +334,15 @@
do_diffs($fullname, $name, "stderr", \@stderr_exps);
# Maybe do post-test check
- if (defined $posttest) {
- if (mysystem("$posttest > $name.posttest.out") != 0) {
- print("posttest failed: $posttest\n");
- $num_failures{"posttest"}++;
+ if (defined $post) {
+ if (mysystem("$post > $name.post.out") != 0) {
+ print("post check failed: $post\n");
+ $num_failures{"post"}++;
} else {
- # Find all the .posttest.exp files. If none, use /dev/null.
- my @posttest_exps = <$name.posttest.exp*>;
- @posttest_exps = ( "/dev/null" ) if (0 == scalar @posttest_exps);
- do_diffs($fullname, $name, "posttest", \@posttest_exps);
+ # Find all the .post.exp files. If none, use /dev/null.
+ my @post_exps = <$name.post.exp*>;
+ @post_exps = ( "/dev/null" ) if (0 == scalar @post_exps);
+ do_diffs($fullname, $name, "post", \@post_exps);
}
}
@@ -413,11 +415,11 @@
my $x = ( $num_tests_done == 1 ? "test" : "tests" );
printf("\n== %d test%s, %d stderr failure%s, %d stdout failure%s, "
- . "%d posttest failure%s ==\n",
+ . "%d post failure%s ==\n",
$num_tests_done, plural($num_tests_done),
$num_failures{"stderr"}, plural($num_failures{"stderr"}),
$num_failures{"stdout"}, plural($num_failures{"stdout"}),
- $num_failures{"posttest"}, plural($num_failures{"posttest"}));
+ $num_failures{"post"}, plural($num_failures{"post"}));
foreach my $failure (@failures) {
print "$failure\n";
@@ -472,7 +474,7 @@
if (0 == $num_failures{"stdout"} &&
0 == $num_failures{"stderr"} &&
- 0 == $num_failures{"posttest"}) {
+ 0 == $num_failures{"post"}) {
exit 0;
} else {
exit 1;
|