xprop: Test fixes and abort on test failure

Use `$finish(0)` to silently exit even when using recent iverlog
versions. Run `write_verilog -noexpr` before `write_verilog` as the
latter can modify the design.

This also enables checking the tests results, as xprop should be in a
state where the existing tests pass.
This commit is contained in:
Jannis Harder 2023-02-13 14:03:08 +01:00
parent 9f20beb7df
commit 2a68eee5f1
2 changed files with 3 additions and 3 deletions

View File

@ -33,7 +33,7 @@ def add_test(name, src, seq=False):
print(
f"\t@cd {workdir} && python3 -u ../test.py -S {args.seed} -c {args.count}{seq_arg} > test.log 2>&1 || echo {workdir}: failed > status\n"
f"\t@cat {workdir}/status\n"
# f"\t@grep '^.*: ok' {workdir}/status\n"
f"\t@grep '^.*: ok' {workdir}/status\n"
,
file=makefile,
)

View File

@ -275,7 +275,7 @@ if "prepare" in steps:
file=tb_file,
)
print(" $finish;", file=tb_file)
print(" $finish(0);", file=tb_file)
print("end", file=tb_file)
print("endmodule", file=tb_file)
@ -344,8 +344,8 @@ for mode in ["", "_xprop"]:
read_rtlil wrapped{mode}.il
chformal -remove
dffunmap
write_verilog -noparallelcase vsim_expr{mode}.v
write_verilog -noexpr vsim_noexpr{mode}.v
write_verilog -noparallelcase vsim_expr{mode}.v
"""
)