Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | duplicated enum item names should result in an error | Jeff Wang | 2020-04-07 | 1 | -2/+3 | |
|/ | ||||||
* | Merge pull request #1853 from YosysHQ/eddie/fix_dynslice | Eddie Hung | 2020-04-02 | 1 | -1/+2 | |
|\ | | | | | ast: cap dynamic range select to size of signal, suppresses warnings | |||||
| * | ast: cap dynamic range select to size of signal, suppresses warnings | Eddie Hung | 2020-04-01 | 1 | -1/+2 | |
| | | ||||||
* | | kernel: big fat patch to use more ID::*, otherwise ID(*) | Eddie Hung | 2020-04-02 | 3 | -182/+170 | |
| | | ||||||
* | | kernel: use more ID::* | Eddie Hung | 2020-04-02 | 3 | -53/+53 | |
| | | ||||||
* | | Merge pull request #1845 from YosysHQ/eddie/kernel_speedup | Eddie Hung | 2020-04-02 | 2 | -37/+43 | |
|\ \ | | | | | | | kernel: speedup by using more pass-by-const-ref | |||||
| * | | kernel: more pass by const ref, more speedups | Eddie Hung | 2020-03-18 | 2 | -37/+43 | |
| | | | ||||||
* | | | Merge pull request #1848 from YosysHQ/eddie/fix_dynslice | Claire Wolf | 2020-04-01 | 1 | -1/+1 | |
|\ \ \ | | |/ | |/| | ast: simplify to fully populate dynamic slicing case transformation | |||||
| * | | ast: simplify to fully populate dynamic slicing case transformation | Eddie Hung | 2020-03-31 | 1 | -1/+1 | |
| |/ | ||||||
* | | Merge pull request #1783 from boqwxp/astcc_cleanup | Eddie Hung | 2020-03-30 | 1 | -13/+20 | |
|\ \ | | | | | | | Clean up pseudo-private member usage in `frontends/ast/ast.cc`. | |||||
| * | | Add explanatory comment about inefficient wire removal and remove ↵ | Alberto Gonzalez | 2020-03-30 | 1 | -4/+8 | |
| | | | | | | | | | | | | | | | | | | superfluous call to `fixup_ports()`. Co-Authored-By: Eddie Hung <eddie@fpgeh.com> | |||||
| * | | Revert over-aggressive change to a more modest cleanup. | Alberto Gonzalez | 2020-03-27 | 1 | -2/+3 | |
| | | | ||||||
| * | | Clean up pseudo-private member usage in `frontends/ast/ast.cc`. | Alberto Gonzalez | 2020-03-19 | 1 | -11/+13 | |
| |/ | ||||||
* | | Merge pull request #1607 from whitequark/simplify-simplify-meminit | Claire Wolf | 2020-03-27 | 1 | -63/+82 | |
|\ \ | | | | | | | ast: avoid intermediate wires/assigns when lowering to AST_MEMINIT | |||||
| * | | ast: avoid intermediate wires/assigns when lowering to AST_MEMINIT. | whitequark | 2020-02-07 | 1 | -65/+84 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, every initial assignment to a memory generated two wires and four assigns in a process. For unknown reasons (I did not investigate), large amounts of assigns cause quadratic slowdown later in the AST frontend, in processAst/removeSignalFromCaseTree. As a consequence, common and reasonable Verilog code, such as: reg [`WIDTH:0] mem [0:`DEPTH]; integer i; initial for (i = 0; i <= `DEPTH; i++) mem[i] = 0; took extremely long time to be processed; around 80 s for a 8-wide, 8192-deep memory. After this commit, initial assignments where address and/or data are constant (after `generate`) do not incur the cost of intermediate wires; expressions like `mem[i+1]=i^(i<<1)` are considered constant. This results in speedups of orders of magnitude for common memory sizes; it now takes merely 0.4 s to process a 8-wide, 8192-deep memory, and only 5.8 s to process a 8-wide, 131072-deep one. As a bonus, this change also results in nontrivial speedups later in the synthesis pipeline, since pass sequencing issues meant that all of these intermediate wires were subject to transformations such as width reduction, even though they existed solely to be constant folded away in `memory_collect`. | |||||
* | | | Simplify was not being called for packages. Broke typedef enums. | Peter Crozier | 2020-03-22 | 1 | -5/+8 | |
| | | | ||||||
* | | | Fix NDEBUG warnings | Eddie Hung | 2020-03-19 | 1 | -1/+1 | |
| | | | ||||||
* | | | Add precise locations for asserts | huaixv | 2020-03-19 | 1 | -0/+1 | |
| |/ |/| | ||||||
* | | Merge pull request #1718 from boqwxp/precise_locations | Claire Wolf | 2020-03-03 | 4 | -267/+253 | |
|\ \ | | | | | | | Closes #1717. Add more precise Verilog source location information to AST and RTLIL nodes. | |||||
| * | | Closes #1717. Add more precise Verilog source location information to AST ↵ | Alberto Gonzalez | 2020-02-23 | 4 | -267/+253 | |
| | | | | | | | | | | | | and RTLIL nodes. | |||||
* | | | Merge pull request #1681 from YosysHQ/eddie/fix1663 | Claire Wolf | 2020-03-03 | 1 | -15/+13 | |
|\ \ \ | | | | | | | | | verilog: instead of modifying localparam size, extend init constant expr | |||||
| * | | | verilog: instead of modifying localparam size, extend init constant expr | Eddie Hung | 2020-02-05 | 1 | -15/+13 | |
| | |/ | |/| | ||||||
* | | | Merge pull request #1724 from YosysHQ/eddie/abc9_specify | Eddie Hung | 2020-03-02 | 2 | -12/+20 | |
|\ \ \ | | | | | | | | | abc9: auto-generate *.lut/*.box files and arrival/required times from specify entries | |||||
| * | | | ast: quiet down when deriving blackbox modules | Eddie Hung | 2020-02-27 | 2 | -12/+20 | |
| | |/ | |/| | ||||||
* | | | ast: fixes #1710; do not generate RTLIL for unreachable ternary | Eddie Hung | 2020-02-27 | 1 | -9/+22 | |
| | | | ||||||
* | | | Comment out log() | Eddie Hung | 2020-02-27 | 1 | -1/+1 | |
|/ / | ||||||
* | | Merge pull request #1703 from YosysHQ/eddie/specify_improve | Eddie Hung | 2020-02-21 | 1 | -7/+11 | |
|\ \ | | | | | | | Improve specify parser | |||||
| * | | verilog: fix $specify3 check | Eddie Hung | 2020-02-13 | 1 | -7/+11 | |
| | | | ||||||
* | | | Merge pull request #1642 from jjj11x/jjj11x/sv-enum | Claire Wolf | 2020-02-20 | 4 | -16/+221 | |
|\ \ \ | |/ / |/| | | Enum support | |||||
| * | | remove unnecessary blank line | Jeff Wang | 2020-02-17 | 1 | -2/+1 | |
| | | | ||||||
| * | | add attributes for enumerated values in ilang | Jeff Wang | 2020-02-17 | 2 | -1/+68 | |
| | | | | | | | | | | | | | | | | | | - information also useful for strongly-typed enums (not implemented) - resolves enum values in ilang part of #1594 - still need to output enums to VCD (or better yet FST) files | |||||
| * | | separate out enum_item/param implementation when they should be different | Jeff Wang | 2020-02-17 | 1 | -7/+16 | |
| | | | ||||||
| * | | fix bug introduced by not taking all of PeterCrozier's changes in 16ea4ea6 | Jeff Wang | 2020-01-17 | 1 | -4/+6 | |
| | | | | | | | | | | | | | | | | | | | | | | | | The if(str == node->str) is in fact necessary (otherwise causes generate for in Multiplier_2D in tests/simple/multiplier.v to fail with error message "Right hand side of 3rd expression of generate for-loop is not constant!"). Note: in PeterCrozier's implementation, the break only breaks out of the switch-case, not the outer for loop. | |||||
| * | | fix enum in generate blocks | Jeff Wang | 2020-01-16 | 1 | -0/+20 | |
| | | | ||||||
| * | | allow enums to be declared at toplevel scope | Jeff Wang | 2020-01-16 | 1 | -0/+7 | |
| | | | ||||||
| * | | partial rebase of PeterCrozier's enum work onto current master | Jeff Wang | 2020-01-16 | 4 | -16/+117 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I tried to keep only the enum-related changes, and minimize the diff. (The original commit also had a lot of work done to get typedefs working, but yosys has diverged quite a bit since the 2018-03-09 commit, with a new typedef implementation.) I did not include the import related changes either. Original commit: "Initial implementation of enum, typedef, import. Still a WIP." https://github.com/PeterCrozier/yosys/commit/881833aa738e7404987646ea8076284e911fce3f | |||||
* | | | Modified $readmem[hb] to use '\' or '/' according the OS | Rodrigo Alejandro Melo | 2020-02-06 | 1 | -1/+6 | |
| | | | | | | | | | | | | Signed-off-by: Rodrigo Alejandro Melo <rmelo@inti.gob.ar> | |||||
* | | | Merge branch 'master' of https://github.com/YosysHQ/yosys | Rodrigo Alejandro Melo | 2020-02-03 | 2 | -93/+110 | |
|\ \ \ | | |/ | |/| | | | | | | | | | | Solved a conflict into the CHANGELOG Signed-off-by: Rodrigo Alejandro Melo <rmelo@inti.gob.ar> | |||||
| * | | ast: Add support for $sformatf system function | David Shah | 2020-01-19 | 2 | -93/+110 | |
| |/ | | | | | | | Signed-off-by: David Shah <dave@ds0.me> | |||||
* | | Replaced strlen by GetSize into simplify.cc | Rodrigo Alejandro Melo | 2020-02-03 | 1 | -2/+2 | |
| | | | | | | | | | | | | As recommended in CodingReadme. Signed-off-by: Rodrigo Alejandro Melo <rmelo@inti.gob.ar> | |||||
* | | Fixed a bug in the new feature of $readmem[hb] when an empty string is provided | Rodrigo Alejandro Melo | 2020-02-01 | 1 | -1/+1 | |
| | | | | | | | | Signed-off-by: Rodrigo Alejandro Melo <rodrigomelo9@gmail.com> | |||||
* | | Modified the new search for files of $readmem[hb] to be backward compatible | Rodrigo Alejandro Melo | 2020-01-31 | 1 | -3/+7 | |
| | | | | | | | | Signed-off-by: Rodrigo Alejandro Melo <rodrigomelo9@gmail.com> | |||||
* | | $readmem[hb] file inclusion is now relative to the Verilog file | Rodrigo Alejandro Melo | 2020-01-31 | 1 | -1/+2 | |
|/ | | | | Signed-off-by: Rodrigo Alejandro Melo <rodrigomelo9@gmail.com> | |||||
* | Stray log_dump | Eddie Hung | 2019-12-11 | 1 | -1/+0 | |
| | ||||||
* | Preserve size of $genval$-s in for loops | Eddie Hung | 2019-12-11 | 1 | -0/+17 | |
| | ||||||
* | Use "(id)" instead of "id" for types as temporary hack | Clifford Wolf | 2019-10-14 | 4 | -9/+118 | |
|\ | | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at> | |||||
| * | frontends/ast: code style | David Shah | 2019-10-03 | 1 | -2/+1 | |
| | | | | | | | | Signed-off-by: David Shah <dave@ds0.me> | |||||
| * | sv: Fix typedefs in blocks | David Shah | 2019-10-03 | 1 | -2/+2 | |
| | | | | | | | | Signed-off-by: David Shah <dave@ds0.me> | |||||
| * | sv: Add support for memories of a typedef | David Shah | 2019-10-03 | 1 | -6/+20 | |
| | | | | | | | | Signed-off-by: David Shah <dave@ds0.me> | |||||
| * | sv: Add support for memory typedefs | David Shah | 2019-10-03 | 1 | -2/+15 | |
| | | | | | | | | Signed-off-by: David Shah <dave@ds0.me> |