Add regression tests for declare before use.

This commit is contained in:
Martin Whitaker 2024-02-19 19:44:53 +00:00
parent f1bf6a7a55
commit d043c1fa44
18 changed files with 129 additions and 0 deletions

View File

@ -0,0 +1,3 @@
ivltests/decl_before_use1.v:4: error: Could not find variable ``v'' in ``test''
ivltests/decl_before_use1.v:5: error: Unable to bind wire/reg/memory `v' in `test'
2 error(s) during elaboration.

View File

@ -0,0 +1,3 @@
ivltests/decl_before_use2.v:3: error: Net w is not defined in this context.
ivltests/decl_before_use2.v:6: error: Unable to bind wire/reg/memory `w' in `test'
2 error(s) during elaboration.

View File

@ -0,0 +1,2 @@
ivltests/decl_before_use3.v:4: error: event <e> not found.
1 error(s) during elaboration.

View File

@ -0,0 +1,3 @@
ivltests/decl_before_use4.v:4: error: Unable to bind wire/reg/memory `e' in `test'
ivltests/decl_before_use4.v:4: error: Failed to evaluate event expression 'e'.
2 error(s) during elaboration.

View File

@ -0,0 +1,2 @@
ivltests/decl_before_use5.v:4: error: Unable to bind wire/reg/memory `w' in `test'
1 error(s) during elaboration.

View File

@ -0,0 +1,11 @@
module test();
initial begin
v = 1;
$display("%b", v);
$display("FAILED");
end
reg v;
endmodule

View File

@ -0,0 +1,12 @@
module test();
assign w = 1;
initial begin
$display("%b", w);
$display("FAILED");
end
wire [7:0] w;
endmodule

View File

@ -0,0 +1,10 @@
module test();
initial begin
->e;
$display("FAILED");
end
event e;
endmodule

View File

@ -0,0 +1,12 @@
module test();
initial begin
@(e);
$display("FAILED");
end
event e;
initial ->e;
endmodule

View File

@ -0,0 +1,10 @@
module test();
initial begin
$display("%b", w);
$display("FAILED");
end
localparam w = 8'hAA;
endmodule

View File

@ -0,0 +1,20 @@
module test();
localparam w = 8;
task t;
reg [w:1] v;
localparam w = 2;
begin
v = 8'hAA;
$display("%b", v);
if (v === 8'hAA)
$display("PASSED");
else
$display("FAILED");
end
endtask;
initial t;
endmodule

View File

@ -60,6 +60,12 @@ constfunc17 vvp_tests/constfunc17.json
constfunc18 vvp_tests/constfunc18.json
constfunc19 vvp_tests/constfunc19.json
constfunc20 vvp_tests/constfunc20.json
decl_before_use1 vvp_tests/decl_before_use1.json
decl_before_use2 vvp_tests/decl_before_use2.json
decl_before_use3 vvp_tests/decl_before_use3.json
decl_before_use4 vvp_tests/decl_before_use4.json
decl_before_use5 vvp_tests/decl_before_use5.json
decl_before_use6 vvp_tests/decl_before_use6.json
delayed_sfunc vvp_tests/delayed_sfunc.json
dffsynth vvp_tests/dffsynth.json
dffsynth-S vvp_tests/dffsynth-S.json

View File

@ -0,0 +1,6 @@
{
"type" : "CE",
"source" : "decl_before_use1.v",
"gold" : "decl_before_use1"
}

View File

@ -0,0 +1,6 @@
{
"type" : "CE",
"source" : "decl_before_use2.v",
"gold" : "decl_before_use2"
}

View File

@ -0,0 +1,6 @@
{
"type" : "CE",
"source" : "decl_before_use3.v",
"gold" : "decl_before_use3"
}

View File

@ -0,0 +1,6 @@
{
"type" : "CE",
"source" : "decl_before_use4.v",
"gold" : "decl_before_use4"
}

View File

@ -0,0 +1,6 @@
{
"type" : "CE",
"source" : "decl_before_use5.v",
"gold" : "decl_before_use5"
}

View File

@ -0,0 +1,5 @@
{
"type" : "normal",
"source" : "decl_before_use6.v"
}