mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			35 lines
		
	
	
	
		
			717 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
	
		
			717 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
set -e
 | 
						|
 | 
						|
OPTIND=1
 | 
						|
count=100
 | 
						|
seed=""    # default to no seed specified
 | 
						|
while getopts "c:S:" opt
 | 
						|
do
 | 
						|
    case "$opt" in
 | 
						|
	c) count="$OPTARG" ;;
 | 
						|
	S) seed="-S $OPTARG" ;;
 | 
						|
    esac
 | 
						|
done
 | 
						|
shift "$((OPTIND-1))"
 | 
						|
 | 
						|
rm -rf temp
 | 
						|
mkdir -p temp
 | 
						|
echo "generating tests.."
 | 
						|
python3 generate.py -c $count $seed
 | 
						|
 | 
						|
cd temp
 | 
						|
echo "running tests.."
 | 
						|
for ((i = 0; i < $count; i++)); do
 | 
						|
	idx=$( printf "%05d" $i )
 | 
						|
	../../../yosys -qq uut_${idx}.ys
 | 
						|
	iverilog -o uut_${idx}_tb uut_${idx}_tb.v uut_${idx}.v uut_${idx}_syn.v
 | 
						|
	./uut_${idx}_tb | tee uut_${idx}.err
 | 
						|
	if test -s uut_${idx}.err; then
 | 
						|
		echo "Note: Make sure that 'iverilog' is an up-to-date git checkout of Icarus Verilog."
 | 
						|
		exit 1
 | 
						|
	fi
 | 
						|
	rm -f uut_${idx}.err
 | 
						|
done
 | 
						|
echo
 | 
						|
 |