mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 19:52:31 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			54 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| OPTIND=1
 | |
| seed=""    # default to no seed specified
 | |
| while getopts "S:" opt
 | |
| do
 | |
|     case "$opt" in
 | |
| 	S) arg="${OPTARG#"${OPTARG%%[![:space:]]*}"}" # remove leading space
 | |
| 	   seed="SEED=$arg" ;;
 | |
|     esac
 | |
| done
 | |
| shift "$((OPTIND-1))"
 | |
| 
 | |
| # check for Icarus Verilog
 | |
| if ! command -v iverilog > /dev/null ; then
 | |
|   echo "$0: Error: Icarus Verilog 'iverilog' not found."
 | |
|   exit 1
 | |
| fi
 | |
| 
 | |
| for file in `ls *.v *.sv`; do
 | |
|     if [ ! -f "../simple/$file" -a "$file" != "abc9.v" ]; then
 | |
| 	echo "Warning: $file is in simple_abc9/, but not in simple/"
 | |
| 	backup="$file.bak"
 | |
| 	if [ -f "$backup" ]; then
 | |
| 	    if cmp "$file" "$backup" > /dev/null; then
 | |
| 		echo " => $backup already exists and matches; removing $file"
 | |
| 		rm "$file"
 | |
| 	    else
 | |
| 		echo " => $backup already exists but differs; leaving $file in place"
 | |
| 	    fi
 | |
| 	else
 | |
| 	    echo " => moving $file to $backup"
 | |
| 	    mv -i "$file" "$backup"
 | |
| 	fi
 | |
|     fi
 | |
| done
 | |
| 
 | |
| cp ../simple/*.v .
 | |
| cp ../simple/*.sv .
 | |
| rm specify.v # bug 2675
 | |
| DOLLAR='?'
 | |
| exec ${MAKE:-make} -f ../tools/autotest.mk $seed *.v *.sv EXTRA_FLAGS="-f \"verilog -noblackbox -specify\" -n 300 -p '\
 | |
|     read_verilog -icells -lib +/abc9_model.v; \
 | |
|     hierarchy; \
 | |
|     synth -run coarse; \
 | |
|     opt -full; \
 | |
|     techmap; \
 | |
|     abc9 -lut 4; \
 | |
|     clean; \
 | |
|     check -assert * abc9_test037 %d; \
 | |
|     select -assert-none t:${DOLLAR}_NOT_ t:${DOLLAR}_AND_ %%; \
 | |
|     setattr -mod -unset blackbox -unset whitebox =*'"
 | |
| 
 | |
| # NOTE: Skip 'check -assert' on abc9_test037 because it intentionally has a combinatorial loop
 |