Commit Graph

4957 Commits

Author SHA1 Message Date
Catherine afc0e78d11 Update top-level Python project for CMake compatibility.
This commit reimplements the (no longer recommended) setuptools based
build system using a standards-based in-tree PEP517 build backend.
The implementation is partially based on
  https://codeberg.org/ziglang/zig-pypi/src/branch/main/make_wheels.py
which is licensed under BSD-0-clause.

It also adds a new option `YOSYS_BUILD_PYTHON_ONLY` that is available
only if the binary or the library aren't going to be installed, which
turns off these targets entirely, as well as some dependent ones
(e.g. tests).

Co-authored-by: Mohamed Gaber <me@donn.website>
2026-06-03 09:03:23 +00:00
Catherine a727e7f6e7 Migrate build system to CMake
See #5895 for details.

This commit does not include CI or documentation changes.
2026-06-03 08:58:10 +00:00
Philippe Sauter c89cfe1e6e peepopt: add shiftpow2 pattern
Rewrite power-of-two indexed word selects to $bmux when the shift
amount already carries the scale as low zero bits.

Keep the rule to non-overlapping selections and bound the generated
mux ways. Add regressions for aligned shifts, padding, signed
extension, and shiftmul handoff cases.
2026-05-31 02:01:32 +02:00
KrystalDelusion 4230ebff71
Merge pull request #5912 from YosysHQ/krys/opt_clean_docs
opt_clean: Set group for docs gen
2026-05-28 08:35:52 +00:00
Krystine Sherwin 680bb69d85
opt_clean: Set group for docs gen 2026-05-28 14:50:11 +12:00
junyao 6f111118de proc: ignore nosync temporaries in always_latch checks 2026-05-26 00:56:07 +08:00
Miodrag Milanovic 2159a0e634 Remove file added by mistake 2026-05-18 17:00:16 +02:00
Miodrag Milanovic 75dcbe03c6 Convert RTLIL::unescape_id of IdString to unescape() 2026-05-16 19:49:45 +02:00
Miodrag Milanovic 8bbc3c359c Remove id2cstr uses in our code base 2026-05-16 19:49:45 +02:00
Emil J e87a9bd9a7
Merge pull request #5888 from mikesinouye/pmux
opt_muxtree: reuse knowledge_t and pass by reference
2026-05-15 16:21:33 +00:00
Miodrag Milanović 1d87cefd80
Merge pull request #5882 from YosysHQ/std_cpp20
Bump required standard to C++20
2026-05-15 13:13:43 +00:00
Miodrag Milanović 36eceed720
Merge pull request #5862 from codexplorer-fish/cleaning-up-log-id
Cleaning up log_id()
2026-05-15 11:07:43 +00:00
Miodrag Milanovic e4a3b44e8e Fixed not intentional log_signal removal 2026-05-15 12:34:54 +02:00
Miodrag Milanovic 965a3e67f0 Remove pmgen related users of log_id 2026-05-14 17:28:10 +02:00
Miodrag Milanovic 4a7878b17f Fixing couple more conversion errors 2026-05-14 15:58:58 +02:00
Miodrag Milanovic 58df27ce7c Refactor uses of log_id in pgm files 2026-05-14 12:21:32 +02:00
Miodrag Milanovic c6f53aec5f Fixed log_id instances used with fprintf 2026-05-14 11:28:16 +02:00
Mike Inouye e20a57b09e
Reuse knowledge_t and pass by reference 2026-05-13 10:57:18 -07:00
Iztok Jeras 81219c58b2 documentation: updated description of 'abc' argument '-dont_use' 2026-05-13 11:59:22 +02:00
Miodrag Milanovic 90e019e319 Fix compiling on GCC11 2026-05-13 10:11:36 +02:00
Emil J 2046a23a2f
Merge pull request #5876 from YosysHQ/emil/error-unused-containers
Makefile: error on unused variables, including hashlib containers
2026-05-12 21:53:23 +00:00
Emil J. Tywoniak 3a150f2883 remove unused hashlib containers 2026-05-12 12:52:10 +02:00
Leo Moser fb83719745
memlib: fix documentation for `PORT_<name>_CLK_POL`
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-05-09 10:28:07 +02:00
Codexplorer e41b969da2 Refactored uses of log_id() 2026-05-08 20:59:24 -07:00
Emil J 1f02343268
Merge pull request #5817 from YosysHQ/emil/clockgate-reject-sdffe
clockgate: reject $sdffe to fix priority handling
2026-05-08 18:38:51 +00:00
Tianji Liu 3f354eb03b abc: update log for extra read_lib args 2026-05-08 07:17:29 +08:00
Emil J. Tywoniak f4a10a4808 clockgate: reject $sdffe for correct priority handling 2026-05-07 14:41:18 +02:00
Tianji Liu cb6209506e abc: disable scl merge if extra read_lib args provided 2026-05-07 18:45:35 +08:00
Tianji Liu f8a50e7174 Merge commit 'ab316c14d2c3f950eda7672e5c5507bb5219205a' into abc-liberty-args 2026-05-07 18:12:49 +08:00
Lofty ab316c14d2
Merge pull request #5844 from YosysHQ/lofty/abc-refactor-5
abc_new: integration testing via synth_gatemate
2026-05-06 13:40:15 +00:00
Lofty de1dd3b1c5 add aiger2_zbuf to constids 2026-05-06 14:03:07 +01:00
Emil J 73e15f2144
Merge pull request #5851 from YosysHQ/emil/share-remove-force
share: remove -force
2026-05-05 09:06:16 +00:00
Emil J. Tywoniak 7fa660fc60 share: remove -force 2026-05-04 21:34:19 +02:00
bin 5dfe1937a0 Upgrade to WASI SDK 33 and enable exceptions 2026-05-01 13:30:43 -04:00
Ethan Mahintorabi 805c302411
simplemap: Moves $pmux mapping from techmap.v to simple map
This Fixes the slow downs I observed in techmap.v, which we
attempted to fix via the simplify ast.h route originally. This
turned out to be rather complex though.

