Skip to content

Commit

Permalink
Simplify tests
Browse files Browse the repository at this point in the history
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
  • Loading branch information
b-chmiel committed Mar 3, 2025
1 parent 5552be8 commit 8ac3b15
Show file tree
Hide file tree
Showing 9 changed files with 57 additions and 56 deletions.
7 changes: 4 additions & 3 deletions test_regress/t/t_force_chained.out
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
%Error: t/t_force_chained.v:30: got='h0 exp='h00000001
%Error: t/t_force_chained.v:37: got='h0 exp='h00000002
%Error: t/t_force_chained.v:43: got='h0 exp='h00000003
%Error: t/t_force_chained.v:27: got='h0 exp='h00000001
%Error: t/t_force_chained.v:33: got='h0 exp='h00000002
%Error: t/t_force_chained.v:40: got='h0 exp='h00000003
%Error: t/t_force_chained.v:46: got='h0 exp='h00000003
25 changes: 14 additions & 11 deletions test_regress/t/t_force_chained.v
Original file line number Diff line number Diff line change
Expand Up @@ -19,24 +19,27 @@ module t;
`checkh(b, 0);
`checkh(c, 0);

#1 a = 1;
a = 1;
#1;
`checkh(a, 1);
`checkh(b, 0);
`checkh(c, 0);

#1 a = 2;
`checkh(a, 2);
`checkh(b, 1);
// TODO implement inter-dependency resolution between force statements
`checkh(c, 1);

#1 a = 3;
c = 3;
`checkh(a, 3);
a = 2;
#1;
`checkh(a, 2);
`checkh(b, 2);
// TODO implement inter-dependency resolution between force statements
`checkh(c, 2);

#1 release b;
a = 3;
c = 3;
#1;
`checkh(a, 3);
`checkh(b, 3);
`checkh(c, 3);

release b;
release c;
`checkh(a, 3);
`checkh(b, 1);
Expand Down
5 changes: 3 additions & 2 deletions test_regress/t/t_force_func.out
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
%Error: t/t_force_func.v:32: got='h0 exp='h00000001
%Error: t/t_force_func.v:36: got='h0 exp='h00000002
%Error: t/t_force_func.v:26: got='h0 exp='h00000001
%Error: t/t_force_func.v:34: got='h0 exp='h00000002
%Error: t/t_force_func.v:39: got='h0 exp='h00000003
%Error: t/t_force_func.v:43: got='h0 exp='h00000003
20 changes: 10 additions & 10 deletions test_regress/t/t_force_func.v
Original file line number Diff line number Diff line change
Expand Up @@ -20,26 +20,26 @@ module t;
`checkh(a, 0);
`checkh(b, 0);

#1 a = 1;
a = 1;
#1;
`checkh(a, 1);
`checkh(b, 0);
`checkh(b, 1);

#1 a = 2;
a = 2;
#1;
`checkh(a, 2);
// TODO
// IEEE 1800-2023 10.6
// Assignment shall be reevaluated while the assign or force is in effect.
`checkh(b, 1);
`checkh(b, 2);

#1 a = 3;
a = 3;
#1;
`checkh(a, 3);
`checkh(b, 2);
`checkh(b, 3);

#1 release b;
release b;
`checkh(a, 3);
// IEEE 1800-2023 10.6.2
// Not driven variable maintains its value after release.
// Value is maintained until a next assignment.
`checkh(b, 3);

b = 2;
Expand Down
3 changes: 1 addition & 2 deletions test_regress/t/t_force_initial.out
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
%Error: t/t_force_initial.v:23: got='h2 exp='h00000000
%Error: t/t_force_initial.v:21: got='h2 exp='h00000000
%Error: t/t_force_initial.v:27: got='h2 exp='h00000001
%Error: t/t_force_initial.v:35: got='h2 exp='h00000003
21 changes: 11 additions & 10 deletions test_regress/t/t_force_initial.v
Original file line number Diff line number Diff line change
Expand Up @@ -17,22 +17,23 @@ module t;
end

initial begin
#1 a = 1;
`checkh(a, 1);
// TODO trigger forced variable update from different initial block.
#1;
`checkh(b, 0);

#1 a = 2;
`checkh(a, 2);
a = 1;
#1;
`checkh(a, 1);
// TODO trigger forced variable update from different initial block.
`checkh(b, 1);

#1 a = 3;
`checkh(a, 3);
a = 2;
#1;
`checkh(a, 2);
`checkh(b, 2);

#1 release b;
`checkh(a, 3);
`checkh(b, 3);
release b;
`checkh(a, 2);
`checkh(b, 2);

b = 0;
#1;
Expand Down
17 changes: 10 additions & 7 deletions test_regress/t/t_force_rhs_ref.v
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,22 @@ module t;
`checkh(a, 0);
`checkh(b, 0);

#1 a = 1;
a = 1;
#1;
`checkh(a, 1);
`checkh(b, 0);
`checkh(b, 1);

#1 a = 2;
a = 2;
#1;
`checkh(a, 2);
`checkh(b, 1);
`checkh(b, 2);

#1 a = 3;
a = 3;
#1;
`checkh(a, 3);
`checkh(b, 2);
`checkh(b, 3);

#1 release b;
release b;
`checkh(a, 3);
`checkh(b, 1);

Expand Down
11 changes: 4 additions & 7 deletions test_regress/t/t_force_rhs_ref_multiple.out
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
%Error: t/t_force_rhs_ref_multiple.v:24: got='h0a exp='h00000009
%Error: t/t_force_rhs_ref_multiple.v:27: got='h0a exp='h00000009
%Error: t/t_force_rhs_ref_multiple.v:29: got='h0a exp='h00000007
%Error: t/t_force_rhs_ref_multiple.v:32: got='h0a exp='h00000007
%Error: t/t_force_rhs_ref_multiple.v:34: got='h0a exp='h00000004
%Error: t/t_force_rhs_ref_multiple.v:37: got='h0a exp='h00000004
%Error: t/t_force_rhs_ref_multiple.v:23: got='h0a exp='h00000009
%Error: t/t_force_rhs_ref_multiple.v:27: got='h0a exp='h00000007
%Error: t/t_force_rhs_ref_multiple.v:31: got='h0a exp='h00000004
%Error: t/t_force_rhs_ref_multiple.v:35: got='h0a exp='h00000000
%Error: t/t_force_rhs_ref_multiple.v:39: got='h0a exp='h00000000
%Error: t/t_force_rhs_ref_multiple.v:43: got='h0a exp='h00000000
4 changes: 0 additions & 4 deletions test_regress/t/t_force_rhs_ref_multiple.v
Original file line number Diff line number Diff line change
Expand Up @@ -18,23 +18,19 @@ module t;
`checkh(e, 10);
#1;
a = 0;
`checkh(e, 10);
#1;
// TODO support multiple VarRefs on RHS
`checkh(e, 9);

b = 0;
`checkh(e, 9);
#1;
`checkh(e, 7);

c = 0;
`checkh(e, 7);
#1;
`checkh(e, 4);

d = 0;
`checkh(e, 4);
#1;
`checkh(e, 0);

Expand Down

0 comments on commit 8ac3b15

Please sign in to comment.