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( 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@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@cat {workdir}/status\n"
# f"\t@grep '^.*: ok' {workdir}/status\n" f"\t@grep '^.*: ok' {workdir}/status\n"
, ,
file=makefile, file=makefile,
) )

View File

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