aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorwhitequark <whitequark@whitequark.org>2019-01-02 07:53:31 +0000
committerwhitequark <whitequark@whitequark.org>2019-01-02 07:53:31 +0000
commita91892bba422bbe8de080a105a6fb4b44f96df1a (patch)
tree13a823cf963029818cd7d3b74569701c893db19b /tests
parent4b9f619349e6b7452739631635ab3b5a4d94b522 (diff)
downloadyosys-a91892bba422bbe8de080a105a6fb4b44f96df1a.tar.gz
yosys-a91892bba422bbe8de080a105a6fb4b44f96df1a.tar.bz2
yosys-a91892bba422bbe8de080a105a6fb4b44f96df1a.zip
cmp2lut: new techmap pass.
Diffstat (limited to 'tests')
-rw-r--r--tests/lut/check_map.ys6
-rw-r--r--tests/lut/map_cmp.v29
-rwxr-xr-x[-rw-r--r--]tests/lut/run-test.sh0
3 files changed, 33 insertions, 2 deletions
diff --git a/tests/lut/check_map.ys b/tests/lut/check_map.ys
index dc0aaffc2..46854e82e 100644
--- a/tests/lut/check_map.ys
+++ b/tests/lut/check_map.ys
@@ -1,4 +1,6 @@
simplemap
-equiv_opt -assert techmap -map +/gate2lut.v -D LUT_WIDTH=4
+equiv_opt -assert techmap -D LUT_WIDTH=4 -map +/cmp2lut.v
design -load postopt
-select -assert-count 1 t:$lut
+equiv_opt -assert techmap -D LUT_WIDTH=4 -map +/gate2lut.v
+design -load postopt
+select -assert-count 0 t:* t:$lut %d
diff --git a/tests/lut/map_cmp.v b/tests/lut/map_cmp.v
new file mode 100644
index 000000000..5e413f894
--- /dev/null
+++ b/tests/lut/map_cmp.v
@@ -0,0 +1,29 @@
+module top(...);
+ input [3:0] a;
+
+ output o1_1 = 4'b1010 <= a;
+ output o1_2 = 4'b1010 < a;
+ output o1_3 = 4'b1010 >= a;
+ output o1_4 = 4'b1010 > a;
+ output o1_5 = 4'b1010 == a;
+ output o1_6 = 4'b1010 != a;
+
+ output o2_1 = a <= 4'b1010;
+ output o2_2 = a < 4'b1010;
+ output o2_3 = a >= 4'b1010;
+ output o2_4 = a > 4'b1010;
+ output o2_5 = a == 4'b1010;
+ output o2_6 = a != 4'b1010;
+
+ output o3_1 = 4'sb0101 <= $signed(a);
+ output o3_2 = 4'sb0101 < $signed(a);
+ output o3_3 = 4'sb0101 >= $signed(a);
+ output o3_4 = 4'sb0101 > $signed(a);
+ output o3_5 = 4'sb0101 == $signed(a);
+ output o3_6 = 4'sb0101 != $signed(a);
+
+ output o4_1 = $signed(a) <= 4'sb0000;
+ output o4_2 = $signed(a) < 4'sb0000;
+ output o4_3 = $signed(a) >= 4'sb0000;
+ output o4_4 = $signed(a) > 4'sb0000;
+endmodule
diff --git a/tests/lut/run-test.sh b/tests/lut/run-test.sh
index 207417fa6..207417fa6 100644..100755
--- a/tests/lut/run-test.sh
+++ b/tests/lut/run-test.sh