Add additional test cases for for-loops
authorClifford Wolf <clifford@clifford.at>
Wed, 1 May 2019 07:32:07 +0000 (09:32 +0200)
committerClifford Wolf <clifford@clifford.at>
Wed, 1 May 2019 07:32:07 +0000 (09:32 +0200)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
tests/simple/forloops.v [new file with mode: 0644]

diff --git a/tests/simple/forloops.v b/tests/simple/forloops.v
new file mode 100644 (file)
index 0000000..8665222
--- /dev/null
@@ -0,0 +1,25 @@
+module forloops01 (input clk, a, b, output reg [3:0] p, q, x, y);
+       integer k;
+       always @(posedge clk) begin
+               for (k=0; k<2; k=k+1)
+                       p[2*k +: 2] = {a, b} ^ {2{k}};
+               x <= k + {a, b};
+       end
+       always @* begin
+               for (k=0; k<4; k=k+1)
+                       q[k] = {~a, ~b, a, b} >> k[1:0];
+               y = k - {a, b};
+       end
+endmodule
+
+module forloops02 (input clk, a, b, output reg [3:0] q, x, output [3:0] y);
+       integer k;
+       always @* begin
+               for (k=0; k<4; k=k+1)
+                       q[k] = {~a, ~b, a, b} >> k[1:0];
+       end
+       always @* begin
+               x = k + {a, b};
+       end
+       assign y = k - {a, b};
+endmodule