Make vcd generation optional in runtests
This commit is contained in:
parent
64d9f4a111
commit
456810b09e
|
@ -4,9 +4,15 @@ import os
|
|||
import subprocess
|
||||
import sys
|
||||
|
||||
args = sys.argv[1:]
|
||||
|
||||
if len(sys.argv) > 1:
|
||||
testlist = sys.argv[1:]
|
||||
generate_vcd = False
|
||||
if "--vcd" in args:
|
||||
generate_vcd = True
|
||||
del args[args.index("--vcd")]
|
||||
|
||||
if len(args) > 0:
|
||||
testlist = args
|
||||
else:
|
||||
testlist = []
|
||||
for path in os.listdir():
|
||||
|
@ -36,8 +42,12 @@ for test in testlist:
|
|||
all_passed = False
|
||||
continue
|
||||
|
||||
cmdline = ["../tb_cxxrtl/tb", "--bin", f"tmp/{test}.bin", "--cycles", "1000000"]
|
||||
if generate_vcd:
|
||||
cmdline += ["--vcd", f"tmp/{test}.vcd"]
|
||||
|
||||
test_run_ret = subprocess.run(
|
||||
["../tb_cxxrtl/tb", "--bin", f"tmp/{test}.bin", "--cycles", "1000000", "--vcd", f"tmp/{test}.vcd"],
|
||||
cmdline,
|
||||
stdout = subprocess.PIPE,
|
||||
stderr = subprocess.PIPE,
|
||||
timeout=10
|
||||
|
|
|
@ -29,7 +29,7 @@ void __attribute__((naked)) do_ecall() {
|
|||
// /!\ Unconventional control flow ahead
|
||||
|
||||
// Call function in U mode, from M mode. Catch exception, or break back to M
|
||||
// mode if the function returned normally, and then return.
|
||||
// mode if the function returned normally (via dummy ecall), and then return.
|
||||
static inline void umode_call_and_catch(void (*f)(void)) {
|
||||
clear_csr(mstatus, 0x1800u);
|
||||
write_csr(mepc, f);
|
||||
|
|
Loading…
Reference in New Issue