Wilson Snyder
5e69faff46
Fix clang 20 warnings
2025-03-27 19:01:25 -04:00
Bartłomiej Chmiel
8965401d10
Fix PGO profiling for multi-threaded hierarchical scenarios ( #5888 )
2025-03-27 11:10:48 -04:00
Bartłomiej Chmiel
fabded95df
Support multi-thread hierarchical simulation ( #2583 ) ( #5871 )
2025-03-24 18:39:29 -04:00
Wilson Snyder
7521c2c644
Standardize some error messages.
2025-03-23 19:51:54 -04:00
Wilson Snyder
f9109eb61f
Delay deletes in V3Fork ( #5862 attempt)
2025-03-22 08:03:25 -04:00
Wilson Snyder
48effad448
Add DEPRECATED warning on `--xml-only` and `--xml-output`.
2025-03-21 21:32:05 -04:00
Nick Brereton
27e39d7821
Fix interface array assignments ( #5270 ) ( #5633 ) ( #5869 )
2025-03-21 17:00:49 -04:00
Todd Strader
8c287134d7
Add warning on expression coverage class references ( #5870 )
2025-03-21 08:55:38 -04:00
Wilson Snyder
c508fd5d24
Internals: Remove single-statement braces. No functional change.
2025-03-19 22:55:11 -04:00
Todd Strader
d2b7b567df
Fix expression coverage on additional nodes ( #5849 partial) ( #5867 )
2025-03-19 19:01:31 -04:00
Wilson Snyder
39bdd427d6
Fix unresolved typedefs as parameters ( #5850 ).
2025-03-19 18:02:56 -04:00
Geza Lore
4a2212949e
Fix change detection at time 0 ( #5864 )
...
Initialize "previous value" variables in the static initializer
function, instead of the 'initial' blocks function. Fixes #5499
2025-03-18 13:34:04 +00:00
Wilson Snyder
780163b91e
Internals: Avoid extra op#() calls. No functional change intended.
2025-03-16 14:34:19 -04:00
Wilson Snyder
77cc93c176
Fix detecting bad datatype on $countones ( #5674 ).
2025-03-15 21:57:10 -04:00
Wilson Snyder
418fc2c246
Fix reduction-or on class pointers (prep #5674 )
2025-03-15 21:46:37 -04:00
William D. Jones
13c22690c4
Fix algorithm header portability in V3Os.cpp (for std::replace). ( #5861 )
2025-03-15 21:43:06 -04:00
Geza Lore
59cb53cfbc
Set trigger vector in whole words ( #5857 )
...
Having many triggers still hits a bottleneck in LLVM leading to long
compile times.
Instead of setting triggers bit-wise, set them as a whole 64-bit word
when possible. This improves C++ compile times by ~4x on some large
designs and has minor run-time performance benefit.
2025-03-14 14:06:51 +00:00
Ryszard Rozak
9a6598b36f
Fix streaming of unpacked arrays concatenations ( #5856 )
2025-03-13 13:56:29 +01:00
Wilson Snyder
0aac3074b6
Fix recursive error on virtual interfaces ( #5854 ).
2025-03-12 17:57:02 -04:00
Wilson Snyder
391d4e1c32
Fix segmentation fault on member compare ( #5853 ).
2025-03-12 08:06:34 -04:00
Wilson Snyder
45add07205
Internals: Minor V3Param cleanups. No functional change.
2025-03-12 07:58:26 -04:00
Andrew Voznytsa
6a48d3bb83
Add `--make json` to enable integration with non-make/cmake build systems ( #5799 )
2025-03-11 19:57:21 -04:00
Wilson Snyder
53151d7c5f
Fix emitting `this` ( #5849 )
2025-03-11 17:53:35 -04:00
Yilou Wang
7fe51583e5
Fix foreach of assocArr inside a constraint block ( #5727 ) ( #5841 )
2025-03-11 13:32:34 -04:00
Geza Lore
6ecdd14fdb
Fix NBA shared flag reuse ( #5848 )
...
Fixes #5847
2025-03-11 07:40:21 -04:00
Wilson Snyder
8157f21c3e
Internals: Refactor hasGParam. No functional change intended.
2025-03-09 16:10:38 -04:00
Wilson Snyder
a2e91f3cf2
Internals: Add some const. No functional change.
2025-03-09 13:13:57 -04:00
Geza Lore
d9701e6406
Automatically split some packed variables ( #5843 )
...
This patch adds a heuristic to V3SplitVar, and it attempts to split up
packed variables that are only referenced via constant index,
non-overlapping bit/range selects. This can eliminate some UNOPTFLAT cases.
2025-03-09 10:31:01 -04:00
Wilson Snyder
ce2f335786
Internals: Set isParameterized near hasGParam. No functional change intended.
2025-03-08 17:53:24 -05:00
Wilson Snyder
9632dfdf93
Internals: Remove some unneeded this->. No functional change.
2025-03-08 17:48:20 -05:00
Wilson Snyder
8026b2a7f3
Fix checking built-in method arguments ( #5839 )
2025-03-08 14:11:12 -05:00
Wilson Snyder
24dbb0bc5c
Internals: V3Width call refactoring. No functional change.
2025-03-08 12:44:30 -05:00
github action
5045bf53df
Apply 'make format'
2025-03-08 16:09:07 +00:00
Wilson Snyder
51fcb881d5
Fix error on out-of-range lvalue part select ( #5820 ).
2025-03-08 11:05:58 -05:00
Geza Lore
20b964a9a2
Fix splitting of packed ports with non-zero based ranges ( #5842 )
2025-03-08 09:37:30 -05:00
Mateusz Gancarz
9b4509f7d9
Add `--trace-saif` for SAIF power traces ( #5812 )
2025-03-07 10:41:29 -05:00
Geza Lore
96bffd49aa
Fix invalidating variable caches in SenExprBulider ( #5834 ) ( #5835 )
2025-03-07 07:18:34 -05:00
Krzysztof Bieganski
b2093b513a
Fix type_id package scope resolution ( #5826 )
2025-03-06 17:41:27 -05:00
Wilson Snyder
8e87a99628
Fix `rand_mode` method with cast ( #5831 ).
2025-03-05 21:43:50 -05:00
Bartłomiej Chmiel
a3b2c2af17
Support force/release with a variable reference ( #5721 ) ( #5810 )
2025-03-04 10:12:02 -05:00
Wilson Snyder
27d3eb5b7b
Fix UNOPTFLAT warnings with `--coverage-trace` and always_comb ( #5821 ).
2025-03-02 20:02:55 -05:00
Wilson Snyder
ce211ebceb
Internals: Make some auto more explicit. No functional change.
2025-03-02 17:01:35 -05:00
Geza Lore
0133bc6b09
Do not use function locals in SenExprBuilder ( #5822 )
...
Function locals are not safe here because we might need to split up
the generated function. V3Localize can fix them later if safe.
2025-03-02 16:13:59 +00:00
Geza Lore
fc302a5207
Fix sorting of wide SenItems ( #5816 )
...
This used to throw Error: Value too wide for 64-bits expected in this context
2025-03-01 22:11:43 +00:00
Geza Lore
14f618b0f6
Fix invalid code motion over branches ( #5811 ) ( #5814 )
2025-02-28 13:32:03 -05:00
Wilson Snyder
a9762e0c5c
Fix coredump on fork inside disable named block by adding an UNSUPPORTED
2025-02-27 21:42:20 -05:00
Wilson Snyder
098ee6fa7a
Internals: Cleanup some missing VL_RESTORERs. No functional change intended.
2025-02-27 21:18:27 -05:00
Wilson Snyder
7f94fa1da7
Add check for `let` misused in statement context ( #5733 ).
2025-02-26 09:08:41 -05:00
Wilson Snyder
3b98db17cc
Fix reset of automatic function variables ( #5747 ).
...
Also required V3Life optimize CRESET(x) ... ASSIGN(rhs, x) to remove the
extraneous CRESET to avoid creating new UNOPTFLAT situations.
2025-02-25 22:48:53 -05:00
Wilson Snyder
489349ffbd
Internals: Reduce verbosity of SplitVar
2025-02-25 20:41:00 -05:00