Wilson Snyder
e7b30e214e
Internals: Add missing classes to dumps(), enforce with new test. No simulation change. ( #8293 )
2026-09-05 09:50:13 -04:00
Nick Brereton
b1c06fdb09
Fix use-after-free of captured interface typedef in deleted generate branch ( #8287 )
2026-09-04 14:27:11 -04:00
Andrii
18095ac924
Fix incorrect reference to sync/async in SYNCASYNCNET warning ( #8281 )
...
Signed-off-by: Andrii Andrieiev <[email protected] >
2026-09-04 11:01:10 -04:00
Aditya Shevade
efc390a37d
Fix std::randomize() with-clause array index arguments ( #8279 ) ( #8280 )
2026-09-04 11:00:10 -04:00
Aditya Shevade
228635918e
Fix mis-randomizing an unpacked struct member when not rand/randc ( #8277 ) ( #8278 )
2026-09-03 20:08:44 -04:00
Wilson Snyder
c917f04c65
Internals: Fix many but not all missing member dumps. No functional change.
2026-09-02 22:27:19 -04:00
Wilson Snyder
e012f7c79d
Fix segmentation fault on context destruction ( #8265 ).
...
Fixes #8265 .
2026-09-02 08:00:32 -04:00
Wilson Snyder
80907b1e26
Internals: Fix many but not all missing bool member dumps. No functional change.
2026-09-01 22:20:20 -04:00
Wilson Snyder
e6cee9d54c
Tests: Check for binary files
2026-09-01 18:30:29 -04:00
Wilson Snyder
f694e9e1e8
Revert NFA assertion outcomes ( #7946 revert) ( #8258 )
2026-09-01 11:15:05 -04:00
Wilson Snyder
667f64813f
Commentary: Changes update
2026-09-01 08:46:25 -04:00
Szymon Gizler
be83d1393d
Fix continuing on wait(0) ( #7372 ) ( #8231 )
2026-08-31 13:06:23 -04:00
Yilou Wang
c81be029a6
Fix NFA assertion scheduling to fix outcome counts ( #7946 )
2026-08-29 15:53:08 -04:00
Wilson Snyder
0f96460042
Commentary: Changes update
2026-08-29 11:46:16 -04:00
Wilson Snyder
648035df72
Tests: Cleanup some time formats
2026-08-29 11:13:47 -04:00
Geza Lore
dcf45da1c0
Fix excessive SIMILARNAME warnings ( #8233 )
2026-08-28 15:55:41 -04:00
Kamil Danecki
d2920a627d
Support solve before with associative array ( #8232 )
2026-08-28 15:19:08 -04:00
Geza Lore
297713df8b
Fix folding of short circuiting operators guarding member access ( #8238 )
...
V3Const eagerly deletes nodes (we want that in V3Const instead of using
pushDeletep, as otherwise the transient peak memory use during
verilation can be very high)
The std::map used to cache the predicate checking if a subtree contains
a member access then stale if a new node is allocated in the same address.
Fix by using unique node IDs stored in user4 as cache keys.
This is the bug uncovered by #8147
Related to #6963
2026-08-28 20:16:03 +02:00
Geza Lore
c64afda7fc
Fix MULTIDRIVENPROC on static loop induction variables ( #8242 )
...
Disable MULTIDRIVENPROC for static variables used as loop induction
variables. Same way as we disable similar warning in Dfg. While bad
style and bad for performance, it's common legacy code style.
2026-08-28 15:27:50 +02:00
Igor Zaworski
1ad9acd22e
Fix scheduling of variables written in non-inlined functions in suspendable processes ( #7909 )
2026-08-27 08:33:49 -04:00
Jakub Wasilewski
2f856971ed
Add Unigen2 constrained randomization algorithm ( #8042 )
...
Signed-off-by: Jakub Wasilewski <[email protected] >
2026-08-27 08:33:14 -04:00
Geza Lore
8546d5db06
Internals: Move the eval loop into the runtime library ( #8225 )
...
The loops modelling the SystemVerilog scheduling regions are no longer
generated. They now live in 'VerilatedEvalLoop' in the runtime library.
The generated model holds one as a member, passing itself to it, and
exposes each evaluation entry point to it as a pure virtual method on
VerilatedModel. The model's 'eval' and 'eval_step' remain the top level
entry points, and are backward compatible.
V3Sched no longer emits '_eval' or '_eval_settle', etc.. Instead every
evaluation entry point called from the runtime is enumerated by 'VEval',
Scheduling creates all entry points, for all scheduling regions, even if
they are empty, and the runtime eval loop calls everything
unconditionally. If regions are empty, this is simply a call to an empty
function. This will hurt performance on very small models, but should
not be noticeable on anything meaningful, so it is likely best to keep
to reduce complexity.
A scheduling entry points evaluate a single iteration and returns
whether it did any work, they are effectively the previous
`_eval_phase_*` functions.
2026-08-27 07:53:02 -04:00
Geza Lore
59f221986c
Fix errors on stream connected to instance port ( #8234 )
2026-08-27 07:51:35 -04:00
Eddie Rydell
7bff0196b1
Fix procedural tristate assignment overrides ( #6785 ) ( #8130 )
2026-08-26 19:23:46 -04:00
Kamil Danecki
f055eeabe0
Support soft foreach in constraint ( #8174 )
2026-08-26 11:05:12 -04:00
Artur Bieniek
7f9333723f
Fix sampled-value functions output on the first cycle ( #8162 )
2026-08-26 10:30:59 -04:00
Pawel Klopotek
cce0277e1a
Fix backslash behavior in string literals ( #8211 )
...
Signed-off-by: Pawel Klopotek <[email protected] >
2026-08-26 10:02:39 -04:00
Wilson Snyder
51a2dc3efb
Commentary: Changes update
2026-08-26 06:09:57 -04:00
Wilson Snyder
1cd2588241
Tests: Print stats with --benchmark
2026-08-26 06:02:27 -04:00
Geza Lore
087b15bdb3
Remove source location from DIDNOTCONVERGE error ( #8225 prep) ( #8227 )
2026-08-26 04:55:36 -04:00
Aliaksei Chapyzhenka
5e4151e3e0
Internals: Add WASI (wasm32-wasip1) build support ( #8216 ) ( #8217 )
2026-08-25 19:13:07 -04:00
Aisha
b23b53227d
Fix SIMILARNAME warning on parameters and localparams ( #8186 ) ( #8226 )
2026-08-25 16:19:41 -04:00
Yilou Wang
8cbaf505ee
Fix solver session stability to avoid breaking randomize ( #7991 )
2026-08-25 13:13:59 -04:00
Matthew Ballance
0b85b80ece
Fix method calls to be a reorder barrier ( #8222 )
...
Signed-off-by: Matthew Ballance <[email protected] >
2026-08-25 13:09:14 -04:00
Pawel Klopotek
821478070d
Fix V3Task Inout pin resizing error ( #8212 )
2026-08-25 10:27:24 -04:00
Artur Bieniek
69f42ea480
Support s_until/s_until_with in property expression ( #8220 )
2026-08-25 10:26:43 -04:00
Artur Bieniek
f6d56c6440
Optimize consecutive repetiton and goto repetition using ring-buffer ( #8096 )
2026-08-25 08:26:46 -04:00
Wilson Snyder
1c9a9e0cce
Tests: Rename some mis-grouped tests
2026-08-24 18:41:25 -04:00
Yilou Wang
67cbc36ef0
Fix randomize misreading solver replies and applying partial models (Part3a of #7991 ) ( #8136 )
2026-08-24 18:14:06 -04:00
Yilou Wang
3c027baa44
Fix $past in final blocks on a sampling-tick finish ( #8153 )
2026-08-24 11:09:02 -04:00
Artur Bieniek
33ad9d530e
Fix V3Width SVA bound limit guard, leave headroom for alignment, respect --max-num-width ( #8192 )
...
Signed-off-by: Artur Bieniek <[email protected] >
2026-08-24 08:57:18 -04:00
Jonathan Drolet
d0321b8502
Fix VPI force data corruption ( #8160 )
2026-08-24 08:21:13 -04:00
Wilson Snyder
d2760be0d4
Fix fork no-timing and constructor no-timing message
2026-08-23 16:24:59 -04:00
Wilson Snyder
d18bcc2a69
Commentary: Changes update
2026-08-23 16:24:59 -04:00
Marco Bartoli
63a59fce22
Fix typedef clocking input sampling ( #7688 partial) ( #8204 )
2026-08-23 10:38:28 -04:00
Marco Bartoli
c4b84b20f7
Support covergroup events with reference members or ref arguments ( #8201 )
2026-08-23 10:35:43 -04:00
Aditya Shevade
d5f7878eb4
Fix internal error on an enum literal inside a with lambda body ( #8190 ) ( #8193 )
2026-08-23 07:47:43 -04:00
github action
459711ba71
Apply 'make format' [ci skip]
2026-08-22 19:46:51 +00:00
Marco Bartoli
0820506d74
Support covergroup/function/task (ref/virtual/array) interface arguments ( #8180 )
2026-08-22 15:46:07 -04:00
Wilson Snyder
4aceba1106
Fix internal on backslash quoted strings ( #8198 ).
...
Fixes #8198 .
2026-08-22 10:51:45 -04:00