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
Bartłomiej Chmiel
d6e52b9400
Support profiling nested hierarchical mtasks with verilator_gantt ( #5956 )
2025-04-24 07:50:07 -04:00
github action
7aad136972
Apply 'make format'
2025-04-18 09:36:29 +00:00
John Khoo
fee839a80e
Update UNOPTFLAT warning to suggest isolate_assignments ( #5942 )
2025-04-18 18:35:36 +09:00
Ryszard Rozak
cbabd8abe1
Internals: Fix redundant edges in V3Trace ( #5939 ). No functional change intended..
...
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2025-04-17 06:23:18 -04:00
Yilou Wang
e0fdb933a0
Support constraint random for StructArray ( #5805 ) ( #5937 )
2025-04-16 07:08:46 -04:00
Krzysztof Sychla
d0c4cc3938
Support user-defined primitives (UDPs) ( #468 ) ( #5807 ) ( #5936 )
...
Co-authored-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Co-authored-by: Zhou Shen <599239118@qq.com>
2025-04-16 06:32:18 -04:00
Ryszard Rozak
6a6a7b7e9f
Fix stream expressions ( #5938 )
2025-04-15 11:50:43 -04:00
github action
e3e8f18a4e
Apply 'make format'
2025-04-15 01:41:13 +00:00
Brian Li
50d7f2afc6
Support assigning unpacked arrays to queues ( #5924 ) ( #5928 )
2025-04-14 21:40:17 -04:00
Wilson Snyder
7a2732f211
Fix parsing (no support) of covergroup functions
2025-04-12 13:07:38 -04:00
Robin Heinemann
10c3320c6b
Support soft unions ( #5912 ) ( #5932 )
2025-04-12 07:35:37 -04:00
Todd Strader
7336b9ebfc
Add V3EmitV support for sampled value functions ( #5931 )
2025-04-11 12:25:56 -04:00
Bartłomiej Chmiel
84f26ed3d7
Add visualization of multi-threaded waiting time with verilator_gantt ( #5929 )
2025-04-10 10:03:58 -04:00
Wilson Snyder
fc8e1b5a2e
Fix several cmake issues, including TRACE_VCD
2025-04-10 07:49:58 -04:00
Ryszard Rozak
6bb57e4630
Fix assignments with stream expressions and unpacked arrays ( #5915 )
2025-04-09 06:37:52 -04:00
Wilson Snyder
2eb9076381
Revert 1ea9018e59
2025-04-09 00:00:22 -04:00
Wilson Snyder
1ea9018e59
Change JSON make format to have trace_fst/trace_saif/trace_vcd
2025-04-08 22:42:02 -04:00
Wilson Snyder
a094fd954b
Internals: Remove duplication in verilated.cpp file lists. No functional change intended.
2025-04-08 22:30:44 -04:00
Wilson Snyder
7c2b1971a4
Support class extends with arguments.
2025-04-08 22:09:40 -04:00
Wilson Snyder
86f6ac2960
Fix port default values with `--coverage-line` creating `0=0` ( #5920 ).
2025-04-08 20:48:57 -04:00
Wilson Snyder
f5312b83b9
Fix %% on elaboration severity tasks ( #5922 ).
2025-04-07 08:38:05 -04:00
Wilson Snyder
b26a19279a
Support simple `checker` blocks ( #4066 ).
2025-04-06 23:42:49 -04:00
Wilson Snyder
c8a945f363
Internals: Minor refactoring of checker parsing/tests. No functional change.
2025-04-06 23:13:24 -04:00
Wilson Snyder
e9fe8f65a8
Change error messages to more often suggest documentation
2025-04-05 17:10:44 -04:00
Wilson Snyder
0984fd045f
Change `--trace` to `--trace-vcd`.
2025-04-05 10:46:39 -04:00
Yutetsu TAKATSUKASA
b9f0612db8
Fix LATCH warning for automatic variables ( #5918 )
2025-04-05 06:21:34 -04:00
Wilson Snyder
6ba06498db
Fix segfault in fork synchronization ( #5906 ).
2025-04-04 08:15:39 -04:00
Wilson Snyder
f55fee1cf0
Internals: Fix missing semis; no functional change
2025-04-02 23:13:43 -04:00
Ryszard Rozak
353a4b7b4a
Fix parameters referencing interface fields ( #1593 ) ( #5910 )
2025-04-02 09:43:12 -04:00
Krzysztof Sychla
cd5997a2e6
Support `$setuphold` ( #5884 )
2025-04-02 06:08:51 -04:00
Wilson Snyder
168f0ed9e5
Fix `new this` ( #5909 ).
2025-04-01 08:12:34 -04:00
Wilson Snyder
538f39edf9
Fix grammar.
2025-04-01 07:54:56 -04:00
github action
e3c1d36e6e
Apply 'make format'
2025-04-01 11:34:45 +00:00
Brian Li
559d990e82
Support command-line overriding `define ( #5900 ) ( #5908 )
2025-04-01 07:33:49 -04:00
Wilson Snyder
f3684a85b9
Fix delayed assignment malformed LHS assertion ( #5904 ).
2025-03-30 17:38:54 -04:00
Wilson Snyder
b49351356e
Fix delays inside interface functions, and classes inside interfaces ( #5846 ).
2025-03-30 16:40:22 -04:00
Wilson Snyder
844448655e
Add `systemc_header_post
2025-03-28 22:40:21 -04:00
Wilson Snyder
b4ef6ce860
Support `systemc_interface and related inside `class`.
2025-03-28 22:40:21 -04:00
Wilson Snyder
8e7f29b07e
Fix incorrect systemc block token names
2025-03-28 22:40:21 -04:00
Geza Lore
39c3e79a3c
Fix V3Gate assertion on eliminated circular logic ( #5889 ) ( #5898 )
...
Fixes #5889
2025-03-28 17:04:09 +00:00
Geza Lore
b6bcbd5660
Internals: Fix clang-tidy warnings in DFG ( #5893 ) ( #5897 )
2025-03-28 12:06:13 -04:00
Wilson Snyder
98b89d0f2c
Fix some cppcheck warnings. No functional change intended.
2025-03-27 19:46:59 -04:00
Wilson Snyder
5e69faff46
Fix clang 20 warnings
2025-03-27 19:01:25 -04:00
Bartłomiej Chmiel
8965401d10
Fix PGO profiling for multi-threaded hierarchical scenarios ( #5888 )
2025-03-27 11:10:48 -04:00
Bartłomiej Chmiel
fabded95df
Support multi-thread hierarchical simulation ( #2583 ) ( #5871 )
2025-03-24 18:39:29 -04:00
Wilson Snyder
7521c2c644
Standardize some error messages.
2025-03-23 19:51:54 -04:00
Wilson Snyder
f9109eb61f
Delay deletes in V3Fork ( #5862 attempt)
2025-03-22 08:03:25 -04:00
Wilson Snyder
48effad448
Add DEPRECATED warning on `--xml-only` and `--xml-output`.
2025-03-21 21:32:05 -04:00
Nick Brereton
27e39d7821
Fix interface array assignments ( #5270 ) ( #5633 ) ( #5869 )
2025-03-21 17:00:49 -04:00
Todd Strader
8c287134d7
Add warning on expression coverage class references ( #5870 )
2025-03-21 08:55:38 -04:00
Wilson Snyder
c508fd5d24
Internals: Remove single-statement braces. No functional change.
2025-03-19 22:55:11 -04:00
Todd Strader
d2b7b567df
Fix expression coverage on additional nodes ( #5849 partial) ( #5867 )
2025-03-19 19:01:31 -04:00
Wilson Snyder
39bdd427d6
Fix unresolved typedefs as parameters ( #5850 ).
2025-03-19 18:02:56 -04:00
Geza Lore
4a2212949e
Fix change detection at time 0 ( #5864 )
...
Initialize "previous value" variables in the static initializer
function, instead of the 'initial' blocks function. Fixes #5499
2025-03-18 13:34:04 +00:00
Wilson Snyder
780163b91e
Internals: Avoid extra op#() calls. No functional change intended.
2025-03-16 14:34:19 -04:00
Wilson Snyder
77cc93c176
Fix detecting bad datatype on $countones ( #5674 ).
2025-03-15 21:57:10 -04:00
Wilson Snyder
418fc2c246
Fix reduction-or on class pointers (prep #5674 )
2025-03-15 21:46:37 -04:00
William D. Jones
13c22690c4
Fix algorithm header portability in V3Os.cpp (for std::replace). ( #5861 )
2025-03-15 21:43:06 -04:00
Geza Lore
59cb53cfbc
Set trigger vector in whole words ( #5857 )
...
Having many triggers still hits a bottleneck in LLVM leading to long
compile times.
Instead of setting triggers bit-wise, set them as a whole 64-bit word
when possible. This improves C++ compile times by ~4x on some large
designs and has minor run-time performance benefit.
2025-03-14 14:06:51 +00:00
Ryszard Rozak
9a6598b36f
Fix streaming of unpacked arrays concatenations ( #5856 )
2025-03-13 13:56:29 +01:00
Wilson Snyder
0aac3074b6
Fix recursive error on virtual interfaces ( #5854 ).
2025-03-12 17:57:02 -04:00
Wilson Snyder
391d4e1c32
Fix segmentation fault on member compare ( #5853 ).
2025-03-12 08:06:34 -04:00
Wilson Snyder
45add07205
Internals: Minor V3Param cleanups. No functional change.
2025-03-12 07:58:26 -04:00
Andrew Voznytsa
6a48d3bb83
Add `--make json` to enable integration with non-make/cmake build systems ( #5799 )
2025-03-11 19:57:21 -04:00
Wilson Snyder
53151d7c5f
Fix emitting `this` ( #5849 )
2025-03-11 17:53:35 -04:00
Yilou Wang
7fe51583e5
Fix foreach of assocArr inside a constraint block ( #5727 ) ( #5841 )
2025-03-11 13:32:34 -04:00
Geza Lore
6ecdd14fdb
Fix NBA shared flag reuse ( #5848 )
...
Fixes #5847
2025-03-11 07:40:21 -04:00
Wilson Snyder
8157f21c3e
Internals: Refactor hasGParam. No functional change intended.
2025-03-09 16:10:38 -04:00
Wilson Snyder
a2e91f3cf2
Internals: Add some const. No functional change.
2025-03-09 13:13:57 -04:00
Geza Lore
d9701e6406
Automatically split some packed variables ( #5843 )
...
This patch adds a heuristic to V3SplitVar, and it attempts to split up
packed variables that are only referenced via constant index,
non-overlapping bit/range selects. This can eliminate some UNOPTFLAT cases.
2025-03-09 10:31:01 -04:00
Wilson Snyder
ce2f335786
Internals: Set isParameterized near hasGParam. No functional change intended.
2025-03-08 17:53:24 -05:00
Wilson Snyder
9632dfdf93
Internals: Remove some unneeded this->. No functional change.
2025-03-08 17:48:20 -05:00
Wilson Snyder
8026b2a7f3
Fix checking built-in method arguments ( #5839 )
2025-03-08 14:11:12 -05:00
Wilson Snyder
24dbb0bc5c
Internals: V3Width call refactoring. No functional change.
2025-03-08 12:44:30 -05:00
github action
5045bf53df
Apply 'make format'
2025-03-08 16:09:07 +00:00
Wilson Snyder
51fcb881d5
Fix error on out-of-range lvalue part select ( #5820 ).
2025-03-08 11:05:58 -05:00
Geza Lore
20b964a9a2
Fix splitting of packed ports with non-zero based ranges ( #5842 )
2025-03-08 09:37:30 -05:00
Mateusz Gancarz
9b4509f7d9
Add `--trace-saif` for SAIF power traces ( #5812 )
2025-03-07 10:41:29 -05:00
Geza Lore
96bffd49aa
Fix invalidating variable caches in SenExprBulider ( #5834 ) ( #5835 )
2025-03-07 07:18:34 -05:00
Krzysztof Bieganski
b2093b513a
Fix type_id package scope resolution ( #5826 )
2025-03-06 17:41:27 -05:00
Wilson Snyder
8e87a99628
Fix `rand_mode` method with cast ( #5831 ).
2025-03-05 21:43:50 -05:00
Bartłomiej Chmiel
a3b2c2af17
Support force/release with a variable reference ( #5721 ) ( #5810 )
2025-03-04 10:12:02 -05:00
Wilson Snyder
27d3eb5b7b
Fix UNOPTFLAT warnings with `--coverage-trace` and always_comb ( #5821 ).
2025-03-02 20:02:55 -05:00
Wilson Snyder
ce211ebceb
Internals: Make some auto more explicit. No functional change.
2025-03-02 17:01:35 -05:00
Geza Lore
0133bc6b09
Do not use function locals in SenExprBuilder ( #5822 )
...
Function locals are not safe here because we might need to split up
the generated function. V3Localize can fix them later if safe.
2025-03-02 16:13:59 +00:00
Geza Lore
fc302a5207
Fix sorting of wide SenItems ( #5816 )
...
This used to throw Error: Value too wide for 64-bits expected in this context
2025-03-01 22:11:43 +00:00
Geza Lore
14f618b0f6
Fix invalid code motion over branches ( #5811 ) ( #5814 )
2025-02-28 13:32:03 -05:00
Wilson Snyder
a9762e0c5c
Fix coredump on fork inside disable named block by adding an UNSUPPORTED
2025-02-27 21:42:20 -05:00
Wilson Snyder
098ee6fa7a
Internals: Cleanup some missing VL_RESTORERs. No functional change intended.
2025-02-27 21:18:27 -05:00
Wilson Snyder
7f94fa1da7
Add check for `let` misused in statement context ( #5733 ).
2025-02-26 09:08:41 -05:00
Wilson Snyder
3b98db17cc
Fix reset of automatic function variables ( #5747 ).
...
Also required V3Life optimize CRESET(x) ... ASSIGN(rhs, x) to remove the
extraneous CRESET to avoid creating new UNOPTFLAT situations.
2025-02-25 22:48:53 -05:00
Wilson Snyder
489349ffbd
Internals: Reduce verbosity of SplitVar
2025-02-25 20:41:00 -05:00
Wilson Snyder
b52e1d3ede
Fix wrong fileline on 1step
2025-02-25 20:40:33 -05:00
Bartłomiej Chmiel
6a8f97e184
Internals: Fix typos ( #5803 )
...
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
2025-02-25 12:44:14 -05:00
Kamil Rakoczy
3ab89d5be7
Add used language to `--preproc-resolve` output ( #5795 )
2025-02-25 07:03:25 -05:00
Wilson Snyder
d232923051
Change `--output-groups` to default to value of `--build-jobs`.
...
Those using build farms may need to now use `--output-groups 0` or otherwise.
2025-02-24 20:38:08 -05:00
Yilou Wang
dae4c8ee22
Support constrained random for arrays in structs ( #5765 ) ( #5802 )
2025-02-24 17:51:51 -05:00
Wilson Snyder
4ce8164277
Fix parsing input wire with default and range ( #5800 ).
2025-02-24 03:51:49 -05:00
Todd Strader
7ec32799b0
Fix expression coverage + VarXRefs ( #5797 )
2025-02-22 15:55:23 -05:00
Geza Lore
812861e7f2
Optimize splitting trigger computation and dump ( #5798 )
2025-02-23 05:57:36 +10:00
Wilson Snyder
1857f6399c
Fix `$monitor` with dotted references ( #5794 ).
2025-02-21 17:18:49 -05:00
Todd Strader
f7ccc013e7
Improve V3EmitV for interfaces ( #5796 )
2025-02-21 16:49:14 -05:00
Kamil Rakoczy
2e1fa8f338
Add `--preproc-resolve` for modules in preprocessor output ( #5789 )
...
Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
2025-02-22 04:47:54 +10:00
Todd Strader
70459b3208
Fix V3EmitV for non-zero based arrays ( #5790 )
2025-02-21 05:49:32 +11:00
Ryszard Rozak
2a23ec74e4
Fix dpi context functions ( #5788 )
2025-02-20 10:15:09 +01:00
Wilson Snyder
be1ace423e
Fix time import error on time parameters ( #5786 ).
2025-02-19 17:03:59 -05:00
Todd Strader
34ced254c0
Support expression coverage ( #5719 )
2025-02-19 16:42:23 -05:00
Wilson Snyder
fe15171649
Internals: cppcheck cleanups. No functional change.
2025-02-18 01:14:51 -05:00
Yutetsu TAKATSUKASA
1a07af57a3
Fix unpacked split_var ( #5782 ) ( #5785 )
2025-02-18 05:34:57 +11:00
Kamil Rakoczy
c840ffb0ae
Support nested classes ( #4178 ) ( #5778 )
...
Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
2025-02-17 23:47:41 +11:00
Wilson Snyder
754c5c71f1
Fix force VPI public signal visibility ( #5225 ).
2025-02-15 00:58:14 -05:00
Todd Strader
b645fcf027
More V3EmitV support ( #5779 )
2025-02-14 14:58:11 -05:00
Krzysztof Bieganski
ffb02cea15
Fix ignoring joins in stringify in preprocessor ( #5777 )
...
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2025-02-13 18:33:12 -05:00
Krzysztof Bieganski
f753ae2518
Support selects on arbitrary string expressions ( #5773 )
2025-02-11 12:06:34 -05:00
Dave Sargeant
caa19c0cb3
Fix VFileContent reference count ( #5769 ) ( #5771 )
2025-02-10 10:04:04 -05:00
Krzysztof Bieganski
283f6c7433
Add `--preproc-token-limit` ( #5768 )
2025-02-07 10:32:12 -05:00
Yilou Wang
6b4183632c
Support Unpacked Structures' Constrained Randomization ( #5657 ) ( #5759 )
2025-02-03 11:56:00 -05:00
Wilson Snyder
e0e164cea2
Internals: Optimize clearFired ( #5753 )
2025-01-30 07:52:38 -05:00
Bartłomiej Chmiel
a379382d32
Fix handling forced assigns in V3Life ( #5757 )
2025-01-28 07:30:40 -05:00
Wilson Snyder
e2a6e19cac
Cleanup V3EmitMk report style
2025-01-25 17:52:27 -05:00
Wilson Snyder
61bfb6c308
Remove `list`/`map` from keyword warnings.
...
Reduces warning verbosity from `map` in UVM.
Assumes user doesn't do a `using namespace std`.
2025-01-25 16:08:15 -05:00
Wilson Snyder
bdcfc4e286
Reduce verbosity under `--debug` default level
2025-01-25 16:01:20 -05:00
Wilson Snyder
41bb54bc2c
Add Makefile targets count to stats
2025-01-25 13:35:56 -05:00
Wilson Snyder
001c098e5a
Optimize empty function definition bodies ( #5750 ).
2025-01-25 12:13:25 -05:00
Wilson Snyder
98e40c847c
Internals: Suppress vlSelf unused suppression when known used. No functional change intended.
2025-01-25 12:06:05 -05:00
Wilson Snyder
05c7a3b90b
Optimize labels as final `if` block statements ( #5744 ).
2025-01-25 10:29:35 -05:00
Wilson Snyder
6281385ee8
Commentary/Internals: Sort option names. No functional change.
2025-01-24 21:31:57 -05:00
Wilson Snyder
929e15fa4c
Fix various round-trip Verilog output, including packed arrays
2025-01-24 21:00:45 -05:00
Wilson Snyder
432d5f851d
Internals: Cleanup some misnamed nodep's. No functional change.
2025-01-24 20:52:31 -05:00
Wilson Snyder
d4f4fefd1d
Fix `-j` ignored after `-f` ( #5749 ).
2025-01-24 17:30:59 -05:00
Wilson Snyder
d8080008b4
Commentary
2025-01-24 07:47:32 -05:00
Wilson Snyder
bed9aa9904
Internals: Cleanup std::string empty string constructors.
2025-01-24 07:47:32 -05:00
Bartłomiej Chmiel
35fa0d051d
Support integer atom type ports in `--hierarchical` ( #5748 )
2025-01-24 07:47:11 -05:00
Bartłomiej Chmiel
0507fb4655
Improve hierarchical DPI wrapper scheduling performance ( #2583 ) ( #5734 )
2025-01-20 14:24:09 -05:00
Geza Lore
f4a01eb452
Fix inlined expression with assignment under LHS of NBA ( #5736 ) ( #5740 )
2025-01-20 07:23:10 -05:00
Wilson Snyder
fa1b11252e
Fix duplicate-named class variable equivalence ( #5737 ).
2025-01-18 15:25:49 -05:00
Andrew Nolte
dddc1b5b4d
Fix vpiDefName issues with non-inlined scopes and dpi conflicts ( #5732 )
2025-01-16 15:02:36 -05:00
Natan Kreimer
20faa99464
Fix VPI iteration over hierarchy ( #5314 ) ( #5731 )
2025-01-13 07:40:34 -05:00
Ethan Sifferman
dc43071f1c
Improve `resetall support ( #5728 ) ( #5730 )
2025-01-11 22:53:11 -05:00
Wilson Snyder
fdf29b970f
Fix VL_UNLIKELY with constructors
2025-01-11 15:27:11 -05:00
Andrew Nolte
f8dd65c7cd
Add `--public-ignore` to ignore public metacomments ( #7819 )
2025-01-11 12:29:39 -05:00
Yilou Wang
d3e205f201
Support constraints on associative array user-defined keys ( #5671 ) ( #5729 )
2025-01-11 12:07:52 -05:00
Wilson Snyder
dfe28f7ed0
Fix misoptimizing away `$urandom` ( #5703 ).
2025-01-11 08:48:40 -05:00
github action
bb871728c9
Apply 'make format'
2025-01-10 00:05:16 +00:00
Krzysztof Starecki
69dce205d3
Support multidimensional array access via VPI ( #2812 ) ( #5573 )
2025-01-09 19:04:26 -05:00
Krzysztof Bieganski
052812bb87
Fix `BLKSEQ` on suspendable processes ( #5722 )
...
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2025-01-09 08:40:32 -05:00
Yilou Wang
0380a36c76
Fix constrained random for > 64-bit associative arrays ( #5670 ) ( #5682 )
2025-01-09 08:33:38 -05:00
Wilson Snyder
44f49669a3
Support side effects of form `variable[index_function()]++`.
2025-01-08 19:37:20 -05:00
Nick Brereton
87d856339f
Add lint error on importing package within a class ( #5634 ) ( #5679 )
2025-01-07 16:52:44 -05:00
Wilson Snyder
e171463fa2
Add COVERIGN warning, as a more specific UNSUPPORTED error.
2025-01-06 18:48:32 -05:00
Andrew Nolte
0d34f56b74
Fix packages with `--public-depth 1` ( #5708 )
2025-01-06 15:21:32 -05:00
Wilson Snyder
dcaf6476e8
Fix matching language extension options including dots.
2025-01-05 22:52:29 -05:00
Wilson Snyder
76b2ac9cc1
Support `+incdir` with multiple directories.
2025-01-05 19:30:39 -05:00
Wilson Snyder
b6a400ee9b
Support generated classes ( #5665 ).
2025-01-05 17:10:04 -05:00
Wilson Snyder
78d6ec8114
Fix error message when call task as a function ( #3089 ).
2025-01-04 12:55:15 -05:00
Wilson Snyder
88dd95980a
Internal cleanups, remove extra iterate, but no functional change intended
2025-01-04 12:50:55 -05:00
Wilson Snyder
b531001f55
Fix segfault when only enum value referenced in package ( #5714 ).
2025-01-04 10:36:34 -05:00
Wilson Snyder
1d0563212e
Fix pattern assignment to real inside struct ( #5713 ).
2025-01-03 19:39:48 -05:00
Geza Lore
010ae580b1
Fix V3Simulate constant reuse ( #5709 )
...
Use a generational allocator for reusing AstConst across
V3Simulate::clear(), instead of using user1 (which is also used
to store values of nodes).
Also fix invalid lookup on array initializer
2025-01-03 05:33:29 -05:00
Wilson Snyder
8fbb725f34
Copyright year update.
2025-01-01 08:30:25 -05:00
Bartłomiej Chmiel
72a47e16c1
Fix verilator_gantt for hierarchically Verilated models ( #5700 )
2024-12-23 09:10:46 -06:00
Wilson Snyder
9a3dcaa10b
Fix spelling
2024-12-19 21:30:14 -05:00
Wilson Snyder
bb45fd6c6c
Add error on `--savable --timing` ( #5690 ).
2024-12-19 17:30:40 -05:00
Todd Strader
74d5d008bb
Fix VPI + SYMRSVDWORD intersection ( #5686 )
2024-12-19 15:15:28 -05:00
Ryszard Rozak
c093b24342
Fix width extension of operands of `inside` operator ( #5685 )
2024-12-19 15:51:51 +01:00
Wilson Snyder
4b4ca90c71
Internals: Create FuncRef/TaskRef directly from Func/Task pointer. No functional change intended
2024-12-15 09:15:49 -05:00
Wilson Snyder
6aa7123a8c
Internals: Function/variable renames. No functional change.
2024-12-14 12:49:42 -05:00
Wilson Snyder
80b2fa3583
Add error on randc inside dist
2024-12-14 11:47:46 -05:00
Wilson Snyder
c2dcca980e
Improve to throw UNSUPPORTED instead of syntax error on extend class arguments
2024-12-13 17:15:04 -05:00
Wilson Snyder
a23dfdc4ee
Fix backward external constraint error, from recent new support.
...
(Thanks sv-tests!)
2024-12-13 16:54:14 -05:00
Todd Strader
41a038b79b
Fix interface bracketed array parameter access ( #5678 ) ( #5677 )
2024-12-13 12:00:49 -05:00
Ryszard Rozak
a8e06874bd
Fix `randomize..with` of parameterized classes ( #5676 )
...
Broke in 7a04a5b
2024-12-13 09:32:47 -05:00
Yilou Wang
54ef9ad31c
Support associative array basic constrained randomization ( #5658 ) ( #5670 )
2024-12-12 11:31:54 -05:00
Bartłomiej Chmiel
32f9cf072b
Fix hierarchical verilation for projects with dot-f dependency lists ( #5199 ) ( #5669 )
2024-12-12 11:25:19 -05:00
Ryszard Rozak
03e8ef0b0f
Fix wildcard equality and inside operators for non-fourstate expressions ( #5673 )
2024-12-12 14:51:48 +01:00
Wilson Snyder
a2f327f729
Support `extern constraint`
2024-12-12 08:16:19 -05:00
Wilson Snyder
6e204ed0dd
Internals: Cleanup 'error error' on fatals
2024-12-11 08:52:41 -05:00
Bartłomiej Chmiel
58ddf997e3
Improve optimization of duplicate wide expressions ( #5637 )
...
Prevent inlining of expensive wide expressions in V3Gate (#5637 )
2024-12-11 11:45:31 +00:00
Ryszard Rozak
9656311521
Fix error on duplicated declaration of gen block ( #5663 )
2024-12-06 07:20:31 -05:00
Wilson Snyder
a247041cab
Internals: Refactor 713dab27 to avoid IfaceRef being known in LinkCells
2024-12-03 12:00:56 -05:00
Yilou Wang
a64660a530
Fix foreach mixed array ( #5655 ) ( #5656 )
2024-12-03 07:57:50 -05:00
Todd Strader
b6f292f556
Fix imported array assignment literals ( #5642 ) ( #5648 )
2024-12-02 15:08:47 -05:00
Wilson Snyder
4781a6046a
Update error as misnamed port dtype might be interface
2024-12-02 07:35:44 -05:00
Wilson Snyder
b16b48f458
Internals: Misc ANSI port parsing cleanups; baseline for future commit.
2024-12-02 07:21:39 -05:00
Bartłomiej Chmiel
a668b7c658
Fix missing VlProcess handle in coroutines with splits ( #5623 ) ( #5650 )
...
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
2024-12-02 05:43:26 -05:00
Wilson Snyder
94fd17e4f7
Internals: Port parsing cleanups
2024-12-01 23:03:19 -05:00
Wilson Snyder
aa2b653c71
Internals: With `--dumpi-tree >= 9`, create pre-sort cells.tree
2024-12-01 17:38:02 -05:00
Wilson Snyder
d75f41b641
Tests: Add param type to t_typename test
2024-12-01 17:28:13 -05:00
Wilson Snyder
b0f898cec8
Internals: Determine needing verilated_std without symbol table
2024-12-01 11:35:00 -05:00
Wilson Snyder
7a04a5b9a8
Internals: Refactor symIterate functions. No functional change intended
2024-11-30 22:55:16 -05:00
Wilson Snyder
2d71d66cf5
Commentary
2024-11-30 22:35:36 -05:00
Wilson Snyder
a51e26e62d
Internals: Some V3LinkCells debug improvements. No functional change.
2024-11-30 20:09:05 -05:00
Wilson Snyder
e44f34dde3
Improve concat lint error & cleanups for future commit.
2024-11-30 18:56:00 -05:00
Wilson Snyder
0c820c3068
Internals: Standardize template argument names. No functional change.
2024-11-29 20:20:38 -05:00
Wilson Snyder
990ccd6763
Internals: Standardize on `template<typename`. No functional change.
2024-11-29 18:01:50 -05:00
Wilson Snyder
f631587a20
Internals: Rename classOrPackageSkip as kept confusing with member accessor. No functional change.
2024-11-29 16:57:18 -05:00
Wilson Snyder
9f8fcaf827
Fix linking types of typedefs
2024-11-29 16:09:39 -05:00
Wilson Snyder
d7893a60ca
Internals: In V3LinkDot debug, show node name prefix. No functional change.
2024-11-29 16:09:04 -05:00
Wilson Snyder
93090c56ee
Fix mis-aliasing of instances with mailbox parameter types ( #5632 partial).
2024-11-29 09:20:02 -05:00
Wilson Snyder
d750ffc129
Internals: Fix debug dump of deleted nodes.
2024-11-29 08:51:32 -05:00
Wilson Snyder
7efa0fc82a
Internals: Rewrite skipRefp to avoid recursion and fix const-ness. No functional change intended.
2024-11-29 08:10:51 -05:00
Wilson Snyder
8db9db7e25
Internals: Rename same() function. No functional change.
2024-11-28 15:01:58 -05:00
Wilson Snyder
d165671225
Improve error when no parameter type value ( #5645 partial)
2024-11-28 14:09:06 -05:00
Wilson Snyder
7a8f71e7d8
Add `--fno-slice` to disable array assignment slicing ( #5644 ).
2024-11-28 13:49:34 -05:00
Wilson Snyder
e0ad430cd9
Internals: V3Slice style cleanup. No functional change; ignore whitespace
2024-11-28 13:33:59 -05:00
Todd Strader
94e545bdca
Fix interface and struct pattern collision ( #5640 ) ( #5639 )
2024-11-27 17:20:21 -05:00
Wilson Snyder
99daa8d24b
Support `default disable iff` and `$inferred_disable` ( #4016 ).
2024-11-26 22:27:32 -05:00
Wilson Snyder
e14903cfb2
Internals: Fix null skipRef for consistency. No functional change intended.
2024-11-26 22:10:54 -05:00
Wilson Snyder
bee344d1ae
Add error on illegal `--prefix` etc. values ( #5507 ).
2024-11-26 21:06:43 -05:00
Wilson Snyder
713dab278c
Fix mis-public interfaces, broke in f58aee2ff2
2024-11-26 19:16:05 -05:00
Wilson Snyder
7a9140821d
Fix public_module requiring a wire to become public ( #4916 ).
2024-11-25 21:21:11 -05:00
Wilson Snyder
25d75ee86f
Add `--fno-inline-funcs` to disable function inlining.
2024-11-25 19:59:10 -05:00
Wilson Snyder
a72009fb41
Fix UNDRIVEN on refs
2024-11-25 18:41:38 -05:00
Wilson Snyder
a934d965be
Internals: Rename isInoutish
2024-11-25 18:25:36 -05:00
Wilson Snyder
6f35fec5ce
Commentary
2024-11-24 20:47:57 -05:00