aboutsummaryrefslogtreecommitdiffstats
path: root/tests/proc
diff options
context:
space:
mode:
authorwhitequark <whitequark@whitequark.org>2019-08-19 16:44:23 +0000
committerwhitequark <whitequark@whitequark.org>2019-08-19 16:44:23 +0000
commit4a942ba7b9bb76f207adf23369f46d31f7607b75 (patch)
tree99aa7de39093fa08b8b531dc4454dede36bd72fb /tests/proc
parent4adcbecec5c6bfcdd3ed1d6ed753d3a7670e3eea (diff)
downloadyosys-4a942ba7b9bb76f207adf23369f46d31f7607b75.tar.gz
yosys-4a942ba7b9bb76f207adf23369f46d31f7607b75.tar.bz2
yosys-4a942ba7b9bb76f207adf23369f46d31f7607b75.zip
proc_clean: fix order of switch insertion.
Fixes #1268.
Diffstat (limited to 'tests/proc')
-rw-r--r--tests/proc/.gitignore1
-rw-r--r--tests/proc/bug_1268.v23
-rw-r--r--tests/proc/bug_1268.ys5
-rwxr-xr-xtests/proc/run-test.sh6
4 files changed, 35 insertions, 0 deletions
diff --git a/tests/proc/.gitignore b/tests/proc/.gitignore
new file mode 100644
index 000000000..397b4a762
--- /dev/null
+++ b/tests/proc/.gitignore
@@ -0,0 +1 @@
+*.log
diff --git a/tests/proc/bug_1268.v b/tests/proc/bug_1268.v
new file mode 100644
index 000000000..698ac937a
--- /dev/null
+++ b/tests/proc/bug_1268.v
@@ -0,0 +1,23 @@
+module gold (input clock, ctrl, din, output reg dout);
+ always @(posedge clock) begin
+ if (1'b1) begin
+ if (1'b0) begin end else begin
+ dout <= 0;
+ end
+ if (ctrl)
+ dout <= din;
+ end
+ end
+endmodule
+
+module gate (input clock, ctrl, din, output reg dout);
+ always @(posedge clock) begin
+ if (1'b1) begin
+ if (1'b0) begin end else begin
+ dout <= 0;
+ end
+ end
+ if (ctrl)
+ dout <= din;
+ end
+endmodule
diff --git a/tests/proc/bug_1268.ys b/tests/proc/bug_1268.ys
new file mode 100644
index 000000000..b73e94449
--- /dev/null
+++ b/tests/proc/bug_1268.ys
@@ -0,0 +1,5 @@
+read_verilog bug_1268.v
+proc
+equiv_make gold gate equiv
+equiv_induct
+equiv_status -assert
diff --git a/tests/proc/run-test.sh b/tests/proc/run-test.sh
new file mode 100755
index 000000000..44ce7e674
--- /dev/null
+++ b/tests/proc/run-test.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -e
+for x in *.ys; do
+ echo "Running $x.."
+ ../../yosys -ql ${x%.ys}.log $x
+done