#!/bin/bash
set -u

RES=$(./analyze_libtsan.sh)
PrintRes() {
  printf "%s\n" "$RES"
}

PrintRes

check() {
  res=$(PrintRes | egrep "$1 .* $2 $3; ")
  if [ "$res" == "" ]; then
    echo FAILED $1 must contain $2 $3
    exit 1
  fi
}

for f in write1; do
  check $f rsp 1
  check $f push 2
  check $f pop 2
done

for f in write2 write4 write8; do
  check $f rsp 1
  check $f push 3
  check $f pop 3
done

for f in read1 read2 read4 read8; do
  check $f rsp 1
  check $f push 5
  check $f pop 5
done

for f in func_entry func_exit; do
  check $f rsp 0
  check $f push 0
  check $f pop 0
  check $f call 1  # TraceSwitch()
done

echo LGTM
