mirror of
https://github.com/zachjs/sv2v.git
synced 2026-09-07 11:51:28 +02:00
expand type operator support
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
module top;
|
||||
typedef logic [16:1] Word;
|
||||
Word Ram[0:9];
|
||||
type(Ram) RamPair [2];
|
||||
integer ints [3:0];
|
||||
typedef struct packed { logic x, y, z; } T;
|
||||
logic [$size(T)-1:0] foo;
|
||||
@@ -22,6 +23,8 @@ module top;
|
||||
$display($bits(foo));
|
||||
|
||||
`EXHAUST(Ram);
|
||||
`EXHAUST(RamPair);
|
||||
`EXHAUST(RamPair[0]);
|
||||
`EXHAUST(Word);
|
||||
`EXHAUST(integer);
|
||||
`EXHAUST(bit);
|
||||
|
||||
@@ -15,6 +15,26 @@ module top;
|
||||
$display(1);
|
||||
$display(160);
|
||||
|
||||
$display(2, 2, 10);
|
||||
$display(0, 0, 0);
|
||||
$display(1, 1, 9);
|
||||
$display(1, 1, 9);
|
||||
$display(0, 0, 0);
|
||||
$display(-1, -1, -1);
|
||||
$display(3);
|
||||
$display(2);
|
||||
$display(320);
|
||||
|
||||
$display(10, 10, 16);
|
||||
$display(0, 0, 16);
|
||||
$display(9, 9, 1);
|
||||
$display(9, 9, 16);
|
||||
$display(0, 0, 1);
|
||||
$display(-1, -1, 1);
|
||||
$display(2);
|
||||
$display(1);
|
||||
$display(160);
|
||||
|
||||
$display(16, 16, 1'bx);
|
||||
$display(16, 16, 1'bx);
|
||||
$display(1, 1, 1'bx);
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
module top;
|
||||
|
||||
initial begin
|
||||
logic x;
|
||||
$display($bits(x));
|
||||
begin
|
||||
logic [0:$bits(x)] x;
|
||||
$display($bits(x));
|
||||
begin
|
||||
logic [0:$bits(x)] x;
|
||||
$display($bits(x));
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
initial begin
|
||||
logic x;
|
||||
$display($bits(type(x)));
|
||||
begin
|
||||
logic [0:$bits(type(x))] x;
|
||||
$display($bits(type(x)));
|
||||
begin
|
||||
logic [0:$bits(type(x))] x;
|
||||
$display($bits(type(x)));
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
initial begin
|
||||
logic x;
|
||||
$display($bits(x));
|
||||
begin
|
||||
logic [0:$bits(type(x))] x;
|
||||
$display($bits(x));
|
||||
begin
|
||||
logic [0:$bits(type(x))] x;
|
||||
$display($bits(x));
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
initial begin
|
||||
logic x;
|
||||
$display($bits(type(x)));
|
||||
begin
|
||||
logic [0:$bits(x)] x;
|
||||
$display($bits(type(x)));
|
||||
begin
|
||||
logic [0:$bits(x)] x;
|
||||
$display($bits(type(x)));
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
endmodule
|
||||
@@ -0,0 +1,27 @@
|
||||
module top;
|
||||
|
||||
initial begin
|
||||
$display(1);
|
||||
$display(2);
|
||||
$display(3);
|
||||
end
|
||||
|
||||
initial begin
|
||||
$display(1);
|
||||
$display(2);
|
||||
$display(3);
|
||||
end
|
||||
|
||||
initial begin
|
||||
$display(1);
|
||||
$display(2);
|
||||
$display(3);
|
||||
end
|
||||
|
||||
initial begin
|
||||
$display(1);
|
||||
$display(2);
|
||||
$display(3);
|
||||
end
|
||||
|
||||
endmodule
|
||||
Reference in New Issue
Block a user