aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
Commit message (Collapse)AuthorAgeFilesLines
* Add WASI platform support.whitequark2020-04-304-10/+40
| | | | | | | | | | | | 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.
* Merge pull request #1992 from YosysHQ/eddie/bugpoint_helpEddie Hung2020-04-271-0/+1
|\ | | | | bugpoint: improve help text
| * bugpoint: (* keep *) to (* bugpoint_keep *); also apply to modules/cellsEddie Hung2020-04-241-0/+1
| |
* | verific: do not assert if wire not found; warn insteadEddie Hung2020-04-231-0/+1
|/
* kernel: Cell::getParam() to throw exception again if not foundEddie Hung2020-04-221-3/+2
| | | | As it did before #1945
* Merge pull request #1969 from boqwxp/pool_emplaceEddie Hung2020-04-221-2/+32
|\ | | | | kernel: Add `pool` support for rvalue references and C++11 move semantics.
| * pool: add emplace() functionEddie Hung2020-04-221-0/+6
| |
| * kernel: Rename arguments to rvalue-reference-accepting functions.Alberto Gonzalez2020-04-211-8/+8
| |
| * Add rvalue-reference-accepting `entry_t` constructor for `pool`.Alberto Gonzalez2020-04-201-0/+1
| |
| * In `pool`, construct `entry_t`s in-place and add an ↵Alberto Gonzalez2020-04-201-2/+25
| | | | | | | | rvalue-accepting-and-forwarding `insert()` method.
* | Use default parameter value in getParamMarcelina Kościelnicka2020-04-211-1/+10
| | | | | | | | Fixes #1822.
* | ilang, ast: Store parameter order and default value information.Marcelina Kościelnicka2020-04-212-2/+4
| | | | | | | | Fixes #1819, #1820.
* | idict: Make iterator go forward.Marcelina Kościelnicka2020-04-211-5/+19
|/ | | | Previously, iterating over an idict returned its contents in reverse.
* rtlil: add AttrObject::has_attribute.whitequark2020-04-162-0/+7
|
* rtlil: add AttrObject::{get,set}_string_attribute.whitequark2020-04-162-19/+26
| | | | And make {get,set}_src_attribute use those functions.
* Merge pull request #1896 from boqwxp/read_stdin_replwhitequark2020-04-161-3/+4
|\ | | | | Frontend: allow reading file input from stdin, like a REPL heredoc mode
| * Use script-style heredoc syntax for REPL heredocs.Alberto Gonzalez2020-04-151-7/+7
| |
| * Allow reading file input from stdin, improving REPL experience.Alberto Gonzalez2020-04-151-6/+7
| |
* | Merge pull request #1927 from YosysHQ/eddie/design_remove_assertEddie Hung2020-04-161-0/+1
|\ \ | | | | | | kernel: Design::remove(RTLIL::Module *) to check refcount_modules_
| * | kernel: Design::remove(RTLIL::Module *) to check refcount_modules_Eddie Hung2020-04-141-0/+1
| | |
* | | Merge pull request #1915 from boqwxp/dict_move_semanticswhitequark2020-04-161-4/+68
|\ \ \ | | | | | | | | kernel: Add `dict` support for rvalue references and C++11 move semantics.
| * | | Rename overloaded `insert()` to `emplace()` and add overloaded versions for ↵Alberto Gonzalez2020-04-161-1/+31
| | | | | | | | | | | | | | | | all possible lvalue/rvalue combinationsfor its arguments.
| * | | Add `dict` support for rvalue references and C++11 move semantics.Alberto Gonzalez2020-04-131-4/+38
| |/ /
* | | Merge pull request #1894 from YosysHQ/mingw_fixMiodrag Milanović2020-04-151-0/+4
|\ \ \ | | | | | | | | Fix compile for mingw
| * | | Fix compile for mingwMiodrag Milanovic2020-04-151-0/+4
| | |/ | |/|
* | | Merge pull request #1916 from YosysHQ/eddie/kernel_makeblackboxEddie Hung2020-04-151-0/+2
|\ \ \ | | | | | | | | kernel: Module::makeblackbox() to clear connections too
| * | | kernel: Module::makeblackbox() to clear connections tooEddie Hung2020-04-131-0/+2
| | |/ | |/|
* | | Merge pull request #1830 from boqwxp/qbfsatN. Engelhardt2020-04-151-0/+7
|\ \ \ | |/ / |/| | Add `qbfsat` command to integrate exists-forall solving and specialization
| * | Hole value recovery and specialization implementation for `qbfsat` command.Alberto Gonzalez2020-04-041-0/+7
| | |
* | | Support custom PROGRAM_PREFIXMiodrag Milanovic2020-04-102-1/+11
| |/ |/|
* | Merge pull request #1562 from whitequark/write_cxxrtlwhitequark2020-04-102-0/+5
|\ \ | | | | | | write_cxxrtl: new backend
| * | write_cxxrtl: new backend.whitequark2020-04-092-0/+5
| | | | | | | | | | | | | | | This commit adds a basic implementation that isn't very performant but implements most of the planned features.
* | | Merge pull request #1858 from YosysHQ/eddie/fix1856Eddie Hung2020-04-093-3/+3
|\ \ \ | | | | | | | | kernel: include "kernel/constids.inc"
| * | | kernel: include "kernel/constids.inc" instead of "constids.inc"Eddie Hung2020-04-093-3/+3
| |/ /
* / / [NFCI] Deduplicate builtin FF cell types listMarcelina Kościelnicka2020-04-092-0/+49
|/ / | | | | | | | | | | | | | | | | A few passes included the same list of FF cell types. Make it a global const instead. The zinit pass also seems to include a list like that, but given that it seems to be completely broken at the time (see #1568 discussion), I'm going to pretend I didn't see that.
* | kernel: big fat patch to use more ID::*, otherwise ID(*)Eddie Hung2020-04-0210-679/+822
| |
* | kernel: IdString::in(const IdString &) as per @TjoppenEddie Hung2020-04-021-1/+1
| |
* | kernel: fix formatting (thanks @boqwxp)Eddie Hung2020-04-021-6/+4
| |
* | kernel: use C++11 fold hack to prevent recursionEddie Hung2020-04-021-3/+8
| |
* | Revert "kernel: IdString:in() to use perfect forwarding"Eddie Hung2020-04-021-2/+2
| | | | | | | | This reverts commit 7b2a85aedf24affc2e1202c78e70e6a317f5bf29.
* | kernel: separate IdString::put_reference() out to help inliningEddie Hung2020-04-021-1/+4
| |
* | kernel: IdString:in() to use perfect forwardingEddie Hung2020-04-021-2/+2
| |
* | kernel: Use constids.inc for global/constant IdStringsEddie Hung2020-04-024-17/+37
| |
* | Merge pull request #1845 from YosysHQ/eddie/kernel_speedupEddie Hung2020-04-024-505/+477
|\ \ | | | | | | kernel: speedup by using more pass-by-const-ref
| * | kernel: pass-by-value into Design::scratchpad_set_string() tooEddie Hung2020-03-272-3/+3
| | |
| * | kernel: const Wire* overload -> Wire* !!!Eddie Hung2020-03-261-1/+1
| | |
| * | kernel: Cell::set{Port,Param}() to pass by value, but use std::moveEddie Hung2020-03-262-7/+7
| | | | | | | | | | | | Otherwise cell->setPort(ID::A, cell->getPort(ID::B)) could be invalid
| * | kernel: SigSpec copies to not trigger pack()Eddie Hung2020-03-182-34/+5
| | |
| * | kernel: more pass by const ref, more speedupsEddie Hung2020-03-183-361/+355
| | |
| * | kernel: speedupEddie Hung2020-03-181-30/+23
| | |