mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 11:42:30 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| # run this test many times:
 | |
| # time bash -c 'for ((i=0; i<100; i++)); do echo "-- $i --"; bash run-test.sh || exit 1; done'
 | |
| 
 | |
| set -e
 | |
| 
 | |
| OPTIND=1
 | |
| count=50
 | |
| 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
 | |
| 
 | |
| {
 | |
| 	all_targets="all_targets:"
 | |
| 	echo "all: all_targets"
 | |
| 	echo "	@echo"
 | |
| 	for i in $( ls temp/*.ys | sed 's,[^0-9],,g; s,^0*\(.\),\1,g;' ); do
 | |
| 		idx=$( printf "%05d" $i )
 | |
| 		echo "temp/uut_${idx}.log: temp/uut_${idx}.ys temp/uut_${idx}.v"
 | |
| 		echo "	@echo -n '[$i]'"
 | |
| 		echo "	@../../yosys -ql temp/uut_${idx}.out temp/uut_${idx}.ys"
 | |
| 		echo "	@mv temp/uut_${idx}.out temp/uut_${idx}.log"
 | |
| 		echo "	@grep -q 'SAT proof finished' temp/uut_${idx}.log && echo -n K || echo -n T"
 | |
| 		all_targets="$all_targets temp/uut_${idx}.log"
 | |
| 	done
 | |
| 	echo "$all_targets"
 | |
| } > temp/makefile
 | |
| 
 | |
| echo "running tests.."
 | |
| ${MAKE:-make} -f temp/makefile
 | |
| 
 | |
| exit 0
 |