diff --git a/sim/wally-batch.do b/sim/wally-batch.do index 19951de94..830538999 100644 --- a/sim/wally-batch.do +++ b/sim/wally-batch.do @@ -43,6 +43,14 @@ if {$2 eq "ahb"} { # Create directory for coverage data mkdir -p cov +# Check if measuring coverage + set coverage 0 +if {$argc >= 3} { + if {$3 eq "-coverage"} { + set coverage 1 + } +} + # compile source files # suppress spurious warnngs about # "Extra checking for conflicts with always_comb done at vopt time" @@ -115,7 +123,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 # start and run simulation # remove +acc flag for faster sim during regressions if there is no need to access internal signals - if {$argc >= 3} { + if {$coverage} { 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 } else { @@ -129,11 +137,9 @@ if {$2 eq "buildroot" || $2 eq "buildroot-checkpoint"} { # power off -r /dut/core/* } -if {$argc >= 3) {} - if ($3 eq "-coverage"} { - do coverage-exclusions.do - coverage save -instance /testbench/dut cov/${1}_${2}.ucdb - } +if {$coverage} { + do coverage-exclusions.do + coverage save -instance /testbench/dut cov/${1}_${2}.ucdb } # These aren't doing anything helpful