Add regression test for sub-blocks in `final` procedures

Check that sub-blocks containing variables inside of `final` procedures do
get executed.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
This commit is contained in:
Lars-Peter Clausen 2023-04-16 09:02:45 -07:00
parent df30eda3a3
commit 7973b105ac
3 changed files with 26 additions and 0 deletions

20
ivtest/ivltests/final3.v Normal file
View File

@ -0,0 +1,20 @@
// Check that sub-blocks with variable declarations inside final procedures get
// executed
module test;
final begin
static int x = -1;
for (int i = 0; i < 1; i++) begin
x = i;
end
if (x === 0) begin
$display("PASSED");
end else begin
$display("FAILED");
end
end
endmodule

View File

@ -23,6 +23,7 @@ dffsynth9 vvp_tests/dffsynth9.json
dffsynth10 vvp_tests/dffsynth10.json
dffsynth11 vvp_tests/dffsynth11.json
dumpfile vvp_tests/dumpfile.json
final3 vvp_tests/final3.json
macro_str_esc vvp_tests/macro_str_esc.json
memsynth1 vvp_tests/memsynth1.json
param-width vvp_tests/param-width.json

View File

@ -0,0 +1,5 @@
{
"type" : "normal",
"source" : "final3.v",
"iverilog-args" : [ "-g2009" ]
}