Paul Swirhun
4925f9ad73
Support 1-bit params with -G and -pvalue ( #6051 ) ( #6082 )
2025-06-10 17:39:13 -04:00
Kamil Rakoczy
58ea7ad361
Fix class typedef elaboration ( #6080 )
2025-06-10 12:03:26 -04:00
Wilson Snyder
b553502d8a
Fix number dumps to show 'null'
2025-06-10 08:17:45 -04:00
Bartłomiej Chmiel
86d2ea8c70
Optimize DPI temporary 'for' loop performance ( #6079 )
...
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
2025-06-10 08:17:26 -04:00
Todd Strader
d9534ec626
Fix x assign vs init randomization ( #6075 )
2025-06-09 17:59:01 -04:00
Geza Lore
a6bae7f196
DFG peephole: Only push SEL through COND when SEL is the only sink. ( #6071 )
...
This avoids potential O(n) logic duplication where 'n' is the fanout of
the COND node.
Fixes #6064 .
2025-06-08 11:12:39 +01:00
Wilson Snyder
5b2dc52681
Fix array bounds checking with class member selects ( #5996 ) ( #5997 ).
2025-06-07 17:20:48 -04:00
Todd Strader
a044697990
Fix signed cast ( #6912 ) ( #6068 )
2025-06-06 21:13:31 -04:00
Wilson Snyder
54e637c72b
Fix `--skip-identical` skipping on some errors ( #6066 ).
2025-06-06 17:18:02 -04:00
Todd Strader
d49efa79df
Fix type operator for interface signals ( #6050 ) ( #6049 )
2025-06-06 11:29:33 -04:00
Wilson Snyder
ed46878f7b
Fix virtual interface array typedef expressions ( #6057 ).
2025-06-04 21:43:46 -04:00
Wilson Snyder
593da4e38f
Internals: Fix missing const. No functional change.
2025-06-04 21:43:30 -04:00
Todd Strader
cfbcfd913c
Fix packed array deduction ( #6046 )
2025-05-31 07:55:00 -04:00
Wilson Snyder
79de1ff507
Fix WIDTHCONCAT on packed pattern assignment ( #6045 ).
2025-05-31 07:38:15 -04:00
Nick Brereton
8a8f04153a
Fix method calls and new to access interface arrays ( #5973 )
2025-05-29 22:11:47 -04:00
Wilson Snyder
8031ca2616
Add `MODMISSING` error, in place of unnamed error ( #6054 ).
2025-05-29 21:02:00 -04:00
Bartłomiej Chmiel
7dbe4f1807
Fix V3OrderParallel scoring contraction hang ( #6052 )
2025-05-29 10:31:57 -04:00
Todd Strader
5fcd0e52e7
Fix casting to arrays of enums ( #6044 )
2025-05-27 21:14:09 -04:00
Todd Strader
76aced4d40
Fix parameter types of user defined arrays ( #6042 )
2025-05-27 18:35:21 -04:00
Todd Strader
66259d8909
Fix GCC 10 read-only linker error ( #6040 )
2025-05-27 10:11:56 -04:00
Todd Strader
4b041c636f
Fix --x-initial and --x-assign random stability ( #2662 ) ( #5958 ) ( #6018 ) ( #6025 )
2025-05-27 09:31:55 -04:00
Bartłomiej Chmiel
9cc4cc0efd
Add `--hierarchical-threads` ( #6037 )
2025-05-26 09:37:35 -04:00
Petr Nohavica
22d484d54d
Fix associative arrays with enum keys ( #6034 ) ( #6035 )
2025-05-24 17:59:23 -04:00
Ryszard Rozak
90d4cf1361
Internals: V3Coverage cleanup. No functional change. ( #6033 )
2025-05-23 17:38:34 -04:00
Wilson Snyder
46c7b69c64
Internals: UINFO now includes newline itself. No functional change.
2025-05-22 20:29:32 -04:00
Wilson Snyder
af30436357
Internals: Rename VL_PACK/VL_UNPACK in prep for future fix. No functional change intended.
2025-05-22 06:54:16 -04:00
Ryszard Rozak
2491f25da7
Add filtering type option in verilator_coverage ( #6030 )
2025-05-22 02:42:09 -07:00
Todd Strader
d400584460
Fix concatenation and type casting ( #6012 ) ( #6013 )
2025-05-21 08:41:29 -04:00
Wilson Snyder
de08655c5b
Internals: Fix some legacy casts. No functional change.
2025-05-20 22:51:54 -04:00
Bartłomiej Chmiel
6d257ef52c
Improve hierarchical scheduling visualization in V3ExecGraph ( #6009 )
2025-05-20 12:15:09 -04:00
Shou-Li Hsu
25cb31c38b
Add aggregate type error checks ( #5570 ) ( #5950 )
2025-05-20 09:10:22 -04:00
Ryszard Rozak
bed0456eca
Add ternary operator into branch coverage ( #5880 )
2025-05-19 09:35:35 -04:00
Wilson Snyder
ad08302e5f
Support parameter forward types.
2025-05-19 08:35:38 -04:00
Wilson Snyder
27eb8cfe8a
Fix extraneous WIDTH warning on assoc.exists()
2025-05-18 11:25:25 -04:00
Yutetsu TAKATSUKASA
b26658fd96
Fix wrong optimization result of shifted out variable ( #6016 ) ( #6019 )
2025-05-18 07:18:37 -04:00
Wilson Snyder
0c8c7fb03c
Remove symbol table from parser: Support redeclaring type as non-type; major parsing change ( #2412 ).
2025-05-18 07:13:37 -04:00
Wilson Snyder
6bb16d6c52
Disable symbol from parser: Support redeclaring type as non-type; major parsing change ( #2412 ).
2025-05-18 07:13:37 -04:00
Wilson Snyder
2c465d9741
Internals: Fix MSVC warning.
2025-05-17 22:56:59 -04:00
Wilson Snyder
3b632739a8
Internals: Add RequireDType and check for recursive data types, in prep for future parser.
2025-05-17 20:40:03 -04:00
Wilson Snyder
640339ec36
Revert 'Fix --x-initial and --x-assign random stability ( #2662 ) ( #5958 ).' See ( #6018 ).
...
Reverts 4581023805 plus line in Changes file
2025-05-17 20:27:03 -04:00
Wilson Snyder
647404ec1e
Tests: Improve warning coverage
2025-05-17 16:28:09 -04:00
Wilson Snyder
66667b6172
Support SARIF JSON diagnostic output with `--diagnostics-sarif`. ( #6017 )
2025-05-17 15:46:15 -04:00
Zhen Yan
fc700538a5
Fix arithmetic left-shift by constants over 32 bits ( #6007 ) ( #6015 )
2025-05-16 21:57:52 -04:00
github action
8d3b47a18a
Apply 'make format'
2025-05-16 23:16:40 +00:00
Wilson Snyder
1bcd5ee0c1
Fix spelling
2025-05-16 19:02:19 -04:00
Todd Strader
4581023805
Fix --x-initial and --x-assign random stability ( #2662 ) ( #5958 )
2025-05-16 13:54:51 -04:00
Ryszard Rozak
73b3648262
Fix skipped genblocks in toggle coverage ( #6010 )
...
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
Co-authored-by: Tomasz Gorochowik <tgorochowik@antmicro.com>
2025-05-16 08:24:57 -04:00
Zhen Yan
6b42d789af
Fix checking for too-wide divide and modulus ( #6003 ) ( #6006 )
2025-05-15 10:43:45 -04:00
Ryszard Rozak
6db599da45
Fix slicing of AstExprStmt nodes ( #6005 )
2025-05-14 11:55:02 -04:00
Geza Lore
2f6ecd1853
Fix folding of LteS in DfgPeephole ( #6004 )
...
Fixes #6000
2025-05-14 13:33:20 +01:00
Wilson Snyder
4c4fdb5dfe
Internals: Refactor some JSON and error code
2025-05-13 22:26:15 -04:00
Ryszard Rozak
91c52a4972
Support for assignments to concatenations with impure RHS ( #6002 )
2025-05-12 19:19:38 -04:00
Wilson Snyder
ac2313ecb7
Fix some errors exceeding the --error-limit
2025-05-11 22:36:40 -04:00
Wilson Snyder
fe4ad7de64
Internals: Use magic string for warnMore so lock-free.
2025-05-10 18:06:33 -04:00
Wilson Snyder
680236b03e
Internals: Redo post-error additional information to be part of error calls.
2025-05-10 16:20:12 -04:00
Wilson Snyder
0f528d136d
Fix arithmetic right-shift by constants over 32 bits ( #5994 ).
2025-05-10 13:59:56 -04:00
Wilson Snyder
d9dcde60a6
Fix duplicate error first-lines, and some internal V3Error cleanups
2025-05-10 13:29:30 -04:00
Yutetsu TAKATSUKASA
100e3d7702
Fix const-bit-op-tree with single-bit masks ( #5993 ) ( #5998 )
2025-05-10 06:01:15 -04:00
Wilson Snyder
d22608a49f
Internals: Refactor common V3JsonFile. No functional change.
2025-05-09 22:00:29 -04:00
Wilson Snyder
5d0fd8b9a7
Commentary
2025-05-09 21:22:17 -04:00
Wilson Snyder
7191a0ba8b
Internals: Favor preincrements. No functional change.
2025-05-09 21:20:35 -04:00
Bartłomiej Chmiel
5f4646f617
Ignore dependencies from different hierarchical schedules ( #5954 )
...
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
2025-05-08 11:45:10 +01:00
Yilou Wang
a80aa07de6
Support constrained random for associative arrays ( #5985 ) ( #5986 )
2025-05-07 07:07:16 -04:00
Ryszard Rozak
2358f5c2a2
Fix AstAssignW conversion ( #5991 ) ( #5992 )
2025-05-07 05:54:18 -04:00
Wilson Snyder
bc3bf6ab5e
Tests: Add t_param_type_bad3
2025-05-06 21:11:34 -04:00
Wilson Snyder
b099d6fe63
Fix implicit dtype numbering to be per-module.
...
Internals: Remove use of parser in implicit dtype numbering.
2025-05-06 20:39:17 -04:00
Wilson Snyder
d5f773f385
Internals: Move hasParameterList away from symbol table. No functional change intended.
2025-05-06 08:03:30 -04:00
Wilson Snyder
da5eb620bf
Internals: Move timeunit to pragma, in prep for future parser. No user-functional change intended.
2025-05-06 06:34:49 -04:00
Yutetsu TAKATSUKASA
2ed754d5ea
Fix Inconsistent assignment error by split-var ( #5984 ) ( #5988 )
2025-05-06 05:00:17 -04:00
Wilson Snyder
fe562d4715
Internals: Move Stream dtype conversion to V3Width, towards future parser
2025-05-05 19:54:52 -04:00
Wilson Snyder
69eb76ad66
Fix constant propagation of post-expand stages ( #5983 ).
2025-05-05 07:04:20 -04:00
Wilson Snyder
a3662cc3f5
Internals: Refactor to create replaceWithKeepDType. No functional change.
2025-05-05 06:31:06 -04:00
Bartłomiej Chmiel
1e74451534
Internals: Change naming convention for Vthread funcs ( #5982 )
...
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
2025-05-05 05:25:39 -04:00
Wilson Snyder
66e105b444
Fix constant propagation of post-expand stages ( #5963 ) ( #5972 ).
2025-05-04 21:41:14 -04:00
Wilson Snyder
413183bad8
Fix localize of coroutines ( #5972 partial)
2025-05-04 21:25:44 -04:00
Wilson Snyder
11cfa61f80
Fix casting etc of typedef'ed doubles.
2025-05-04 16:34:37 -04:00
Wilson Snyder
27ad648c16
Commentary: Indicate V3Number width() criticality.
2025-05-04 16:24:36 -04:00
Wilson Snyder
d47b88a30c
Internals: Remove accidental debug message
2025-05-04 15:49:23 -04:00
Wilson Snyder
51616ecf2f
Internals: Rename to instances, and other minor cleanups
2025-05-04 14:57:10 -04:00
Geza Lore
223bb9ba9a
Fix streaming to/from packed arrays ( #5976 )
...
bug from 6bb57e4630
Fixes RTLMeter OpenTitan. Fixes #5955 .
2025-05-04 19:28:51 +01:00
Geza Lore
70c84d3abd
Preserve C++ widths in V3Expand ( #5975 )
...
During V3Expand, some w32/1 (width == 32, widthMin == 1), nodes (e.g.:
RedOr) are replaced with w1 nodes (width == widthMin == 1) (e.g.: Neq).
However, V3Expand runs after V3Clean, when we are in C++ width world,
so we need to preserve the width/widthMin distinction, otherwise a later
constant folding can eliminate e.g. a necessary AstAnd used clear an
intermediate result (isAllOnes is true for a Const 1 with w1, but false
for a Const 1 with w32/1).
Attempting to fix by preserving all width/widthMin during a replacement
in V3Expand.
DFG itself is fine, but the transformed code hits the above.
Fixes #5953
2025-05-04 16:31:27 +01:00
Wilson Snyder
ea65bcd86b
Add lib.map information to unsupported message, etc
2025-05-03 05:30:40 -04:00
Wilson Snyder
1a1c6e8797
Change cell messages to instance to match IEEE
2025-05-03 04:00:47 -04:00
Wilson Snyder
15ebbd309f
Fix always processes ignoring $finish ( #5971 ).
2025-05-02 07:36:42 -04:00
Wilson Snyder
8b52bd817f
Add PROCINITASSIGN on initial assignments to process variables ( #2481 ).
2025-04-30 22:00:06 -04:00
Wilson Snyder
b10b22d09f
Change unsupported 'tagged' into parse-level message
2025-04-30 18:30:19 -04:00
Wilson Snyder
0664cf407c
Fix constant propagation making upper bits Xs ( #5969 ).
2025-04-30 08:22:05 -04:00
Wilson Snyder
4e667fabb7
Internals: Add V3Number width-and-opAssign. No functional change.
2025-04-30 08:08:44 -04:00
Wilson Snyder
5ca62de167
Fix filename backslash escapes in C code ( #5947 ).
2025-04-29 19:27:38 -04:00
Wilson Snyder
d3016b62f5
Internals: Constructor cleanup. No functional change.
2025-04-29 19:23:35 -04:00
Wilson Snyder
9b3fccdcb7
Add BADVLTPRAGMA on unknown Verilator pragmas ( #5945 ).
2025-04-29 18:18:54 -04:00
Wilson Snyder
8da539ed8a
Fix sign extension of signed compared with unsigned case items ( #5968 ).
2025-04-28 22:22:50 -04:00
Wilson Snyder
3658e5f0f1
Internals: Rename widthToFit, no functional change.
2025-04-28 21:54:58 -04:00
Wilson Snyder
5083972536
Internals: Defer AstCast into V3LinkDot, in preparation for future parser
2025-04-28 19:34:40 -04:00
Wilson Snyder
f983ce4875
Internals: Defer DTypeRef versus IfaceDTypeRef determination into V3LinkDot, in preparation for future parser
2025-04-27 22:11:28 -04:00
Wilson Snyder
4c4a39a115
Internals: Refactor V3LinkDot dump and comments. No functional change intended.
2025-04-27 16:52:26 -04:00
Wilson Snyder
cb1661f9d0
Internals: Cleanups (from parse branch). No functional change intended.
2025-04-27 14:17:24 -04:00
Wilson Snyder
c3d1c3b952
Fix vlSelf error on fork repeats ( #5927 ).
2025-04-26 09:52:44 -04:00
Wilson Snyder
e7adae6f81
Internals: Cleanup some vlSelf code. No functional change intended.
2025-04-26 09:51:02 -04:00
Wilson Snyder
ebe49552b0
Fix packed selection using over 32-bit index ( #5957 ).
2025-04-24 18:25:55 -04:00