yosys/tests/opt
Marcelina Kościelnicka 6c16fd760b opt_expr: Add more $alu optimizations.
Detect the places in the $alu where the carry bit is constant (due to
const A[i] == B[i] ^ BI) and split it into smaller $alu at these points.

Also, make the existing const-carry detection for low bits more generic
(now handles cases where both BI and CI are constant, but not equal to
one another).

Fixes #1912.
2020-04-14 21:48:13 +02:00
..
.gitignore opt_lut: new pass, to combine LUTs for tighter packing. 2018-12-05 16:30:37 +00:00
bug1525.ys opt_share: Fix handling of fine cells. 2019-11-27 08:01:07 +01:00
opt_expr.ys opt_expr: Optimize multiplications with low 0 bits in operands. 2020-04-13 16:52:22 +02:00
opt_expr_alu.ys opt_expr: Add more $alu optimizations. 2020-04-14 21:48:13 +02:00
opt_expr_cmp.v opt_expr: improve simplification of comparisons with large constants. 2019-01-02 15:45:28 +00:00
opt_expr_cmp.ys opt_expr: simplify any unsigned comparisons with all-0 and all-1. 2019-01-02 02:45:49 +00:00
opt_expr_xor.ys opt_expr: add failing $xnor test 2020-03-20 14:38:50 -07:00
opt_lut.v opt_lut: new pass, to combine LUTs for tighter packing. 2018-12-05 16:30:37 +00:00
opt_lut.ys Revert "Merge pull request #1280 from YosysHQ/revert-1266-eddie/ice40_full_adder" 2019-08-12 12:06:45 -07:00
opt_lut_elim.il opt_lut: eliminate LUTs evaluating to constants or inputs. 2018-12-31 23:55:40 +00:00
opt_lut_elim.ys opt_lut: eliminate LUTs evaluating to constants or inputs. 2018-12-31 23:55:40 +00:00
opt_lut_ins.ys Add opt_lut_ins pass. (#1673) 2020-02-03 14:57:17 +01:00
opt_lut_port.il opt_lut: leave intact LUTs with cascade feeding module outputs. 2018-12-07 17:13:52 +00:00
opt_lut_port.ys opt_lut: eliminate LUTs evaluating to constants or inputs. 2018-12-31 23:55:40 +00:00
opt_merge_init.ys opt_merge: speedup 2020-03-16 12:43:54 -07:00
opt_merge_keep.ys opt_merge: speedup 2020-03-16 12:43:54 -07:00
opt_rmdff.v Revert "Merge pull request #1280 from YosysHQ/revert-1266-eddie/ice40_full_adder" 2019-08-12 12:06:45 -07:00
opt_rmdff.ys Merge remote-tracking branch 'origin/master' into clifford/testfast 2019-08-18 21:29:15 -07:00
opt_rmdff_sat.v Revert "Merge pull request #1280 from YosysHQ/revert-1266-eddie/ice40_full_adder" 2019-08-12 12:06:45 -07:00
opt_rmdff_sat.ys Revert "Merge pull request #1280 from YosysHQ/revert-1266-eddie/ice40_full_adder" 2019-08-12 12:06:45 -07:00
opt_share_add_sub.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_add_sub.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_cat.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_cat.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_cat_multiuser.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_cat_multiuser.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_diff_port_widths.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_diff_port_widths.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_extend.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_extend.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_large_pmux_cat.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_large_pmux_cat.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_large_pmux_cat_multipart.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_large_pmux_cat_multipart.ys Fix wrong results when opt_share called before opt_clean 2019-08-07 09:30:58 +02:00
opt_share_large_pmux_multipart.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_large_pmux_multipart.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_large_pmux_part.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_large_pmux_part.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
opt_share_mux_tree.v Tabs to spaces in opt_share examples 2019-08-03 12:35:46 +02:00
opt_share_mux_tree.ys Reimplement opt_share to work on $alu and $pmux 2019-07-28 16:03:54 +02:00
run-test.sh opt_lut: new pass, to combine LUTs for tighter packing. 2018-12-05 16:30:37 +00:00