bin
5dfe1937a0
Upgrade to WASI SDK 33 and enable exceptions
2026-05-01 13:30:43 -04: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
ec0a102302
Merge pull request #5832 from YosysHQ/emil/simple-extract
...
rtlil: rewrite SigSpec::extract for perf and packing
2026-04-24 19:03:53 +00:00
Emil J. Tywoniak
10bbda93f7
rtlil: extend SigSpec::extract test
2026-04-24 11:04:19 +02:00
Emil J. Tywoniak
25b9b796c4
rtlil: complicate extract again for packing
2026-04-24 11:04:19 +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
Emil J. Tywoniak
14b0efeced
rtlil: simplify extract for performance
2026-04-23 13:58:20 +02:00
Emil J
64e7ce2f57
Merge pull request #5803 from YosysHQ/emil/specrule-port-sanity
...
Fix $specrule port naming inconsistency
2026-04-22 10:46:36 +00:00
Petter Reinholdtsen
89d360aa4a
Rewrote Linux edition of proc_self_dirname() to handle any symlink length.
...
This make sure the method work also when the program is located in
deep or long file paths, longer than both PATH_MAX and "getconf
PATH_MAX .". Use the same code on GNU Hurd, where it now work.
I am not sure how to test this in a platform independent way.
2026-04-19 20:56:05 +02:00
Emil J. Tywoniak
0b3d03e69c
newcelltypes: fix $specrule port naming
2026-04-13 22:34:46 +02:00
Emil J. Tywoniak
3e45f9729e
fix $specrule port naming
2026-04-13 22:34:46 +02:00
nella
a02c238874
Consolidate Wallace from booth and CSA.
2026-04-13 12:48:05 +02:00
Lofty
d51a5535c7
Merge pull request #5798 from rocallahan/hashtable-destruction-race
...
Avoid racing accesses to shards[0] in ShardedHashtable parallel destruction
2026-04-11 10:25:58 +00:00
nella
a54bca5493
Merge pull request #5794 from rocallahan/dispatch-pool-destruction
...
Fix data race in ParallelDispatchThreadPool destruction
2026-04-09 09:57:25 +00:00
Robert O'Callahan
1f6559a5cf
Avoid racing accesses to shards[0] in ShardedHashtable parallel destruction
2026-04-08 21:56:36 +00:00
Emil J
b485173428
Merge pull request #5792 from YosysHQ/emil/toposort-stability
...
toposort: avoid run to run variance caused by pointer sensitivity
2026-04-08 08:51:47 +00:00
Robert O'Callahan
d586af0074
Fix data race in ParallelDispatchThreadPool destruction
2026-04-07 23:21:17 +00:00
Emil J. Tywoniak
41b41fefb3
utils: forbid the use of std::less on pointers in TopoSort
2026-04-06 15:09:52 +02:00
Emil J. Tywoniak
2033df5958
utils: refactor TopoSort
2026-04-06 15:09:52 +02:00
Lofty
162eeea29a
cellaigs: remove some dead code
2026-03-31 09:37:18 +01:00
Robert O'Callahan
290fb0556d
Prevent race on num_active_worker_threads_.
...
The core issue here is that we need to ensure `num_active_worker_threads_`
is read before incrementing `done_workers`. See the comments
added in this PR to explain why, and why the resulting code is
race-free.
2026-03-24 22:20:18 +00:00
Emil J
7b2ab9b245
Merge pull request #5763 from YosysHQ/emil/c-slow-init
...
genrtlil: fast memory initialization
2026-03-23 10:21:21 +00:00
nella
ee0461eb00
Change time log format.
2026-03-19 14:38:22 +01:00
nella
d6ab610622
Implement wall clock time meas.
2026-03-19 14:38:22 +01:00
Emil J. Tywoniak
ea11453cef
rtlil: faster remove2
2026-03-18 23:33:35 +01:00
Emil J
c8f715fed8
Merge pull request #5664 from rocallahan/parallel-opt-clean
...
Parallelize `opt_clean` pass
2026-03-16 09:52:34 +00:00
Drew Lewis
4251cd69ed
Fix missing return in NDEBUG case
...
Signed-off-by: Drew Lewis <cannada@google.com>
2026-03-13 19:51:49 +00:00
Emil J
2f1cdc2df9
Merge pull request #5728 from povik/tcl-set-result
...
Replace deprecated Tcl API to fix use-after-free
2026-03-06 13:36:48 +00:00
Martin Povišer
167c6c4585
Replace deprecated Tcl API to fix use-after-free
...
Under Tcl 9.0 the Tcl_SetResult utility is a macro:
#define Tcl_SetResult(interp, result, freeProc) \
do { \
const char *__result = result; \
Tcl_FreeProc *__freeProc = freeProc; \
Tcl_SetObjResult(interp, Tcl_NewStringObj(__result, -1)); \
if (__result != NULL && __freeProc != NULL && __freeProc != TCL_VOLATILE) { \
if (__freeProc == TCL_DYNAMIC) { \
Tcl_Free((char *)__result); \
} else { \
(*__freeProc)((char *)__result); \
} \
} \
} while(0)
Temporaries constructed as part of the 'result' expression will be
dropped before the 'result' pointer is used. What was safe when
Tcl_SetResult was a function isn't safe with the macro definition.
Transition away from deprecated SetResult to calling
SetObjResult/MewStringObj directly.
2026-03-06 11:52:17 +01:00
Robert O'Callahan
ac55935a68
Add unit-tests for ParallelDispatchThread and friends
2026-03-06 02:20:08 +00:00
Robert O'Callahan
b42bb05b63
Parallelize Design::check()
2026-03-06 02:03:21 +00:00
Robert O'Callahan
e2166c4684
Parallelize collect_garbage()
2026-03-06 02:03:21 +00:00
Robert O'Callahan
5ff7d344c9
Add FfInitVals::set_parallel() method
...
We'll use this later in the PR.
2026-03-06 02:03:21 +00:00
Robert O'Callahan
fe329a0e14
Add MonotonicFlag
...
We'll use this later in the PR.
2026-03-06 02:03:21 +00:00
Robert O'Callahan
e71da96314
Add ConcurrentWorkQueue
...
We'll use this later in the PR.
2026-03-06 02:03:21 +00:00
Robert O'Callahan
ab238c3145
Add ShardedHashSet
...
We'll use this later in the PR.
2026-03-06 02:03:21 +00:00
Robert O'Callahan
87521df534
Add ShardedVector
...
We'll use this later in the PR.
2026-03-06 02:03:21 +00:00
Robert O'Callahan
b079e5721c
Add ParallelDispatchThreadPool
...
We'll use this later in the PR.
2026-03-06 02:03:21 +00:00
Robert O'Callahan
898a288a99
Add work_pool_size, IntRange, item_range_for_worker, and ThreadIndex
...
We'll use these later in this PR.
2026-03-06 02:03:21 +00:00
Robert O'Callahan
bd7f2d9ba4
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-03-06 02:03:21 +00:00
Robert O'Callahan
7af5dbae35
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-03-06 02:03:21 +00:00
Emil J. Tywoniak
23eb38fe3f
celltypes: include newcelltypes to allow legacy code access to migrated yosys_celltypes
2026-03-05 11:59:20 +01:00
Emil J. Tywoniak
6485a13809
newcelltypes: mark header unstable
2026-03-04 15:17:26 +01:00
nella
04822c6660
Readd builtin_ff_cell_types for plugin parity.
2026-03-04 12:39:45 +01:00
nella
66bd4716cf
rtlil use newcelltypes.
2026-03-04 12:39:45 +01:00
Emil J. Tywoniak
0284595e9c
celltypes: fix absurd eval declarations
2026-03-04 12:39:45 +01:00
Emil J. Tywoniak
793a3513c6
newcelltypes: use unordered_map
2026-03-04 12:39:45 +01:00
Emil J. Tywoniak
661fcb24cb
newcelltypes: fix MSVC build
2026-03-04 12:39:45 +01:00
Emil J. Tywoniak
12412d1fa5
register: use newcelltypes
2026-03-04 12:39:45 +01:00