mirror of
https://github.com/YosysHQ/yosys
synced 2025-09-01 07:40:42 +00:00
Add optional SEED=n command line option to Makefile, and -S n command line option to test scripts, for deterministic regression tests.
This commit is contained in:
parent
d8ad889594
commit
f4240cc8a4
14 changed files with 175 additions and 24 deletions
|
@ -1,11 +1,11 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
import argparse
|
||||
import os
|
||||
import sys
|
||||
import random
|
||||
|
||||
debug_mode = False
|
||||
seed = (int(os.times()[4]*100) + os.getpid()) % 900000 + 100000
|
||||
|
||||
def create_bram(dsc_f, sim_f, ref_f, tb_f, k1, k2, or_next):
|
||||
while True:
|
||||
|
@ -243,10 +243,23 @@ def create_bram(dsc_f, sim_f, ref_f, tb_f, k1, k2, or_next):
|
|||
print(" end", file=tb_f)
|
||||
print("endmodule", file=tb_f)
|
||||
|
||||
print("Rng seed: %d" % seed)
|
||||
parser = argparse.ArgumentParser(formatter_class = argparse.ArgumentDefaultsHelpFormatter)
|
||||
parser.add_argument('-S', '--seed', type = int, help = 'seed for PRNG')
|
||||
parser.add_argument('-c', '--count', type = int, default = 5, help = 'number of test cases to generate')
|
||||
parser.add_argument('-d', '--debug', action='store_true')
|
||||
args = parser.parse_args()
|
||||
|
||||
debug_mode = args.debug
|
||||
|
||||
if args.seed is not None:
|
||||
seed = args.seed
|
||||
else:
|
||||
seed = (int(os.times()[4]*100) + os.getpid()) % 900000 + 100000
|
||||
|
||||
print("PRNG seed: %d" % seed)
|
||||
random.seed(seed)
|
||||
|
||||
for k1 in range(5):
|
||||
for k1 in range(args.count):
|
||||
dsc_f = open("temp/brams_%02d.txt" % k1, "w")
|
||||
sim_f = open("temp/brams_%02d.v" % k1, "w")
|
||||
ref_f = open("temp/brams_%02d_ref.v" % k1, "w")
|
||||
|
|
|
@ -4,11 +4,26 @@
|
|||
# MAKE="make -j8" time bash -c 'for ((i=0; i<100; i++)); do echo "-- $i --"; bash run-test.sh || exit 1; done'
|
||||
|
||||
set -e
|
||||
|
||||
OPTIND=1
|
||||
count=5
|
||||
seed="" # default to no seed specified
|
||||
debug=""
|
||||
while getopts "c:S:" opt
|
||||
do
|
||||
case "$opt" in
|
||||
c) count="$OPTARG" ;;
|
||||
d) debug="-d" ;;
|
||||
S) seed="-S $OPTARG" ;;
|
||||
esac
|
||||
done
|
||||
shift "$((OPTIND-1))"
|
||||
|
||||
rm -rf temp
|
||||
mkdir -p temp
|
||||
|
||||
echo "generating tests.."
|
||||
python3 generate.py
|
||||
python3 generate.py $debug -c $count $seed
|
||||
|
||||
{
|
||||
echo -n "all:"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue