diff options
author | Eddie Hung <eddie@fpgeh.com> | 2019-12-19 12:21:33 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-12-19 12:21:33 -0500 |
commit | d406f2ffd776e4f69c86a96db8e69a9aa8a1dc1c (patch) | |
tree | 29413acb3d172859516920d054bfddcdf0fec482 /tests/various | |
parent | d675f22f4e4166ef2cd13f1a9a28f8bd35511539 (diff) | |
parent | 1ac1697e15ff72e69f4dfbf6922f0871c81bdff2 (diff) | |
download | yosys-d406f2ffd776e4f69c86a96db8e69a9aa8a1dc1c.tar.gz yosys-d406f2ffd776e4f69c86a96db8e69a9aa8a1dc1c.tar.bz2 yosys-d406f2ffd776e4f69c86a96db8e69a9aa8a1dc1c.zip |
Merge pull request #1569 from YosysHQ/eddie/fix_1531
verilog: preserve size of $genval$-s in for loops
Diffstat (limited to 'tests/various')
-rw-r--r-- | tests/various/bug1531.ys | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/various/bug1531.ys b/tests/various/bug1531.ys new file mode 100644 index 000000000..542223030 --- /dev/null +++ b/tests/various/bug1531.ys @@ -0,0 +1,34 @@ +read_verilog <<EOT +module top (y, clk, w); + output reg y = 1'b0; + input clk, w; + reg [1:0] i = 2'b00; + always @(posedge clk) + // If the constant below is set to 2'b00, the correct output is generated. + // vvvv + for (i = 1'b0; i < 2'b01; i = i + 2'b01) + y <= w || i[1:1]; +endmodule +EOT + +synth +design -stash gate + +read_verilog <<EOT +module gold (y, clk, w); + input clk; + wire [1:0] i; + input w; + output y; + reg y = 1'h0; + always @(posedge clk) + y <= w; + assign i = 2'h0; +endmodule +EOT +proc gold + +design -import gate -as gate + +miter -equiv -flatten -make_assert -make_outputs gold gate miter +sat -seq 10 -verify -prove-asserts -show-ports miter |