Commit Graph

9264 Commits

Author SHA1 Message Date
Ryszard Rozak 264e55f17e Format test
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak fe267d2367 Fix adding struct fields
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 4c3a5fae27 Set width 1 to unpacked structs
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 09deb45883 Set width
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak f3c0dfba96 Fix dtypep of AstMemberDType
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 7fd1e83235 Handle unions
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 625a33c155 Add test with unpacked union
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 7681e58d51 Don't accept unpacked unions
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak dbb57431dc Add early return
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak efb3d29f05 Check if dtype supported only at beginning
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak bf18138977 Get num of elements from elements() not widthMin()
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak a1bae47cd3 Add typedef
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak ce194dada9 Call skipRefp before getEnVarpDTypeRecursep
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 83b48053c7 Store results in user1p
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak e23bfdb634 Assign name to created structure
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak b50a7428f3 WIP: Fix struct creation
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 465b525b57 WIP: Handle structs
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:19 +01:00
Ryszard Rozak 3d4ccc628c Return when array is too big
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:18 +01:00
Ryszard Rozak ea3bcdfb0c Merge handling of PackArray with UnpackArray
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:18 +01:00
github action 3381dc9990 Apply 'make format' 2026-03-03 15:50:18 +01:00
Ryszard Rozak a26c389f6e WIP: Make sure __En variables are of bit type
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:18 +01:00
Ryszard Rozak 432345601d Add isBit
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:18 +01:00
Ryszard Rozak 27897d5ba2 Move testcase with real to supported
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2026-03-03 15:50:18 +01:00
Wilson Snyder f232449252 Commentary: Changes update 2026-03-03 07:21:39 -05:00
Veripool API Bot ce4d35aa85 Verilog format 2026-03-03 07:21:24 -05:00
em2machine 5821d0697c
Fix interface localparam dependencies and arbitrary nesting (#6936) (#7128) 2026-03-03 06:55:59 -05:00
Yilou Wang ed84f3adb2
Support constraints on fixed-size array of class object members (#7170) (#7183) 2026-03-03 06:27:31 -05:00
Wilson Snyder ee68d1c70c CI: Disallow pulls to stable 2026-03-02 17:48:32 -05:00
Wilson Snyder 1f2f4d9bba Commentary: Changes update 2026-03-02 17:47:54 -05:00
jalcim d406efdcf9 Fix recursive constant function in $unit scope (#7174) (#7178) 2026-03-02 15:15:34 -05:00
Wilson Snyder 251d1835cf Internals: Comment to explain stray emit semicolon 2026-03-02 11:26:48 -05:00
dependabot[bot] a3870c5e5e
CI: depandabot: Bump actions with 2 updates (#7172) 2026-03-02 10:52:53 -05:00
Yilou Wang 8a413b3ec7
Fix std::randomize() in static function with static class members (#7167) (#7169) 2026-03-02 05:59:00 -05:00
Yilou Wang 108d209bd7
Support soft constraint solving with last-wins priority (#7124) (#7166) 2026-03-01 15:16:55 -05:00
Wilson Snyder 192445097a
Internals: Fix non-determinism in V3Delayed, V3SplitVar, V3Task (#7120 partial) (#7165) 2026-03-01 11:59:29 -05:00
Geza Lore 6c48b3282e
Enable V3LiftExpr with code coverage (#7164) 2026-03-01 15:04:49 +00:00
Geza Lore 3249fd8cc0
Internals: Mark Premit temporaries funcLocal, noReset (#7160) 2026-03-01 14:56:21 +00:00
Geza Lore 9d8baa1e44
Testing: Relax expected file count in t_flag_csplit_groups (#7163) 2026-03-01 13:27:46 +00:00
Geza Lore 97838325cd
Fix scheduling non-determinism (#7120 partial) (#7162) 2026-03-01 07:44:59 -05:00
Geza Lore 77ce9cec1e
Optimize conditional merging across some impure statements (#7159)
- Allow reordering pure statements with DPI import calls iff no public
  variables (including those read via a DPI export) are involved. This
  ensures the DPI import can't observe the reordering
- Allow reordering of pure statements with AstDisplay and AstStop. This
  requires an assumption that AstDisplay and AstStop will not read or
  write model state other than via a VarRef explicitly present int the
  Ast.
Overall this allows eliminating a lot of conditionals around assertions,
which were previously not possible.
2026-03-01 05:47:05 -05:00
Geza Lore 26eac21432
Internals: Use existing astgen type info for ASTGEN_MAX_NODE_SIZE (#7161) 2026-03-01 05:33:30 -05:00
Wilson Snyder e9dd6eaaf0 Internals: Fix VL_ALLOC_RANDOM_CHECKS with multiple threads 2026-02-28 20:24:09 -05:00
Wilson Snyder e23c7a510e Internals: Add VL_ALLOC_RANDOM_CHECKS 2026-02-28 18:21:51 -05:00
Wilson Snyder 230ce772c2 Tests: Verilog format; rename test 2026-02-28 18:19:34 -05:00
Wilson Snyder 2e351651cb Fix undefined weak 'vlog_startup_routines' on macOS 2026-02-28 18:17:00 -05:00
Wilson Snyder 17ad3970ee Commentary: Changes update 2026-02-28 18:15:07 -05:00
Geza Lore 098fe96643
Add V3LiftExpr pass to lower impure expressions and calls (#7141)
Introduce new pass that converts impure expressions, or those with
function and method calls into simple assignment statements. Please see
the blurb at the top of the file why this is useful and how it works.
In particular currently it enables more Dfg optimization as functions
will be inlined without AstExprStmt.

Ideally we should enforce this lowering is applied to every procedural
statement (there are still a handful of exceptions). With that, long
term with this pass + #6820, there should be no need to ever use an
AstExprStmt past this new lowering pass, which should enable more easier
optimization down the line.

Also ideally this should be run earlier. Currently it's after V3Tristate
as that calls pinReconnectSimple so we don't have to touch Cell ports.

Currently disabled when code coverage is enabled due to #7119.
2026-02-28 22:20:09 +00:00
Geza Lore 99238f67b8 Fix undefined weak 'vlog_startup_routines' on macOS 2026-02-28 16:10:59 +00:00
Geza Lore 2ceea267e5
Fix eliminating assignments to DPI-read vaiables (#7158) 2026-02-28 10:09:01 -05:00
Pawel Kojma face700f29
Improve assignment-compatibility type check (#2843) (#5666) (#7052) 2026-02-28 09:55:06 -05:00