Synthesis Benchmark Comparison Report

Tools Compared: yosys, circt
Tool Versions: yosys vYosys 0.33 (git sha1 2584903a060), circt vCIRCT firtool-1.147.0-13-g30dba3713
Total Benchmarks: 158
Categories: 3
Generated: 2026-05-19T15:02:00.154749

Visual Comparison

Each bar shows circt relative to yosys (baseline = 0%). Green = circt is better   Red = yosys is better.

Benchmark Ranking

All benchmarks sorted by circt vs yosys difference. Click a column header to re-sort. Green = circt better   Red = yosys better.

Benchmark Comparison

Benchmark yosys circt CEC
GatesDepthArea (ASAP7)Delay (ASAP7)Area (Sky130)Delay (Sky130) GatesDepthArea (ASAP7)Delay (ASAP7)Area (Sky130)Delay (Sky130) SMT TV (bitwuzla)
📁 DatapathBench
AddMop_16 387 23 15 333 2023 2472 369
(-4.7%)
19
(-17.4%)
17
(+13.3%)
329
(-1.2%)
2107
(+4.2%)
1861
(-24.7%)
✔ 16/16All 16 transformations verified equiv ✔ tmpfxevqaq_AddMop.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpkq6_ohor.synth.mlir ✔ EQUIV
AddMop_48 1245 29 50 440 6556 3217 1545
(+24.1%)
22
(-24.1%)
78
(+56.0%)
373
(-15.2%)
8726
(+33.1%)
2188
(-32.0%)
✔ 16/16All 16 transformations verified equiv ✔ tmpi78y003xAddMop.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpoz076e47.synth.mlir ✔ EQUIV
AddMulSgn_16 2927 57 125 861 16145 5120 3804
(+30.0%)
44
(-22.8%)
156
(+24.8%)
673
(-21.8%)
19732
(+22.2%)
4088
(-20.2%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmpt836do0aAddMulSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpyia2q1y1.synth.mlir ⏱ TIMEOUT
AddMulSgn_48 23485 81 955 1203 126017 7656 34900
(+48.6%)
58
(-28.4%)
1417
(+48.4%)
909
(-24.4%)
180592
(+43.3%)
5554
(-27.5%)
⏱ 15/20Timeout (15/20 equiv) ✔ tmp6ip6q_kiAddMulSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ⏱ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ⏱ 0_5_cse.mlir -> 0_6_canonicalize.mlir ⏱ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpjy00nxat.synth.mlir ⏱ TIMEOUT
AddMulUns_16 2616 57 114 828 14464 5475 2712
(+3.7%)
40
(-29.8%)
117
(+2.6%)
629
(-24.0%)
13811
(-4.5%)
3807
(-30.5%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmp27oy3luvAddMulUns.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpulf5rlpn.synth.mlir ⏱ TIMEOUT
AddMulUns_48 22057 81 908 1212 118831 7605 24427
(+10.7%)
55
(-32.1%)
1007
(+10.9%)
848
(-30.0%)
123992
(+4.3%)
4852
(-36.2%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmpko46q1weAddMulUns.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpho1a0_6v.synth.mlir ⏱ TIMEOUT
AddThreeSgn_16 285 19 13 297 1476 1914 280
(-1.8%)
15
(-21.1%)
13
(+0.0%)
283
(-4.7%)
1501
(+1.7%)
1605
(-16.1%)
✔ 16/16All 16 transformations verified equiv ✔ tmp4y4gy9_8AddThreeSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpbk411_9a.synth.mlir ✔ EQUIV
AddThreeSgn_48 890 25 42 416 4509 2583 1225
(+37.6%)
18
(-28.0%)
63
(+50.0%)
327
(-21.4%)
6875
(+52.5%)
1839
(-28.8%)
✔ 16/16All 16 transformations verified equiv ✔ tmpgy9kk6usAddThreeSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpzh7vkkje.synth.mlir ✔ EQUIV
AddThree_16 281 19 13 291 1436 1914 277
(-1.4%)
15
(-21.1%)
13
(+0.0%)
283
(-2.7%)
1506
(+4.9%)
1688
(-11.8%)
✔ 15/15All 15 transformations verified equiv ✔ tmp7ba12v_vAddThree.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmpir8u_aow.synth.mlir ✔ EQUIV
AddThree_48 886 25 42 410 4487 2583 1222
(+37.9%)
18
(-28.0%)
65
(+54.8%)
316
(-22.9%)
6956
(+55.0%)
1928
(-25.4%)
✔ 15/15All 15 transformations verified equiv ✔ tmp_cfsrdivAddThree.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmpbfpvqweh.synth.mlir ✔ EQUIV
AlphaBlend_16 5164 56 219 891 28156 4987 4428
(-14.3%)
44
(-21.4%)
199
(-9.1%)
742
(-16.7%)
23419
(-16.8%)
4308
(-13.6%)
⏱ 14/21Timeout (14/21 equiv) ⏱ tmp9bijmdaiAlphaBlend.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ⏱ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ⏱ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpijadc438.synth.mlir ⏱ TIMEOUT
AlphaBlend_48 43642 76 1767 1250 234855 7287 39362
(-9.8%)
58
(-23.7%)
1702
(-3.7%)
968
(-22.6%)
192528
(-18.0%)
5495
(-24.6%)
⏱ 12/21Timeout (12/21 equiv) ⏱ tmpebs_ph50AlphaBlend.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ⏱ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ⏱ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ⏱ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ⏱ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpl_ssi67j.synth.mlir ⏱ TIMEOUT
CarrySaveCompare_16 2631 52 112 829 14544 4923 2317
(-11.9%)
42
(-19.2%)
108
(-3.6%)
679
(-18.1%)
12579
(-13.5%)
3984
(-19.1%)
⏱ 18/19Timeout (18/19 equiv) ✔ tmp6a4k2zjiCarrySaveCompare.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmp48at20dl.synth.mlir ⏱ TIMEOUT
CarrySaveCompare_48 22644 79 898 1236 123064 7271 20923
(-7.6%)
58
(-26.6%)
941
(+4.8%)
922
(-25.4%)
100072
(-18.7%)
5483
(-24.6%)
⏱ 17/21Timeout (17/21 equiv) ✔ tmpk6zjajqqCarrySaveCompare.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ⏱ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpoo_60b4g.synth.mlir ⏱ TIMEOUT
CarrySaveSelect_16 2342 45 107 685 12644 3879 1947
(-16.9%)
38
(-15.6%)
98
(-8.4%)
588
(-14.2%)
10686
(-15.5%)
3249
(-16.2%)
⏱ 19/20Timeout (19/20 equiv) ✔ tmp8qek2jesCarrySaveSelect.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_datapath-reduce-delay.mlir ⏱ 0_1_datapath-reduce-delay.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmplpo66kzb.synth.mlir ⏱ TIMEOUT
CarrySaveSelect_48 21357 71 899 1076 114710 6229 16161
(-24.3%)
52
(-26.8%)
728
(-19.0%)
818
(-24.0%)
74323
(-35.2%)
4505
(-27.7%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmpe4k68ap6CarrySaveSelect.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_datapath-reduce-delay.mlir ⏱ 0_1_datapath-reduce-delay.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmptmle7mvu.synth.mlir ⏱ TIMEOUT
DotProductSgn_16 5682 50 234 739 31038 4336 4064
(-28.5%)
43
(-14.0%)
183
(-21.8%)
707
(-4.3%)
23135
(-25.5%)
3814
(-12.0%)
⏱ 17/20Timeout (17/20 equiv) ✔ tmp84kioefcDotProductSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpkzxor2zc.synth.mlir ⏱ TIMEOUT
DotProductSgn_48 47103 69 1849 1048 252459 6371 38375
(-18.5%)
58
(-15.9%)
1650
(-10.8%)
864
(-17.6%)
188522
(-25.3%)
5294
(-16.9%)
⏱ 16/21Timeout (16/21 equiv) ✔ tmp7hggja1rDotProductSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ⏱ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpizdakmyo.synth.mlir ⏱ TIMEOUT
DotProduct_16 4948 50 206 797 26915 4250 4063
(-17.9%)
43
(-14.0%)
183
(-11.2%)
669
(-16.1%)
23117
(-14.1%)
3731
(-12.2%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmpjzy7fal_DotProduct.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpd3v3_ol9.synth.mlir ⏱ TIMEOUT
DotProduct_48 43156 68 1728 1023 232015 6011 38359
(-11.1%)
58
(-14.7%)
1664
(-3.7%)
887
(-13.3%)
187438
(-19.2%)
5173
(-13.9%)
⏱ 17/21Timeout (17/21 equiv) ✔ tmp0b639ot9DotProduct.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ⏱ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp0hxygejh.synth.mlir ⏱ TIMEOUT
FmaSgn_16 2777 42 117 665 15250 3606 2136
(-23.1%)
35
(-16.7%)
100
(-14.5%)
583
(-12.3%)
12000
(-21.3%)
3239
(-10.2%)
⏱ 17/19Timeout (17/19 equiv) ✔ tmp3i4wd9wwFmaSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpcundb8_f.synth.mlir ⏱ TIMEOUT
FmaSgn_48 23188 60 931 937 124952 5608 20080
(-13.4%)
50
(-16.7%)
890
(-4.4%)
778
(-17.0%)
99412
(-20.4%)
4467
(-20.3%)
⏱ 17/21Timeout (17/21 equiv) ✔ tmpe4wx8c8jFmaSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpfgnlyitq.synth.mlir ⏱ TIMEOUT
FmaShareSgn_16 3306 57 146 867 17755 5174 2815
(-14.9%)
39
(-31.6%)
131
(-10.3%)
598
(-31.0%)
15698
(-11.6%)
3535
(-31.7%)
⏱ 19/21Timeout (19/21 equiv) ✔ tmpr7d_kew1FmaShareSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_datapath-reduce-delay.mlir ⏱ 0_2_datapath-reduce-delay.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpf2erevcn.synth.mlir ⏱ TIMEOUT
FmaShareSgn_48 24831 81 1025 1271 132302 7022 22937
(-7.6%)
54
(-33.3%)
1036
(+1.1%)
839
(-34.0%)
114677
(-13.3%)
4893
(-30.3%)
⏱ 18/22Timeout (18/22 equiv) ✔ tmpk8xjx4ctFmaShareSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_datapath-reduce-delay.mlir ⏱ 0_2_datapath-reduce-delay.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ⏱ 0_9_synth-lower-variadic.mlir -> 0_10_convert-comb-to-synth.mlir ✔ 0_10_convert-comb-to-synth.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-lower-word-to-bits.mlir ✔ 0_13_synth-lower-word-to-bits.mlir -> 0_14_cse.mlir ✔ 0_14_cse.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> 0_17_canonicalize.mlir ⏱ 0_17_canonicalize.mlir -> 0_18_synth-maximum-and-cover.mlir ✔ 0_18_synth-maximum-and-cover.mlir -> 0_19_synth-lower-variadic.mlir ✔ 0_19_synth-lower-variadic.mlir -> 0_20_synth-structural-hash.mlir ✔ 0_20_synth-structural-hash.mlir -> tmptq1n8zkq.synth.mlir ⏱ TIMEOUT
FmaShare_16 2771 48 125 760 15032 4509 2559
(-7.7%)
39
(-18.8%)
121
(-3.2%)
610
(-19.7%)
14201
(-5.5%)
3466
(-23.1%)
⏱ 20/21Timeout (20/21 equiv) ✔ tmpi0bs7m8gFmaShare.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_datapath-reduce-delay.mlir ⏱ 0_2_datapath-reduce-delay.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpwinfomxm.synth.mlir ⏱ TIMEOUT
FmaShare_48 22712 68 943 1126 121933 6156 21782
(-4.1%)
54
(-20.6%)
990
(+5.0%)
826
(-26.6%)
107342
(-12.0%)
4796
(-22.1%)
⏱ 18/22Timeout (18/22 equiv) ✔ tmpmbk9xfpzFmaShare.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_datapath-reduce-delay.mlir ⏱ 0_2_datapath-reduce-delay.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ⏱ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ⏱ 0_9_synth-lower-variadic.mlir -> 0_10_convert-comb-to-synth.mlir ✔ 0_10_convert-comb-to-synth.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-lower-word-to-bits.mlir ✔ 0_13_synth-lower-word-to-bits.mlir -> 0_14_cse.mlir ✔ 0_14_cse.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> 0_17_canonicalize.mlir ⏱ 0_17_canonicalize.mlir -> 0_18_synth-maximum-and-cover.mlir ✔ 0_18_synth-maximum-and-cover.mlir -> 0_19_synth-lower-variadic.mlir ✔ 0_19_synth-lower-variadic.mlir -> 0_20_synth-structural-hash.mlir ✔ 0_20_synth-structural-hash.mlir -> tmpptnyasn_.synth.mlir ⏱ TIMEOUT
Fma_16 2498 42 107 653 13758 3654 2135
(-14.5%)
37
(-11.9%)
99
(-7.5%)
543
(-16.8%)
11917
(-13.4%)
3284
(-10.1%)
⏱ 18/19Timeout (18/19 equiv) ✔ tmp9xfzrxapFma.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpxr64ywwj.synth.mlir ⏱ TIMEOUT
Fma_48 21659 60 880 916 116961 5933 20085
(-7.3%)
50
(-16.7%)
895
(+1.7%)
788
(-14.0%)
99129
(-15.2%)
4578
(-22.8%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmpj6nsnvfjFma.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp6tusckd7.synth.mlir ⏱ TIMEOUT
FmaaSgn_16 4176 46 176 703 22502 3786 3100
(-25.8%)
39
(-15.2%)
151
(-14.2%)
568
(-19.2%)
17407
(-22.6%)
3313
(-12.5%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmp0f4atgtuFmaaSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmp5ph1kid2.synth.mlir ⏱ TIMEOUT
FmaaSgn_48 27944 63 1124 937 148733 5827 27336
(-2.2%)
52
(-17.5%)
1218
(+8.4%)
814
(-13.1%)
138413
(-6.9%)
4677
(-19.7%)
⏱ 17/21Timeout (17/21 equiv) ✔ tmp87q6at8rFmaaSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp8opcj7hd.synth.mlir ⏱ TIMEOUT
Fmaa_16 3489 44 157 691 19047 3815 3031
(-13.1%)
38
(-13.6%)
147
(-6.4%)
614
(-11.1%)
16672
(-12.5%)
3333
(-12.6%)
⏱ 19/20Timeout (19/20 equiv) ✔ tmpfmi3z3xzFmaa.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpgvt8bcms.synth.mlir ⏱ TIMEOUT
Fmaa_48 25641 61 1088 971 138449 5521 26591
(+3.7%)
52
(-14.8%)
1172
(+7.7%)
795
(-18.1%)
133808
(-3.4%)
4786
(-13.3%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmp2dd7ce39Fmaa.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpe4qjn3cx.synth.mlir ⏱ TIMEOUT
MulAddSgn_16 3104 42 127 639 16854 3602 2243
(-27.7%)
37
(-11.9%)
104
(-18.1%)
580
(-9.2%)
12511
(-25.8%)
3271
(-9.2%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmphpbqt2xbMulAddSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpef98s25v.synth.mlir ⏱ TIMEOUT
MulAddSgn_48 24949 60 984 947 133564 5602 20427
(-18.1%)
50
(-16.7%)
898
(-8.7%)
768
(-18.9%)
101785
(-23.8%)
4737
(-15.4%)
⏱ 17/21Timeout (17/21 equiv) ✔ tmprdrfp6x1MulAddSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpui43cj91.synth.mlir ⏱ TIMEOUT
MulAddUns_16 2566 42 109 624 14060 3634 2242
(-12.6%)
37
(-11.9%)
103
(-5.5%)
537
(-13.9%)
12570
(-10.6%)
3175
(-12.6%)
⏱ 19/20Timeout (19/20 equiv) ✔ tmp5sh4oneyMulAddUns.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpnw7m9_fp.synth.mlir ⏱ TIMEOUT
MulAddUns_48 21938 60 885 913 118299 5744 20323
(-7.4%)
50
(-16.7%)
896
(+1.2%)
788
(-13.7%)
100298
(-15.2%)
4470
(-22.2%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmpg6afhfkfMulAddUns.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp6wlfuede.synth.mlir ⏱ TIMEOUT
MulThreeSgn_16 2165 66 96 998 11845 5506 1973
(-8.9%)
50
(-24.2%)
92
(-4.2%)
786
(-21.2%)
10777
(-9.0%)
4376
(-20.5%)
⏱ 20/21Timeout (20/21 equiv) ✔ tmpkcs_psy8MulThreeSgn.mlir -> 0_0_synth-lower-variadic.mlir ✔ 0_0_synth-lower-variadic.mlir -> 0_1_convert-comb-to-datapath.mlir ✔ 0_1_convert-comb-to-datapath.mlir -> 0_2_canonicalize.mlir ⏱ 0_2_canonicalize.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmphi_l9d_q.synth.mlir ⏱ TIMEOUT
MulThreeSgn_48 20754 101 859 1562 112672 8974 18923
(-8.8%)
80
(-20.8%)
802
(-6.6%)
1206
(-22.8%)
93178
(-17.3%)
6645
(-26.0%)
⏱ 18/22Timeout (18/22 equiv) ✔ tmpkm11n09tMulThreeSgn.mlir -> 0_0_synth-lower-variadic.mlir ✔ 0_0_synth-lower-variadic.mlir -> 0_1_convert-comb-to-datapath.mlir ✔ 0_1_convert-comb-to-datapath.mlir -> 0_2_canonicalize.mlir ⏱ 0_2_canonicalize.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ⏱ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ⏱ 0_9_synth-lower-variadic.mlir -> 0_10_convert-comb-to-synth.mlir ✔ 0_10_convert-comb-to-synth.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-lower-word-to-bits.mlir ✔ 0_13_synth-lower-word-to-bits.mlir -> 0_14_cse.mlir ✔ 0_14_cse.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> 0_17_canonicalize.mlir ⏱ 0_17_canonicalize.mlir -> 0_18_synth-maximum-and-cover.mlir ✔ 0_18_synth-maximum-and-cover.mlir -> 0_19_synth-lower-variadic.mlir ✔ 0_19_synth-lower-variadic.mlir -> 0_20_synth-structural-hash.mlir ✔ 0_20_synth-structural-hash.mlir -> tmpl5l1jgbe.synth.mlir ⏱ TIMEOUT
MulThree_16 2159 66 96 977 11790 5484 1973
(-8.6%)
50
(-24.2%)
92
(-4.2%)
786
(-19.5%)
10777
(-8.6%)
4376
(-20.2%)
⏱ 20/21Timeout (20/21 equiv) ✔ tmpmn_xmiw4MulThree.mlir -> 0_0_synth-lower-variadic.mlir ✔ 0_0_synth-lower-variadic.mlir -> 0_1_convert-comb-to-datapath.mlir ✔ 0_1_convert-comb-to-datapath.mlir -> 0_2_canonicalize.mlir ⏱ 0_2_canonicalize.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp3t9cjscu.synth.mlir ⏱ TIMEOUT
MulThree_48 20748 101 859 1586 112713 8982 18923
(-8.8%)
80
(-20.8%)
802
(-6.6%)
1206
(-24.0%)
93178
(-17.3%)
6645
(-26.0%)
⏱ 18/22Timeout (18/22 equiv) ✔ tmp1m8udw9wMulThree.mlir -> 0_0_synth-lower-variadic.mlir ✔ 0_0_synth-lower-variadic.mlir -> 0_1_convert-comb-to-datapath.mlir ✔ 0_1_convert-comb-to-datapath.mlir -> 0_2_canonicalize.mlir ⏱ 0_2_canonicalize.mlir -> 0_3_convert-datapath-to-comb.mlir ✔ 0_3_convert-datapath-to-comb.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ⏱ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ⏱ 0_9_synth-lower-variadic.mlir -> 0_10_convert-comb-to-synth.mlir ✔ 0_10_convert-comb-to-synth.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-lower-word-to-bits.mlir ✔ 0_13_synth-lower-word-to-bits.mlir -> 0_14_cse.mlir ✔ 0_14_cse.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> 0_17_canonicalize.mlir ⏱ 0_17_canonicalize.mlir -> 0_18_synth-maximum-and-cover.mlir ✔ 0_18_synth-maximum-and-cover.mlir -> 0_19_synth-lower-variadic.mlir ✔ 0_19_synth-lower-variadic.mlir -> 0_20_synth-structural-hash.mlir ✔ 0_20_synth-structural-hash.mlir -> tmp8x2r_b50.synth.mlir ⏱ TIMEOUT
SqrSgn_16 2365 42 97 650 12651 3960 1785
(-24.5%)
35
(-16.7%)
76
(-21.6%)
547
(-15.8%)
9348
(-26.1%)
3483
(-12.0%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmpgsve3lrzSqrSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ⏱ 0_7_canonicalize.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmp96j521qe.synth.mlir ⏱ TIMEOUT
SqrSgn_48 20811 60 804 947 112756 5798 19454
(-6.5%)
50
(-16.7%)
854
(+6.2%)
774
(-18.3%)
94777
(-15.9%)
4535
(-21.8%)
⏱ 17/21Timeout (17/21 equiv) ✔ tmp7y_p5ppaSqrSgn.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpkv9e4w0v.synth.mlir ⏱ TIMEOUT
SqrUns_16 2017 42 83 633 10819 3549 1045
(-48.2%)
29
(-31.0%)
52
(-37.3%)
475
(-25.0%)
5585
(-48.4%)
2562
(-27.8%)
⏱ 15/16Timeout (15/16 equiv) ✔ tmpcjfu2q3qSqrUns.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmp7x26bpft.synth.mlir ⏱ TIMEOUT
SqrUns_48 19284 60 750 944 104693 6021 10167
(-47.3%)
44
(-26.7%)
478
(-36.3%)
685
(-27.4%)
56217
(-46.3%)
4112
(-31.7%)
⏱ 14/16Timeout (14/16 equiv) ✔ tmpccue_3jkSqrUns.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ⏱ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmppbwn34xd.synth.mlir ⏱ TIMEOUT
📁 ELAU
behavioural_AbsVal_16 111 10 5 136 451 1207 115
(+3.6%)
8
(-20.0%)
5
(+0.0%)
132
(-2.9%)
483
(+7.1%)
990
(-18.0%)
✔ 17/17All 17 transformations verified equiv ✔ tmpq6_i1a6eAbsVal.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-word-to-bits.mlir ✔ 0_8_synth-lower-word-to-bits.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-maximum-and-cover.mlir ✔ 0_13_synth-maximum-and-cover.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> tmpvcsk6uv2.synth.mlir ✔ EQUIV
behavioural_AbsVal_48 349 13 18 227 1497 1523 483
(+38.4%)
10
(-23.1%)
27
(+50.0%)
190
(-16.3%)
2152
(+43.8%)
1601
(+5.1%)
✔ 17/17All 17 transformations verified equiv ✔ tmp6w5ul5a0AbsVal.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-word-to-bits.mlir ✔ 0_8_synth-lower-word-to-bits.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-maximum-and-cover.mlir ✔ 0_13_synth-maximum-and-cover.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> tmp0f316dry.synth.mlir ✔ EQUIV
behavioural_AddC_16 149 22 8 296 734 1615 218
(+46.3%)
13
(-40.9%)
12
(+50.0%)
236
(-20.3%)
1096
(+49.3%)
1403
(-13.1%)
✔ 15/15All 15 transformations verified equiv ✔ tmpkn8jm3tkAddC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmpiffragje.synth.mlir ✔ EQUIV
behavioural_AddC_48 479 32 27 460 2416 2758 1036
(+116.3%)
17
(-46.9%)
62
(+129.6%)
281
(-38.9%)
5291
(+119.0%)
1548
(-43.9%)
✔ 15/15All 15 transformations verified equiv ✔ tmpi041ccxbAddC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmpvny9i32c.synth.mlir ✔ EQUIV
behavioural_AddCfast_16 149 22 8 296 734 1615 218
(+46.3%)
13
(-40.9%)
12
(+50.0%)
236
(-20.3%)
1096
(+49.3%)
1403
(-13.1%)
✔ 15/15All 15 transformations verified equiv ✔ tmpc8hef8rcAddCfast.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmpxn2ahcn3.synth.mlir ✔ EQUIV
behavioural_AddCfast_48 479 32 27 460 2416 2758 1036
(+116.3%)
17
(-46.9%)
62
(+129.6%)
281
(-38.9%)
5291
(+119.0%)
1548
(-43.9%)
✔ 15/15All 15 transformations verified equiv ✔ tmpco0htk5rAddCfast.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_convert-comb-to-synth.mlir ✔ 0_6_convert-comb-to-synth.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmp8s30t4du.synth.mlir ✔ EQUIV
behavioural_AddCsv_16 156 4 5 68 687 322 156
(+0.0%)
4
(+0.0%)
5
(+0.0%)
68
(+0.0%)
705
(+2.6%)
371
(+15.2%)
✔ 11/11All 11 transformations verified equiv ✔ tmpub5i5ghcAddCsv.test.tmp.mlir -> 0_0_synth-lower-variadic.mlir ✔ 0_0_synth-lower-variadic.mlir -> 0_1_convert-comb-to-synth.mlir ✔ 0_1_convert-comb-to-synth.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-maximum-and-cover.mlir ✔ 0_7_synth-maximum-and-cover.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> tmp98itixgx.synth.mlir ✔ EQUIV
behavioural_AddCsv_48 476 4 17 68 2088 322 476
(+0.0%)
4
(+0.0%)
17
(+0.0%)
68
(+0.0%)
2147
(+2.8%)
371
(+15.2%)
✔ 11/11All 11 transformations verified equiv ✔ tmptdqvpnlrAddCsv.test.tmp.mlir -> 0_0_synth-lower-variadic.mlir ✔ 0_0_synth-lower-variadic.mlir -> 0_1_convert-comb-to-synth.mlir ✔ 0_1_convert-comb-to-synth.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-maximum-and-cover.mlir ✔ 0_7_synth-maximum-and-cover.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> tmprg7g9xcj.synth.mlir ✔ EQUIV
behavioural_AddMod2Nm1_16 251 26 13 382 1251 2179 280
(+11.6%)
20
(-23.1%)
14
(+7.7%)
334
(-12.6%)
1345
(+7.5%)
2283
(+4.8%)
✔ 14/14All 14 transformations verified equiv ✔ tmphxx6tu9qAddMod2Nm1.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-word-to-bits.mlir ✔ 0_6_synth-lower-word-to-bits.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> 0_10_synth-maximum-and-cover.mlir ✔ 0_10_synth-maximum-and-cover.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> tmp88k7o50i.synth.mlir ✔ EQUIV
behavioural_AddMod2Nm1_48 888 44 47 642 4303 4190 1504
(+69.4%)
26
(-40.9%)
81
(+72.3%)
426
(-33.6%)
7556
(+75.6%)
2529
(-39.6%)
✔ 15/15All 15 transformations verified equiv ✔ tmpr4pdwt50AddMod2Nm1.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmp6tqd9gwi.synth.mlir ✔ EQUIV
behavioural_AddMod2Nm1s0_16 255 26 14 383 1277 2302 316
(+23.9%)
21
(-19.2%)
15
(+7.1%)
359
(-6.3%)
1466
(+14.8%)
2240
(-2.7%)
✔ 15/15All 15 transformations verified equiv ✔ tmprbz43ruhAddMod2Nm1s0.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmps3m3rd0x.synth.mlir ✔ EQUIV
behavioural_AddMod2Nm1s0_48 852 43 45 621 4167 4186 1567
(+83.9%)
26
(-39.5%)
83
(+84.4%)
449
(-27.7%)
7641
(+83.4%)
2766
(-33.9%)
✔ 15/15All 15 transformations verified equiv ✔ tmpfj1qcsmlAddMod2Nm1s0.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmp5a11ari6.synth.mlir ✔ EQUIV
behavioural_AddMop_16 387 23 15 333 2023 2472 369
(-4.7%)
19
(-17.4%)
17
(+13.3%)
329
(-1.2%)
2107
(+4.2%)
1861
(-24.7%)
✔ 16/16All 16 transformations verified equiv ✔ tmpnh8_wgzbAddMop.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpf4v9uc27.synth.mlir ✔ EQUIV
behavioural_AddMop_48 1245 29 50 440 6556 3217 1545
(+24.1%)
22
(-24.1%)
78
(+56.0%)
373
(-15.2%)
8726
(+33.1%)
2188
(-32.0%)
✔ 16/16All 16 transformations verified equiv ✔ tmp5x4ealflAddMop.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmp4_m863dj.synth.mlir ✔ EQUIV
behavioural_AddMulUns_16 2616 57 114 828 14464 5475 2712
(+3.7%)
40
(-29.8%)
117
(+2.6%)
629
(-24.0%)
13811
(-4.5%)
3807
(-30.5%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmpqgm9g1bfAddMulUns.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpt_h_7cre.synth.mlir ⏱ TIMEOUT
behavioural_AddMulUns_48 22057 81 908 1212 118831 7605 24427
(+10.7%)
55
(-32.1%)
1007
(+10.9%)
848
(-30.0%)
123992
(+4.3%)
4852
(-36.2%)
⏱ 18/20Timeout (18/20 equiv) ✔ tmpbtptqw74AddMulUns.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ⏱ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpskxcxknd.synth.mlir ⏱ TIMEOUT
behavioural_AddSubC_16 373 26 21 331 1862 2422 487
(+30.6%)
15
(-42.3%)
29
(+38.1%)
282
(-14.8%)
2531
(+35.9%)
1592
(-34.3%)
✔ 21/21All 21 transformations verified equiv ✔ tmpha7t55_wAddSubC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpdwat95e8.synth.mlir ✔ EQUIV
behavioural_AddSubC_48 1161 36 69 480 5766 3698 2219
(+91.1%)
19
(-47.2%)
139
(+101.4%)
356
(-25.8%)
11704
(+103.0%)
1786
(-51.7%)
✔ 21/21All 21 transformations verified equiv ✔ tmpez1f2rscAddSubC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpb72oio1i.synth.mlir ✔ EQUIV
behavioural_AddSubV_16 419 29 23 443 2057 2960 515
(+22.9%)
25
(-13.8%)
28
(+21.7%)
317
(-28.4%)
2515
(+22.3%)
2041
(-31.0%)
✔ 21/21All 21 transformations verified equiv ✔ tmpoajmyc92AddSubV.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp_ybv5_mg.synth.mlir ✔ EQUIV
behavioural_AddSubV_48 1206 26 67 404 5872 2422 2176
(+80.4%)
19
(-26.9%)
135
(+101.5%)
370
(-8.4%)
11450
(+95.0%)
1786
(-26.3%)
✔ 20/20All 20 transformations verified equiv ✔ tmprki2leznAddSubV.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpd_vhm7qa.synth.mlir ✔ EQUIV
behavioural_AddSub_16 253 24 13 395 1322 2297 405
(+60.1%)
15
(-37.5%)
23
(+76.9%)
285
(-27.8%)
2081
(+57.4%)
1586
(-31.0%)
✔ 19/19All 19 transformations verified equiv ✔ tmpbu5qz07bAddSub.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpo07wym0n.synth.mlir ✔ EQUIV
behavioural_AddSub_48 852 33 48 571 4403 3565 2042
(+139.7%)
18
(-45.5%)
124
(+158.3%)
381
(-33.3%)
10794
(+145.2%)
1605
(-55.0%)
✔ 19/19All 19 transformations verified equiv ✔ tmptjr0_87rAddSub.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpd8mtkvja.synth.mlir ✔ EQUIV
behavioural_AddV_16 188 27 9 329 914 2090 244
(+29.8%)
23
(-14.8%)
11
(+22.2%)
217
(-34.0%)
1092
(+19.5%)
1708
(-18.3%)
✔ 16/16All 16 transformations verified equiv ✔ tmpr0622ozdAddV.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpzjmf2gsq.synth.mlir ✔ EQUIV
behavioural_AddV_48 477 24 25 324 2497 2213 1016
(+113.0%)
17
(-29.2%)
60
(+140.0%)
297
(-8.3%)
5171
(+107.1%)
1500
(-32.2%)
✔ 16/16All 16 transformations verified equiv ✔ tmpvd29uepiAddV.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmplk7ae5kg.synth.mlir ✔ EQUIV
behavioural_Add_16 138 16 7 239 719 1614 159
(+15.2%)
12
(-25.0%)
8
(+14.3%)
186
(-22.2%)
782
(+8.8%)
1564
(-3.1%)
✔ 13/13All 13 transformations verified equiv ✔ tmprkrviigaAdd.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmpyta9pwyc.synth.mlir ✔ EQUIV
behavioural_Add_48 469 22 25 322 2480 2488 889
(+89.6%)
14
(-36.4%)
49
(+96.0%)
237
(-26.4%)
4581
(+84.7%)
1356
(-45.5%)
✔ 13/13All 13 transformations verified equiv ✔ tmp2gi2_qr_Add.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmp4ukpo1se.synth.mlir ✔ EQUIV
behavioural_AllOneDet_16 15 4 0 83 50 390 15
(+0.0%)
4
(+0.0%)
0 83
(+0.0%)
50
(+0.0%)
390
(+0.0%)
✔ 8/8All 8 transformations verified equiv ✔ tmp7gyl11ibAllOneDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_synth-maximum-and-cover.mlir ✔ 0_5_synth-maximum-and-cover.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> tmphj0pbcsh.synth.mlir ✔ EQUIV
behavioural_AllOneDet_48 47 6 1 114 157 558 47
(+0.0%)
6
(+0.0%)
1
(+0.0%)
114
(+0.0%)
157
(+0.0%)
558
(+0.0%)
✔ 8/8All 8 transformations verified equiv ✔ tmpw260w5zuAllOneDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_synth-maximum-and-cover.mlir ✔ 0_5_synth-maximum-and-cover.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> tmp79yvfumm.synth.mlir ✔ EQUIV
behavioural_AllZeroDet_16 15 4 0 87 47 500 15
(+0.0%)
4
(+0.0%)
0 87
(+0.0%)
47
(+0.0%)
500
(+0.0%)
✔ 6/6All 6 transformations verified equiv ✔ tmpf2i393b0AllZeroDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_synth-lower-variadic.mlir ✔ 0_2_synth-lower-variadic.mlir -> 0_3_synth-maximum-and-cover.mlir ✔ 0_3_synth-maximum-and-cover.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> tmp383oyqnk.synth.mlir ✔ EQUIV
behavioural_AllZeroDet_48 47 6 1 137 141 783 47
(+0.0%)
6
(+0.0%)
1
(+0.0%)
137
(+0.0%)
141
(+0.0%)
783
(+0.0%)
✔ 6/6All 6 transformations verified equiv ✔ tmpsctlj863AllZeroDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_synth-lower-variadic.mlir ✔ 0_2_synth-lower-variadic.mlir -> 0_3_synth-maximum-and-cover.mlir ✔ 0_3_synth-maximum-and-cover.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> tmp2eqlr217.synth.mlir ✔ EQUIV
behavioural_Bin2Gray_16 45 2 2 36 230 149 45
(+0.0%)
2
(+0.0%)
2
(+0.0%)
36
(+0.0%)
230
(+0.0%)
149
(+0.0%)
✔ 6/6All 6 transformations verified equiv ✔ tmpqx_5cizrBin2Gray.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_synth-lower-word-to-bits.mlir ✔ 0_1_synth-lower-word-to-bits.mlir -> 0_2_cse.mlir ✔ 0_2_cse.mlir -> 0_3_synth-structural-hash.mlir ✔ 0_3_synth-structural-hash.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> tmp_9wru8s8.synth.mlir ✔ EQUIV
behavioural_Bin2Gray_48 141 2 7 36 710 149 141
(+0.0%)
2
(+0.0%)
7
(+0.0%)
36
(+0.0%)
710
(+0.0%)
149
(+0.0%)
✔ 6/6All 6 transformations verified equiv ✔ tmpo6xicp4uBin2Gray.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_synth-lower-word-to-bits.mlir ✔ 0_1_synth-lower-word-to-bits.mlir -> 0_2_cse.mlir ✔ 0_2_cse.mlir -> 0_3_synth-structural-hash.mlir ✔ 0_3_synth-structural-hash.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> tmprbt7wuvk.synth.mlir ✔ EQUIV
behavioural_CmpEQGE_16 110 11 5 169 550 1031 110
(+0.0%)
10
(-9.1%)
5
(+0.0%)
177
(+4.7%)
551
(+0.2%)
1267
(+22.9%)
✔ 12/12All 12 transformations verified equiv ✔ tmp6tlrrtv9CmpEQGE.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-word-to-bits.mlir ✔ 0_3_synth-lower-word-to-bits.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-maximum-and-cover.mlir ✔ 0_8_synth-maximum-and-cover.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> tmpzrv4958k.synth.mlir ✔ EQUIV
behavioural_CmpEQGE_48 334 15 16 217 1660 1410 336
(+0.6%)
13
(-13.3%)
16
(+0.0%)
211
(-2.8%)
1695
(+2.1%)
1250
(-11.3%)
✔ 11/11All 11 transformations verified equiv ✔ tmp8mtzlu7lCmpEQGE.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-maximum-and-cover.mlir ✔ 0_7_synth-maximum-and-cover.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> tmptbgwmiih.synth.mlir ✔ EQUIV
behavioural_CmpEQ_16 63 6 3 120 287 650 63
(+0.0%)
6
(+0.0%)
3
(+0.0%)
120
(+0.0%)
287
(+0.0%)
650
(+0.0%)
✔ 7/7All 7 transformations verified equiv ✔ tmp05tqy974CmpEQ.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_synth-lower-word-to-bits.mlir ✔ 0_1_synth-lower-word-to-bits.mlir -> 0_2_synth-lower-variadic.mlir ✔ 0_2_synth-lower-variadic.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_synth-maximum-and-cover.mlir ✔ 0_4_synth-maximum-and-cover.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> tmpicpzxzfe.synth.mlir ✔ EQUIV
behavioural_CmpEQ_48 191 8 9 151 862 933 191
(+0.0%)
8
(+0.0%)
9
(+0.0%)
151
(+0.0%)
862
(+0.0%)
933
(+0.0%)
✔ 7/7All 7 transformations verified equiv ✔ tmpakidvn4sCmpEQ.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_synth-lower-word-to-bits.mlir ✔ 0_1_synth-lower-word-to-bits.mlir -> 0_2_synth-lower-variadic.mlir ✔ 0_2_synth-lower-variadic.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_synth-maximum-and-cover.mlir ✔ 0_4_synth-maximum-and-cover.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> tmpmg9427_2.synth.mlir ✔ EQUIV
behavioural_CmpGE_16 110 11 5 169 546 1002 110
(+0.0%)
10
(-9.1%)
5
(+0.0%)
168
(-0.6%)
553
(+1.3%)
950
(-5.2%)
✔ 8/8All 8 transformations verified equiv ✔ tmp3qwlz074CmpGE.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-structural-hash.mlir ✔ 0_3_synth-structural-hash.mlir -> 0_4_synth-maximum-and-cover.mlir ✔ 0_4_synth-maximum-and-cover.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> tmp2c_t4r04.synth.mlir ✔ EQUIV
behavioural_CmpGE_48 334 15 16 226 1665 1370 334
(+0.0%)
13
(-13.3%)
16
(+0.0%)
240
(+6.2%)
1663
(-0.1%)
1306
(-4.7%)
✔ 7/7All 7 transformations verified equiv ✔ tmpcqtn60feCmpGE.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_synth-structural-hash.mlir ✔ 0_2_synth-structural-hash.mlir -> 0_3_synth-maximum-and-cover.mlir ✔ 0_3_synth-maximum-and-cover.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> tmp8zszve_g.synth.mlir ✔ EQUIV
behavioural_Cnt_16 131 28 4 402 712 2242 104
(-20.6%)
19
(-32.1%)
3
(-25.0%)
220
(-45.3%)
550
(-22.8%)
1291
(-42.4%)
✔ 14/14All 14 transformations verified equiv ✔ tmpm77c9810Cnt.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> tmpbziiyj9o.synth.mlir ✔ EQUIV
behavioural_Cnt_48 131 28 4 402 712 2242 104
(-20.6%)
19
(-32.1%)
3
(-25.0%)
220
(-45.3%)
550
(-22.8%)
1291
(-42.4%)
✔ 14/14All 14 transformations verified equiv ✔ tmprp0odez7Cnt.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> tmprnx0hlsa.synth.mlir ✔ EQUIV
behavioural_DecC_16 86 15 4 200 415 1352 170
(+97.7%)
11
(-26.7%)
9
(+125.0%)
204
(+2.0%)
869
(+109.4%)
928
(-31.4%)
✔ 17/17All 17 transformations verified equiv ✔ tmpovu8bb_9DecC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_synth-maximum-and-cover.mlir ✔ 0_13_synth-maximum-and-cover.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> tmpkooguv_h.synth.mlir ✔ EQUIV
behavioural_DecC_48 284 25 15 372 1374 2904 892
(+214.1%)
15
(-40.0%)
49
(+226.7%)
234
(-37.1%)
4675
(+240.2%)
1222
(-57.9%)
✔ 17/17All 17 transformations verified equiv ✔ tmp6g1dvatzDecC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_synth-maximum-and-cover.mlir ✔ 0_13_synth-maximum-and-cover.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> tmp3gvfpg30.synth.mlir ✔ EQUIV
behavioural_Dec_16 76 12 3 160 374 1199 111
(+46.1%)
10
(-16.7%)
4
(+33.3%)
158
(-1.2%)
443
(+18.4%)
1286
(+7.3%)
✔ 13/13All 13 transformations verified equiv ✔ tmpv7dgnfgjDec.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmpfrf1ylpa.synth.mlir ✔ EQUIV
behavioural_Dec_48 275 18 14 240 1302 2253 745
(+170.9%)
12
(-33.3%)
36
(+157.1%)
192
(-20.0%)
3317
(+154.8%)
1400
(-37.9%)
✔ 13/13All 13 transformations verified equiv ✔ tmpxhuqaq2eDec.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmptalgzu76.synth.mlir ✔ EQUIV
behavioural_Decode_16 28 3 2 43 202 229 28
(+0.0%)
3
(+0.0%)
2
(+0.0%)
43
(+0.0%)
202
(+0.0%)
229
(+0.0%)
✔ 11/11All 11 transformations verified equiv ✔ tmpzr3ps0l6Decode.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-word-to-bits.mlir ✔ 0_6_synth-lower-word-to-bits.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> tmpsof7apbn.synth.mlir ✔ EQUIV
behavioural_Decode_48 93 5 6 69 651 512 97
(+4.3%)
5
(+0.0%)
6
(+0.0%)
69
(+0.0%)
645
(-0.9%)
512
(+0.0%)
✔ 15/15All 15 transformations verified equiv ✔ tmpbov44ag2Decode.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmpda6t4vuf.synth.mlir ✔ EQUIV
behavioural_FullAdder_16 8 4 0 68 42 336 7
(-12.5%)
4
(+0.0%)
0 68
(+0.0%)
43
(+2.4%)
371
(+10.4%)
✔ 7/7All 7 transformations verified equiv ✔ tmpvqfne2k4FullAdder.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> tmpewc2jb0u.synth.mlir ✔ EQUIV
behavioural_FullAdder_48 8 4 0 68 42 336 7
(-12.5%)
4
(+0.0%)
0 68
(+0.0%)
43
(+2.4%)
371
(+10.4%)
✔ 7/7All 7 transformations verified equiv ✔ tmpddihrryiFullAdder.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> tmpjbr8epsw.synth.mlir ✔ EQUIV
behavioural_Gray2Bin_16 147 8 7 150 732 626 171
(+16.3%)
8
(+0.0%)
8
(+14.3%)
157
(+4.7%)
873
(+19.3%)
586
(-6.4%)
✔ 8/8All 8 transformations verified equiv ✔ tmp5rx8omt1Gray2Bin.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> tmpu4tmhk3p.synth.mlir ✔ EQUIV
behavioural_Gray2Bin_48 675 12 35 223 3475 992 957
(+41.8%)
12
(+0.0%)
46
(+31.4%)
244
(+9.4%)
4883
(+40.5%)
771
(-22.3%)
⏱ 7/8Timeout (7/8 equiv) ✔ tmpo7ohijjxGray2Bin.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ⏱ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> tmp6v9l4mgy.synth.mlir ✔ EQUIV
behavioural_IncC_16 73 9 4 132 377 827 76
(+4.1%)
7
(-22.2%)
4
(+0.0%)
151
(+14.4%)
401
(+6.4%)
731
(-11.6%)
✔ 11/11All 11 transformations verified equiv ✔ tmpba30pzeyIncC.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> 0_7_synth-maximum-and-cover.mlir ✔ 0_7_synth-maximum-and-cover.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> tmpt7tq985n.synth.mlir ✔ EQUIV
behavioural_IncC_48 228 12 13 184 1197 1227 349
(+53.1%)
8
(-33.3%)
19
(+46.2%)
166
(-9.8%)
1880
(+57.1%)
1377
(+12.2%)
✔ 11/11All 11 transformations verified equiv ✔ tmpfa5yyoy9IncC.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> 0_7_synth-maximum-and-cover.mlir ✔ 0_7_synth-maximum-and-cover.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> tmphbbvhhs3.synth.mlir ✔ EQUIV
behavioural_IncDecC_16 167 21 8 299 802 1611 293
(+75.4%)
13
(-38.1%)
16
(+100.0%)
211
(-29.4%)
1451
(+80.9%)
1474
(-8.5%)
✔ 21/21All 21 transformations verified equiv ✔ tmpth6c7tk9IncDecC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp63iu0vww.synth.mlir ✔ EQUIV
behavioural_IncDecC_48 529 31 27 450 2477 2915 1384
(+161.6%)
17
(-45.2%)
79
(+192.6%)
264
(-41.3%)
7040
(+184.2%)
1282
(-56.0%)
✔ 21/21All 21 transformations verified equiv ✔ tmpjwo4mdz8IncDecC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ✔ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpk0q21xxy.synth.mlir ✔ EQUIV
behavioural_IncDec_16 137 16 7 254 705 1678 225
(+64.2%)
12
(-25.0%)
11
(+57.1%)
166
(-34.6%)
988
(+40.1%)
1343
(-20.0%)
✔ 16/16All 16 transformations verified equiv ✔ tmpp94iamj6IncDec.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmp82284uhn.synth.mlir ✔ EQUIV
behavioural_IncDec_48 468 22 25 322 2372 2138 1227
(+162.2%)
14
(-36.4%)
65
(+160.0%)
216
(-32.9%)
5872
(+147.6%)
1364
(-36.2%)
✔ 16/16All 16 transformations verified equiv ✔ tmpy5yrk676IncDec.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpyi0bcask.synth.mlir ✔ EQUIV
behavioural_Inc_16 66 8 3 118 379 642 69
(+4.5%)
6
(-25.0%)
4
(+33.3%)
119
(+0.8%)
379
(+0.0%)
654
(+1.9%)
✔ 12/12All 12 transformations verified equiv ✔ tmpzdcb5lq8Inc.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_synth-structural-hash.mlir ✔ 0_7_synth-structural-hash.mlir -> 0_8_synth-maximum-and-cover.mlir ✔ 0_8_synth-maximum-and-cover.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> tmpl8x9u58s.synth.mlir ✔ EQUIV
behavioural_Inc_48 221 11 12 247 1195 979 341
(+54.3%)
8
(-27.3%)
18
(+50.0%)
154
(-37.7%)
1844
(+54.3%)
1052
(+7.5%)
✔ 12/12All 12 transformations verified equiv ✔ tmp1po20b51Inc.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_synth-structural-hash.mlir ✔ 0_7_synth-structural-hash.mlir -> 0_8_synth-maximum-and-cover.mlir ✔ 0_8_synth-maximum-and-cover.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> tmpveilc3hq.synth.mlir ✔ EQUIV
behavioural_LeadOneDet_16 68 17 4 192 415 1296 106
(+55.9%)
18
(+5.9%)
5
(+25.0%)
190
(-1.0%)
447
(+7.7%)
1223
(-5.6%)
✔ 14/14All 14 transformations verified equiv ✔ tmp6duvszgwLeadOneDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-word-to-bits.mlir ✔ 0_6_synth-lower-word-to-bits.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-maximum-and-cover.mlir ✔ 0_10_synth-maximum-and-cover.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> tmpjvxw4xi6.synth.mlir ✔ EQUIV
behavioural_LeadOneDet_48 225 51 15 565 1305 3899 336
(+49.3%)
16
(-68.6%)
17
(+13.3%)
249
(-55.9%)
1595
(+22.2%)
1480
(-62.0%)
✔ 16/16All 16 transformations verified equiv ✔ tmp7j4of4hjLeadOneDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_comb-balance-mux.mlir ✔ 0_3_comb-balance-mux.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpsja7o79q.synth.mlir ✔ EQUIV
behavioural_LeadSignDet_16 114 18 7 249 645 1164 144
(+26.3%)
19
(+5.6%)
7
(+0.0%)
252
(+1.2%)
643
(-0.3%)
1578
(+35.6%)
✔ 14/14All 14 transformations verified equiv ✔ tmp2p42_5q0LeadSignDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-word-to-bits.mlir ✔ 0_6_synth-lower-word-to-bits.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-maximum-and-cover.mlir ✔ 0_10_synth-maximum-and-cover.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> tmpbynphexk.synth.mlir ✔ EQUIV
behavioural_LeadSignDet_48 364 52 23 613 2008 2519 483
(+32.7%)
18
(-65.4%)
25
(+8.7%)
340
(-44.5%)
2187
(+8.9%)
1889
(-25.0%)
✔ 16/16All 16 transformations verified equiv ✔ tmpi0z4d_3qLeadSignDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_comb-balance-mux.mlir ✔ 0_3_comb-balance-mux.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpse8g8ded.synth.mlir ✔ EQUIV
behavioural_LeadZeroDet_16 68 17 4 194 412 1387 106
(+55.9%)
18
(+5.9%)
5
(+25.0%)
194
(+0.0%)
446
(+8.3%)
1077
(-22.4%)
✔ 14/14All 14 transformations verified equiv ✔ tmp67pot7efLeadZeroDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-word-to-bits.mlir ✔ 0_6_synth-lower-word-to-bits.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-maximum-and-cover.mlir ✔ 0_10_synth-maximum-and-cover.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> tmp5cpujolb.synth.mlir ✔ EQUIV
behavioural_LeadZeroDet_48 225 51 15 566 1314 3980 336
(+49.3%)
16
(-68.6%)
17
(+13.3%)
242
(-57.2%)
1532
(+16.6%)
2008
(-49.5%)
✔ 16/16All 16 transformations verified equiv ✔ tmplzsfml08LeadZeroDet.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_comb-balance-mux.mlir ✔ 0_3_comb-balance-mux.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmp77pltcww.synth.mlir ✔ EQUIV
behavioural_Log2_16 33 14 2 166 177 1173 68
(+106.1%)
15
(+7.1%)
2
(+0.0%)
166
(+0.0%)
183
(+3.4%)
874
(-25.5%)
✔ 10/10All 10 transformations verified equiv ✔ tmp_vyp75uiLog2.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_synth-structural-hash.mlir ✔ 0_4_synth-structural-hash.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-maximum-and-cover.mlir ✔ 0_6_synth-maximum-and-cover.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> tmpxczq7zbd.synth.mlir ✔ EQUIV
behavioural_Log2_48 124 46 8 514 633 3512 237
(+91.1%)
11
(-76.1%)
10
(+25.0%)
179
(-65.2%)
902
(+42.5%)
1191
(-66.1%)
✔ 12/12All 12 transformations verified equiv ✔ tmppm3py2_bLog2.test.tmp.mlir -> 0_0_comb-balance-mux.mlir ✔ 0_0_comb-balance-mux.mlir -> 0_1_convert-comb-to-synth.mlir ✔ 0_1_convert-comb-to-synth.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-word-to-bits.mlir ✔ 0_3_synth-lower-word-to-bits.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-maximum-and-cover.mlir ✔ 0_8_synth-maximum-and-cover.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> tmpha872uit.synth.mlir ✔ EQUIV
behavioural_MulAddSgn_16 1197 36 52 524 6584 2911 1053
(-12.0%)
32
(-11.1%)
50
(-3.8%)
479
(-8.6%)
5896
(-10.4%)
2570
(-11.7%)
⏱ 19/20Timeout (19/20 equiv) ✔ tmp672cwmogMulAddSgn.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpgwbs9g0o.synth.mlir ⏱ TIMEOUT
behavioural_MulAddSgn_48 10760 53 439 819 58483 4874 8526
(-20.8%)
46
(-13.2%)
381
(-13.2%)
698
(-14.8%)
40344
(-31.0%)
4083
(-16.2%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmp3_dbg53oMulAddSgn.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmprh_g0com.synth.mlir ⏱ TIMEOUT
behavioural_MulAddUns_16 1197 36 52 524 6584 2911 1053
(-12.0%)
32
(-11.1%)
50
(-3.8%)
479
(-8.6%)
5896
(-10.4%)
2570
(-11.7%)
⏱ 19/20Timeout (19/20 equiv) ✔ tmpduqqc741MulAddUns.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_cse.mlir ✔ 0_12_cse.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpevobofve.synth.mlir ⏱ TIMEOUT
behavioural_MulAddUns_48 10760 53 439 819 58483 4874 8526
(-20.8%)
46
(-13.2%)
381
(-13.2%)
698
(-14.8%)
40344
(-31.0%)
4083
(-16.2%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmp_5878qo8MulAddUns.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpomk0x0vy.synth.mlir ⏱ TIMEOUT
behavioural_MulSgn_16 3477 46 143 716 18990 4241 2021
(-41.9%)
35
(-23.9%)
95
(-33.6%)
553
(-22.8%)
11434
(-39.8%)
3153
(-25.7%)
⏱ 16/19Timeout (16/19 equiv) ✔ tmpaplc_o7cMulSgn.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ⏱ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmp34y7iha7.synth.mlir ⏱ TIMEOUT
behavioural_MulSgn_48 28584 64 1118 992 153248 5790 19609
(-31.4%)
50
(-21.9%)
870
(-22.2%)
762
(-23.2%)
96131
(-37.3%)
4401
(-24.0%)
⏱ 17/21Timeout (17/21 equiv) ✔ tmpdw_4r_rlMulSgn.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ⏱ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpymdhpix9.synth.mlir ⏱ TIMEOUT
behavioural_MulUns_16 2310 42 100 663 12588 3588 2020
(-12.6%)
37
(-11.9%)
94
(-6.0%)
522
(-21.3%)
11355
(-9.8%)
3268
(-8.9%)
⏱ 17/19Timeout (17/19 equiv) ✔ tmpkhl1mpwnMulUns.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ⏱ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpk18y5jtw.synth.mlir ⏱ TIMEOUT
behavioural_MulUns_48 21154 60 857 937 113884 5852 19638
(-7.2%)
50
(-16.7%)
875
(+2.1%)
776
(-17.2%)
95623
(-16.0%)
4436
(-24.2%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmp4ituz0t4MulUns.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmp4m5lib64.synth.mlir ⏱ TIMEOUT
behavioural_NegC_16 104 10 5 159 449 1158 117
(+12.5%)
8
(-20.0%)
6
(+20.0%)
140
(-11.9%)
501
(+11.6%)
990
(-14.5%)
✔ 17/17All 17 transformations verified equiv ✔ tmpq9gjn291NegC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-word-to-bits.mlir ✔ 0_8_synth-lower-word-to-bits.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-maximum-and-cover.mlir ✔ 0_13_synth-maximum-and-cover.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> tmpwkkyqs62.synth.mlir ✔ EQUIV
behavioural_NegC_48 342 13 18 227 1449 1787 485
(+41.8%)
10
(-23.1%)
27
(+50.0%)
190
(-16.3%)
2170
(+49.8%)
1601
(-10.4%)
✔ 17/17All 17 transformations verified equiv ✔ tmpv0ls38yhNegC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-word-to-bits.mlir ✔ 0_8_synth-lower-word-to-bits.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_canonicalize.mlir ✔ 0_12_canonicalize.mlir -> 0_13_synth-maximum-and-cover.mlir ✔ 0_13_synth-maximum-and-cover.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> tmputtywars.synth.mlir ✔ EQUIV
behavioural_Neg_16 59 8 3 130 327 972 69
(+16.9%)
6
(-25.0%)
4
(+33.3%)
102
(-21.5%)
360
(+10.1%)
909
(-6.5%)
✔ 16/16All 16 transformations verified equiv ✔ tmpyyzf7tziNeg.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-word-to-bits.mlir ✔ 0_8_synth-lower-word-to-bits.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmp_tiitj4q.synth.mlir ✔ EQUIV
behavioural_Neg_48 201 11 12 211 1094 1424 341
(+69.7%)
8
(-27.3%)
20
(+66.7%)
181
(-14.2%)
1665
(+52.2%)
1428
(+0.3%)
✔ 16/16All 16 transformations verified equiv ✔ tmpnxyc935_Neg.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-word-to-bits.mlir ✔ 0_8_synth-lower-word-to-bits.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpcpgmgigc.synth.mlir ✔ EQUIV
behavioural_RedAnd_16 15 4 0 83 50 390 15
(+0.0%)
4
(+0.0%)
0 83
(+0.0%)
50
(+0.0%)
390
(+0.0%)
✔ 8/8All 8 transformations verified equiv ✔ tmp2truimu3RedAnd.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_synth-maximum-and-cover.mlir ✔ 0_5_synth-maximum-and-cover.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> tmpry7a0f8f.synth.mlir ✔ EQUIV
behavioural_RedAnd_48 47 6 1 114 157 558 47
(+0.0%)
6
(+0.0%)
1
(+0.0%)
114
(+0.0%)
157
(+0.0%)
558
(+0.0%)
✔ 8/8All 8 transformations verified equiv ✔ tmpya7_4j84RedAnd.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_synth-lower-word-to-bits.mlir ✔ 0_2_synth-lower-word-to-bits.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_synth-maximum-and-cover.mlir ✔ 0_5_synth-maximum-and-cover.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> tmpq2v20bl_.synth.mlir ✔ EQUIV
behavioural_RedOr_16 15 4 0 91 43 668 15
(+0.0%)
4
(+0.0%)
0 91
(+0.0%)
43
(+0.0%)
668
(+0.0%)
✔ 6/6All 6 transformations verified equiv ✔ tmpc18srvn9RedOr.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_synth-lower-variadic.mlir ✔ 0_2_synth-lower-variadic.mlir -> 0_3_synth-maximum-and-cover.mlir ✔ 0_3_synth-maximum-and-cover.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> tmpa353t6rc.synth.mlir ✔ EQUIV
behavioural_RedOr_48 47 6 1 122 138 919 47
(+0.0%)
6
(+0.0%)
1
(+0.0%)
122
(+0.0%)
138
(+0.0%)
919
(+0.0%)
✔ 6/6All 6 transformations verified equiv ✔ tmp9flp2do8RedOr.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_synth-lower-variadic.mlir ✔ 0_2_synth-lower-variadic.mlir -> 0_3_synth-maximum-and-cover.mlir ✔ 0_3_synth-maximum-and-cover.mlir -> 0_4_synth-lower-variadic.mlir ✔ 0_4_synth-lower-variadic.mlir -> tmp7omt8ext.synth.mlir ✔ EQUIV
behavioural_RedXor_16 45 8 2 145 217 616 45
(+0.0%)
8
(+0.0%)
2
(+0.0%)
145
(+0.0%)
225
(+3.7%)
616
(+0.0%)
✔ 4/4All 4 transformations verified equiv ✔ tmp0gww7tscRedXor.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> tmpra18one1.synth.mlir ✔ EQUIV
behavioural_RedXor_48 141 12 7 198 675 831 141
(+0.0%)
12
(+0.0%)
5
(-28.6%)
198
(+0.0%)
705
(+4.4%)
831
(+0.0%)
✔ 5/5All 5 transformations verified equiv ✔ tmppbek9y4qRedXor.test.tmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_synth-structural-hash.mlir ✔ 0_3_synth-structural-hash.mlir -> tmpjnci_mw9.synth.mlir ✔ EQUIV
behavioural_SubCZ_16 236 25 12 349 1211 2797 234
(-0.8%)
17
(-32.0%)
13
(+8.3%)
315
(-9.7%)
1241
(+2.5%)
2054
(-26.6%)
✔ 20/20All 20 transformations verified equiv ✔ tmp4ydy_4prSubCZ.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmp7lny3ra3.synth.mlir ✔ EQUIV
behavioural_SubCZ_48 716 36 41 621 3819 3942 1084
(+51.4%)
21
(-41.7%)
67
(+63.4%)
422
(-32.0%)
5661
(+48.2%)
2133
(-45.9%)
✔ 20/20All 20 transformations verified equiv ✔ tmpbh8jx1yjSubCZ.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> 0_15_canonicalize.mlir ✔ 0_15_canonicalize.mlir -> 0_16_synth-maximum-and-cover.mlir ✔ 0_16_synth-maximum-and-cover.mlir -> 0_17_synth-lower-variadic.mlir ✔ 0_17_synth-lower-variadic.mlir -> 0_18_synth-structural-hash.mlir ✔ 0_18_synth-structural-hash.mlir -> tmpf2038yur.synth.mlir ✔ EQUIV
behavioural_SubC_16 220 24 11 310 1155 2004 218
(-0.9%)
13
(-45.8%)
13
(+18.2%)
256
(-17.4%)
1217
(+5.4%)
1437
(-28.3%)
✔ 19/19All 19 transformations verified equiv ✔ tmphntsuvhaSubC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpt_h1y0e5.synth.mlir ✔ EQUIV
behavioural_SubC_48 680 34 38 449 3689 2674 1036
(+52.4%)
17
(-50.0%)
64
(+68.4%)
323
(-28.1%)
5604
(+51.9%)
1489
(-44.3%)
✔ 19/19All 19 transformations verified equiv ✔ tmpaty4vlk_SubC.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmp1d816v2r.synth.mlir ✔ EQUIV
behavioural_SubVZ_16 262 30 10 288 1319 2664 262
(+0.0%)
23
(-23.3%)
12
(+20.0%)
256
(-11.1%)
1307
(-0.9%)
1950
(-26.8%)
✔ 19/19All 19 transformations verified equiv ✔ tmpio2ctjubSubVZ.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpoxowvw_d.synth.mlir ✔ EQUIV
behavioural_SubVZ_48 747 29 41 526 3855 2954 1103
(+47.7%)
21
(-27.6%)
68
(+65.9%)
429
(-18.4%)
5754
(+49.3%)
2224
(-24.7%)
✔ 19/19All 19 transformations verified equiv ✔ tmpmbe1w3b8SubVZ.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_convert-comb-to-synth.mlir ✔ 0_8_convert-comb-to-synth.mlir -> 0_9_cse.mlir ✔ 0_9_cse.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-lower-word-to-bits.mlir ✔ 0_11_synth-lower-word-to-bits.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmp_osjtt13.synth.mlir ✔ EQUIV
behavioural_SubV_16 255 26 10 297 1306 2396 244
(-4.3%)
23
(-11.5%)
12
(+20.0%)
256
(-13.8%)
1247
(-4.5%)
1787
(-25.4%)
✔ 18/18All 18 transformations verified equiv ✔ tmpahxsa7ijSubV.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_canonicalize.mlir ✔ 0_13_canonicalize.mlir -> 0_14_synth-maximum-and-cover.mlir ✔ 0_14_synth-maximum-and-cover.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> tmp020svvmj.synth.mlir ✔ EQUIV
behavioural_SubV_48 670 27 36 351 3681 2582 1016
(+51.6%)
17
(-37.0%)
63
(+75.0%)
329
(-6.3%)
5515
(+49.8%)
1489
(-42.3%)
✔ 18/18All 18 transformations verified equiv ✔ tmphpo41v19SubV.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_canonicalize.mlir ✔ 0_13_canonicalize.mlir -> 0_14_synth-maximum-and-cover.mlir ✔ 0_14_synth-maximum-and-cover.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> tmpsqpu1ptp.synth.mlir ✔ EQUIV
behavioural_Sub_16 153 16 8 243 799 1396 200
(+30.7%)
13
(-18.8%)
12
(+50.0%)
230
(-5.3%)
1150
(+43.9%)
1376
(-1.4%)
✔ 18/18All 18 transformations verified equiv ✔ tmpz5_8qll6Sub.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_canonicalize.mlir ✔ 0_13_canonicalize.mlir -> 0_14_synth-maximum-and-cover.mlir ✔ 0_14_synth-maximum-and-cover.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> tmpbem2y94d.synth.mlir ✔ EQUIV
behavioural_Sub_48 516 22 27 339 2805 1848 1011
(+95.9%)
16
(-27.3%)
63
(+133.3%)
323
(-4.7%)
5500
(+96.1%)
1492
(-19.3%)
✔ 18/18All 18 transformations verified equiv ✔ tmp_yh2pk54Sub.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_canonicalize.mlir ✔ 0_13_canonicalize.mlir -> 0_14_synth-maximum-and-cover.mlir ✔ 0_14_synth-maximum-and-cover.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> tmp6yubuet2.synth.mlir ✔ EQUIV
behavioural_SumZeroDet_16 160 21 8 276 787 2110 219
(+36.9%)
17
(-19.0%)
12
(+50.0%)
264
(-4.3%)
1092
(+38.8%)
1953
(-7.4%)
✔ 16/16All 16 transformations verified equiv ✔ tmpvk5nchdtSumZeroDet.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpdc51tszu.synth.mlir ✔ EQUIV
behavioural_SumZeroDet_48 523 27 27 434 2569 2849 1062
(+103.1%)
21
(-22.2%)
61
(+125.9%)
375
(-13.6%)
5467
(+112.8%)
2325
(-18.4%)
✔ 16/16All 16 transformations verified equiv ✔ tmp7wqg9ys_SumZeroDet.test.tmp.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_convert-datapath-to-comb.mlir ✔ 0_1_convert-datapath-to-comb.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> 0_12_synth-maximum-and-cover.mlir ✔ 0_12_synth-maximum-and-cover.mlir -> 0_13_synth-lower-variadic.mlir ✔ 0_13_synth-lower-variadic.mlir -> 0_14_synth-structural-hash.mlir ✔ 0_14_synth-structural-hash.mlir -> tmpvsjckwig.synth.mlir ✔ EQUIV
📁 microbenchmarks
add_16 138 16 7 239 719 1614 159
(+15.2%)
12
(-25.0%)
8
(+14.3%)
186
(-22.2%)
782
(+8.8%)
1564
(-3.1%)
✔ 13/13All 13 transformations verified equiv ✔ tmpi5hip92gadd.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmppwjeoql7.synth.mlir ✔ EQUIV
add_48 469 22 25 322 2480 2488 889
(+89.6%)
14
(-36.4%)
49
(+96.0%)
237
(-26.4%)
4581
(+84.7%)
1356
(-45.5%)
✔ 13/13All 13 transformations verified equiv ✔ tmp4p3y4__fadd.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-variadic.mlir ✔ 0_3_synth-lower-variadic.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-lower-variadic.mlir ✔ 0_7_synth-lower-variadic.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmprbsj0vww.synth.mlir ✔ EQUIV
alu_16 786 27 39 466 3472 2891 993
(+26.3%)
23
(-14.8%)
51
(+30.8%)
368
(-21.0%)
4522
(+30.2%)
2161
(-25.3%)
⚠ 11/19Tool error (11/19 equiv) ⚠ tmpv6vgao6nalu.mlir -> 0_0_convert-comb-to-datapath.mlir ⚠ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⚠ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ⚠ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ⚠ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ⚠ 0_4_cse.mlir -> 0_5_canonicalize.mlir ⚠ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ⚠ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpnzxe1fd9.synth.mlir ✔ EQUIV
alu_48 2486 36 125 649 10701 4214 3814
(+53.4%)
25
(-30.6%)
199
(+59.2%)
490
(-24.5%)
17333
(+62.0%)
2948
(-30.0%)
⚠ 11/19Tool error (11/19 equiv) ⚠ tmphqhkjz5valu.mlir -> 0_0_convert-comb-to-datapath.mlir ⚠ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⚠ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ⚠ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ⚠ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ⚠ 0_4_cse.mlir -> 0_5_canonicalize.mlir ⚠ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ⚠ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmp4iwe_evh.synth.mlir ✔ EQUIV
barrel_shifter_16 162 8 7 123 683 767 162
(+0.0%)
8
(+0.0%)
7
(+0.0%)
123
(+0.0%)
683
(+0.0%)
767
(+0.0%)
✔ 11/11All 11 transformations verified equiv ✔ tmpctoqwdvibarrel_shifter.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-word-to-bits.mlir ✔ 0_6_synth-lower-word-to-bits.mlir -> 0_7_cse.mlir ✔ 0_7_cse.mlir -> 0_8_synth-structural-hash.mlir ✔ 0_8_synth-structural-hash.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> tmpiru8m0sp.synth.mlir ✔ EQUIV
barrel_shifter_48 738 12 39 186 3262 1141 757
(+2.6%)
13
(+8.3%)
37
(-5.1%)
196
(+5.4%)
3159
(-3.2%)
1259
(+10.3%)
✔ 15/15All 15 transformations verified equiv ✔ tmpxnh_rpl7barrel_shifter.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_synth-lower-word-to-bits.mlir ✔ 0_7_synth-lower-word-to-bits.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_synth-structural-hash.mlir ✔ 0_9_synth-structural-hash.mlir -> 0_10_canonicalize.mlir ✔ 0_10_canonicalize.mlir -> 0_11_synth-maximum-and-cover.mlir ✔ 0_11_synth-maximum-and-cover.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> tmprit5raom.synth.mlir ✔ EQUIV
comparator_16 111 11 5 194 590 1151 157
(+41.4%)
11
(+0.0%)
8
(+60.0%)
183
(-5.7%)
815
(+38.1%)
1053
(-8.5%)
✔ 12/12All 12 transformations verified equiv ✔ tmpb56zzkf8comparator.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-word-to-bits.mlir ✔ 0_3_synth-lower-word-to-bits.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-maximum-and-cover.mlir ✔ 0_8_synth-maximum-and-cover.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> tmpo9cfs_wc.synth.mlir ✔ EQUIV
comparator_48 335 15 17 229 1712 1410 479
(+43.0%)
14
(-6.7%)
23
(+35.3%)
226
(-1.3%)
2472
(+44.4%)
1582
(+12.2%)
✔ 12/12All 12 transformations verified equiv ✔ tmp5g8hhx9ccomparator.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-word-to-bits.mlir ✔ 0_3_synth-lower-word-to-bits.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-lower-variadic.mlir ✔ 0_5_synth-lower-variadic.mlir -> 0_6_synth-structural-hash.mlir ✔ 0_6_synth-structural-hash.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-maximum-and-cover.mlir ✔ 0_8_synth-maximum-and-cover.mlir -> 0_9_synth-lower-variadic.mlir ✔ 0_9_synth-lower-variadic.mlir -> 0_10_synth-structural-hash.mlir ✔ 0_10_synth-structural-hash.mlir -> tmpy4_rja_r.synth.mlir ✔ EQUIV
icmp_16 116 13 6 216 619 1118 184
(+58.6%)
13
(+0.0%)
9
(+50.0%)
200
(-7.4%)
1009
(+63.0%)
1216
(+8.8%)
✔ 13/13All 13 transformations verified equiv ✔ tmps0rx8rj_icmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_synth-lower-word-to-bits.mlir ✔ 0_4_synth-lower-word-to-bits.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_synth-structural-hash.mlir ✔ 0_7_synth-structural-hash.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmps9dy4nb6.synth.mlir ✔ EQUIV
icmp_48 340 17 17 286 1759 1544 721
(+112.1%)
15
(-11.8%)
36
(+111.8%)
257
(-10.1%)
3815
(+116.9%)
1724
(+11.7%)
✔ 13/13All 13 transformations verified equiv ✔ tmprkbse33hicmp.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_synth-lower-word-to-bits.mlir ✔ 0_4_synth-lower-word-to-bits.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_synth-structural-hash.mlir ✔ 0_7_synth-structural-hash.mlir -> 0_8_canonicalize.mlir ✔ 0_8_canonicalize.mlir -> 0_9_synth-maximum-and-cover.mlir ✔ 0_9_synth-maximum-and-cover.mlir -> 0_10_synth-lower-variadic.mlir ✔ 0_10_synth-lower-variadic.mlir -> 0_11_synth-structural-hash.mlir ✔ 0_11_synth-structural-hash.mlir -> tmpjtgs38r6.synth.mlir ✔ EQUIV
mul_16 2310 42 100 663 12588 3588 2020
(-12.6%)
37
(-11.9%)
94
(-6.0%)
522
(-21.3%)
11355
(-9.8%)
3268
(-8.9%)
⏱ 17/19Timeout (17/19 equiv) ✔ tmp2m1keqm6mul.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_convert-comb-to-synth.mlir ✔ 0_4_convert-comb-to-synth.mlir -> 0_5_cse.mlir ✔ 0_5_cse.mlir -> 0_6_canonicalize.mlir ⏱ 0_6_canonicalize.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_cse.mlir ✔ 0_11_cse.mlir -> 0_12_synth-lower-variadic.mlir ✔ 0_12_synth-lower-variadic.mlir -> 0_13_synth-structural-hash.mlir ✔ 0_13_synth-structural-hash.mlir -> 0_14_canonicalize.mlir ✔ 0_14_canonicalize.mlir -> 0_15_synth-maximum-and-cover.mlir ✔ 0_15_synth-maximum-and-cover.mlir -> 0_16_synth-lower-variadic.mlir ✔ 0_16_synth-lower-variadic.mlir -> 0_17_synth-structural-hash.mlir ✔ 0_17_synth-structural-hash.mlir -> tmpt40a8l1o.synth.mlir ⏱ TIMEOUT
mul_48 21154 60 857 937 113884 5852 19638
(-7.2%)
50
(-16.7%)
875
(+2.1%)
776
(-17.2%)
95623
(-16.0%)
4436
(-24.2%)
⏱ 18/21Timeout (18/21 equiv) ✔ tmpegu0tutcmul.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ⏱ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_cse.mlir ✔ 0_3_cse.mlir -> 0_4_canonicalize.mlir ✔ 0_4_canonicalize.mlir -> 0_5_convert-comb-to-synth.mlir ✔ 0_5_convert-comb-to-synth.mlir -> 0_6_cse.mlir ✔ 0_6_cse.mlir -> 0_7_canonicalize.mlir ✔ 0_7_canonicalize.mlir -> 0_8_synth-lower-variadic.mlir ⏱ 0_8_synth-lower-variadic.mlir -> 0_9_convert-comb-to-synth.mlir ✔ 0_9_convert-comb-to-synth.mlir -> 0_10_cse.mlir ✔ 0_10_cse.mlir -> 0_11_canonicalize.mlir ✔ 0_11_canonicalize.mlir -> 0_12_synth-lower-word-to-bits.mlir ✔ 0_12_synth-lower-word-to-bits.mlir -> 0_13_cse.mlir ✔ 0_13_cse.mlir -> 0_14_synth-lower-variadic.mlir ✔ 0_14_synth-lower-variadic.mlir -> 0_15_synth-structural-hash.mlir ✔ 0_15_synth-structural-hash.mlir -> 0_16_canonicalize.mlir ⏱ 0_16_canonicalize.mlir -> 0_17_synth-maximum-and-cover.mlir ✔ 0_17_synth-maximum-and-cover.mlir -> 0_18_synth-lower-variadic.mlir ✔ 0_18_synth-lower-variadic.mlir -> 0_19_synth-structural-hash.mlir ✔ 0_19_synth-structural-hash.mlir -> tmpy4951j3o.synth.mlir ⏱ TIMEOUT
mux_16 132 6 4 93 490 531 148
(+12.1%)
7
(+16.7%)
6
(+50.0%)
110
(+18.3%)
528
(+7.8%)
631
(+18.8%)
⚠ 9/10Tool error (9/10 equiv) ⚠ tmp4exoduy1mux.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-word-to-bits.mlir ✔ 0_3_synth-lower-word-to-bits.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-maximum-and-cover.mlir ✔ 0_7_synth-maximum-and-cover.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> tmpvdl8228k.synth.mlir ✔ EQUIV
mux_48 388 6 14 93 1411 531 436
(+12.4%)
7
(+16.7%)
18
(+28.6%)
110
(+18.3%)
1488
(+5.5%)
631
(+18.8%)
⚠ 9/10Tool error (9/10 equiv) ⚠ tmpbf2p8jypmux.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_cse.mlir ✔ 0_1_cse.mlir -> 0_2_canonicalize.mlir ✔ 0_2_canonicalize.mlir -> 0_3_synth-lower-word-to-bits.mlir ✔ 0_3_synth-lower-word-to-bits.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_synth-structural-hash.mlir ✔ 0_5_synth-structural-hash.mlir -> 0_6_canonicalize.mlir ✔ 0_6_canonicalize.mlir -> 0_7_synth-maximum-and-cover.mlir ✔ 0_7_synth-maximum-and-cover.mlir -> 0_8_synth-lower-variadic.mlir ✔ 0_8_synth-lower-variadic.mlir -> tmp10z3wuw2.synth.mlir ✔ EQUIV
parity_16 45 8 2 145 245 597 45
(+0.0%)
8
(+0.0%)
2
(+0.0%)
145
(+0.0%)
240
(-2.0%)
616
(+3.2%)
✔ 5/5All 5 transformations verified equiv ✔ tmprve9yghfparity.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> tmpomul6aws.synth.mlir ✔ EQUIV
parity_48 141 12 7 218 688 883 141
(+0.0%)
12
(+0.0%)
5
(-28.6%)
199
(-8.7%)
720
(+4.7%)
831
(-5.9%)
✔ 6/6All 6 transformations verified equiv ✔ tmpbxyb4g8cparity.mlir -> 0_0_convert-comb-to-synth.mlir ✔ 0_0_convert-comb-to-synth.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-comb-to-synth.mlir ✔ 0_2_convert-comb-to-synth.mlir -> 0_3_canonicalize.mlir ✔ 0_3_canonicalize.mlir -> 0_4_synth-structural-hash.mlir ✔ 0_4_synth-structural-hash.mlir -> tmpfz6vqe_r.synth.mlir ✔ EQUIV
sub_16 153 16 8 243 799 1396 200
(+30.7%)
13
(-18.8%)
12
(+50.0%)
230
(-5.3%)
1150
(+43.9%)
1376
(-1.4%)
✔ 18/18All 18 transformations verified equiv ✔ tmpqphgil3dsub.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_canonicalize.mlir ✔ 0_13_canonicalize.mlir -> 0_14_synth-maximum-and-cover.mlir ✔ 0_14_synth-maximum-and-cover.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> tmp3lgia63l.synth.mlir ✔ EQUIV
sub_48 516 22 27 339 2805 1848 1011
(+95.9%)
16
(-27.3%)
63
(+133.3%)
323
(-4.7%)
5500
(+96.1%)
1492
(-19.3%)
✔ 18/18All 18 transformations verified equiv ✔ tmp_j9g7anvsub.mlir -> 0_0_convert-comb-to-datapath.mlir ✔ 0_0_convert-comb-to-datapath.mlir -> 0_1_canonicalize.mlir ✔ 0_1_canonicalize.mlir -> 0_2_convert-datapath-to-comb.mlir ✔ 0_2_convert-datapath-to-comb.mlir -> 0_3_convert-comb-to-synth.mlir ✔ 0_3_convert-comb-to-synth.mlir -> 0_4_cse.mlir ✔ 0_4_cse.mlir -> 0_5_canonicalize.mlir ✔ 0_5_canonicalize.mlir -> 0_6_synth-lower-variadic.mlir ✔ 0_6_synth-lower-variadic.mlir -> 0_7_convert-comb-to-synth.mlir ✔ 0_7_convert-comb-to-synth.mlir -> 0_8_cse.mlir ✔ 0_8_cse.mlir -> 0_9_canonicalize.mlir ✔ 0_9_canonicalize.mlir -> 0_10_synth-lower-word-to-bits.mlir ✔ 0_10_synth-lower-word-to-bits.mlir -> 0_11_synth-lower-variadic.mlir ✔ 0_11_synth-lower-variadic.mlir -> 0_12_synth-structural-hash.mlir ✔ 0_12_synth-structural-hash.mlir -> 0_13_canonicalize.mlir ✔ 0_13_canonicalize.mlir -> 0_14_synth-maximum-and-cover.mlir ✔ 0_14_synth-maximum-and-cover.mlir -> 0_15_synth-lower-variadic.mlir ✔ 0_15_synth-lower-variadic.mlir -> 0_16_synth-structural-hash.mlir ✔ 0_16_synth-structural-hash.mlir -> tmpvcy0m6oa.synth.mlir ✔ EQUIV

Equivalence Check Summary

Equivalent: 108
Non-equiv: 0
Timeout: 50
Errors: 0
Skipped (no AIG): 0

Geometric Mean Comparison ✓ Copied!

Category Metric yosys circt
Overall (158 benchmarks) Gates 624.8 721.0 (+15.4%)
Depth 22.8 17.8 (-21.8%)
Area (ASAP7) 33.5 40.2 (+20.0%)
Delay (ASAP7) 351.1 294.5 (-16.1%)
Area (Sky130) 3155.0 3555.9 (+12.7%)
Delay (Sky130) 2114.9 1717.5 (-18.8%)
DatapathBench Gates 5976.9 5410.2 (-9.5%)
Depth 51.8 41.0 (-20.9%)
Area (ASAP7) 251.0 246.2 (-1.9%)
Delay (ASAP7) 800.7 652.0 (-18.6%)
Area (Sky130) 32156.5 28458.7 (-11.5%)
Delay (Sky130) 4771.7 3771.1 (-21.0%)
ELAU Gates 243.6 308.4 (+26.6%)
Depth 16.8 12.7 (-24.2%)
Area (ASAP7) 14.2 18.5 (+30.1%)
Delay (ASAP7) 255.5 213.6 (-16.4%)
Area (Sky130) 1204.0 1482.7 (+23.2%)
Delay (Sky130) 1560.4 1250.1 (-19.9%)
microbenchmarks Gates 380.4 484.3 (+27.3%)
Depth 15.8 14.2 (-10.0%)
Area (ASAP7) 17.7 23.3 (+31.6%)
Delay (ASAP7) 254.8 233.6 (-8.3%)
Area (Sky130) 1844.0 2338.7 (+26.8%)
Delay (Sky130) 1465.0 1366.6 (-6.7%)