3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-04-24 01:25:33 +00:00
Commit graph

14699 commits

Author SHA1 Message Date
Krystine Sherwin
d1f6d67d85
amend! celltypes: Extra type props
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-02-25 13:42:36 +13:00
Krystine Sherwin
425c7fe4cf
select: New type props 2025-02-25 13:41:14 +13:00
Krystine Sherwin
647ea922f1
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.
2025-02-25 13:40:51 +13:00
Krystine Sherwin
d613913905
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-02-21 16:17:23 +13:00
Krystine Sherwin
4883c503a8
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-02-21 16:10:51 +13:00
Krystine Sherwin
c1665ab416
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-02-21 16:08:53 +13:00
Krystine Sherwin
e6c3a7e87f
celltypes: add builtin_ff and formal 2025-02-21 16:05:53 +13:00
github-actions[bot]
0778195722 Bump version 2025-02-21 00:21:16 +00:00
KrystalDelusion
9d3ab964b2
Merge pull request #4903 from akashlevy/boost_python_fix_macos
Fix macOS boost-python issues
2025-02-20 15:17:34 +13:00
Krystine Sherwin
700b32bc38
Makefile: Fix CHECK_BOOST_PYTHON
`python-config --ldflag` includes output of `python-config --libs`; and the `$(CXX)` call in `CHECK_BOOST_PYTHON` still needs those libs.
Move all of the `$(shell $(PYTHON_CONFIG) ..` lines to the top of the block.
2025-02-20 14:38:50 +13:00
KrystalDelusion
b0b53a22b1
Merge pull request #4880 from YosysHQ/clean_run-test
Makefile: Add run-test.mk to clean
2025-02-20 14:35:23 +13:00
Akash Levy
c2a7a5f917 Add python ldflags to LINKFLAGS 2025-02-19 16:04:53 -08:00
github-actions[bot]
38f858374c Bump version 2025-02-15 00:20:50 +00:00
KrystalDelusion
508e7327e4
Merge pull request #4899 from YosysHQ/shr_int_max
Fix runtime error on shift by INT_MAX
2025-02-15 09:52:33 +13:00
Akash Levy
3bca4c10d8 Fix macOS boost-python issues 2025-02-14 11:43:00 -08:00
Krystine Sherwin
4c728968a3
Fix runtime error on shr INT_MAX 2025-02-14 14:01:36 +13:00
Krystine Sherwin
db5b76edc1
Add test for shifting by INT_MAX
Currently resulting in CI failing on main during fsm checks which generate a circuit that simplifies to this.
2025-02-14 14:01:27 +13:00
Emil J
df3c62a4ed
Merge pull request #4892 from YosysHQ/emil/fix-memory-libmap-dangling-cells
memory_libmap: update indices on design modification
2025-02-12 10:21:01 +01:00
github-actions[bot]
359901a964 Bump version 2025-02-12 00:21:01 +00:00
Emil J. Tywoniak
55b60dca95 memory_libmap: update indices on design modification 2025-02-11 13:32:34 +01:00
Miodrag Milanovic
6f9c515a22 Next dev cycle 2025-02-11 08:40:50 +01:00
Miodrag Milanovic
b5170e1394 Release version 0.50 2025-02-11 07:55:17 +01:00
github-actions[bot]
ce5ad2a554 Bump version 2025-02-11 00:20:46 +00:00
KrystalDelusion
78f27e174f
Merge pull request #4887 from JasonBrave/remove-makefile-clean-docs-images-target
Remove obsolete Makefile docs/images clean call
2025-02-11 10:31:59 +13:00
Jason Xu
333588265c Remove obsolete Makefile docs/images clean call 2025-02-09 10:22:35 -05:00
Martin Povišer
fc88ea360e
Merge pull request #4876 from gadfort/segfault-lexer
liberty expression lexer check if characters are found and use size if not for `pin()`
2025-02-07 20:24:08 +01:00
Martin Povišer
772b9c0cfd
Merge pull request #4691 from hovind/experiments/extract-fa-fix
extract_fa: Fix `xor3`/`xnor3` inversion bug
2025-02-06 21:12:32 +01:00
github-actions[bot]
ed5d9c8687 Bump version 2025-02-05 00:21:01 +00:00
Martin Povišer
f2d96cf616
Merge pull request #4000 from adrianparvino/alumacc-cmp-contravariance
alumacc: alternative cmp unification implementation
2025-02-04 17:06:39 +01:00
Martin Povišer
b5752dfe16 alumacc: Fix missing signedness check 2025-02-04 13:05:53 +01:00
Adrian Parvin Ouano
23b3638c1e alumacc: alternative cmp unification implementation 2025-02-04 11:52:37 +01:00
github-actions[bot]
77af7962af Bump version 2025-02-04 00:20:30 +00:00
Martin Povišer
f0aaa5d419
Merge pull request #4845 from YosysHQ/catherine/ci-ubsan
CI: Sanitize for undefined behavior
2025-02-03 16:40:29 +01:00
Martin Povišer
212d2a6d6e lib/fst: Remove unaligned pointer access 2025-02-03 11:13:07 +01:00
Catherine
f5c53a99e7 CI: Sanitize for undefined behavior. 2025-02-03 10:19:19 +01:00
Martin Povišer
92afe26d6b
Merge pull request #4879 from YosysHQ/krys/ub_fixes
Fixing undefined behaviours
2025-02-03 09:56:48 +01:00
github-actions[bot]
18a7c00382 Bump version 2025-01-31 00:20:35 +00:00
KrystalDelusion
7050b3c992
Makefile: Add run-test.mk to clean 2025-01-31 12:30:25 +13:00
KrystalDelusion
cf52cf3009
nowrshmsk: Check for stride==0
log2(0) returns -inf, which gives undefined behaviour when casting to an int.  So catch the case when it's 0 just set the width to 0.
2025-01-31 12:15:53 +13:00
KrystalDelusion
31b00b4c72
celledges: Use b_width_capped for left shifts
`b_width_capped` already exists for preventing arithmetic overflow, limiting the value of `b_width` to 30.  This just changes the left shifts to also use it.
The caveat of incorrect results for extremely large values of `a_width` still applies, as does the improbability of that actually happening.
This fixes #4844 (or at least, the floating point exception; the circuit still isn't valid but I think that's fine).
2025-01-31 11:03:33 +13:00
Øystein Hovind
ed076bc168 extract_fa: Invert xor3/xnor3 output when inverting majority3 input 2025-01-30 18:45:07 +01:00
Jannis Harder
40c690b030 extract_fa: Add test case 2025-01-30 18:45:06 +01:00
Emil J
f445479374
Merge pull request #4878 from YosysHQ/emil/fix-wreduce-warning-in-pool
wreduce: fix warning for deprecated IdString::in(pool<IdString>)
2025-01-30 15:53:46 +01:00
Robin Ole Heinemann
0ab13924a5 write_verilog: log_abort on unhandled $check flavor 2025-01-30 14:18:02 +00:00
Robin Ole Heinemann
2f11dc87c9 write_verilog: emit $check cell names as labels 2025-01-30 14:18:02 +00:00
Emil J. Tywoniak
c2691207df wreduce: fix warning for deprecated IdString::in(pool<IdString>) 2025-01-30 12:01:30 +01:00
github-actions[bot]
954250d1df Bump version 2025-01-30 00:20:17 +00:00
Peter Gadfort
9534f4ab80 check if characters are found and use size if not 2025-01-29 15:56:05 -05:00
Wanda
9d4630484f mailmap: fix up some identities. 2025-01-29 01:39:09 +01:00
github-actions[bot]
3d35f367cf Bump version 2025-01-24 00:20:25 +00:00