mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-20 14:20:32 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
	
		
			733 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			733 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
 | |
| 	echo -n "[$i]"
 | |
| 	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
 | |
| 
 |