Geza Lore
ccb4ab9fe3
Optimize Dfg vertex input edge storage ( #8313 )
...
Store input edges of fixed arity vertices inline in the vertex class.
This reduces heap allocations, memory fragmentation, and pointer chasing
and speeds up Dfg passes. The extra branch introduced in inputEdgep() is
well predictable and profiling shows branchless alternatives are a loss.
2026-09-18 18:19:53 +01:00
Geza Lore
079422d6ae
Fix Dfg driver tracing of partial assignments ( #8377 ) ( #8397 )
...
Fixes #8377
2026-09-18 17:51:54 +01:00
Kornel Uriasz
ce482bb087
Fix weighted dist constraints in presence of other constraints ( #8392 )
...
Signed-off-by: Kornel Uriasz <[email protected] >
2026-09-18 10:30:39 -04:00
Andrii Andrieiev
064ecbcb82
Fix error on non-existent interface ports ( #8393 )
...
Signed-off-by: Andrii Andrieiev <[email protected] >
2026-09-18 08:26:56 -04:00
Ryszard Rozak
c25f287779
Fix copy constructor of classes with constraints ( #8381 )
2026-09-18 07:47:25 -04:00
Igor Zaworski
5f38b797f3
Fix access types of refs and inouts ( #8380 )
2026-09-18 07:46:56 -04:00
Nick Brereton
3fd16ed498
Internals: Hoist vpi_put_value_array argument validation to entry point. ( #8384 )
2026-09-17 18:08:16 -04:00
Geza Lore
1f9c9681a7
CI: Move RTLMeter jobs to 26.04 ( #8387 )
...
Fixes #8379
2026-09-17 22:47:06 +01:00
Geza Lore
1c4c6c9e9d
Improve V3Split ( #8385 )
...
Various cleanups, simplifications and improvements:
- Build the output bottom up, eliminating AstSplitPlaceholder
- Replace the 'ignore step' pruning with removing the vertices and edges
- Treat an NBA written variable as a block input, enabling more splits
- Move instead of clone leaf statements
Overall V3Split is faster, uses less memory, can do more splits, is
simpler algorithmically, and has half the lines of code in V3Split
Most notably this can now be split, which could not be before:
```systemverilog
always @(posedge clk) begin
a <= !a;
if (a) b <= c;
end
```
t_x_rand_mt_stability* pin $random values, but there is one random seed
per C thread, so they depend on which thread runs the block. More
splitting moved that block onto a different thread, so force a single
MTask in those tests to keep them stable.
Some property/assert test changed hit counts due to races, but are now
closer to what might be expected.
2026-09-17 23:11:26 +02:00
Geza Lore
2d0eaab5df
Add -fno-slp-vectorize if C++ compiler is clang 18 ( #8383 )
...
Partial #8379
2026-09-17 18:38:39 +01:00
Nick Brereton
bc7fd47908
Internals: Prepare VPI runtime for lazy public signals. No functional change. ( #8382 )
2026-09-17 13:00:19 -04:00
Marco Bartoli
1aa87913c8
Support illegal_bins and ignore_bins for cross bins ( #8372 )
2026-09-16 17:53:15 -04:00
Artur Bieniek
e2caf971de
Fix NFA rings for bounded SVA delays ( #8371 )
...
Signed-off-by: Artur Bieniek <[email protected] >
2026-09-16 17:52:28 -04:00
Marco Bartoli
08cadc034d
Reland and fix "Fix wide enum names" ( #8344 ) ( #8362 ) ( #8365 ) ( #8366 )
2026-09-16 17:47:51 -04:00
Geza Lore
9f66980355
Revert "Internals: Improve V3Split ( #8373 )" ( #8374 )
...
This reverts commit d8a3208bea .
2026-09-16 21:44:19 +01:00
Geza Lore
d8a3208bea
Internals: Improve V3Split ( #8373 )
2026-09-16 16:25:36 -04:00
Wilson Snyder
40c102b4f8
Fix docker compilation with --trace-fst ( #8370 ).
...
Fixes #8370 .
2026-09-16 12:36:14 -04:00
Geza Lore
573c2e61a6
Internals: Make V3LiftExpr non optional ( #8369 )
2026-09-16 12:29:56 -04:00
Pawel Kojma
282b898b21
Use VIsCached for checking purity of arguments in AstCMethodHard ( #8350 )
2026-09-16 11:23:34 -04:00
Wilson Snyder
195d0db009
Commentary: Changes update
2026-09-15 21:36:01 -04:00
Wilson Snyder
45dbc90343
Tests: Reformat some tests to mostly verilog-format standard. No test functional change.
2026-09-15 21:35:50 -04:00
Edmund Lam
529d98918a
Fix deferring parameters for class::localparam access ( #7746 ) ( #7748 )
2026-09-15 21:17:26 -04:00
Artur Bieniek
c9e3f59f26
Fix stale reads of continuously assigned forceable signals ( #8223 )
...
Signed-off-by: Artur Bieniek <[email protected] >
2026-09-15 21:15:37 -04:00
Bartosz Skorowski
3e30f4476a
Support constant expressions in bins ( #8309 )
...
Signed-off-by: Bartosz Skorowski <[email protected] >
2026-09-15 21:15:25 -04:00
Drew Risinger
e0e0011b36
Optimize recursion depth in Dfg circular driver tracing ( #8272 )
2026-09-15 23:23:54 +01:00
Wilson Snyder
a9ddb4fab3
Revert "Fix wide enum names" ( #8344 ) ( #8362 )
2026-09-15 13:42:35 -04:00
Geza Lore
3343f4d6c8
Fix V3InstrCount with recursive functions ( #8361 )
...
Fixes #8327
2026-09-15 18:30:16 +01:00
Geza Lore
0f3a84643b
CI: Fix pr-notification deletion
2026-09-15 17:01:45 +01:00
Marco Bartoli
253f51f1dc
Fix %p format on class members ( #8360 )
2026-09-15 09:43:12 -04:00
Mike Murunov
270c528afd
Fix missing implicit net for bufif/notif/nmos/pmos data input ( #8353 ) ( #8354 )
2026-09-14 17:31:51 -04:00
Marco Bartoli
c65f312d6e
Fix wide enum names ( #8344 )
2026-09-14 16:29:42 -04:00
Dragon-Git
377865e2a0
Fix class-qualified self reference to a typedef in a parameterized class ( #8348 ) ( #8349 )
2026-09-14 10:54:15 -04:00
Artur Bieniek
6a57cf10f4
Obtimize NBA assertions by keeping all writers before readers ( #8326 )
...
Signed-off-by: Artur Bieniek <[email protected] >
2026-09-14 10:29:27 -04:00
CatalpaEel
96e6bf02c4
Optimize wide four-state constant operations in V3Number ( #8333 )
2026-09-14 10:12:30 -04:00
Marco Bartoli
0bad0faca6
Fix ignoring cross_auto_bin_max instead of hard error ( #8340 )
2026-09-13 14:59:42 -04:00
Wilson Snyder
547eb6a836
Remove deprecated --structs-packed.
2026-09-13 14:54:34 -04:00
Wilson Snyder
e172e94b30
Fix pattern type matching against nested aggregates ( #7304 ).
...
Fixes #7304 .
2026-09-13 14:48:07 -04:00
Wilson Snyder
e871c3657e
Commentary: Changes update
2026-09-13 14:00:43 -04:00
Wilson Snyder
3200946bb9
Tests: Improve t_string_to_bit
2026-09-13 13:41:53 -04:00
Marco Bartoli
fb8bcdc0df
Fix format of signed enums ( #8338 )
2026-09-13 13:34:10 -04:00
Marco Bartoli
47ead4e89d
Support logic and set operations on binsof ( #8306 )
2026-09-13 12:59:10 -04:00
Kristof Marien
298922d887
Fix parameterized class nested in a parameterized interface ( #8328 ) ( #8329 )
2026-09-12 15:31:10 -04:00
Wilson Snyder
4fedb791ed
Add -fno-dead-members and optimize dead class member functions. ( #8330 )
2026-09-12 15:22:42 -04:00
Wilson Snyder
3bf0018354
Optimize away __Vconfigure if empty function
2026-09-12 14:36:45 -04:00
Wilson Snyder
d523500b9b
Optimize UVM reporting functions as branch-unlikely
2026-09-12 13:54:15 -04:00
Wilson Snyder
a8a50bd8a0
Commentary
2026-09-12 12:22:14 -04:00
Wilson Snyder
c7b1151f13
Fix unlinked VlProcess error
2026-09-12 11:00:29 -04:00
Wilson Snyder
73957647cc
Add IEEE reference to some warnings
2026-09-12 09:06:09 -04:00
Wilson Snyder
d048b62c13
Fix marking inherited virtual functions (part 2)
2026-09-12 08:55:45 -04:00
Wilson Snyder
c8a75e9b4d
Tests: Reformat some tests to mostly verilog-format standard. No test functional change.
2026-09-12 08:38:51 -04:00