Robert O'Callahan
38d1d071a5
Implement SigSpec::updhash() using a relaxed atomic for thread-safety
2025-11-07 15:54:56 +00:00
Robert O'Callahan
745222fa3b
Make SigSpec::unpack() non-const
2025-11-07 15:54:56 +00:00
Robert O'Callahan
870ae18a2d
Switch the SigSpec packed representation to allow just a single chunk that's inline in the SigSpec.
...
Single-chunk SigSpecs are very common and this avoids a heap allocation. It also simplifies
some algorithms.
2025-11-07 15:54:56 +00:00
Robert O'Callahan
e1169d03fe
Use chunks iterator for SigSpec::extract()
2025-11-07 15:54:56 +00:00
Robert O'Callahan
4939484840
Don't reset the hash when unpacking, instead clear the hash whenever bits are modified
2025-11-07 15:54:56 +00:00
Robert O'Callahan
aa4a0fe815
Use size() instead of direct access to width_ in many places
2025-11-07 15:54:56 +00:00
Robert O'Callahan
619f49eabe
Remove unnecessary pack() from SigSpec::extend_u0()
2025-11-07 15:54:55 +00:00
Robert O'Callahan
b612c1bb39
Simplify SigSpec::as_bit()
2025-11-07 15:54:55 +00:00
Robert O'Callahan
a69d48dd19
Instead of using packing and hashing to compute SigSpec ordering and equality, just use the width and chunkwise comparisons
...
This avoids having to pack and compute hashes, and generally results in a
simpler ordering.
2025-11-07 15:54:55 +00:00
Robert O'Callahan
92ea557979
Build a temporary SigChunk list in the iterator in the cases where that's needed
2025-11-07 15:54:55 +00:00
Robert O'Callahan
7394a2c597
Make SigSpec conversion to vector of SigChunk use chunks iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
974b4dbe25
Make SigSpec::parse_rhs use is_chunk to avoid direct access to chunks_
2025-11-07 15:54:55 +00:00
Robert O'Callahan
62cd3ddfb8
Make SigSpec::to_sigbit_pool use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
4ed25c0538
Make SigSpec::to_sigbit_set use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
39b89aae88
Use SigSpec::try_as_const in some places
2025-11-07 15:54:55 +00:00
Robert O'Callahan
dd3940c8bb
Make SigSpec::is_one_hot use try_as_const
2025-11-07 15:54:55 +00:00
Robert O'Callahan
ce597dc38c
Fix try_as_const/as_wire/as_chunk
2025-11-07 15:54:55 +00:00
Robert O'Callahan
0281ed1458
Add try_as_const and use the const iterator a bit more
2025-11-07 15:54:55 +00:00
Robert O'Callahan
0091d14e6d
Make SigSpec::has_marked_bits use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
80b3efb3da
Make SigSpec::has_const(State) use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
ed8022f53f
Make SigSpec::has_const use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
1893c61fe2
Make SigSpec::is_fully_undef use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
e2defe7898
Make SigSpec::is_fully_def use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
152a487cc8
Make SigSpec::is_fully_ones use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
ddd04e13e0
Make SigSpec::is_fully_zero use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
a7ac396fd9
Make is_fully_const use chunk iterator
2025-11-07 15:54:55 +00:00
Robert O'Callahan
b0ee67a355
Make SigSpec::is_wire/is_chunk/is_fully_const use chunk iterator
2025-11-07 15:54:54 +00:00
Robert O'Callahan
fc7d61132d
Make SigSpec::updhash() use chunk iterator
2025-11-07 15:54:54 +00:00
Robert O'Callahan
3f7af10eda
Make SigSpec::chunks() return an object that can be iterated over without packing the SigSpec
2025-11-07 15:54:54 +00:00
Robert O'Callahan
8d4f790951
Make Module stop accessing internals of SigSpec
2025-11-07 13:25:38 +00:00
Krystine Sherwin
7302bf9a66
Add CONST_FLAG_UNSIZED
...
In order to support unsized constants being used as parameters, the `const` struct needs to know if it is unsized (so that the parameter can be used to set the size).
Add unsized flag to param value serialization and rtlil back-/front-end.
Add cell params to `tests/rtlil/everything.v`.
2025-11-07 17:45:07 +13:00
Krystine Sherwin
e4c5900acd
tests/verilog: Unsized params in cell
...
Non-zero case fails with `read_verilog`, but passes with `verific` and `read_slang`.
2025-11-07 17:13:12 +13:00
Krystine Sherwin
a5cc905184
simplify.cc: Fix unsized const in params
2025-11-07 15:52:24 +13:00
github-actions[bot]
5d0847f6fb
Bump version
2025-11-07 00:24:35 +00:00
KrystalDelusion
24b69cabaa
Merge pull request #5422 from YosysHQ/krys/SVI_support
...
Catch partial support of SVI
2025-11-07 11:16:07 +13:00
Miodrag Milanović
691d6b8508
Merge pull request #5469 from YosysHQ/update_abc
...
Update ABC
2025-11-06 21:19:39 +01:00
Emil J
a16fc9b4f3
Merge pull request #5467 from YosysHQ/emil/liberty-unquoted-expressions
...
libparse: support unquoted expressions
2025-11-06 19:45:17 +01:00
Emil J
3a23d4458e
Merge pull request #5470 from YosysHQ/emil/unit-test-makefile
...
Makefile: clean unit test on clean, ensure prepared to fix parallelism
2025-11-06 19:05:57 +01:00
Miodrag Milanovic
dc9a787025
Fix out of tree clean
2025-11-06 14:28:28 +01:00
Emil J. Tywoniak
2bf7aac9d1
Makefile: clean unit test on clean, ensure prepared to fix parallelism
2025-11-06 13:59:14 +01:00
Emil J. Tywoniak
fdcc4c1507
libparse: remove leftover comments
2025-11-06 13:30:09 +01:00
Emil J
a2aeef6c96
Merge pull request #5461 from rocallahan/reset-abc-config
...
Fix regression in configuring ABC techmapping
2025-11-06 11:58:04 +01:00
Miodrag Milanovic
75ce33c7b2
Update ABC
2025-11-06 09:54:47 +01:00
github-actions[bot]
3d5b1e0a93
Bump version
2025-11-06 00:24:21 +00:00
Miodrag Milanović
5b2252ffd8
Merge pull request #5468 from YosysHQ/pyosys_outof
...
Fix generatory.py location for out of tree builds
2025-11-05 18:13:14 +01:00
Robert O'Callahan
0f770285f3
Move global ABC configuration variables into AbcConfig and initialize them properly
2025-11-05 13:56:04 +00:00
Martin Povišer
45bb5c690d
Merge pull request #5460 from povik/timeest-comb
...
timeest: Add top ports launching/sampling
2025-11-05 14:29:34 +01:00
Miodrag Milanovic
f8341affe3
Fix generatory.py location for out of tree builds
2025-11-05 14:20:30 +01:00
Emil J. Tywoniak
90553267b0
libparse: fix quoting and negedge in filterlib -verilogsim
2025-11-05 14:13:58 +01:00
Emil J. Tywoniak
504b668ea6
libparse: fix verilogsim negedge
2025-11-05 13:49:05 +01:00