aboutsummaryrefslogtreecommitdiffstats
path: root/passes/cmds
Commit message (Collapse)AuthorAgeFilesLines
...
* | Add support for memory writes in processes.Marcelina Kościelnicka2021-03-083-0/+30
| |
* | scc: Add -specify option to find loops in boxesDan Ravensloft2021-01-261-17/+60
| |
* | plugin: enhance no-plugin errorumarcor2020-12-291-1/+5
| |
* | bugpoint: add -wires option.whitequark2020-12-071-3/+38
| |
* | bugpoint: try to remove whole processes first.whitequark2020-12-071-4/+40
| |
* | bugpoint: accept quoted strings in -grep.whitequark2020-12-071-1/+4
| |
* | bugpoint: add -command option.whitequark2020-12-071-13/+21
| |
* | check: add support for processes.whitequark2020-11-031-3/+38
| |
* | check: reformat log/help text to match most other passeswhitequark2020-11-031-19/+17
| |
* | use the new isPublic() in a few placesN. Engelhardt2020-09-144-5/+5
| |
* | Replace "ILANG" with "RTLIL" everywhere.whitequark2020-08-262-5/+5
|/ | | | | | | | | | The only difference between "RTLIL" and "ILANG" is that the latter is the text representation of the former, as opposed to the in-memory graph representation. This distinction serves no purpose but confuses people: it is not obvious that the ILANG backend writes RTLIL graphs. Passes `write_ilang` and `read_ilang` are provided as aliases to `write_rtlil` and `read_rtlil` for compatibility.
* Add new builtin FF typesMarcelina Kościelnicka2020-06-231-1/+4
| | | | | | | | | | | | | | The new types include: - FFs with async reset and enable (`$adffe`, `$_DFFE_[NP][NP][01][NP]_`) - FFs with sync reset (`$sdff`, `$_SDFF_[NP][NP][01]_`) - FFs with sync reset and enable, reset priority (`$sdffs`, `$_SDFFE_[NP][NP][01][NP]_`) - FFs with sync reset and enable, enable priority (`$sdffce`, `$_SDFFCE_[NP][NP][01][NP]_`) - FFs with async reset, set, and enable (`$dffsre`, `$_DFFSRE_[NP][NP][NP][NP]_`) - latches with reset or set (`$adlatch`, `$_DLATCH_[NP][NP][01]_`) The new FF types are not actually used anywhere yet (this is left for future commits).
* Use C++11 final/override keywords.whitequark2020-06-1837-93/+93
|
* splitnets: Clean up pseudo-private member usageAlberto Gonzalez2020-06-131-7/+6
|
* splitnets: Slightly improve efficiency by avoiding some unnecessary lookupsAlberto Gonzalez2020-06-131-9/+13
|
* splitnets: propagate (*hdlname*) and disambiguate via start_offset.whitequark2020-06-101-0/+4
| | | | This allows reliably coalescing the split wires later.
* Merge pull request #2085 from rswarbrick/selectclairexen2020-06-081-14/+19
|\ | | | | Silence warning in select.cc and pass some more args by ref
| * Pass some more args by reference in select.ccRupert Swarbrick2020-05-271-7/+7
| | | | | | | | | | | | | | | | | | Before this patch, the code passed around std::string objects by value. It's probably not a hot-spot, but it can't hurt to avoid the copying. Removing the copy and clean-up code means the resulting code is ~6.1kb smaller when compiled with GCC 9.3 and standard settings.
| * Minor optimisations in select.cc's match_ids functionRupert Swarbrick2020-05-271-9/+11
| | | | | | | | | | | | | | | | | | | | - Pass a string argument by reference - Avoid multiple calls to IdString::str and IdString::c_str - Avoid combining checks for size > 0 and first char (C strings are null terminated, so foo[0] != '\0' implies that foo has positive length)
| * Silence warning in select.ccRupert Swarbrick2020-05-271-1/+4
| | | | | | | | | | | | | | | | | | | | | | With GCC 9.3, at least, compiling select.cc spits out a warning about an implausible bound being passed to strncmp. This comes from inlining IdString::compare(): it turns out that passing std::string::npos as a bound to strncmp triggers it. This patch replaces the compare call with a memcmp with the same effect. The repeated calls to IdString::c_str are slightly inefficient, but I'll address that in a follow-up commit.
* | Merge pull request #2081 from YosysHQ/eddie/blackbox_astEddie Hung2020-05-301-25/+1
|\ \ | | | | | | blackbox: use Module::makeblackbox() method
| * | blackbox: re-use existing Module::makeblackbox() methodEddie Hung2020-05-251-25/+1
| |/
* | Add flooring division operatorXiretza2020-05-281-1/+1
| | | | | | | | | | | | | | | | | | | | The $div and $mod cells use truncating division semantics (rounding towards 0), as defined by e.g. Verilog. Another rounding mode, flooring (rounding towards negative infinity), can be used in e.g. VHDL. The new $divfloor cell provides this flooring division. This commit also fixes the handling of $div in opt_expr, which was previously optimized as if it was $divfloor.
* | Add flooring modulo operatorXiretza2020-05-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | The $div and $mod cells use truncating division semantics (rounding towards 0), as defined by e.g. Verilog. Another rounding mode, flooring (rounding towards negative infinity), can be used in e.g. VHDL. The new $modfloor cell provides this flooring modulo (also known as "remainder" in several languages, but this name is ambiguous). This commit also fixes the handling of $mod in opt_expr, which was previously optimized as if it was $modfloor.
* | printattrs: Simplify `get_indent_str()`.Alberto Gonzalez2020-05-281-3/+1
| | | | | | | | Co-Authored-By: Xiretza <xiretza@xiretza.xyz>
* | printattrs: Refactor indentation string building for clarity.Alberto Gonzalez2020-05-271-5/+11
| | | | | | | | Co-Authored-By: whitequark <whitequark@whitequark.org>
* | printattrs: Use `flags` to pretty-print the `RTLIL::Const` appropriately.Alberto Gonzalez2020-05-271-8/+15
| | | | | | | | Co-Authored-By: whitequark <whitequark@whitequark.org>
* | misc: Add `printattrs` command.Alberto Gonzalez2020-05-272-0/+80
|/
* log: Use `dict` instead of `std::vector<std::pair>` for `log_expect_{error, ↵Alberto Gonzalez2020-05-151-33/+6
| | | | warning, log}` to better express the intent that each element is unique.
* logger: clean up docEddie Hung2020-05-141-1/+2
|
* logger: fix for multiple calls with same patternEddie Hung2020-05-141-6/+34
|
* Add WASI platform support.whitequark2020-04-303-5/+15
| | | | | | | | | | | | This includes the following significant changes: * Patching ezsat and minisat to disable resource limiting code on WASM/WASI, since the POSIX functions they use are unavailable. * Adding a new definition, YOSYS_DISABLE_SPAWN, present if platform does not support spawning subprocesses (i.e. Emscripten or WASI). This definition hides the definition of `run_command()`. * Adding a new Makefile flag, DISABLE_SPAWN, present in the same condition. This flag disables all passes that require spawning subprocesses for their function.
* bugpoint: improve messagingEddie Hung2020-04-241-7/+7
|
* bugpoint: (* keep *) to (* bugpoint_keep *); also apply to modules/cellsEddie Hung2020-04-241-5/+14
|
* bugpoint: skip ports with (* keep *) on; add headerEddie Hung2020-04-241-9/+18
|
* bugpoint: improve help textEddie Hung2020-04-231-11/+13
|
* Merge pull request #1949 from YosysHQ/eddie/select_blackboxEddie Hung2020-04-221-9/+26
|\ | | | | select: do not select inside black-/white- boxes unless '=' prefix used
| * Update passes/cmds/select.ccClaire Wolf2020-04-221-2/+2
| | | | | | Co-Authored-By: Eddie Hung <eddie@fpgeh.com>
| * select: do not select black/white boxes by default, '=' prefix to do soEddie Hung2020-04-221-5/+5
| |
| * Add '=' selection pattern prefix for non-blackbox only patternsClaire Wolf2020-04-211-12/+26
| | | | | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com>
| * select: do not select inside blackboxesEddie Hung2020-04-161-0/+3
| |
* | Merge pull request #1950 from YosysHQ/eddie/design_importEddie Hung2020-04-221-2/+8
|\ \ | | | | | | design: -import to not count black/white-boxes as candidates for top
| * | design: -import to not count black/white-boxes as candidates for topEddie Hung2020-04-161-2/+8
| |/
* | bugpoint: Don't remove modules or cells while iterating over them.Marcelina Kościelnicka2020-04-221-4/+14
| | | | | | | | Reported by @ZirconiumX.
* | Merge pull request #1888 from boqwxp/cleanup_scatterwhitequark2020-04-171-17/+11
|\ \ | | | | | | Clean up `passes/cmds/scatter.cc`.
| * | Replace `std::map` with `dict`.Alberto Gonzalez2020-04-161-2/+2
| | | | | | | | | | | | Co-Authored-By: Eddie Hung <eddie@fpgeh.com>
| * | Replace pseudo-private member access to `connections_` in ↵Alberto Gonzalez2020-04-161-13/+10
| | | | | | | | | | | | | | | | | | `passes/cmds/scatter.cc`. Co-Authored-By: N. Engelhardt <nak@symbioticeda.com>
| * | Clean up `passes/cmds/scatter.cc`.Alberto Gonzalez2020-04-161-10/+7
| |/
* | Merge pull request #1882 from boqwxp/cleanup_renamewhitequark2020-04-171-119/+103
|\ \ | | | | | | Clean up pseudo-private member usage in `passes/cmds/rename.cc`.
| * | Use `dict` instead of `std::map`.Alberto Gonzalez2020-04-161-9/+9
| | | | | | | | | | | | Co-Authored-By: Eddie Hung <eddie@fpgeh.com>