aboutsummaryrefslogtreecommitdiffstats
path: root/tests/opt/opt_share_large_pmux_cat_multipart.v
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2019-08-20 20:18:17 -0700
committerEddie Hung <eddie@fpgeh.com>2019-08-20 20:18:17 -0700
commitb7a48e3e0f49f09e12a2b394b62256a87c398dbc (patch)
tree9667249b7e1ab86c264f44d0a2f03b326e2763fa /tests/opt/opt_share_large_pmux_cat_multipart.v
parentc320abc3f490b09b21804581c2b386c30d186a1e (diff)
parent33960dd3d84b628f6e5de45c112368dc80626457 (diff)
downloadyosys-b7a48e3e0f49f09e12a2b394b62256a87c398dbc.tar.gz
yosys-b7a48e3e0f49f09e12a2b394b62256a87c398dbc.tar.bz2
yosys-b7a48e3e0f49f09e12a2b394b62256a87c398dbc.zip
Merge remote-tracking branch 'origin/master' into xc7dsp
Diffstat (limited to 'tests/opt/opt_share_large_pmux_cat_multipart.v')
-rw-r--r--tests/opt/opt_share_large_pmux_cat_multipart.v25
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/opt/opt_share_large_pmux_cat_multipart.v b/tests/opt/opt_share_large_pmux_cat_multipart.v
new file mode 100644
index 000000000..34d2bd9a8
--- /dev/null
+++ b/tests/opt/opt_share_large_pmux_cat_multipart.v
@@ -0,0 +1,25 @@
+module opt_share_test(
+ input [15:0] a,
+ input [15:0] b,
+ input [15:0] c,
+ input [15:0] d,
+ input [2:0] sel,
+ output reg [31:0] res
+ );
+
+ wire [15:0] add0_res = a+d;
+
+ always @* begin
+ case(sel)
+ 0: res = {add0_res, a};
+ 1: res = {a - b, add0_res[7], 15'b0};
+ 2: res = {b-a, b};
+ 3: res = {d, b - c};
+ 4: res = {d, b - a};
+ 5: res = {c, d};
+ 6: res = {a - c, b-d};
+ default: res = 32'bx;
+ endcase
+ end
+
+endmodule