convert for loop declarations and assignments to signle assignment (closes #15)

This commit is contained in:
Zachary Snow
2019-08-30 00:12:01 -04:00
parent 1472ea0cfe
commit 243f773657
6 changed files with 163 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
module top;
wire [0:31] a;
for (genvar n = 0; n < 32; n++) begin : gen_filter
assign a[n] = n & 1;
end
initial
for (integer i = 0; i < 32; i++)
$display("1: ", a[i]);
integer i = 0;
initial
for (; i < 32; i++)
$display("2: ", ~a[i]);
initial begin
for (integer i = 0, j = 42; i < 32; i++)
$display("3: ", ~a[i] + 5, " j=", j);
end
initial begin
integer i, j;
for (i = 0, j = 97; i < 32; i++)
$display("4: ", ~a[i] + 10, " j=", j);
end
integer j = 0, k;
initial begin
for (; j < 4; j++) begin
k = 0;
for (; k < 8; k++)
$display("5: ", ~a[j * 8 + k] + 11);
end
end
endmodule
+45
View File
@@ -0,0 +1,45 @@
module top;
wire [0:31] a;
generate
genvar n;
for (n = 0; n < 32; n = n + 1) begin : gen_filter
assign a[n] = n & 1;
end
endgenerate
integer i;
initial begin : foo_1
for (i = 0; i < 32; i = i + 1)
$display("1: ", a[i]);
end
initial begin : foo_2
integer i;
for (i = 0; i < 32; i = i + 1)
$display("2: ", ~a[i]);
end
initial begin : foo_3
integer i;
integer j;
j = 42;
for (i = 0; i < 32; i = i + 1)
$display("3: ", ~a[i] + 5, " j=", j);
end
initial begin : foo_4
integer i, j;
j = 97;
for (i = 0; i < 32; i = i + 1)
$display("4: ", ~a[i] + 10, " j=", j);
end
integer j, k;
initial begin
for (j = 0; j < 4; j++)
for (k = 0; k < 8; k++)
$display("5: ", ~a[j * 8 + k] + 11);
end
endmodule