diff options
author | Clifford Wolf <clifford@clifford.at> | 2019-05-01 09:32:07 +0200 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2019-05-01 09:32:07 +0200 |
commit | e5cb9435a064461b56d55dc6ba1241ba1f179119 (patch) | |
tree | 1f8cd2a5bcd408846cdf662008451aa6e8a23052 | |
parent | a30b99e66e048530d74e9dfc5c103d5fac47c5bc (diff) | |
download | yosys-e5cb9435a064461b56d55dc6ba1241ba1f179119.tar.gz yosys-e5cb9435a064461b56d55dc6ba1241ba1f179119.tar.bz2 yosys-e5cb9435a064461b56d55dc6ba1241ba1f179119.zip |
Add additional test cases for for-loops
Signed-off-by: Clifford Wolf <clifford@clifford.at>
-rw-r--r-- | tests/simple/forloops.v | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/simple/forloops.v b/tests/simple/forloops.v new file mode 100644 index 000000000..8665222d8 --- /dev/null +++ b/tests/simple/forloops.v @@ -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 |