cvw/wally-pipelined/regression/regression-wally.sh
2021-03-11 12:25:20 -05:00

23 lines
796 B
Bash
Executable File

#!/usr/bin/env bash
check_test () {
output=$(./$1)
found=$(echo $output | grep -c "$2")
echo "$found"
}
echo "checking verilator"
verilator_out=$(cd ..; ./lint-wally 2>&1)
[[ -z $verilator_out ]] && echo "verilator passed" || echo "verilator failed"
echo "starting Imperas rv64ic"
sleep 1
exec 3< <(check_test "sim-wally-batch" "All tests ran without failures.")
echo "starting busybear"
sleep 1
exec 4< <(check_test "sim-busybear-batch" "loaded 100000 instructions")
rv64_out=$(cat <&3)
[[ $rv64_out -eq 1 ]] && echo "rv64ic passed" || echo "rv64ic failed"
busybear_out=$(cat <&4)
[[ $busybear_out -eq 1 ]] && echo "busybear passed" || echo "busybear failed"
#wait $(jobs -p)
[[ -z $verilator_out && $rv64_out -eq 1 && $busybear_out -eq 1 ]] && echo "all passed" || echo "not all passed"