BRDR LIFE
40323cc02c
Fix dist weights ignored when an item is not a literal ( #8003 )
2026-07-31 10:54:38 +05:30
Bartosz Skorowski
ee152be17b
Fix lost writes when select width exceeds variable width ( #7975 )
...
Signed-off-by: Bartosz Skorowski <bskorowski@internships.antmicro.com>
2026-07-24 08:58:28 -04:00
Pawel Klopotek
f149dd304c
Add error when scalar is passed to array task argument ( #7948 )
2026-07-22 07:54:58 -04:00
Artur Bieniek
255bcff3ac
Support [*N:$] consecutive repetition ( #7940 )
...
Signed-off-by: Artur Bieniek <abieniek@antmicro.com>
2026-07-16 09:29:30 -04:00
Nick Brereton
baf012cf6a
Fix streaming concat as output-port lvalue into unpacked struct ( #7918 )
2026-07-15 10:46:25 -04:00
Jeffrey Song
e24efae5a0
Fix stream concatenation in init array patterns ( #7890 repair) ( #7928 )
2026-07-13 20:29:19 -04:00
Kornel Uriasz
9740203485
Fix VL_TO_STRING function for array of structs ( #7912 )
...
Signed-off-by: Kornel Uriasz <kuriasz@antmicro.com>
2026-07-09 08:40:24 -07:00
github action
1d42c45a34
Apply 'make format' [ci skip]
2026-07-09 12:46:08 +00:00
Jaeuk Lee
38895f8f29
Fix $display accepting streaming concat arguments ( #7663 ) ( #7890 )
...
Fixes #7663 .
2026-07-09 08:41:40 -04:00
Yilou Wang
f1a8192a36
Fix mixed-width inside and dist range bounds failing randomization ( #7875 )
2026-07-07 11:26:19 -07:00
Artur Bieniek
a5f4d40901
Fix range delays with parameter bounds ( #7882 )
...
Signed-off-by: Artur Bieniek <abieniek@antmicro.com>
2026-07-06 13:13:11 -04:00
Geza Lore
566f4e6efc
Internals: Add new VL_RESTORER flavours ( #7866 )
...
Restrict VL_RESTORER to be usable only with trivially copyable types.
Introduce VL_RESTORER_COPY and VL_RESTORER_CLEAR, which are more
efficient versions usable for non trivially copyable types.
VL_RESTORER_COPY semantically behaves the same as VL_RESTORER, but only
does one copy at initialization, and on scope exit restores via a move.
VL_RESTORER_CLEAR swaps the variable with an new one constructed via
the no-args constructor (e.g. empty collection), which does not require
any copying at any point.
Static assertions enforce picking one of the new flavours when copying
might be expensive.
2026-07-04 17:27:07 +01:00
Wilson Snyder
83eb54ec7e
Fix wild compare operators on strings
2026-07-04 11:05:34 -04:00
Yilou Wang
59fba72cb6
Support method calls on a sub-interface via a virtual interface ( #7800 )
2026-06-19 08:41:48 -04:00
Yilou Wang
a5a16cfbfd
Support unbounded always [m:$] and strong s_always liveness ( #7798 )
2026-06-18 11:17:09 -04:00
Yilou Wang
3a4377d39e
Support clocking event on a sequence declaration body ( #7598 ) ( #7793 )
...
Fixes #7598 .
2026-06-17 17:57:18 -04:00
Nick Brereton
26c85d4495
Fix `$bits` on unpacked structs ( #4521 ) ( #7796 )
...
Fixes #4521 .
2026-06-17 17:56:48 -04:00
Geza Lore
5ab2bf1ec4
Optimize input combinational logic by change detection ( #7784 )
...
When a lot of combinational logic is driven from top level inputs,
work can be wasted evaluating that logic if the top level inputs don't
change.
This change adds an optimization by performing a change detect on the
top level inputs, and evaluate 'ico' logic only if the top level input
actually changed. This especially helps with --hierarchical/--lib-create
which runs the 'ico' of each sub-model in the eval settle loop.
This was observed to yield 40%+ run-time speedup on some partitioned
designs.
The added change detection is cheap, so it is emitted even if the 'ico'
region is small, and is on by default.
The optimization is only sound if the model itself does not write to the
top level inputs (otherwise the 'previous value' variables would be out
of sync, which are not updated by internal writes.). If we can detect a
top level input is written within the design, then for that input, we
fall back on always running the relevant logic. With --vpi we cannot
prove safety statically, so --vpi will disable this optimisation unless
explicitly enabled. (In which case it's the user's responsibility to not
write to top level inputs via the VPI.)
2026-06-15 05:42:00 +01:00
Nick Brereton
87d2610674
Support unpacked struct stream ( #7767 )
2026-06-12 17:32:01 -04:00
pawelktk
75993ca9ea
Support assoc array methods with wide value types ( #7680 )
2026-06-10 09:39:43 -04:00
Artur Bieniek
a3827182c0
Support `s_until` and `s_until_with` (IEEE1800-2023 16.12.12) ( #7722 )
...
Signed-off-by: Artur Bieniek <abieniek@antmicro.com>
2026-06-08 14:08:04 -04:00
Marco Bartoli
2db34818b3
Fix parameter values in coverage bins widths ( #7732 ) ( #7734 )
...
Fixes #7732 .
2026-06-07 20:47:43 -04:00
Matthew Ballance
2886291eba
Support covergroups, coverpoints, and bins ( #784 ) ( #7117 )
...
Fixes #784 .
2026-06-05 09:35:01 -04:00
Todd Strader
7bd41bfbb9
Fix MULTIDRIVEN in generates ( #7709 )
2026-06-03 19:50:56 -04:00
Nick Brereton
bbd8d927ee
Support printing enum names for %p and %s ( #5523 ) ( #7338 repair) ( #7521 ) ( #7527 )
2026-06-03 14:55:00 -04:00
Krzysztof Bieganski
7664bbb3ef
Support generic interface arrays ( #7604 )
2026-06-02 22:28:50 -04:00
Igor Zaworski
fe4adfe273
Support process::self().srand() ( #7695 )
2026-06-02 12:00:27 -04:00
Yilou Wang
39b9901032
Support weak `until` / `until_with` property operators ( #7290 ) ( #7548 ) ( #7685 )
...
Fixes #7290 . Fixes #7685 .
2026-06-01 14:50:13 -04:00
Artur Bieniek
45fae00064
Fix width of unsized literal in property expression ( #7668 )
2026-05-28 15:10:25 -04:00
Benjamin Collier
69b3c5f6d1
Support streaming on queues ( #7597 )
2026-05-20 19:14:02 -04:00
Greg Davill
57ce373e99
Fix array pattern concatenation ( #7401 ) ( #7402 )
2026-05-17 09:49:32 -04:00
Yilou Wang
f9427c6d5f
Support property abort operators (accept_on, reject_on) ( #7578 )
2026-05-15 08:38:38 -04:00
Krzysztof Bieganski
3381d656c7
Support calling interface functions without parens ( #7584 )
...
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2026-05-13 08:15:32 -04:00
Jakub Michalski
05f6db7970
Optimize emitting to_string() for compiler speedup ( #7468 )
...
Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2026-05-12 09:49:21 -04:00
Yilou Wang
b0d58bbcef
Support SVA goto repetition with range `[->M:N]` ( #7569 )
2026-05-11 07:07:51 -04:00
Artur Bieniek
c69c11b2db
Support procedural continuous assign/deassign ( #7493 )
2026-05-08 19:01:11 -04:00
Yilou Wang
8eca6b8fe7
Fix regression rejecting boolean `!x` inside sequence expressions ( #7549 ) ( #7551 )
...
Fixes #7549 .
2026-05-08 18:34:28 -04:00
Bartłomiej Chmiel
4e349971d3
Support `s_eventually` ( #7291 ) ( #7508 )
2026-05-04 09:57:03 -04:00
Igor Zaworski
25d4827bd5
Internals: Four state pre-pull (types) ( #7520 )
2026-04-30 16:56:15 -04:00
Wilson Snyder
dd75c4cd1b
Revert: 21020ea2: Support printing enum names for %p and %s ( #5523 revert) ( #7338 revert) ( #7521 test)
2026-04-30 10:29:47 -04:00
Nick Brereton
21020ea2d1
Support printing enum names for %p and %s ( #5523 ) ( #7338 )
2026-04-30 07:15:38 -04:00
Yilou Wang
76c1b26e3b
Support `obj.randomize(null)` ( #7487 ) ( #7509 )
2026-04-28 15:31:08 -04:00
Yilou Wang
c8893b64de
Support `always` / `always[m:n]` / `s_always[m:n]` property operators ( #7482 )
2026-04-27 08:20:34 -04:00
em2machine
b1d3d63e9f
Fix for unction argument expects a class refetence ( #7483 ) ( #7489 )
...
Fixes #7483 .
2026-04-24 10:31:57 +02:00
Yilou Wang
51eb5346c8
Support sequence within operator ( #7461 )
2026-04-23 05:47:24 +02:00
Kamil Danecki
3587ac48a4
Fix modification of members of object with const handle ( #7433 )
...
Signed-off-by: Kamil Danecki <kdanecki@internships.antmicro.com>
2026-04-16 09:43:12 -04:00
Wilson Snyder
7e3400b37d
Fix virtual interface implied comparison with null ( #7421 ).
...
Fixes #7421 .
2026-04-14 07:25:02 -04:00
Wilson Snyder
fac07970e6
Improve too-small cast warning to show size
2026-04-12 18:12:41 -04:00
Ryszard Rozak
4da31b0418
Support 'until' property (partial #7290 ) ( #7399 )
2026-04-10 08:17:54 -04:00
Yilou Wang
854e80c3c2
Support nonconsecutive repetition [=N] in sequence expressions ( #7397 )
2026-04-09 18:28:28 -04:00