Commit Graph
10355 Commits
Author SHA1 Message Date
Geza Lore 8f6d6cd13b Fix placing Always into List[VarScope] in LinkDot (#8419)
Updated order dependent tests.
2026-09-20 14:15:41 +01:00
Geza Lore dfa4ace3dd Optimize V3Scope to move nodes on the last instance of a module (#8417)
Nodes were always cloned under the new scope, with the originals deleted
at the end of the pass. Count total module instantiations up front, then
move the nodes instead of cloning them when scoping the last instance.

Required to avoid a memory regression in a follow up, but also faster
and less peak memory overall.

Output is identical.
2026-09-20 14:15:29 +01:00
Geza Lore d30487e0f7 Optimize V3Scope to gather variable reference fixups in a vector (#8418)
Each AstVarRef is visited exactly once (blocks are iterated under
their per-scope clone), and the fixups are independent, so no need
for the ordered set.
2026-09-20 14:15:07 +01:00
Marco Bartoli dc946aee2b Support enclosing cross identifiers in bin selections (#8416) 2026-09-20 08:57:14 -04:00
Geza Lore 9e3ec98461 CI: Don't skip CI on format (#8408) 2026-09-20 07:14:47 -04:00
Wilson Snyder c8b8c79ee9 Commentary: Changes update 2026-09-19 21:33:08 -04:00
Wilson Snyder 67e6d09768 Commentary 2026-09-19 21:31:14 -04:00
Wilson Snyder 3444d57929 Tests: Add VtOs.system 2026-09-19 21:31:14 -04:00
Geza Lore 8c6dd7a164 CI: Auto label on RTLMeter and Code coverage failure 2026-09-19 21:45:20 +01:00
Marco Bartoli 18ad801887 Fix covergroup constructor initialization (#8410) 2026-09-19 16:44:04 -04:00
Geza Lore 87983308c7 CI: Add job to block PR merges with pr-blocked: labels (#8415) 2026-09-19 21:18:29 +01:00
Geza Lore 23a4c8ef46 CI: Label as the CI app to trigger workflows 2026-09-19 20:50:50 +01:00
Geza Lore acb1333a85 CI: Auto label PRs with pr-blocked: improve-coverage 2026-09-19 19:59:34 +01:00
Kristof Marien c266da882d Fix crash when widthing a covergroup option through a forward class (#8351) (#8352) 2026-09-19 14:47:07 -04:00
Geza Lore ba68360819 CI: Auto label PRs with pr-blocked: fix-regression 2026-09-19 19:33:25 +01:00
Jonathan Drolet 6999fe0f29 Fix O(N^2) compile-time blowup forcing large unpacked arrays (#8395) 2026-09-19 14:22:38 -04:00
Kaleb Barrett 8fbfc82cc2 Fix issues with configuring flex during build on MacOS (#8412) 2026-09-19 13:34:30 -04:00
Geza Lore b0b4714a9d CI: Make regressions label driven (#8413) 2026-09-19 18:31:58 +01:00
Geza Lore ee51f322c7 CI: Fix previous commit 2026-09-19 18:00:57 +01:00
Geza Lore f6801633f8 CI: Add Regression passed job for status checks 2026-09-19 17:57:43 +01:00
Geza Lore f2fcacfe3d CI: Rename build-test.yml to regression.yml 2026-09-19 17:04:09 +01:00
Geza Lore 0b661a00c1 CI: Also mop up after the Regression job 2026-09-19 16:59:19 +01:00
Geza Lore 7400d28e6d CI: Don't restart RTLMeter/Coverage on unrelated label changes (#8411) 2026-09-19 16:52:27 +01:00
Geza Lore 36aa3e88c7 CI: Add PR automation job (#8203) 2026-09-19 16:30:50 +01:00
Geza Lore a9f959ff28 CI: Fix yaml format 2026-09-19 15:51:59 +01:00
Geza Lore b75ceeb121 CI: Delete skipped PR workflows 2026-09-19 15:48:24 +01:00
Kaleb Barrett d797c2009b CI: Move macOS build from 15 to 26 #8409 (#8409) 2026-09-19 13:02:48 +01:00
Marco Bartoli 014c9820de Warn on not yet implemented and ignored iff in default or transition bins (#8406) (#8407) 2026-09-18 21:34:54 -04:00
Marco Bartoli 1cefe95c85 Support iff in covergroup bins (#8406) 2026-09-18 20:29:22 -04:00
Nick Brereton a93317b6cc tests: Add VM_PREFIX_INCLUDE_DPI (#8386) 2026-09-18 17:29:53 -04:00
Jesús Alberto López Soto 724a42e31d Fix reevaluation of method calls in wait conditions (#8391) 2026-09-18 15:41:01 -04:00
Marco Bartoli 830cb633e5 Optimize covergroup bin metadata lookup (#8404) 2026-09-18 14:25:37 -04:00
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