aboutsummaryrefslogtreecommitdiffstats
path: root/test/kvx/coverage.sh
blob: 96f6bc04a0953feeda96216f11ad515ac73e33b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/bash

printer=../../kvx/TargetPrinter.ml
asmdir=instr/asm/
to_cover_raw=/tmp/to_cover_raw
to_cover=/tmp/to_cover
covered_raw=/tmp/covered_raw
covered=/tmp/covered

# Stop at any error
set -e
# Pipes do not mask errors
set -o pipefail

sed -n "s/^.*fprintf\s\+oc\s*\"\s*\([a-z][^[:space:]]*\)\s.*/\1/p" $printer > $to_cover_raw
python2.7 coverage_helper.py $to_cover_raw | sort -u > $to_cover

rm -f $covered_raw
for asm in $(ls $asmdir/*.ccomp.s); do
  grep -v ":" $asm | sed -n "s/^\s*\([a-z][a-z0-9.]*\).*/\1/p" | sort -u >> $covered_raw
done
python2.7 coverage_helper.py $covered_raw | sort -u > $covered

vimdiff $to_cover $covered