Ethan Sifferman
ffceba108b
fixed nba
2026-02-02 12:46:15 -08:00
github action
268f5c3367
Apply 'make format'
2026-02-02 03:38:19 +00:00
Leela Pakanati
b2fa3fb54e
Fix parameterized class typedef as interface type parameter ( #6983 ) ( #6984 )
2026-02-01 22:37:29 -05:00
Wilson Snyder
407fc74195
Internals: Use Var::isConst to allow constant substitution
2026-02-01 21:06:26 -05:00
Rodrigo Batista de Moraes
c1e343d9cf
Fix variable randomization to better differ by seed ( #6945 ) ( #6956 )
2026-02-01 14:53:33 -05:00
Wilson Snyder
a05cbd8382
Support structure initial values ( #6130 ).
...
Fixes #6130 .
2026-02-01 13:44:20 -05:00
Geza Lore
d3f608058f
Optimize expanded constant pool words ( #6979 )
...
Re-inline ConstPool entries in V3Subst that have been expanded into
word-wise accessed by V3Expand. This enables downstream constant folding
on the word-wise expressions.
As V3Subst now understands ConstPool entries, we can also omit expanding
straight assignments with a ConstPool entry on the RHS. This allows the
C++ compiler to see the memcpy directly.
2026-02-01 17:08:49 +00:00
Wilson Snyder
7ca113a84f
Fix non-inlined function return value clearing ( #6982 ).
2026-02-01 11:57:09 -05:00
Wilson Snyder
1b2e13a0d8
Tests: Improve t_uvm_hello.v
2026-02-01 11:42:32 -05:00
Wilson Snyder
b9b0bf2e19
Tests: Rename some long-named test, no test change
2026-02-01 11:39:33 -05:00
Wilson Snyder
9c05c4d622
Commentary: Changes update
2026-02-01 11:39:07 -05:00
Geza Lore
5e5dcdbdbd
Optimize right shifts as clean ( #6981 )
2026-02-01 08:12:18 -05:00
Geza Lore
ca17904a62
Internals: Improve readability of selects in output ( #6980 )
2026-02-01 07:29:56 -05:00
Geza Lore
197f11044e
Internals: Split reorder transfrom from V3Split to V3Reorder ( #6976 )
2026-02-01 05:09:40 +00:00
Geza Lore
f0afcede10
Internals: Use pure expressions in V3Randomize ( #6974 )
2026-02-01 05:09:19 +00:00
Geza Lore
122ceb2258
Internals: Fix use of Expr as Stmt in V3Assert ( #6280 ) ( #6973 )
2026-02-01 05:08:41 +00:00
Geza Lore
bef709a235
Optimize wide word shifts by multiple of word size ( #6970 )
...
V3Expand wide SHIFTL and SHIFTR if the shift amount is know and is a
multiple of VL_EDATA_SIZE. This case results in each word requiring a
simple copy from the original, or store of a constant zero, which
subsequent V3Subst can then eliminate.
2026-02-01 05:07:57 +00:00
Geza Lore
cea4c88e12
Optimize more wide operation temporaries with substitution ( #6972 )
...
A temporary introduced by V3Premit could not be eliminated in V3Subst if
it was involved in an expression that did a write back to a
non-temporary. To enables removing these, we need to track all variables
in V3Subst, not just the ones we would consider for elimination. Note
the new implementation is marginally faster than the old one even though
it does more work. It can eliminate ~5% more of wide temporaries on some
designs. Algorithm is largely the same.
2026-02-01 05:07:13 +00:00
Wilson Snyder
07ce0ac2ea
Internals: Move CReset under Assign ( #6978 )
2026-01-31 21:27:36 -05:00
Geza Lore
d9234501e0
Optimize concatenations that produce unused bits in DFG ( #6971 )
...
Concatenations that are only used by Sel expressions that do not consume
some bits on the edges can be narrowed to not compute the unused bits.
E.g.: `{a[4:0], b[4:0]}[5:4]` -> `{a[0], b[4]}[1:0]`
This is a superset or the PUSH_SEL_THROUGH_CONCAT DFG pattern, which is
removed.
2026-01-31 17:28:14 +00:00
Geza Lore
0915ae6ba8
Optimize string temporaries - do not localize ( #6969 )
...
Minor performance improvement, especially for assertions heavy code.
Strings are often used as temporaries in unlikely branches. Do not
localize them to avoid an unnecessary initialization on function entry.
2026-01-31 16:05:35 +00:00
Geza Lore
f472c2da6e
Change metacomment extra underscore error to warning ( #6968 )
...
Used to throw a hard v3error on stray underscores in metacomments.
Issue a BADVLTPRAGMA that can be turned off instead.
2026-01-31 15:16:20 +00:00
Pawel Kojma
b9ef4a6c48
Add parsing of coverpoint identifier in place of covergroup range list ( #6961 )
2026-01-30 07:05:57 -05:00
Wilson Snyder
996ae35a1b
Fix associative array of events causes C++ compile error ( #6962 ).
2026-01-29 20:38:50 -05:00
Wilson Snyder
7e56a2334a
Commentary: Changes update
2026-01-29 20:36:27 -05:00
Wilson Snyder
5547833dde
Add UNSUPPORTED error on IEEE complex ports ( #2844 partial)
2026-01-28 19:14:10 -05:00
Wilson Snyder
913cf07491
Improve converge-limit error message
2026-01-28 18:32:50 -05:00
Pawel Kojma
30e6cd9092
Fix accessing non-rand struct member in constraints ( #6960 )
2026-01-28 07:33:16 -05:00
Geza Lore
76949f00d3
Internals: make test-diff macOS compatibility fix - again
2026-01-28 11:05:27 +00:00
Geza Lore
7875552354
Internals: Add stats/dump of circular logic in scheduling ( #6953 )
2026-01-28 10:45:23 +00:00
Yangyu Chen
5b84635bde
Add VerilatedContext::useNumaAssign and set on threads() call ( #6954 )
2026-01-27 11:05:28 -05:00
Wilson Snyder
7c6c6a684b
Add SPDX copyright identifiers, and get 'reuse' clean. No functional change.
2026-01-26 20:24:34 -05:00
Wilson Snyder
bd127488f2
Remove xml.rst, missed when --xml-only removed earlier.
2026-01-26 17:34:33 -05:00
Wilson Snyder
d3ecba7699
Internals: Cleanup some verilog.y dead since IEEE 2017
2026-01-26 15:51:19 -05:00
Todd Strader
67df517bec
Fix type assignments for arrays of parameter types ( #6955 )
2026-01-26 15:50:52 -05:00
Wilson Snyder
1b9f38f78f
Fix parameterized virtual interface references that have no model references ( #4286 ).
...
Fixes #4286 .
2026-01-25 14:25:42 -05:00
Wilson Snyder
41b131389e
Internals: Some tristate and param cleanups. No functional change.
2026-01-25 14:19:27 -05:00
Geza Lore
2ddfcbed16
Internals: make test-diff macOS compatibility fix
2026-01-25 15:40:56 +00:00
Wilson Snyder
430015e234
CI: Add retry on apt/pip
2026-01-25 10:27:52 -05:00
Wilson Snyder
140b2f2b2e
Internals: V3Tristate cleanups. No functional change.
2026-01-24 18:13:34 -05:00
Wilson Snyder
ad5005f8f5
Internals: Add user#Or functions. No functional change.
2026-01-24 18:10:59 -05:00
Wilson Snyder
4ff57514c8
Commentary: Changes update
2026-01-24 11:08:11 -05:00
Wilson Snyder
56a089af94
Tests: Update t_attr
2026-01-24 11:08:07 -05:00
Wilson Snyder
1e7198eabb
Tests: t_fork_join_none_stmt ( #5902 test)
2026-01-24 10:56:27 -05:00
Wilson Snyder
b456d903e2
Tests: Add t_inst_array_slice ( #3433 test)
2026-01-24 10:15:08 -05:00
Wilson Snyder
07b61d3745
Fix internal error when fork under always expression ( #6911 ).
2026-01-23 22:11:04 -05:00
github action
2737a22793
Apply 'make format'
2026-01-24 03:01:38 +00:00
Cameron Waite
567fba3695
Fix null pointer dereference in class member trigger expressions ( #6946 )
2026-01-23 22:00:43 -05:00
Todd Strader
bc3c5b32dd
Fix delayed initial assignment ( #6929 )
2026-01-23 12:53:40 -05:00
Artur Bieniek
a7db9ee32f
Add error when accessing a non-static class field from a static function ( #6948 )
2026-01-23 10:18:24 -05:00