em2machine
32672deb6f
Fix resolving default/nondefault type parameters ( #7171 ) ( #7346 )
...
Fixes #7171
2026-04-02 10:51:11 -04:00
Wilson Snyder
31757df229
Internals: clangtidy cleanups. No functional change intended ( #7343 )
2026-03-27 23:14:18 -04:00
Artur Bieniek
aff85cef19
Support more than one dot in defparam ( #7262 )
...
Signed-off-by: Artur Bieniek <abieniek@antmicro.com>
2026-03-24 09:20:46 -04:00
em2machine
05f640459e
Fix interface data type consistency ( #6965 ) ( #7302 )
2026-03-21 10:34:36 -04:00
em2machine
a2154e9119
Fix interface derived types passed as parameters to generate loop module instantiation ( #7273 )
2026-03-18 09:26:55 -04:00
Alex Zhou
651f223387
Fix false recursive definition error ( #6769 ) ( #7118 )
2026-03-16 07:31:35 -04:00
em2machine
1b2b8afdc1
Fix wrong $bits() for parameterized interface struct typedefs ( #7218 ) ( #7219 )
2026-03-09 22:32:13 -04:00
em2machine
c34cd6ddf1
Fix missing scope when calling package function ( #7128 repair) ( #7188 ) ( #7190 )
2026-03-04 15:37:55 -05:00
em2machine
5821d0697c
Fix interface localparam dependencies and arbitrary nesting ( #6936 ) ( #7128 )
2026-03-03 06:55:59 -05:00
github action
55eaa64386
Apply 'make format'
2026-02-04 21:27:14 +00:00
Leela Pakanati
57c3b8e51b
Support nested interface as port connection ( #5066 ) ( #6986 )
2026-02-04 16:26:20 -05:00
Leela Pakanati
b2fa3fb54e
Fix parameterized class typedef as interface type parameter ( #6983 ) ( #6984 )
2026-02-01 22:37:29 -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
41b131389e
Internals: Some tristate and param cleanups. No functional change.
2026-01-25 14:19:27 -05:00
Wilson Snyder
13327fa9c0
Copyright year update.
2026-01-01 07:22:09 -05:00
em2machine
3ceac0b37e
Fix parameterized class module parameters ( #6754 ) ( #6834 )
2025-12-19 12:57:15 -05:00
em2machine
6f43ad8607
Fix type deduction for variable parameterized classes ( #6281 ) ( #6813 )
2025-12-17 08:08:44 -05:00
em2machine
aff501f5c4
Fix resolution of specialized typedefs ( #6754 ) ( #6808 )
2025-12-12 15:20:15 -05:00
em2machine
2995748d46
Fix parameterized class function ( #6659 ) ( #6802 )
2025-12-12 04:17:08 -08:00
Wilson Snyder
ec38fb723d
Internals: Remove added debug to avoid false leak warning
2025-12-08 21:33:21 -05:00
Wilson Snyder
29ae520e69
Fix class param static not found again error ( #6768 ).
2025-12-08 20:11:28 -05:00
Wilson Snyder
ae480c5f76
Fix enum item references in class extends with parameters.
2025-12-07 15:26:52 -05:00
em2machine
c2cba8bfc6
Fix localparam type assignment from interface type parameters ( #6637 ) ( #6732 )
2025-12-06 09:42:59 -05:00
Wilson Snyder
8293a8d035
Fix multitop cross references ( #6699 ).
2025-11-26 06:09:29 -05:00
Wilson Snyder
5c0ad5bd1f
Internals: cppcheck fixes. No functional change. ( #6687 )
2025-11-12 18:54:22 -05:00
Paul Swirhun
aaafa6e8df
Fix local interface parameter hierarchical access ( #6661 ) ( #6666 )
...
Co-authored-by: Paul Swirhun <paulswirhun@gmail.com>
2025-11-09 10:48:55 -05:00
Paul Swirhun
e27613ed45
Fix interface parameter access in parameter map ( #6587 ) ( #6621 ) ( #6623 )
...
Co-authored-by: Paul Swirhun <paulswirhun@gmail.com>
2025-10-31 23:06:26 -04:00
Paul Swirhun
10935ee031
Fix HIERPARAM to be suppressed for interface ports ( #6587 ) ( #6609 )
...
Co-authored-by: Paul Swirhun <paulswirhun@gmail.com>
2025-10-31 15:49:30 -04:00
Igor Zaworski
2ac7cf51a9
Optimization of typedef params ( #6543 ) ( #6547 )
2025-10-10 10:05:47 -04:00
Igor Zaworski
1a91ab02cf
Fix passing typedef value as parameter ( #6543 )
2025-10-09 10:08:06 -04:00
Wilson Snyder
caca1fcef0
Internals: Change order of V3Number constructor args to follow V3Const. No functional change intended.
2025-09-30 22:04:24 -04:00
Geza Lore
603f4c615a
Improve Loop unrolling ( #6480 ) ( #6493 )
...
This patch implements #6480 . All loop statements are represented using
AstLoop and AstLoopTest.
This necessitates rework of the loop unroller to handle loops of
arbitrary form. To enable this, I have split the old unroller used for
'generate for' statements and moved it into V3Param, and subsequently
rewrote V3Unroll to handle the new representation. V3Unroll can now
unroll more complex loops, including with loop conditions containing
multiple variable references or inlined functions.
Handling the more generic code also requires some restrictions. If a
loop contains any of the following, it cannot be unrolled:
- A timing control that might suspend the loop
- A non-inlined call to a non-pure function
These constructs can change the values of variables in the loop, so are
generally not safe to unroll if they are present. (We could still unroll
if all the variables needed for unrolling are automatic, however we
don't do that right now.)
These restrictions seem ok in the benchmark suite, where the new
unroller can generally unroll many more loops than before.
2025-09-29 15:25:25 +01:00
Wilson Snyder
8c7c6c594a
Internals: Rename VStringSet/VStringList. No functional change.
2025-09-27 20:51:37 -04:00
Wilson Snyder
1761622e14
Fix unused parameterized class causing internal error ( #4013 ).
2025-09-26 20:50:47 -04:00
Todd Strader
aa6fbd35db
Add HIERPARAM error code ( #6456 ) ( #6484 )
2025-09-25 10:27:26 -04:00
Wilson Snyder
fd12ab3413
Fix interface exposure with `--public-depth` or `--trace-depth` ( #5758 ).
2025-09-23 22:05:51 -04:00
Geza Lore
800af37975
Internals: Refactor generate construct Ast handling ( #6280 ) ( #6470 )
...
Internals: Refactor generate construct Ast handling (#6280 )
We introduce AstNodeGen, the common base class of AstGenBlock,
AstGenCase, AstGenFor, and AstGenIf, which together represent all SV
generate constructs. Subsequently remove AstNodeFor, AstNodeCase
(AstCase is now directly derived from AstNodeStmt) and adjust internals
to work on the new representation.
Output is identical modulo hashes do to changed AstNode type ids, no
functional change intended.
Step towards #6280 .
2025-09-23 19:49:01 +01:00
Wilson Snyder
b794c7c8d4
Add error on parameter values from hierarchical paths ( #1626 ) ( #6456 ).
2025-09-22 22:24:45 -04:00
Wilson Snyder
a4db488b02
Internals: Fix some object-less asserts
2025-09-20 17:40:50 -04:00
Wilson Snyder
7f85d7f453
Add error on localparam value from hierarchical path ( #6456 ).
2025-09-20 09:59:48 -04:00
Artur Bieniek
3c8b8b65d0
Fix relinking super functions to parametrized class ( #6431 ) ( #6438 )
...
Signed-off-by: Artur Bieniek <abieniek@internships.antmicro.com>
2025-09-17 08:07:04 -04:00
Geza Lore
a44907b700
Fix memory leaks - batch 4 ( #6439 )
2025-09-16 19:22:36 +01:00
Wilson Snyder
12c524ac06
Internals: Refactoring ( #6433 prep). No functional change intended.
2025-09-14 21:50:19 -04:00
Wilson Snyder
06c3c87f4e
Internals: Refactoring V3Param. No functional change intended.
2025-09-13 22:47:51 -04:00
Wilson Snyder
121193e49b
Internals: Refactoring V3Param. No functional change intended.
2025-09-13 22:39:45 -04:00
Wilson Snyder
d7b8ede53f
Internals: Refactoring V3Param. No functional change intended.
2025-09-13 22:07:13 -04:00
Artur Bieniek
1f61351e8f
Fix resolving parameters ( #6388 ) ( #6418 ) ( #6421 ) ( #6438 ) ( #6429 )
...
Signed-off-by: Artur Bieniek <abieniek@internships.antmicro.com>
2025-09-12 14:24:07 -04:00
Artur Bieniek
990ee994db
Fix resolving parameters ( #6388 ) ( #6418 ) ( #6421 )
2025-09-12 07:18:12 -04:00
Geza Lore
56927fb955
Fix memory leaks - batch 3 ( #6419 )
2025-09-11 12:01:36 +01:00
Geza Lore
f1396fbced
Fix memory leaks - batch 2 ( #6417 )
2025-09-10 22:42:45 +01:00