summaryrefslogtreecommitdiff
path: root/contrib/scripts/valgrind_compare
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/scripts/valgrind_compare')
-rwxr-xr-xcontrib/scripts/valgrind_compare21
1 files changed, 21 insertions, 0 deletions
diff --git a/contrib/scripts/valgrind_compare b/contrib/scripts/valgrind_compare
new file mode 100755
index 000000000..9f814d454
--- /dev/null
+++ b/contrib/scripts/valgrind_compare
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+# compare_valgrind: diff two valgrinf memory usage logs. Masks out PIDs,
+# addresses and such that should normally be different.
+#
+# Usage: ./compare_valgrind file1.log file2.log | less
+#
+# (Requires /bin/bash due to usage of '<()' )
+
+log1="$1"
+log2="$2"
+
+pipe_log() {
+ sed \
+ -e 's/^--[0-9]\+-- //' -e 's/^==[0-9]\+== //' "$1" \
+ -e 's/ record [0-9]\+ of [0-9]\+$/ <snipped>/' \
+ -e 's/^ Address 0x[0-9a-f]\+/ Address 0x<snipped>/' \
+
+}
+
+diff -u -L "$log1" <(pipe_log "$log1") -L "$log2" <(pipe_log "$log2")