Add a couple more tests
[yosys.git] / tests / memories / run-test.sh
1 #!/bin/bash
2
3 set -e
4
5 OPTIND=1
6 seed="" # default to no seed specified
7 while getopts "S:" opt
8 do
9 case "$opt" in
10 S) seed="-S $OPTARG" ;;
11 esac
12 done
13 shift "$((OPTIND-1))"
14
15 bash ../tools/autotest.sh $seed -G *.v
16
17 for f in `egrep -l 'expect-(wr|rd)-ports' *.v`; do
18 echo -n "Testing expectations for $f .."
19 ../../yosys -qp "proc; opt; memory -nomap;; dump -outfile ${f%.v}.dmp t:\$mem" $f
20 if grep -q expect-wr-ports $f; then
21 grep -q "parameter \\\\WR_PORTS $(gawk '/expect-wr-ports/ { print $3; }' $f)\$" ${f%.v}.dmp ||
22 { echo " ERROR: Unexpected number of write ports."; false; }
23 fi
24 if grep -q expect-rd-ports $f; then
25 grep -q "parameter \\\\RD_PORTS $(gawk '/expect-rd-ports/ { print $3; }' $f)\$" ${f%.v}.dmp ||
26 { echo " ERROR: Unexpected number of read ports."; false; }
27 fi
28 echo " ok."
29 done
30