Artur Bieniek
08c9032927
Fix internal error when task without CFunc is left in the tree ( #8437 )
...
Signed-off-by: Artur Bieniek <[email protected] >
2026-09-22 11:36:20 -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
Marco Bartoli
08cadc034d
Reland and fix "Fix wide enum names" ( #8344 ) ( #8362 ) ( #8365 ) ( #8366 )
2026-09-16 17:47:51 -04:00
Wilson Snyder
d523500b9b
Optimize UVM reporting functions as branch-unlikely
2026-09-12 13:54:15 -04:00
Wilson Snyder
012b647833
Fix marking inherited virtual functions
2026-09-12 08:32:53 -04:00
Pawel Klopotek
821478070d
Fix V3Task Inout pin resizing error ( #8212 )
2026-08-25 10:27:24 -04:00
Pawel Klopotek
7628a540af
Fix invalid C++ on cast ( #8113 )
...
Signed-off-by: Pawel Klopotek <[email protected] >
2026-08-19 08:29:29 +02:00
Geza Lore
d9fb606869
Internals: Move DPI export AstScopeName out of statement list ( #6280 ) ( #8139 )
...
AstScopeName is an AstNodeExpr, but V3Task stashed the DPI export scoping
marker into the enclosing AstCFunc's statement list (addStmtsp), placing an
expression in a statement position.
Give AstCFunc a dedicated 'scopeNamep' operand to hold the marker instead.
Part of #6280
2026-08-18 11:25:12 +02:00
Yilou Wang
2022bacd38
Fix timing controls in interface tasks called via virtual interface ( #7959 )
2026-08-03 05:15:07 -04:00
Igor Zaworski
3b43b304a3
Add error on static virtual functions ( #7932 )
2026-07-14 05:12:26 -07:00
Jakub Michalski
646dcd3838
Support user-provided DPI-C function declarations ( #7626 ) ( #7893 )
...
Fixes #7626 .
2026-07-08 05:22:24 -07:00
Geza Lore
566f4e6efc
Internals: Add new VL_RESTORER flavours ( #7866 )
...
Restrict VL_RESTORER to be usable only with trivially copyable types.
Introduce VL_RESTORER_COPY and VL_RESTORER_CLEAR, which are more
efficient versions usable for non trivially copyable types.
VL_RESTORER_COPY semantically behaves the same as VL_RESTORER, but only
does one copy at initialization, and on scope exit restores via a move.
VL_RESTORER_CLEAR swaps the variable with an new one constructed via
the no-args constructor (e.g. empty collection), which does not require
any copying at any point.
Static assertions enforce picking one of the new flavours when copying
might be expensive.
2026-07-04 17:27:07 +01:00
Yilou Wang
c6caa94fe0
Fix no-scope internal error on virtual interface method calls ( #7759 )
2026-06-11 09:04:06 -04:00
Matthew Ballance
2886291eba
Support covergroups, coverpoints, and bins ( #784 ) ( #7117 )
...
Fixes #784 .
2026-06-05 09:35:01 -04:00
Nick Brereton
81282c3d57
Fix (const) ref default task argument handling ( #7698 )
2026-06-03 22:31:21 -04:00
Geza Lore
0026a73ca0
Optimize DPI import argument passing ( #7704 )
...
Pass inputs to DPI import wrappers by reference (unless fits in a
register). This eliminates a lot of temporary constructors/destructors.
2026-06-03 08:41:33 +01:00
Artur Bieniek
ec03edcddd
Support functions on RHS of force ( #7491 )
...
Signed-off-by: Artur Bieniek <[email protected] >
2026-04-30 10:38:07 -04:00
github action
c460f0e6a0
Apply 'make format'
2026-04-27 21:05:49 +00:00
Nikolay Puzanov
4437ae79e7
Fix virtual interface method call inlining and IMPURE suppression ( #7505 )
2026-04-27 16:58:30 -04:00
Yilou Wang
1e5c93cc51
Fix virtual interface function calls binding to wrong instance ( #7363 )
2026-04-02 10:53:01 -04:00
Wilson Snyder
8d109e85d0
Fix missing quotes on VPI error signal names
2026-03-27 21:44:11 -04:00
Wilson Snyder
716b404256
Optimize away empty ctor_var_reset.
...
Fixes #7154 .
2026-03-23 18:10:34 -04:00
Wilson Snyder
572f50126b
Improve function call argument error to show target function (rewording)
2026-03-04 20:22:25 -05:00
Wilson Snyder
1bf2ea7643
Improve function call argument error to show target function
2026-03-04 19:01:01 -05:00
Igor Zaworski
7acd73fede
Fix super constructor calls with local variables, by using init functions ( #6214 ) ( #6933 )
2026-03-04 17:55: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
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
2ceea267e5
Fix eliminating assignments to DPI-read vaiables ( #7158 )
2026-02-28 10:09:01 -05:00
Geza Lore
139bdc1ae3
Optimize function call return value temporaries ( #7152 )
2026-02-28 09:54:39 -05:00
Wilson Snyder
af65a85a1e
Fix function locals in display %p
2026-02-26 18:12:12 -05:00
Wilson Snyder
22290a74c2
Fix class initial-automatic insertion order ( #7086 repair)
2026-02-25 19:01:19 -05:00
Geza Lore
78ee787bb1
Internals: Clean up AstArg usage in AstNodeFTaskRef ( #7121 )
...
- Strengthen type of AstNodeFTaskRef::pinsp to be List[AstArg]
- Rename 'pinsp' to 'argsp'
- Add default constructor arguments
2026-02-22 10:38:37 +00:00
Geza Lore
e023113b79
Internals: Carry 'with' clause as op4 on AstNodeFTaskRef ( #7114 )
...
op4 is now available to carry the 'with' clause explicitly instead of
being part of the argument lit. Will strengthen 'pinsp' to be
List[AstArg] next.
2026-02-22 09:15:28 +00:00
Artur Bieniek
da28c67e60
Fix #0 delays to control fork scheduling ( #6730 repair) ( #6891 )
...
Signed-off-by: Artur Bieniek <[email protected] >
2026-02-17 21:51:11 -05:00
Wilson Snyder
c21498293e
Internals: Minor cleanups preparing for initialization fixes.
2026-02-16 08:10:29 -05:00
Ryszard Rozak
6303eb45ce
Fix multidim dynamic array elements passed to ref argument ( #7023 )
2026-02-10 08:46:04 +01:00
Wilson Snyder
7ca113a84f
Fix non-inlined function return value clearing ( #6982 ).
2026-02-01 11:57:09 -05:00
Wilson Snyder
07ce0ac2ea
Internals: Move CReset under Assign ( #6978 )
2026-01-31 21:27:36 -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
50b6954cfc
Internals: cppcheck cleanups
2026-01-17 23:18:09 -05:00
Pawel Kojma
3072907ea4
Fix unpacked array concatenation function arguments ( #6900 )
2026-01-14 16:23:55 -05:00
Ryszard Rozak
cc11ff8c53
Fix dynamic array elements passed to ref argument ( #6877 )
2026-01-01 10:21:09 -05:00
Wilson Snyder
13327fa9c0
Copyright year update.
2026-01-01 07:22:09 -05:00
Wilson Snyder
4b02e32314
Fix DPI under param class ( #6733 partial)
2025-12-07 13:30:54 -05:00
Matthew Ballance
3fc70b61d0
Fix internal fault when cross-class calling with DPI ( #6735 ) ( #6742 )
...
Signed-off-by: Matthew Ballance <[email protected] >
2025-12-02 22:05:59 -05:00
Geza Lore
d2ce5e62e7
Internals: Factor out --prof-exec section handling, add debug code
2025-11-25 10:08:03 +00:00
Geza Lore
158f51fb54
Optimize functions reading external parameters as pure ( #6684 )
2025-11-12 08:27:42 -05:00
Geza Lore
0dc9f779f8
Add -fno-inline-funcs-eager option to disable excessive inlining ( #6682 )
2025-11-11 21:46:19 +00:00
Geza Lore
ec91158130
Internals: Refactor AstCFunc internals ( #6280 ) ( #6578 )
...
- Delete 'finalsp'. It was used in one place, basically unnecessary and
safe to remove.
- Make 'argsp' a 'List[AstVar]'. This held before. It holds the function
argument and return variables.
- Replace 'intitsp' with 'varsp' and make it into 'List[AstVar]' to hold
the function local variables. This was most of its use before. The few
places we inserted statements here now moved into 'stmtsp' by
inserting at the front of the list.
2025-10-21 16:37:32 +01:00