Commit Graph

16130 Commits

Author SHA1 Message Date
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
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
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
Miodrag Milanovic e89c5914fe CodeQL CI fix 2025-11-05 07:10:08 +01:00
github-actions[bot] 12cb8e9511 Bump version 2025-11-05 00:24:49 +00:00
KrystalDelusion 52c108cd6a
Merge pull request #4596 from YosysHQ/emil/path-sep-refactor
Refactor getting dirs and filenames from paths to files
2025-11-05 09:12:54 +13:00
Miodrag Milanović 3d80e1663e
Merge pull request #5466 from donn/uv_wheel_hotfix
hotfix: wheel ci issues
2025-11-04 14:09:41 +01:00
Mohamed Gaber 51c8193643
hotfix: update libffi in wheels ci
update libffi to a version where https://github.com/libffi/libffi/issues/852 is fixed
2025-11-04 14:58:48 +02:00
Mohamed Gaber 3a54ed6916
hotfix: don't use uv when building wheels 2025-11-04 14:39:51 +02:00
Miodrag Milanović f170c0f346
Merge pull request #5454 from YosysHQ/krys/cache-apt
Shuffling and documenting prerequisites
2025-11-04 09:59:55 +01:00
Miodrag Milanovic ad3ae52e9a Upload only on manual action 2025-11-04 09:30:04 +01:00
Miodrag Milanovic db76eebc0f Remove mentions of Boost 2025-11-04 08:35:07 +01:00
Miodrag Milanovic 35e4d967c6 install UV in wheels.yml 2025-11-04 08:00:35 +01:00
Krystine Sherwin 17c1388303 Drop boost-python 2025-11-04 07:40:36 +01:00
Krystine Sherwin 684bbf6a25 CI: Move libbz2 to iverilog setup
Needed for vcd2fst.
2025-11-04 07:40:36 +01:00
Krystine Sherwin bf7c79cc85 CI: vcd2fst needs deps 2025-11-04 07:40:36 +01:00
Krystine Sherwin cc5642c904 Docs: Bringing prereqs in line
Add comments in setup-build-env/action.yml for where to document prereqs (and the separation between build/run and test).
Add some initial (very basic) text for `test_suites.rst`, listing prereqs and how to run the tests (with subsections for the different optional tests, which is currently docs, functional and unit).
Add sphinx-inline-tabs, use it for tidying up prereq instructions based on OS/platform (mostly helpful in the test suites doc where there are multiple sections split by OS).
Also fixes some single backticks that should be double backtick.
2025-11-04 07:40:36 +01:00
Krystine Sherwin a4bd40e199 CI: Fix iverilog deps 2025-11-04 07:39:06 +01:00