aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorclairexen <claire@symbioticeda.com>2020-08-19 17:58:37 +0200
committerGitHub <noreply@github.com>2020-08-19 17:58:37 +0200
commit87b9ee330d5fa6f7ddcbe1bcc3a582c40541330c (patch)
tree0c30b5f8a8c12fd9609a9fec6c0779a1e48ad2d5 /tests
parent93d663be62510b0d062767b288e943f7a9eed9f6 (diff)
parent850f66cfdd395158e56ef1207d4dc0045ab2fc68 (diff)
downloadyosys-87b9ee330d5fa6f7ddcbe1bcc3a582c40541330c.tar.gz
yosys-87b9ee330d5fa6f7ddcbe1bcc3a582c40541330c.tar.bz2
yosys-87b9ee330d5fa6f7ddcbe1bcc3a582c40541330c.zip
Merge pull request #2122 from PeterCrozier/struct_array2
Support 2D bit arrays in structures. Optimise array indexing.
Diffstat (limited to 'tests')
-rw-r--r--tests/svtypes/struct_array.sv22
1 files changed, 21 insertions, 1 deletions
diff --git a/tests/svtypes/struct_array.sv b/tests/svtypes/struct_array.sv
index 022ad56c6..873f7befd 100644
--- a/tests/svtypes/struct_array.sv
+++ b/tests/svtypes/struct_array.sv
@@ -1,7 +1,7 @@
// test for array indexing in structures
module top;
-
+
struct packed {
bit [5:0] [7:0] a; // 6 element packed array of bytes
bit [15:0] b; // filler for non-zero offset
@@ -19,4 +19,24 @@ module top;
always_comb assert(s==64'h4200_0012_3400_FFFC);
+ struct packed {
+ bit [7:0] [7:0] a; // 8 element packed array of bytes
+ bit [15:0] b; // filler for non-zero offset
+ } s2;
+
+ initial begin
+ s2 = '0;
+
+ s2.a[2:1] = 16'h1234;
+ s2.a[5] = 8'h42;
+
+ s2.a[7] = '1;
+ s2.a[7][1:0] = '0;
+
+ s2.b = '1;
+ s2.b[1:0] = '0;
+ end
+
+ always_comb assert(s2==80'hFC00_4200_0012_3400_FFFC);
+
endmodule