Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove some left-over log_dump() | Clifford Wolf | 2019-04-23 | 1 | -2/+0 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Merge pull request #951 from YosysHQ/clifford/logdebug | Clifford Wolf | 2019-04-22 | 4 | -45/+59 |
|\ | | | | | Add log_debug() framework | ||||
| * | Add log_debug() framework | Clifford Wolf | 2019-04-22 | 4 | -45/+59 |
| | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | | Add full_pmux feature to pmux2shiftx | Clifford Wolf | 2019-04-22 | 1 | -1/+22 |
|/ | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Auto-initialize OnehotDatabase on-demand in pmux2shiftx.cc | Clifford Wolf | 2019-04-20 | 1 | -4/+7 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Add "onehot" pass, improve "pmux2shiftx" onehot handling | Clifford Wolf | 2019-04-20 | 1 | -13/+404 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Improve "pmux2shiftx" | Clifford Wolf | 2019-04-20 | 1 | -10/+8 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Fix some typos | Clifford Wolf | 2019-04-20 | 1 | -2/+2 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Improvements in "pmux2shiftx" | Clifford Wolf | 2019-04-20 | 1 | -12/+52 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Improvements in pmux2shiftx | Clifford Wolf | 2019-04-20 | 1 | -13/+6 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Improve pmux2shift ctrl permutation finder | Clifford Wolf | 2019-04-20 | 1 | -27/+114 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Complete rewrite of pmux2shiftx | Clifford Wolf | 2019-04-20 | 1 | -27/+265 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Import initial pmux2shiftx from eddieh | Clifford Wolf | 2019-04-20 | 2 | -0/+82 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Trim init attributes when resizing FFs in "wreduce", fixes #887 | Clifford Wolf | 2019-03-22 | 1 | -1/+26 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Improve handling of and-with-1 and or-with-0 in opt_expr, fixes #327 | Clifford Wolf | 2019-03-14 | 1 | -0/+7 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Fix multiple issues in wreduce FF handling, fixes #835 | Clifford Wolf | 2019-02-28 | 1 | -5/+24 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Cleanups in ARST handling in wreduce | Clifford Wolf | 2019-02-24 | 1 | -10/+4 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Fix WREDUCE on FF not fixing ARST_VALUE parameter. | Keith Rothman | 2019-02-22 | 1 | -0/+13 |
| | | | | | | Adds test case that fails without code change. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com> | ||||
* | Merge pull request #818 from YosysHQ/clifford/dffsrfix | Clifford Wolf | 2019-02-21 | 1 | -6/+7 |
|\ | | | | | Fix opt_rmdff handling of $_DFFSR_???_ and $_DLATCHSR_???_, fixes #816 | ||||
| * | Fix opt_rmdff handling of $_DFFSR_???_ and $_DLATCHSR_???_, fixes #816 | Clifford Wolf | 2019-02-21 | 1 | -6/+7 |
| | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | | Add FF support to wreduce | Clifford Wolf | 2019-02-20 | 1 | -1/+70 |
|/ | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Bugfix in $memrd sharing | Clifford Wolf | 2019-01-07 | 1 | -2/+6 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Merge pull request #775 from whitequark/opt_flowmap | Clifford Wolf | 2019-01-03 | 1 | -1/+1 |
|\ | | | | | flowmap: new techmap pass | ||||
| * | flowmap: new techmap pass. | whitequark | 2019-01-03 | 1 | -1/+1 |
| | | |||||
* | | Merge pull request #770 from whitequark/opt_expr_cmp | Clifford Wolf | 2019-01-02 | 1 | -97/+134 |
|\ \ | |/ |/| | opt_expr: refactor and improve simplification of comparisons | ||||
| * | opt_expr: improve simplification of comparisons with large constants. | whitequark | 2019-01-02 | 1 | -70/+47 |
| | | | | | | | | | | | | | | | | | | | | | | | | The idea behind this simplification is that a N-bit signal X being compared with an M-bit constant where M>N and the constant has Nth or higher bit set, it either always succeeds or always fails. However, the existing implementation only worked with one-hot signals for some reason. It also printed incorrect messages. This commit adjusts the simplification to have as much power as possible, and fixes other bugs. | ||||
| * | opt_expr: refactor simplification of unsigned X<onehot and X>=onehot. NFCI. | whitequark | 2019-01-02 | 1 | -31/+37 |
| | | |||||
| * | opt_expr: refactor simplification of signed X>=0 and X<0. NFCI. | whitequark | 2019-01-02 | 1 | -24/+26 |
| | | |||||
| * | opt_expr: simplify any unsigned comparisons with all-0 and all-1. | whitequark | 2019-01-02 | 1 | -17/+69 |
| | | | | | | | | | | | | Before this commit, only unsigned comparisons with all-0 would be simplified. This commit also makes the code handling such comparisons to be more rigorous and not abort on unexpected input. | ||||
* | | Merge pull request #773 from whitequark/opt_lut_elim_fixes | Clifford Wolf | 2019-01-02 | 1 | -8/+31 |
|\ \ | | | | | | | opt_lut: elimination fixes | ||||
| * | | opt_lut: reflect changes in sigmap. | whitequark | 2019-01-02 | 1 | -0/+2 |
| | | | | | | | | | | | | Otherwise, some LUTs will be missed during elimination. | ||||
| * | | opt_lut: use a worklist, and revisit cells affected by elimination. | whitequark | 2019-01-02 | 1 | -3/+10 |
| | | | |||||
| * | | opt_lut: count eliminated cells, and set opt.did_something for them. | whitequark | 2019-01-02 | 1 | -6/+20 |
| |/ | |||||
* / | Fix typographical and grammatical errors and inconsistencies. | whitequark | 2019-01-02 | 2 | -2/+2 |
|/ | | | | | | | | | | | | The initial list of hits was generated with the codespell command below, and each hit was evaluated and fixed manually while taking context into consideration. DIRS="kernel/ frontends/ backends/ passes/ techlibs/" DIRS="${DIRS} libs/ezsat/ libs/subcircuit" codespell $DIRS -S *.o -L upto,iff,thru,synopsys,uint More hits were found by looking through comments and strings manually. | ||||
* | opt_lut: eliminate LUTs evaluating to constants or inputs. | whitequark | 2018-12-31 | 1 | -0/+81 |
| | |||||
* | Fix handling of (* keep *) wires in wreduce | Clifford Wolf | 2018-12-31 | 1 | -1/+4 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Merge pull request #720 from whitequark/master | Clifford Wolf | 2018-12-16 | 1 | -1/+1 |
|\ | | | | | lut2mux: handle 1-bit INIT constant in $lut cells | ||||
| * | opt_lut: simplify type conversion. NFC. | whitequark | 2018-12-05 | 1 | -1/+1 |
| | | |||||
* | | opt_lut: leave intact LUTs with cascade feeding module outputs. | whitequark | 2018-12-07 | 1 | -0/+6 |
| | | |||||
* | | opt_lut: show original truth table for both cells. | whitequark | 2018-12-07 | 1 | -2/+3 |
| | | |||||
* | | opt_lut: add -limit option, for debugging misoptimizations. | whitequark | 2018-12-07 | 1 | -3/+21 |
| | | |||||
* | | Bugfix in opt_expr handling of a<0 and a>=0 | Clifford Wolf | 2018-12-06 | 1 | -1/+1 |
|/ | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Rename opt_lut.cpp to opt_lut.cc | Clifford Wolf | 2018-12-05 | 1 | -0/+0 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | opt_lut: add -dlogic, to avoid disturbing logic such as carry chains. | whitequark | 2018-12-05 | 1 | -17/+163 |
| | |||||
* | opt_lut: always prefer to eliminate 1-LUTs. | whitequark | 2018-12-05 | 1 | -19/+41 |
| | | | | | These are always either buffers or inverters, and keeping the larger LUT preserves more source-level information about the design. | ||||
* | opt_lut: collect and display statistics. | whitequark | 2018-12-05 | 1 | -4/+33 |
| | |||||
* | opt_lut: refactor to use a worker. NFC. | whitequark | 2018-12-05 | 1 | -170/+177 |
| | |||||
* | opt_lut: new pass, to combine LUTs for tighter packing. | whitequark | 2018-12-05 | 2 | -0/+275 |
| | |||||
* | Add iteration limit to "opt_muxtree" | Clifford Wolf | 2018-11-20 | 1 | -1/+17 |
| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | ||||
* | Consistent use of 'override' for virtual methods in derived classes. | Henner Zeller | 2018-07-20 | 11 | -24/+24 |
| | | | | | | | | | o Not all derived methods were marked 'override', but it is a great feature of C++11 that we should make use of. o While at it: touched header files got a -*- c++ -*- for emacs to provide support for that language. o use YS_OVERRIDE for all override keywords (though we should probably use the plain keyword going forward now that C++11 is established) |