8000 Releases · nickg/nvc · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Releases: nickg/nvc

1.16.2

11 Jun 09:50
r1.16.2
Compare
Choose a tag to compare

This is a minor bug fix release:

  • Fixed a crash when an entity uses VHDL-2019 enhanced type generics and sub-elements of a port with a generic array type are associated individually (#1201).
  • Fixed an issue where some generate statements were inaccessible from VHPI (#1213).
  • Several other minor bugs were resolved (#1202, #1204, #1212).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.16.1

12 May 17:46
r1.16.1
Compare
Choose a tag to compare

This is a minor bug fix release:

  • Fixed an elaboration failure where generic names differ in case between entity and component and the files were analysed with --preserve-case (#1195).
  • Fixed a crash when expression coverage is enabled and a port is associated with a non-static expression (#1194).
  • Fixed a debug assertion failure when initialising an array with more than 2**32 elements (#1196).
  • Fixed a crash when concatenating unconstrained arrays of arrays (#1199).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.16.0

21 Apr 10:25
r1.16.0
Compare
Choose a tag to compare

This is a major new release with the following changes:

  • Added support for PSL prev(), stable(), rose() and fell() built-in functions (#1135).
  • Signals can now be read and passed to subprograms during elaboration and the effective value is the default value associated with the signal. This behaviour is not defined by the LRM but matches all other simulators (#1144).
  • MSYS2 binary packages are no longer provided with releases as these become out-of-date too quickly. Windows users should instead download the self-contained MSI package.
  • The Ubuntu binary packages for releases now have predictable names without the git commit hash (#1131).
  • Improved error messages when design units have circular dependencies or depend on obsolete design units (#1152).
  • Toggle coverage count is displayed correctly for unreachable constant driven toggle bins and transitions from X are counted with --count-from-undefined instead of just U.
  • Added an experimental --preserve-case analysis option to retain the original spelling of VHDL identifiers (#723).
  • --ieee-warnings is now a global option and should be placed before the -r command. Passing it to the -r command is still supported but deprecated and may not take effect in some situations (#1151).
  • Fixed a crash when a partial association in a port map has a conversion function (#1161).
  • Improved the formatting of the --help output.
  • The GitHub Action has been renamed from nickg/setup-nvc-ci to nickg/setup-nvc, although the old name should redirect to the new.
  • A Docker image was added at ghcr.io/nickg/nvc (#1165).
  • Unconstrained input ports can now be constrained by the result subtype of a conversion function (#1171).
  • Type marks are now allowed in the prefix of selected names in relaxed mode (#1173).
  • Added the nvc.random random number generation package and --seed argument for deterministic results.
  • Added support for PSL union operator (from @Blebowski).
  • The implementation of concatenations has been reworked fixing several bugs (#1178).
  • Added support for conditional force assignment (#1185).
  • Access and file types are now supported in VHPI (#1192).
  • Fixed a crash when open actual was used for formal parameter without default.
  • Several other minor bugs were resolved (#1174, #1159, #1177, #1191, #1188).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.15.2

01 Mar 13:03
r1.15.2
Compare
Choose a tag to compare

This is a minor maintenance release fixing the following issues:

  • Fixed invalid LLVM IR generation which could cause a crash with LLVM 14 (#1145).
  • Functional coverage is now reported correctly when summing from nested hierarchies (#1154).
  • External names can now be the target of concurrent signal assignment statements (#1156).
  • Fixed a crash when packages are passed through multiple layers of generics.
  • Fixed a crash when a record subtype has a partially constrained element (#1155).
  • Fixed wrong result of VHDL-2019 std.env.file_path when the source file was analysed using a relative path (#1162).
  • Fixed a crash when 'last_event or 'last_active is used with a record type (#1164).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.15.1

22 Jan 10:49
r1.15.1
Compare
Choose a tag to compare

This is a minor maintenance release fixing the following issues:

  • Fixed a crash when a subprogram is called with too many named arguments (from @NikLeberg) (#1091).
  • Fixed a crash when a constant record aggregate has a null array element (#1137).
  • Fixed a regression that caused some array aggregates to be incorrectly reported as ambiguous (#1138).
  • The Windows installer now bundles the Tcllib library (#1136).
  • Fixed a bug where PSL directives in comments were parsed incorrectly when split over multiple lines (#1135).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.15.0

11 Jan 10:59
r1.15.0
Compare
Choose a tag to compare

This is a major new release with the following changes:

  • --load is now a global option and should be placed before the -r command. This allows VHPI foreign subprograms to be called during elaboration (#988).
  • The --per-file coverage report option outputs code coverage reports for each source file instead of each instance (#823).
  • The new --check-synthesis analysis option warns when signals are missing from process sensitivity lists.
  • Fixed a crash when a generic subprogram is associated with open (#1025).
  • Added a functional coverage API in nvc.cover_pkg that can be used by external frameworks such as OSVVM to define cover points.
  • Added threshold-<value> option for coverage to set minimal count a coverage bin must reach to be reported as covered.
  • Added a warning for potential infinite loops in processes without sensitivity and lacking any wait statements (from @NikLeberg).
  • Selected names can now be used to register value change callbacks with vhpi_register_cb (#1045).
  • Removed the limit on the maximum number of parameters that can be passed to a VHDL subprogram (#1036).
  • The new --no-save analysis option parses and checks the input files but does not save the working library to disk. This is a replacement for the --syntax top-level command which is now deprecated.
  • The coverage database file name has changed to <toplevel>.ncdb in the current working directory and this can now be customised with the new --cover-file= elaboration option. Attempts to access the old file name inside the library directory will be redirected to the new location, with a warning.
  • Partial association of ports with interface views now works correctly (#1074).
  • Added support for PSL suffix implication, SERE repetition, and SERE fusion.
  • Nested arrays more than two levels deep can now be dumped in FST format (#1071).
  • Added support for package external names (#1072).
  • Fixed parser hang for bit string literals (from @NikLeberg).
  • Fixed a crash on an illegal package definition inside an interface.
  • Comping the Vivado vendor libraries with nvc --install vivado is now around 2x faster and analysing files with many dependencies is up to an order of magnitude faster (#1098).
  • The --jit elaboration mode now works on Windows-on-Arm systems.
  • vhpi_assert now behaves the same as VHDL assert for the purposes of determining the simulation exit code and early termination (#1060).
  • The 'driving_value attribute now works correctly with record types.
  • Added basic support for 'instance_name, 'path_name and 'simple_name attributes of generate block labels (from @NikLeberg) (#1125).
  • Comments are now parsed correctly inside PSL directives (#1129).
  • Updated to OSVVM 2024.11 and UVVM 2024.10.08 for nvc --install.
  • Several other minor bugs were resolved (#1038, #1057, #1067. #1124).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.14.2

23 Nov 10:19
r1.14.2
Compare
Choose a tag to compare

This is a minor bug fix release with the following changes:

  • Fixed a crash when 'last_value is used with record types (#1043).
  • Fixed a crash when a process sensitivity list contains an external name and the process is elaborated before the object referenced by the name (#1062).
  • Fixed parser hang for integers in scientific notation (from @NikLeberg).
  • Fixed a platform detection issue that caused JIT code loading to fail on Apple silicon macOS (#1069).
  • The STD_INPUT and STD_OUTPUT files can now be opened and closed multiple times (#1079).
  • Fixed a crash when a subtype is used for an aggregate element association range choice which associates an array slice (#1080).
  • Several other minor bugs were resolved (#1038, #1055).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.14.1

26 Oct 11:43
r1.14.1
Compare
Choose a tag to compare

This is a minor bug fix release with the following changes:

  • Fixed an error when using the work library alias and the working library has the same name as design unit being analysed (#991).
  • Added a check for illegal references to signal or variable external names inside pure functions (#1010).
  • Added a check that the parameter of 'stable and other implicit signal attributes is a static expression (#1018).
  • Fixed an elaboration crash when an external name is passed to a procedure (#1029).
  • Record subtype constraints can now be accessed over VHPI (#1035).
  • Several other minor bugs were resolved (#1017, #1020, #1030, #1040).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.14.0

22 Sep 12:00
r1.14.0
Compare
Choose a tag to compare

This is a major new release with the following changes:

  • Waiting on implicit 'stable and 'quiet signals now works correctly.
  • Updated to OSVVM 2024.07 and UVVM 2024.07.03b for nvc --install.
  • Added a warning when an inner declaration hides an outer declaration in a way that is likely to be unintentional (#905).
  • The -c sub-command for coverage is deprecated and replaced with separate --cover-report and --cover-merge commands. See the manual for details.
  • The argument to the --cover-export command is now the path to a coverage database file instead of a top-level unit name.
  • The --force-init command which was deprecated in the 1.7 release has been removed.
  • Coverage exclude files now support fold command to merge coverage data from independent sub-hierarchies (from @Blebowski).
  • FSM state coverage bin renamed from STATE to BIN_STATE.
  • A signature is now allowed in the formal part of generic map associations in VHDL-2019 mode.
  • use lib.pack.all no longer makes the bare package name pack potentially visible.
  • Very limited initial Verilog support has been added, including the ability to instantiate vendor-supplied UDPs from VHDL.
  • Fixed a regression which caused parse errors for some concurrent assertion statements (#956).
  • Arrays-of-arrays with downto direction are now dumped in the correct order (#957).
  • Fixed incorrect result of 'event and 'active where the prefix is an array of records.
  • Fixed a crash when the 'stable attribute is used with a record type (#960).
  • Conversion functions applied to individual record elements in a port map now work correctly (#963).
  • External name elaboration order checks were overly strict (#964).
  • Associating a signal with an out or inout parameter in a procedure that is not within a process now produces an analysis error rather than crashing at runtime (#965).
  • The --dump-arrays option now takes an optional argument to specify an upper limit on the length of nested arrays to dump (#959).
  • Matching case? statements are now checked for duplicate and missing choices at analysis time (#966).
  • Limited maximum instantiation depth to prevent crashes due to stack overflow when elaborating a design that has unbounded recursive entity instantiation (#969).
  • Physical subtype ranges and 64-bit integer types are now handled correctly by VHPI (#978).
  • Added support for generic map on subprogram call in VHDL-2019 and improved support for array type generics.
  • Optimised emission of FST initial signal values which also fixes a potential crash (#979).
  • Added checks for duplicate attribute specification (#977).
  • Several other minor bugs were resolved (#961, #962, #971, #975, #985).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, and @augustofg for sponsoring me!

1.13.3

24 Aug 05:06
r1.13.3
Compare
Choose a tag to compare

This release fixes a number of bugs that were discovered in the 1.13 branch:

  • Type checking was not performed correctly for conversion function actuals in port maps (#945).
  • Fixed a crash with signal aliases inside an instantiated generic package (#946).
  • Fixed random crashes when the simulation heap size is eight gigabytes or larger (#949).
  • Fixed a crash when a constant array with unconstrained element type is initialised with an aggregate (#954).
  • External names in concurrent assertion statements and PSL assertions are now parsed correctly (#952).
  • Several other minor bugs were resolved (#942, #943, #950, #951, #953).

Special thank you to @bpadalino, @tmeissner, @Blebowski, @amb5l, @m42uko, @a-panella, @cmarqu, @albydnc, @johonkanen, @ikwzm, and @augustofg for sponsoring me!

0