summaryrefslogtreecommitdiff
path: root/contrib/scripts/valgrind_compare
blob: 9f814d4548fcf6d8ae85eb2c9efda822715c9108 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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")