-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
Verilator 5.036 2025-04-27
Important:
- Change
--output-groupsto default to value of--build-jobs(Optimize grouping of small class .cpp files verilator#5751).
Those using build farms may need to now use--output-groups 0or otherwise. - Support user-defined primitives (UDPs) (Support primitive instantiations (UDPs) verilator#468) (Support UDP table for combinational and sequential logic (#468) verilator#5807) (Support UDP table for combinational and sequential logic - continuation (#468) (#5807) verilator#5936). [Zhou Shen, Krzysztof Sychla, et al]
- Add
--trace-saiffor SAIF power traces (Add--trace-saiffor SAIF power traces verilator#5812) (Remove omitting signals with no transitions when saving SAIF trace verilator#5914). [Mateusz Gancarz]
Other:
- Change
--traceto--trace-vcd. - Support simple
checkerblocks (Supportcheckerverilator#4066). [Srinivasan Venkataramanan] - Support force/release with a variable reference (Fix force/release process variable references verilator#5721) (Support force/release with a variable reference (#5721) verilator#5810). [Bartłomiej Chmiel, Antmicro Ltd.]
- Support constraint random for StructArray (Support constraint random for StructArray verilator#5805) (Support constraint random for StructArray (#5805) verilator#5937). [Yilou Wang]
- Support command-line overriding `define (Support command-line overriding `define verilator#5900) (Add support for command-line overriding `define (#5900) verilator#5908). [Brian Li]
- Support soft unions (Support 1800-2023 soft unions verilator#5912) (Support soft unions (#5912) verilator#5932). [Robin Heinemann]
- Support
$setuphold(Add support for setuphold verilator#5884). [Krzysztof Sychla] - Support assigning unpacked arrays to queues (Assigning VlUnpacked to VlQueue verilator#5924) (Support assigning unpacked arrays to queues (#5924) verilator#5928). [Brian Li]
- Support
systemc_interface and related insideclass`. - Support class extends with arguments.
- Add multi-thread hierarchical simulation (Improve --hierarchical performance verilator#2583) (Multi-thread hierarchical simulation (#2583) verilator#5871). [Bartłomiej Chmiel, Antmicro Ltd.]
- Add check for
letmisused in statement context (nullptr dereference in WidthVisitor verilator#5733). - Add used language to
--preproc-resolveoutput (Include used language spec in preprocessor output verilator#5795). [Kamil Rakoczy, Antmicro Ltd.] - Add
--make jsonto enable integration with non-make/cmake build systems (Add --make json to enable integration with non-make/cmake build systems verilator#5799). [Andrew Voznytsa] - Add numactl-like automatic assignment of processor affinity (Add numactl-like automatic assignment of processor affinity. verilator#5911).
- Add ccache support for generated cmake files (Fix cmake not using ccache verilator#5926) (Added ccache support for generated cmake files (#5926) verilator#5930). [Andrew Voznytsa]
- Add visualization of multi-threaded waiting time with verilator_gantt (Visualize multi-threaded waiting time with verilator_gantt verilator#5929). [Bartłomiej Chmiel, Antmicro Ltd.]
- Add suggesting isolate_assignments to UNOPTFLAT (Update UNOPTFLAT warning to suggest isolate_assignments as well verilator#5942). [John Khoo]
- Add profiling of hierarchical mtasks with verilator_gantt (Profile nested hierarchical mtasks with verilator_gantt verilator#5956). [Bartłomiej Chmiel, Antmicro Ltd.]
- Add empty veriuser.h for legacy compatibility.
- Add DEPRECATED warning on
--xml-onlyand--xml-output. - Remove unused gtkwave/wavealloca.h. [Geza Lore]
- Optimize automatic splitting of some packed variables (Automatically split some packed variables verilator#5843). [Geza Lore]
- Optimize trigger vector in whole words (Set trigger vector in whole words verilator#5857). [Geza Lore]
- Fix parameters referencing interface fields (Parameter-resolved constants from interface components verilator#1593) (Fix parameters referencing interface fields (#1593) verilator#5910). [Ryszard Rozak, Antmicro Ltd.]
- Fix interface array assignments (Internal error when assigning a member of an interface array to a virtual interface verilator#5270) (Fix interface array assignment verilator#5633) (Fix interface array assignments (#5270) (#5633) verilator#5869). [Nick Brereton]
- Fix change detection at time 0 (Fix reaction to the edge event at zero time verilator#5499) (Fix change detection at time 0 verilator#5864). [Geza Lore]
- Fix foreach of associative array inside a constraint block (Fix Type Change of nodep->bitp() in Constraints with String-Indexed Assoc-Arr verilator#5727) (Fix foreach of assocArr inside a constraint block (#5727) verilator#5841). [Yilou Wang]
- Fix reset of automatic function variables (Fix inlined
function automaticlocal variables not initializing on each call verilator#5747). [Augustin Fabre] - Fix invalid code motion over branches (Fix fork failure due to
-fmerge-cond-motionverilator#5811) (Fix invalid code motion over branches (#5811) verilator#5814). [Geza Lore] - Fix sorting of wide SenItems (Fix sorting of wide SenItems verilator#5816). [Geza Lore]
- Fix tcmalloc static link and non-22.04 builds (Make mold static link tcmalloc verilator#5817) (Use tcmalloc on non 22.04 CI builds verilator#5818). [Geza Lore]
- Fix error on out-of-range lvalue part select (Internal error on out of range assignment verilator#5820).
- Fix UNOPTFLAT warnings with
--coverage-traceand always_comb (Fix warnings with--coverage-traceand always_comb verilator#5821). - Fix function locals in SenExprBuilder (Do not use function locals in SenExprBuilder verilator#5822). [Geza Lore]
- Fix type_id package scope resolution (Two-pass package scope resolution verilator#5826). [Krzysztof Bieganski, Antmicro Ltd.]
- Fix
rand_modemethod with cast (Fix rand_mode value access from cast verilator#5831). - Fix invalidating variable caches in SenExprBulider (Invalid memory access in
SenExprBuilderverilator#5834) (Always invalidate variable caches in SenExprBulider verilator#5835). [Geza Lore] - Fix assignment pattern as function argument (Fix assignment pattern as function argument verilator#5839).
- Fix checking built-in method arguments (Fix assignment pattern as function argument verilator#5839).
- Fix splitting of packed ports with non-zero based ranges (Fix splitting of packed ports with non-zero based ranges verilator#5842). [Geza Lore]
- Fix delays inside interface functions, and classes inside interfaces (Expected an interface scope name to have at least one dot verilator#5846).
- Fix NBA shared flag reuse (Fix NBA shared flag reuse verilator#5848). [Geza Lore]
- Fix multiple expression coverage issues (Coverage breaks expressions with
thisverilator#5849 partial) (Fix expression coverage on additional nodes (#5849 partial) verilator#5867) (Expression coverage: do not support class references verilator#5870). [Todd Strader] - Fix unresolved typedefs as parameters (Internal Error with $clog2 and types verilator#5850). [Eugene Feinberg, Brian Li]
- Fix removal of callbacks no longer in current list (Removal of a cbAfterDelay callback from another one being called at the same time does not work verilator#5851) (Handle removal of callbacks no longer in current list verilator#5852). [Gilberto Abram]
- Fix segmentation fault on member compare (nullptr SIGSEGV when verilating cva6 verilator#5853).
- Fix recursive error on virtual interfaces (Misuse of genvar not caught cleanly. verilator#5854). [Yilou Wang]
- Fix streaming of unpacked arrays concatenations (Fix streaming of unpacked arrays concatenations verilator#5856). [Ryszard Rozak, Antmicro Ltd.]
- Fix Windows paths in Perl (Cannot find file on windows verilator#5858) (Fix improper handling of Windows paths in perl (#5858) verilator#5860). [Tobias Jensen]
- Fix algorithm header portability in V3Os.cpp (for std::replace) (Add algorithm header to V3Os.cpp (for std::replace). verilator#5861). [William D. Jones]
- Fix
$fscanfnot returning -1 on EOF (fscanf return 0 on EOF verilator#5881). - Fix PGO profiling for multi-threaded hierarchical scenarios (Fix PGO profiling for multi-threaded hierarchical scenario verilator#5888). [Bartłomiej Chmiel, Antmicro Ltd.]
- Fix V3Gate assertion on eliminated circular logic (Fix mis-reported circular logic verilator#5889) (Fix V3Gate assertion on eliminated circular logic (#5889) verilator#5898). [Geza Lore]
- Fix process comparisons (Process comparison returns 'unequal' unexpectedly verilator#5896).
- Fix ccache with clang (Fix ccache with clang verilator#5899). [Geza Lore]
- Fix delayed assignment malformed LHS assertion (Malformed LHS in NBA when it is a simple expression verilator#5904).
- Fix segfault in fork synchronization (Fix fork coroutine heap-use-after-free verilator#5906). [Krzysztof Bieganski, Antmicro Ltd.]
- Fix
new this(new this generates an error verilator#5909). - Fix assignments with stream expressions and unpacked arrays (Fix assignments with stream expressions and unpacked arrays verilator#5915). [Ryszard Rozak, Antmicro Ltd.]
- Fix LATCH warning for automatic variables (Not to emit LATCH warning for automatic variables verilator#5918). [Yutetsu TAKATSUKASA]
- Fix %% on elaboration severity tasks (Fix %% on elaboration severity tasks verilator#5922). [Ethan Sifferman]
- Fix port default values with
--coverage-linecreating0=0(verilator --coverage producing bad .cpp with code: 0U = 0U; verilator#5920). [Drew Ranck] - Fix vlSelf error on fork repeats (Bad C++ (error: ‘vlSelf’ was not declared in this scope) verilator#5927). [Drew Ranck]
- Fix missing C++ regeneration when Verilog files are updated (Backward compatibility for
TRACEoption & Fix missing C++ regeneration when Verilog files are updated verilator#5934). [Zhouyi Shen] - Fix stream expressions (Fix stream expressions verilator#5938). [Ryszard Rozak, Antmicro Ltd.]
- Fix packed selection using over 32-bit index (Verilator internal error when --trace is enabled verilator#5957).
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels