Fixed crash with wrong number of arguments for coverage in regression-wally

This commit is contained in:
David Harris 2023-03-10 13:10:28 -08:00
parent ed22433916
commit 8107f585c8
2 changed files with 7 additions and 4 deletions

View File

@ -219,6 +219,7 @@ def main():
print('Generating coverage report') print('Generating coverage report')
os.system('vcover merge -out cov/cov.ucdb cov/rv64gc_arch64i.ucdb cov/rv64gc*.ucdb -logfile cov/log') os.system('vcover merge -out cov/cov.ucdb cov/rv64gc_arch64i.ucdb cov/rv64gc*.ucdb -logfile cov/log')
os.system('vcover report -details cov/cov.ucdb > cov/rv64gc_coverage.rpt') os.system('vcover report -details cov/cov.ucdb > cov/rv64gc_coverage.rpt')
os.system('vcover report -html cov/cov.ucdb')
# Count the number of failures # Count the number of failures
if num_fail: if num_fail:
print(f"{bcolors.FAIL}Regression failed with %s failed configurations{bcolors.ENDC}" % num_fail) print(f"{bcolors.FAIL}Regression failed with %s failed configurations{bcolors.ENDC}" % num_fail)

View File

@ -115,7 +115,7 @@ if {$2 eq "buildroot" || $2 eq "buildroot-checkpoint"} {
vlog -lint -work wkdir/work_${1}_${2} +incdir+../config/$1 +incdir+../config/shared ../testbench/testbench.sv ../testbench/common/*.sv ../src/*/*.sv ../src/*/*/*.sv -suppress 2583 -suppress 7063,2596,13286 vlog -lint -work wkdir/work_${1}_${2} +incdir+../config/$1 +incdir+../config/shared ../testbench/testbench.sv ../testbench/common/*.sv ../src/*/*.sv ../src/*/*/*.sv -suppress 2583 -suppress 7063,2596,13286
# start and run simulation # start and run simulation
# remove +acc flag for faster sim during regressions if there is no need to access internal signals # remove +acc flag for faster sim during regressions if there is no need to access internal signals
if {$3 eq "-coverage"} { if {$argc >= 3} {
vopt wkdir/work_${1}_${2}.testbench -work wkdir/work_${1}_${2} -G TEST=$2 -o testbenchopt +cover=sbectf vopt wkdir/work_${1}_${2}.testbench -work wkdir/work_${1}_${2} -G TEST=$2 -o testbenchopt +cover=sbectf
vsim -lib wkdir/work_${1}_${2} testbenchopt -fatal 7 -suppress 3829 -coverage vsim -lib wkdir/work_${1}_${2} testbenchopt -fatal 7 -suppress 3829 -coverage
} else { } else {
@ -129,10 +129,12 @@ if {$2 eq "buildroot" || $2 eq "buildroot-checkpoint"} {
# power off -r /dut/core/* # power off -r /dut/core/*
} }
if {$3 eq "-coverage"} { if {$argc >= 3) {}
if ($3 eq "-coverage"} {
do coverage-exclusions.do do coverage-exclusions.do
coverage save -instance /testbench/dut cov/${1}_${2}.ucdb coverage save -instance /testbench/dut cov/${1}_${2}.ucdb
} }
}
# These aren't doing anything helpful # These aren't doing anything helpful
#profile report -calltree -file wally-calltree.rpt -cutoff 2 #profile report -calltree -file wally-calltree.rpt -cutoff 2