Krystine Sherwin
bc310e7165
Celltypes: Revert c++20 feature
...
Turns out using designated initializers is c++20, so not available while we are still c++17 friendly.
2025-11-22 16:24:57 +13:00
Krystine Sherwin
155bc8b14e
celltypes: Reword synthesizable comment
...
Don't mention verilog.
2025-11-22 16:24:56 +13:00
Krystine Sherwin
8badbf75c4
celltypes: Add help -celltypes
...
Like `help -cells` but instead of printing the cell's ports, prints its flags.
2025-11-22 16:24:56 +13:00
Krystine Sherwin
c08665f68d
select: New type props
2025-11-22 16:24:56 +13:00
Krystine Sherwin
b48881e996
celltypes: Extra type props
...
Now with `is_internal`, `is_metainfo`, and `has_effects`.
Each type property has a comment specifying usage/meaning.
Type properties (sans `is_internal`) get a default value of false.
`CellTypes::setup_*_type()` methods get their own `CellType` struct assignments with named fields being assigned true to improve readability.
Also remove is_evaluable from cell types that aren't actually eval-able,
instead using is_combinatorial which afaict is what the flag was being used as a proxy for.
2025-11-22 16:24:55 +13:00
Krystine Sherwin
346b05904a
select: Add cell type property selector
...
Looks up the cell type for each cell in the design, returning the value of `CellType::is_<property>`.
Only works for exact match, and only for internal cells.
Also add a simple test checking a small design with an $add cell and an $sdff cell.
2025-11-22 16:01:14 +13:00
Krystine Sherwin
542a547c78
celltypes: get_cell() helper
...
Add `CellTypes::get_cell()` which takes a 'type' `IdString` and returns the corresponding `CellType` if it is in the `cell_types` dict, otherwise returns `nullptr`.
Useful for getting a cell type by name and then checking its attributes.
2025-11-22 15:57:34 +13:00
Krystine Sherwin
04092ea93d
celltypes: Add and use setup_type helpers
...
Add `CellTypes::setup_{comb, ff, formal}_type()`. Most of the existing internal cells fit into one of these three groups.
2025-11-22 15:55:18 +13:00
Krystine Sherwin
8b6f18483b
celltypes: add builtin_ff and formal
2025-11-22 15:53:56 +13:00
github-actions[bot]
33a49452d9
Bump version
2025-11-22 00:23:19 +00:00
KrystalDelusion
bf70581efa
Merge pull request #5497 from YosysHQ/krys/abc_done
...
Fix ABC completion detection edge case
2025-11-22 09:37:50 +13:00
Krystine Sherwin
44ab884b06
bug5495.sh: Skip test if timeout isn't available
2025-11-21 04:03:39 +00:00
Robert O'Callahan
e33ca17388
Force a newline to appear before YOSYS_ABC_DONE
2025-11-21 03:50:07 +00:00
Krystine Sherwin
4d1b688717
Tests: Add testcase for problematic ABC DONE check
2025-11-21 14:46:01 +13:00
Emil J
8ea51e1479
Merge pull request #5493 from YosysHQ/emil/sdc-fix-leak
...
sdc: use Tcl memory management functionality
2025-11-20 11:39:36 +01:00
github-actions[bot]
25ba41f424
Bump version
2025-11-20 00:24:25 +00:00
Emil J. Tywoniak
6eb9e823e0
sdc: use Tcl memory management functionality
2025-11-20 00:21:15 +01:00
Emil J
b5625f9189
Merge pull request #5237 from YosysHQ/emil/sdc_expand
...
SDC expansion with OpenSTA
2025-11-19 23:27:33 +01:00
Miodrag Milanović
e83d721cb0
Merge pull request #5492 from donn/getitem
...
pyosys: __getitem__ for supported classes
2025-11-19 17:58:01 +01:00
Mohamed Gaber
58e831486d
pyosys: __getitem__ for supported classes
...
- functions that have a const `[]` operator method now support `__getitem__` in Python
- fields of a pointer type now return a `reference_internal` instead of a `copy` because classes referenced to by pointers typically aren't copyable (e.g. RTLIL::Wire, RTLIL::Module, etc)
- removed duplicate of test_script.py
2025-11-19 18:09:41 +02:00
Emil J
2eff366e8c
Merge branch 'main' into emil/sdc_expand
2025-11-19 16:29:37 +01:00
Emil J
2cc0770305
Merge pull request #5412 from YosysHQ/emil/sdc-read-only
...
Add sdc command with smart flattening
2025-11-19 16:02:55 +01:00
Emil J. Tywoniak
1edc32dcd0
opensta, sdc_expand: mark as experimental
2025-11-19 15:31:17 +01:00
Emil J. Tywoniak
920f4793fb
sdc: error on unknown getters
2025-11-19 15:26:02 +01:00
Emil J. Tywoniak
229123eb87
sdc: disable without YOSYS_ENABLE_TCL
2025-11-19 15:26:02 +01:00
Emil J. Tywoniak
033a2d5a67
sdc: remove vestigial code for tracked constraint followup work
2025-11-19 15:26:02 +01:00
Emil J. Tywoniak
f56e121ddb
sdc: add help
2025-11-19 15:26:02 +01:00
Emil J. Tywoniak
650392d4ec
sdc: specialize stubs for the call graph
2025-11-19 15:26:02 +01:00
Emil J. Tywoniak
07de7509bf
sdc: add -keep_hierarchy test
2025-11-19 15:26:02 +01:00
Emil J. Tywoniak
224ed524fa
sdc: move to directory
2025-11-19 15:26:01 +01:00
Emil J. Tywoniak
94dd248dfb
sdc: graph mode only
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
8a54e51300
sdc: add -keep_hierarchy
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
d4228efae8
sdc: keep_hiearchy
2025-11-19 15:25:24 +01:00
Emil Jiří Tywoniak
075237f73b
sdc: refactor more
2025-11-19 15:25:24 +01:00
Emil Jiří Tywoniak
48ff9d4950
sdc: refactor find_matching
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
ae1235210d
sdc: functional graph
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
c6491629d8
sdc: start graph
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
24a6412ea8
sdc: bit selections
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
21c68e0022
sdc: unknown handler experiment
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
420a083d9b
sdc: simple mode, remove per-tool stubs
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
834125a076
sdc: return resolved patterns
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
dc48ceadd9
sdc: collect strictly matching objects
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
9a3c7f70ad
sdc: stubs SDC commands supported by OpenSTA
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
c26aa3186d
sdc: collect design objects
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
c1c6ec1266
sdc: stubs SDC commands supported by Vivado
2025-11-19 15:25:24 +01:00
Emil J. Tywoniak
5a798b64ef
sdc: separate out
2025-11-19 15:25:22 +01:00
Emil Jiří Tywoniak
c281bac461
sdc: add initial stubbed demo
2025-11-19 15:25:03 +01:00
Emil J. Tywoniak
85d2702ef6
opensta, sdc_expand: fix help
2025-11-19 15:20:50 +01:00
Emil J. Tywoniak
411fc149df
opensta: refactor default command
2025-11-19 15:20:50 +01:00
Emil J. Tywoniak
a5b6c3cc19
opensta, sdc_expand: more scratchpad
2025-11-19 15:20:50 +01:00