BRDR LIFE
967b1bae57
Fix unique constraint crash, guards, and size ( #8018 ) ( #8018 )
2026-07-31 23:37:53 -04:00
BRDR LIFE
6b3aebfa32
Fix dist inside a foreach nested in a constraint if ( #8016 )
2026-07-31 23:35:01 -04:00
Geza Lore
781f6d90bf
Internals: Refactor MT scheduling ( #8012 )
...
Prep for fixing test added in #7913 .
This is a large scale no functional change refactor, however, MT output
is perturbed as tied scores will be broken differently due to ordering
changes (still deterministic).
Split multi-threaded scheduling out of the monolithic
V3OrderParallel.cpp, into relatively independent parts, simplify the
data structures, and drop redundant or unused code.
New translation units:
- V3OrderMTaskGraph.h/.cpp: OrderMTaskGraph, the graph of LogicMTask
vertices and MTaskEdge edges. LogicMTask and MTaskEdge no longer
depend on the coarsening algorithm's merge candidate types;
per-algorithm auxiliary data is attached externally via the vertex and
edge user pointers.
- V3OrderMTaskFixHazards.cpp: data hazard fixup, was FixDataHazards.
- V3OrderMTaskContraction.cpp: graph coarsening, was Partitioner
together with PropagateCp and the merge candidate types.
- V3OrderParallel.cpp: now just the partitioning driver and ExecMTask
graph construction.
Data structure changes:
- Delete V3Scoreboard.h/.cpp. The generic template had a single user, now
a file-local MergeCandidateScoreboard in V3OrderMTaskContraction.cpp.
- Merge candidates are now MergeCandidate/SiblingMC/EdgeMC, distinguished
by a bit in the candidate id rather than by a vtable, and allocated by
the scoreboard, which owns their lifetime. This removes the multiple
inheritance previously used by MTaskEdge.
Move `hashGraphDebug` which prints the hash of a graph's shape for debugging
to generic `V3Graph::hashGraphDebug`.
Removed (can be added back later):
- Unnecesasry self tests that force special data stucture requirements.
- Per stage --stats output under --debug. (Final figures still reported.)
- Various debug dumps
2026-07-31 15:03:26 +01:00
BRDR LIFE
40323cc02c
Fix dist weights ignored when an item is not a literal ( #8003 )
2026-07-31 10:54:38 +05:30
BRDR LIFE
9cddf46932
Fix internal error forcing an array element read at a run-time index ( #8004 )
2026-07-30 23:57:15 -04:00
Yilou Wang
99b71a37b7
Internals: Refactor randomization next and nextPhased into shared helpers ( #7991 prep) ( #8009 ). No functional change intended.
2026-07-30 21:41:37 -04:00
Artur Bieniek
b70696fc0a
Fix $finish continuing event loop ( #7267 ) ( #7950 )
...
Fixes #7267 ,
2026-07-30 21:39:21 -04:00
Marco Bartoli
4b770cffb4
Fix cross module disable (Part 5 of #7857 ) ( #8006 )
2026-07-30 14:56:07 +01:00
Marco Bartoli
c3be3c8050
Fix nested named fork disable propagation (Part 4 of #7857 ) ( #8001 )
2026-07-29 14:49:34 +01:00
Gilberto Abram
cac2c3df13
Fix MULTIDRIVEN/PROC warning suppression via lint_off ( #8000 )
2026-07-28 21:50:19 -04:00
BRDR LIFE
2e4dbb846c
Fix force not substituted into an unpacked array index ( #8002 )
2026-07-29 06:58:06 +05:30
Marco Bartoli
48e575b885
Fix self-disable of named blocks with forks (Part 3 of #7857 ) ( #7996 )
2026-07-28 22:31:32 +01:00
BRDR LIFE
5fd1c93d43
Fix randomize() with shadowing a user variable named 'item' ( #7993 ) ( #7994 )
...
Fixes #7993 .
2026-07-28 12:29:45 -04:00
spomatasmd
a6f4dd031f
Fix DfgPeephole miscompile of nested shifts with overflowing shift amount ( #7977 )
...
The REPLACE_SHIFTL_SHIFTL and REPLACE_SHIFTR_SHIFTR peephole optimizations
fold '(a << b) << c' into 'a << (b + c)' (and likewise for '>>'), but computed
'b + c' in the width of the shift-amount operand. When 'b + c' overflows that
width it wraps around, producing a too-small shift amount and a wrong result.
Compute the sum one bit wider than the amounts so it cannot overflow.
Fixes #7955
2026-07-28 10:42:51 +01:00
Marco Bartoli
73b3ca7d2c
Fix immediate disable of fork join branches ( #7856 ) ( #7931 )
2026-07-28 10:34:02 +01:00
Wilson Snyder
f8fb1d6646
Fix SYNCASYNCNET false positive with changed non-edge logic ( #7980 ).
...
Fixes #7980 .
2026-07-24 09:53:36 -04:00
Wilson Snyder
d2de6b42cf
* Fix $fgets being mis-optimized away ( #7976 ).
...
Fixes #7976 .
2026-07-24 09:26:01 -04:00
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
github action
a799fedea6
Apply 'make format' [ci skip]
2026-07-24 12:56:19 +00:00
Aisha
8f8b5ade55
Add MULTIDRIVENPROC warning for signals driven by multiple plain always blocks ( #7968 )
2026-07-24 08:54:09 -04:00
Jakub Michalski
bb0300f605
Fix table optimization causing not contextually convertible to bool error ( #7983 )
...
Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2026-07-24 08:50:03 -04:00
Kornel Uriasz
7d3021c34d
Fix varRef scope in unique on dynamic array ( #7981 )
...
Signed-off-by: Kornel Uriasz <kuriasz@antmicro.com>
2026-07-23 15:56:51 -04:00
Igor Zaworski
f511f6c34d
Add FSM arc coverage to verilator_coverage .info output
...
Signed-off-by: Igor Zaworski <izaworski@antmicro.com>
2026-07-22 12:26:14 -04:00
Igor Zaworski
0a855fce47
Add FSM state coverage to verilator_coverage .info output ( #7973 )
2026-07-22 12:24:02 -04:00
Pawel Klopotek
f149dd304c
Add error when scalar is passed to array task argument ( #7948 )
2026-07-22 07:54:58 -04:00
Philip Axer
8113f1df7a
Fix randomization of unreferenced rand members of unpacked structs ( #7910 ) ( #7911 )
...
Fixes #7910 .
2026-07-21 07:42:04 -04:00
Yilou Wang
b34f685f70
Fix dist constraint on a frozen variable failing randomization ( #7878 )
2026-07-21 06:39:09 -04:00
Patrick Creighton
cdfff86c2d
Support delayed tristate gates ( #7960 ) ( #7961 )
...
Fixes #7960 .
2026-07-20 09:21:23 -04:00
Wilson Snyder
3924fe9c18
Fix uncaught type error leading to invalid C++ output ( #7814 ).
...
Fixes #7814 .
2026-07-19 13:32:53 -04:00
Mateusz Gancarz
185a49e628
Fix unlinked error with function call in derived class parameter ( #7923 )
...
Signed-off-by: Mateusz Gancarz <mgancarz@antmicro.com>
2026-07-19 09:55:29 -04:00
Yilou Wang
22050b97a7
Internals: Refactor dist constraint lowering helpers from lowerDistConstraints ( #7878 prepull) ( #7954 )
2026-07-17 11:42:58 -04:00
Adam Kostrzewski
7e1efe6d76
Support dynamic containers in unique constraints ( #7947 )
...
Signed-off-by: Adam Kostrzewski <akostrzewski@internships.antmicro.com>
2026-07-17 10:55:14 -04:00
Pawel Klopotek
cf27c63b2d
Fix type resolution when a local name shadows a type name ( #7915 )
2026-07-17 08:10:23 -04:00
Artur Bieniek
796d5174f3
Fix sampled-value clocks in repeated assertions ( #7944 )
2026-07-16 13:07:53 -04:00
Patrick Creighton
cc1b36bafd
Fix FSM detection of coverage-only branches ( #7941 ) ( #7942 )
...
Fixes #7941
2026-07-16 09:48:36 -07: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
Philip Axer
877fc1e812
Fix dropping variable writes across opaque calls ( #7921 ) ( #7933 )
...
Fixes #7921 .
2026-07-15 11:03:04 -04:00
Andrii
affe4cde57
Fix class parameter resolution ( #7935 )
2026-07-15 10:56:22 -04:00
Kornel Uriasz
232b2eb04c
Fix dynamic array handling in solve...before ( #7922 )
2026-07-15 10:48:54 -04:00
Nick Brereton
baf012cf6a
Fix streaming concat as output-port lvalue into unpacked struct ( #7918 )
2026-07-15 10:46:25 -04:00
Nick Brereton
25377b20af
Optimize VPI symbol registration and scope construction ( #7936 )
2026-07-15 10:31:42 -04:00
Kornel Uriasz
d9fdc20492
Internals: V3Randomize.cpp cleanup ( #7937 ). No functional change.
2026-07-15 05:32:56 -07:00
Wilson Snyder
5ead758f28
Internals: Use addNextNull. No functional change intended.
2026-07-14 19:58:25 -04:00
Igor Zaworski
3b43b304a3
Add error on static virtual functions ( #7932 )
2026-07-14 05:12:26 -07:00
Marco Bartoli
3afb7e1a21
Internals: Refactor disable process queue plumbing ( #7919 )
2026-07-13 21:25:35 -04:00
Jeffrey Song
e24efae5a0
Fix stream concatenation in init array patterns ( #7890 repair) ( #7928 )
2026-07-13 20:29:19 -04:00
Nick Brereton
dde8de0a0d
Fix crash streaming an unpacked array of unpacked structs ( #7917 )
2026-07-11 20:31:01 -07:00
Yilou Wang
7ca78a75e7
Fix scoped randomize with array members under rand_mode ( #7877 )
2026-07-11 20:28:49 -07:00
Yilou Wang
ec124a0905
Fix mid-window disable iff ( #7792 ) ( #7869 )
...
Fixes #7792
2026-07-11 20:44:56 -04:00
Yilou Wang
ca83bc50bf
Fix solve-before over array variables failing randomization ( #7876 )
2026-07-11 20:44:37 -04:00