Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | glift: Initial implementation of GLIFT model construction. | Alberto Gonzalez | 2020-07-01 | 1 | -2/+173 |
| | |||||
* | glift: Add skeleton for `glift` command. | Alberto Gonzalez | 2020-07-01 | 2 | -0/+51 |
| | |||||
* | Merge pull request #2138 from boqwxp/qbfsat-oflag | clairexen | 2020-07-01 | 1 | -16/+47 |
|\ | | | | | qbfsat: Add `-O[012]` options to control pre-solving simplification with ABC | ||||
| * | qbfsat: Add `-O[012]` options to control pre-solving simplification with ABC. | Alberto Gonzalez | 2020-06-30 | 1 | -16/+47 |
| | | | | | | | | | | | | Thanks to @mwk for the gate mapping part of the ABC scripts. Co-Authored-By: Marcelina Kościelnicka <mwk@0x04.net> | ||||
* | | Merge pull request #2206 from boqwxp/qbfsat-fix-name-specialization | clairexen | 2020-07-01 | 1 | -2/+24 |
|\ \ | | | | | | | qbfsat: Fix name-based hole specialization | ||||
| * | | qbfsat: Fix name-based hole specialization. | Alberto Gonzalez | 2020-06-30 | 1 | -2/+24 |
| |/ | | | | | | | Look for unique connections in the containing module with the $anyconst port Y SigBit on the RHS and use those. If no such connection is found, fall back to using the name of the $anyconst port Y SigBit. | ||||
* | | Merge pull request #2199 from YosysHQ/mmicko/sim_memory | clairexen | 2020-06-30 | 1 | -1/+4 |
|\ \ | | | | | | | sim - error when memrd and memwr detected | ||||
| * | | sim - error when memrd and memwr detected | Miodrag Milanovic | 2020-06-29 | 1 | -1/+4 |
| | | | |||||
* | | | Merge pull request #2201 from YosysHQ/fix_test_cell_ilang | clairexen | 2020-06-30 | 1 | -2/+2 |
|\ \ \ | | | | | | | | | Use ID macro to fix assertion | ||||
| * | | | Use ID macro to fix assertion | Miodrag Milanovic | 2020-06-29 | 1 | -2/+2 |
| |/ / | |||||
* | / | techmap: don't drop attributes on replaced cells. | whitequark | 2020-06-29 | 1 | -2/+3 |
| |/ |/| | | | | | | | | | This was introduced in 76c4ee4ea5cb6a3dc214f66237af22a1bedda010. Fixes #2204. | ||||
* | | Merge pull request #2200 from YosysHQ/mmicko/fix_expose | Miodrag Milanović | 2020-06-29 | 1 | -7/+23 |
|\ \ | | | | | | | expose pass fix | ||||
| * | | Give error that options are exclusive | Miodrag Milanovic | 2020-06-29 | 1 | -2/+6 |
| | | | |||||
| * | | cleanup | Miodrag Milanovic | 2020-06-29 | 1 | -12/+13 |
| | | | |||||
| * | | expose pass fix | Miodrag Milanovic | 2020-06-29 | 1 | -5/+16 |
| |/ | |||||
* / | test_cell: don't generate directional shifts with \B_SIGNED=1 | Xiretza | 2020-06-28 | 1 | -0/+4 |
|/ | | | | | This was made an explicit error in e97e33d, "kernel: require \B_SIGNED=0 on $shl, $sshl, $shr, $sshr.". | ||||
* | Merge pull request #2168 from whitequark/assert-unused-exprs | clairexen | 2020-06-25 | 5 | -20/+20 |
|\ | | | | | Use (and ignore) the expression provided to log_assert in NDEBUG builds | ||||
| * | Use [[maybe_unused]] instead of YS_ATTRIBUTE(unused). | whitequark | 2020-06-19 | 1 | -10/+10 |
| | | | | | | | | | | [[maybe_unused]] is available since C++17, so this commit adds a polyfill YS_MAYBE_UNUSED. Once we require C++17 we can drop it. | ||||
| * | Remove YS_ATTRIBUTE(unused) where present just for log_assert()/log_debug(). | whitequark | 2020-06-19 | 4 | -10/+10 |
| | | |||||
* | | Merge pull request #2135 from boqwxp/qbfsat-timeinfo | clairexen | 2020-06-25 | 1 | -1/+6 |
|\ \ | | | | | | | log and qbfsat: Also include child process usage in `PerformanceTimer::query()` and report the time for each call to the QBF-SAT solver | ||||
| * | | log, qbfsat: Include child process time in `PerformanceTimer::query()` and ↵ | Alberto Gonzalez | 2020-06-21 | 1 | -1/+6 |
| | | | | | | | | | | | | report the time for each call to the QBF-SAT solver. | ||||
* | | | Merge pull request #2093 from boqwxp/qbfsat-bugfixes | clairexen | 2020-06-25 | 1 | -86/+136 |
|\| | | | | | | | | qbfsat: Multiple bugfixes | ||||
| * | | qbfsat: Simplify solution recovery parsing and tweak the solution regexes. | Alberto Gonzalez | 2020-06-21 | 1 | -22/+12 |
| | | | |||||
| * | | qbfsat: Avoid instantiating `AttrObject`s directly. | Alberto Gonzalez | 2020-06-21 | 1 | -9/+6 |
| | | | | | | | | | | | | Co-Authored-By: Claire Wolf <claire@symbioticeda.com> | ||||
| * | | qbfsat: Simplify solution format and replace `SigBit::str()` with ↵ | Alberto Gonzalez | 2020-06-21 | 1 | -19/+37 |
| | | | | | | | | | | | | | | | | | | `log_signal()`. Co-Authored-By: Claire Wolf <claire@symbioticeda.com> | ||||
| * | | qbfsat: Fixes three bugs. | Alberto Gonzalez | 2020-06-21 | 1 | -5/+17 |
| | | | | | | | | | | | | | | | | | | 1. Infinite loop in the optimization procedure when the first solution found while maximizing is at zero. 2. A signed-ness issue when maximizing. 3. Erroneously entering bisection mode with no wire to optimize. | ||||
| * | | qbfsat: Use bit precise mapping for hole value wires and a more robust hole ↵ | Alberto Gonzalez | 2020-06-21 | 1 | -80/+113 |
| |/ | | | | | | | spec for writing to and specializing from a solution file. | ||||
* | | simplemap: Fix $dffsre mapping. | Marcelina Kościelnicka | 2020-06-23 | 1 | -1/+1 |
| | | |||||
* | | Update dff2dffe, dff2dffs, zinit to new FF types. | Marcelina Kościelnicka | 2020-06-23 | 3 | -43/+73 |
| | | |||||
* | | Add new FF types to simplemap. | Marcelina Kościelnicka | 2020-06-23 | 1 | -8/+133 |
| | | |||||
* | | Add support for new FF types in some opt passes. | Marcelina Kościelnicka | 2020-06-23 | 3 | -14/+53 |
| | | |||||
* | | Add new builtin FF types | Marcelina Kościelnicka | 2020-06-23 | 1 | -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). | ||||
* | Merge pull request #2173 from whitequark/use-cxx11-final-override | whitequark | 2020-06-19 | 153 | -340/+340 |
|\ | | | | | Use C++11 final/override/[[noreturn]] | ||||
| * | Use C++11 final/override keywords. | whitequark | 2020-06-18 | 153 | -340/+340 |
| | | |||||
* | | cutpoint: Improve efficiency by iterating over module ports instead of ↵ | Alberto Gonzalez | 2020-06-18 | 1 | -9/+10 |
|/ | | | | module wires. | ||||
* | Merge pull request #2153 from boqwxp/splitnets-cleanup | N. Engelhardt | 2020-06-18 | 1 | -16/+19 |
|\ | | | | | splitnets: Cleanup and efficiency improvements | ||||
| * | splitnets: Clean up pseudo-private member usage | Alberto Gonzalez | 2020-06-13 | 1 | -7/+6 |
| | | |||||
| * | splitnets: Slightly improve efficiency by avoiding some unnecessary lookups | Alberto Gonzalez | 2020-06-13 | 1 | -9/+13 |
| | | |||||
* | | Merge pull request #2142 from whitequark/splitnets-hdlname | whitequark | 2020-06-18 | 1 | -0/+4 |
|\| | | | | | splitnets: propagate (*hdlname*) and disambiguate via start_offset | ||||
| * | splitnets: propagate (*hdlname*) and disambiguate via start_offset. | whitequark | 2020-06-10 | 1 | -0/+4 |
| | | | | | | | | This allows reliably coalescing the split wires later. | ||||
* | | msvc does not support designated initializers in structs | Anonymous Maarten | 2020-06-17 | 1 | -5/+5 |
|/ | |||||
* | Drive-by modernization in sat.cc | Claire Wolf | 2020-06-09 | 1 | -4/+4 |
| | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com> | ||||
* | Do not optimize away FFs in "prep" and Verific fron-end | Claire Wolf | 2020-06-09 | 1 | -5/+12 |
| | | | | Signed-off-by: Claire Wolf <claire@symbioticeda.com> | ||||
* | flatten: accept processes. | whitequark | 2020-06-09 | 1 | -8/+8 |
| | |||||
* | flatten: preserve original object names via hdlname attribute. | whitequark | 2020-06-08 | 1 | -5/+16 |
| | |||||
* | flatten: only prepend $flatten once per wire. | whitequark | 2020-06-08 | 1 | -2/+6 |
| | |||||
* | flatten: make hygienic. | whitequark | 2020-06-08 | 1 | -155/+116 |
| | | | | | | | | | | | | | | | | | | | | Before this commit, `flatten` matched the template objects with the newly created objects solely by their name. Because of this, it could be confused by code such as: module bar(); $dff a(); endmodule module foo(); bar b(); $dff \b.a (); endmodule After this commit, `flatten` avoids every possible case of name collision. Fixes #2106. | ||||
* | Merge pull request #2085 from rswarbrick/select | clairexen | 2020-06-08 | 1 | -14/+19 |
|\ | | | | | Silence warning in select.cc and pass some more args by ref | ||||
| * | Pass some more args by reference in select.cc | Rupert Swarbrick | 2020-05-27 | 1 | -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 function | Rupert Swarbrick | 2020-05-27 | 1 | -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) |