Robert O'Callahan
2659f32616
Pass the toplevel thread pool to rmunused_module, create a Subpool, and parallelize remove_temporary_cells
2026-02-17 03:24:51 +00:00
Robert O'Callahan
0a64402dde
Create a toplevel ParallelDispatchThreadPool and parallelize keep_cache_t::scan_module() with it
2026-02-17 03:24:51 +00:00
Robert O'Callahan
20189460bd
Introduce RmStats struct to encapsulate removal statistics
...
Turns out this is not strictly necessary for this PR but it's
still a good thing to do and makes it clearer that the stats
are not modified in a possibly racy way.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
b153fc2d16
Make keep_cache_t process all modules up-front instead of on-demand
...
We will want to query `keep_cache` from parallel threads. If we compute
the results on-demand, that means we need synchronization for cache
access in those queries, which adds complexity and overhead. Instead, prefill
the cache with the status of all relevant modules. Note that this doesn't
actually do more work --- we always consult `keep_cache` for all cells of
all selected modules, so scanning all those cells and determining the kept
status of all dependency modules is always required.
Later in this PR we're going to parallelize `scan_module` itself, and that's also
much easier to do when no other parallel threads are running.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
6bf9fd3e1f
Parallelize Design::check()
2026-02-17 03:24:51 +00:00
Robert O'Callahan
704d110560
Parallelize collect_garbage()
2026-02-17 03:24:51 +00:00
Robert O'Callahan
937c7ceb4d
Add FfInitVals::set_parallel() method
...
We'll use this later in the PR.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
8ced93b176
Add MonotonicFlag
...
We'll use this later in the PR.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
1a461f95c5
Add ConcurrentWorkQueue
...
We'll use this later in the PR.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
6182db64d2
Add ShardedHashSet
...
We'll use this later in the PR.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
8a30051fc2
Add ShardedVector
...
We'll use this later in the PR.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
d711cf6185
Add ParallelDispatchThreadPool
...
We'll use this later in the PR.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
61482d30e5
Add work_pool_size, IntRange, item_range_for_worker, and ThreadIndex
...
We'll use these later in this PR.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
ae569486a0
Work around std::reverse miscompilation with empty range
...
This causes problems when compiling with fuzzing instrumenation enabled.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
af3bb9751f
Make log_error() work in a Multithreaded context.
...
`log_error()` causes an exit so we don't have to try too hard here. The main
thing is to ensure that we normally are able to exit without causing a stack
overflow due to recursive asserts about not being in a `Multithreaded` context.
2026-02-17 03:24:51 +00:00
Robert O'Callahan
577191e44d
Add IdString::unescape() method
...
We've already talked about adding this as an alternative to `log_id()`, and we'll
need it later in this PR.
2026-02-17 03:24:51 +00:00
Miodrag Milanović
ac96f318ef
Merge pull request #5676 from YosysHQ/emil/unit-test-by-default
...
Run unit tests on make test
2026-02-13 15:02:50 +01:00
github-actions[bot]
e2f0c4d9a0
Bump version
2026-02-13 00:35:27 +00:00
Miodrag Milanovic
bb7aa7d208
Cleanup of yml files
2026-02-12 14:56:45 +01:00
Miodrag Milanović
e4b32d6aae
Merge pull request #5670 from max-kudinov/gowin_mult
...
Gowin: Add DSP inference for GW1N and GW2A
2026-02-12 14:30:27 +01:00
Miodrag Milanovic
e5b3e9fc1f
This one should run only vanilla-tests
2026-02-12 14:08:49 +01:00
Miodrag Milanovic
c6e48f4bea
These are tests from other Makefile
2026-02-12 14:06:08 +01:00
Miodrag Milanovic
cc79c6a761
Support building out of tree, but keep always in tests/unit
2026-02-12 12:17:07 +01:00
Maxim Kudinov
b055ea05fd
gowin: dsp: Add mult inference tests
2026-02-12 14:12:32 +03:00
Maxim Kudinov
5b94a97fb3
gowin: synth_gowin: Add -nodsp option
2026-02-12 13:58:47 +03:00
Maxim Kudinov
542b29fa6a
gowin: synth_gowin: Merge flatten label with coarse
2026-02-12 13:58:47 +03:00
Maxim Kudinov
5ea073d45e
gowin: format MULT instances
2026-02-12 13:35:49 +03:00
Miodrag Milanović
9b9e7b5ae3
Merge pull request #3389 from uwsampl/support-parameter-default-values-in-json-frontend-and-verilog-backend
...
Support parameter default values in JSON frontend and Verilog backend
2026-02-12 10:17:56 +01:00
Miodrag Milanović
ce5321da8c
Merge pull request #5682 from YosysHQ/update_abc
...
Update ABC as per 2026-02-11
2026-02-12 08:05:23 +01:00
github-actions[bot]
1319112913
Bump version
2026-02-12 00:32:36 +00:00
Gus Smith
7a0774c3bb
Don't dump params by default
2026-02-11 08:33:39 -08:00
Emil J
b890b1b43f
Merge pull request #5678 from YosysHQ/emil/remove-dockerfile
...
Dockerfile: remove
2026-02-11 17:32:21 +01:00
Miodrag Milanovic
a13b5c4211
Update ABC as per 2026-02-11
2026-02-11 17:30:08 +01:00
Gus Smith
be9c857e72
Fix ABC after merge
2026-02-11 08:12:38 -08:00
Gus Smith
b0021e5b10
Add tests
2026-02-11 08:10:57 -08:00
Gus Smith
1ede98797f
Update backends/verilog/verilog_backend.cc
...
Co-authored-by: Marcelina Kościelnicka <236399+mwkmwkmwk@users.noreply.github.com>
2026-02-11 08:10:57 -08:00
Gus Smith
9ad7aed4a5
Update backends/verilog/verilog_backend.cc
...
Co-authored-by: Marcelina Kościelnicka <236399+mwkmwkmwk@users.noreply.github.com>
2026-02-11 08:10:57 -08:00
Gus Smith
12ace45b89
Support param. default values in JSON FE and SV BE
2026-02-11 08:10:55 -08:00
Gus Smith
e3db8fee6f
Merge pull request #3459 from gs-jgj/feature_dsp48e1_presub
...
Add support for subtract in preadder
2026-02-11 08:02:18 -08:00
Gus Smith
8ab105ac28
Merge pull request #4303 from Coloquinte/sat_choice
...
Infrastructure to run a Sat solver as a command
2026-02-11 06:54:53 -08:00
Emil J
fba29ea8f1
Merge pull request #5679 from YosysHQ/emil/abc9-remove-liberty
...
abc9: remove -liberty
2026-02-11 12:36:29 +01:00
Emil J. Tywoniak
915912cc76
abc9: remove -dont_use
2026-02-11 11:39:09 +01:00
Emil J. Tywoniak
c4094e457b
abc9: remove -genlib, -constr
2026-02-11 11:34:54 +01:00
Emil J. Tywoniak
fe613f29b9
.github: move gtest to build dependencies
2026-02-11 11:33:27 +01:00
Emil J. Tywoniak
5a46106a46
abc9: remove -liberty
2026-02-11 01:04:50 +01:00
Emil J. Tywoniak
a6a07fb39c
Dockerfile: remove
2026-02-11 00:59:12 +01:00
Emil J. Tywoniak
98c3f03497
docs: clarify vanilla test run-test.sh
2026-02-11 00:58:29 +01:00
Emil J. Tywoniak
dfbef2fe24
.github: run unit tests in build jobs, not test jobs
2026-02-11 00:55:36 +01:00
Krystine Sherwin
9f30f0e7d6
test-build: Don't rebuild OBJS
2026-02-10 15:34:47 +13:00
Krystine Sherwin
030e495c8b
test-build: Build and cache libyosys.so
2026-02-10 15:05:17 +13:00