aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #1283 from YosysHQ/clifford/fix1255Clifford Wolf2019-08-171-1/+1
|\ | | | | Fix various NDEBUG compiler warnings
| * Merge branch 'master' into clifford/fix1255Clifford Wolf2019-08-1511-1207/+1271
| |\
| * | Fix various NDEBUG compiler warnings, closes #1255Clifford Wolf2019-08-131-1/+1
| | | | | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | | Move namespace aliasEddie Hung2019-08-161-2/+1
| | |
* | | Try this for gcc-4.8?Eddie Hung2019-08-151-1/+1
| | |
* | | Fix spacingEddie Hung2019-08-151-1/+1
| | |
* | | Use more ID::{A,B,Y,blackbox,whitebox}Eddie Hung2019-08-158-286/+288
| | |
* | | More use of IdString::in()Eddie Hung2019-08-151-26/+25
| |/ |/|
* | Add YOSYS_NO_IDS_REFCNT configuration macroClifford Wolf2019-08-112-2/+25
| | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | Use ID() in kernel/*, add simple ID:: hack (to be improved upon later)Clifford Wolf2019-08-1110-1160/+1182
| | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | More improvements and cleanups in IdString subsystemClifford Wolf2019-08-113-43/+54
| | | | | | | | | | | | | | | | | | - better use of "inline" keyword - deprecate "sticky" IDs feature - improve handling of empty ID - add move constructor Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | Improve API of ID() macroClifford Wolf2019-08-111-2/+10
|/ | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Merge pull request #1258 from YosysHQ/eddie/cleanupClifford Wolf2019-08-108-86/+90
|\ | | | | Cleanup a few barnacles across codebase
| * substr() -> compare()Eddie Hung2019-08-072-32/+32
| |
| * RTLIL::S{0,1} -> State::S{0,1} for headersEddie Hung2019-08-075-40/+40
| |
| * RTLIL::S{0,1} -> State::S{0,1}Eddie Hung2019-08-071-6/+6
| |
| * Merge remote-tracking branch 'origin/master' into eddie/cleanupEddie Hung2019-08-075-80/+96
| |\
| * | stoi -> atoiEddie Hung2019-08-071-3/+3
| | |
| * | Fix typosEddie Hung2019-08-062-4/+4
| | |
| * | Use std::stoi instead of atoi(<str>.c_str())Eddie Hung2019-08-061-3/+3
| | |
| * | Use IdString::begins_with()Eddie Hung2019-08-062-7/+11
| | |
| * | Make liberal use of IdString.in()Eddie Hung2019-08-061-1/+1
| | |
* | | Automatically prune init attributes in verific front-end, fixes #1237Clifford Wolf2019-08-071-5/+14
| |/ |/| | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | Merge pull request #1213 from YosysHQ/eddie/wreduce_addClifford Wolf2019-08-071-0/+2
|\ \ | | | | | | wreduce/opt_expr: improve width reduction for $add and $sub cells
| * | Add SigSpec::extract_end() convenience functionEddie Hung2019-08-061-0/+1
| | |
| * | Restore original SigSpec::extract()Eddie Hung2019-08-061-1/+1
| | |
| * | Merge remote-tracking branch 'origin/master' into eddie/wreduce_addEddie Hung2019-08-0610-28/+184
| |\|
| * | Add an SigSpec::at(offset, defval) convenience methodEddie Hung2019-07-191-0/+1
| | |
| * | SigSpec::extract to take negative lengthsEddie Hung2019-07-191-1/+1
| | |
* | | Merge pull request #1253 from YosysHQ/clifford/checkClifford Wolf2019-08-073-9/+17
|\ \ \ | | | | | | | | Be less aggressive with running design->check()
| * | | Be less aggressive with running design->check()Clifford Wolf2019-08-063-9/+17
| | | | | | | | | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | | | Tweak default gate costs, cleanup "stat -tech cmos"Clifford Wolf2019-08-071-4/+4
| | | | | | | | | | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | | | Redesign of cell cost APIClifford Wolf2019-08-071-71/+77
| |_|/ |/| | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | | Add support for writing gzip-compressed filesDavid Shah2019-08-061-7/+60
|/ / | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | Add $_NMUX_, add "abc -g cmos", add proper cmos cell costsClifford Wolf2019-08-067-9/+46
| | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | New mxe hacks needed to support 2ca237eMiodrag Milanovic2019-08-011-0/+4
| |
* | Fix case when file does not existMiodrag Milanovic2019-07-291-19/+21
| |
* | Merge pull request #1226 from YosysHQ/dave/gzipDavid Shah2019-07-272-9/+52
|\ \ | | | | | | Add support for gzip'd input files
| * | Fix frontend auto-detection for gzipped inputDavid Shah2019-07-261-9/+12
| | | | | | | | | | | | Signed-off-by: David Shah <dave@ds0.me>
| * | Add support for reading gzip'd input filesDavid Shah2019-07-261-0/+40
| |/ | | | | | | Signed-off-by: David Shah <dave@ds0.me>
* | replaced std::iterator with using statementsJakob Wenzel2019-07-251-6/+6
| |
* | made ObjectIterator extend std::iteratorJakob Wenzel2019-07-242-2/+19
|/ | | | this makes it possible to use std algorithms on them
* Revert "Add log_checkpoint function and use it in opt_muxtree"Eddie Hung2019-07-152-8/+0
| | | | This reverts commit 0e6c83027f24cdf7082606a5631468ad28f41574.
* Redesign log_id_cache so that it doesn't keep IdString instances referenced, ↵Clifford Wolf2019-07-151-6/+13
| | | | | | fixes #1178 Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Add log_checkpoint function and use it in opt_muxtreeClifford Wolf2019-07-152-0/+8
| | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* Merge pull request #1162 from whitequark/rtlil-case-attrsClifford Wolf2019-07-091-1/+1
|\ | | | | Allow attributes on individual switch cases in RTLIL
| * Allow attributes on individual switch cases in RTLIL.whitequark2019-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parser changes are slightly awkward. Consider the following IL: process $0 <point 1> switch \foo <point 2> case 1'1 assign \bar \baz <point 3> ... case end end Before this commit, attributes are valid in <point 1>, and <point 3> iff it is immediately followed by a `switch`. (They are essentially attached to the switch.) But, after this commit, and because switch cases do not have an ending delimiter, <point 3> becomes ambiguous: the attribute could attach to either the following `case`, or to the following `switch`. This isn't expressible in LALR(1) and results in a reduce/reduce conflict. To address this, attributes inside processes are now valid anywhere inside the process: in <point 1> and <point 3> a part of case body, and in <point 2> as a separate rule. As a consequence, attributes can now precede `assign`s, which is made illegal in the same way it is illegal to attach attributes to `connect`. Attributes are tracked separately from the parser state, so this does not affect collection of attributes at all, other than allowing them on `case`s. The grammar change serves purely to allow attributes in more syntactic places.
* | Clarify script -scriptwire docEddie Hung2019-07-081-0/+4
|/
* Use Pass::call_on_module() as per @cliffordwolf commentsEddie Hung2019-07-021-1/+1
|
* script -select -> script -scriptwireEddie Hung2019-07-021-5/+5
|