By moving $pmux to simplemap we can just avoid that code. My
test case now runs in 310s which is 40s faster than the baseline
change.

B:507898959
Signed-off-by: Ethan Mahintorabi <ethanmoon@google.com>
2026-04-29 21:20:39 +00:00
nella 92287d4857
Merge pull request #5841 from YosysHQ/nella/fix-liberty
Fix ABC: Merged scl conversion failed, using liberty format warning when using -genlib.
2026-04-28 16:43:25 +00:00
nella d2f7fecef5 Fix liberty cache warning with -genlib. 2026-04-28 15:21:54 +02:00
Lofty 0d3923d086 abc_new: use default script if not specified 2026-04-28 12:33:21 +01:00
Emil J 627b691578
Merge pull request #5831 from stashcroft/main
Make sure co-simulation only uses integer arithmetic
2026-04-27 14:03:58 +00:00
Emil J 30a914167f
Merge pull request #5809 from QuantamHD/pmux_on2
opt: Remove O(n²) opt routines across the codebase for pmux
2026-04-24 19:03:40 +00:00
Emil J. Tywoniak e0b833ac1a opt_muxtree: dense knowledge 2026-04-24 11:07:58 +02:00
Emil J. Tywoniak 4abaca273e opt_reduce: further optimization 2026-04-24 11:07:58 +02:00
Scott Ashcroft 23a05fcf35 Add comments to make sure it is clear scale is an exponent of 10 2026-04-23 17:22:14 +01:00
Scott Ashcroft e69341cd5f Make sure co-simulation only uses integer arithmetic 2026-04-23 17:22:14 +01:00
nella d795a4f1d2 Fix WASI, store in temp dir. 2026-04-23 12:43:43 +02:00
nella afac9a28b0 Fix WASI build. 2026-04-23 12:43:43 +02:00
nella 5d4d94a5dd Fix mac compile. 2026-04-23 12:43:43 +02:00
nella 94a215b4f7 Add dont_use_cells to scl cache. 2026-04-23 12:43:43 +02:00
nella edd3ad525e Add scl caching to abc_new. 2026-04-23 12:43:43 +02:00
nella 9143178343 Merge liberty files into stripped scl files. 2026-04-23 12:43:43 +02:00