]> git.nickg.me.uk Git - nvc.git/log
nvc.git
2 months agoAllow use of triggers for more process types
Nick Gasson [Fri, 23 Feb 2024 14:12:13 +0000 (14:12 +0000)]
Allow use of triggers for more process types

2 months agoUse triggers for sensitised VHDL processes
Nick Gasson [Fri, 23 Feb 2024 11:11:07 +0000 (11:11 +0000)]
Use triggers for sensitised VHDL processes

2 months agoVerilog pullup and pulldown gate instances
Nick Gasson [Thu, 22 Feb 2024 16:36:45 +0000 (16:36 +0000)]
Verilog pullup and pulldown gate instances

2 months agoUse foreign functions for predefined FILE_CLOSE and ENDFILE
Nick Gasson [Thu, 22 Feb 2024 20:35:45 +0000 (20:35 +0000)]
Use foreign functions for predefined FILE_CLOSE and ENDFILE

2 months agoAllow jit_do_cprop to copy arbitrary values
Nick Gasson [Thu, 22 Feb 2024 20:35:45 +0000 (20:35 +0000)]
Allow jit_do_cprop to copy arbitrary values

2 months agoAdd register allocator for x86 JIT backend
Nick Gasson [Tue, 20 Feb 2024 14:53:07 +0000 (14:53 +0000)]
Add register allocator for x86 JIT backend

2 months agoSimplify JIT frame layout
Nick Gasson [Tue, 20 Feb 2024 20:40:08 +0000 (20:40 +0000)]
Simplify JIT frame layout

2 months agoAdd memory-to-register promotion pass for JIT IR
Nick Gasson [Mon, 19 Feb 2024 22:29:32 +0000 (22:29 +0000)]
Add memory-to-register promotion pass for JIT IR

2 months agoUse --without-system-cc to disable AOT compilation
Nick Gasson [Sun, 18 Feb 2024 18:06:00 +0000 (18:06 +0000)]
Use --without-system-cc to disable AOT compilation

2 months agoAdjust read only library check for Windows
Nick Gasson [Sun, 18 Feb 2024 16:41:11 +0000 (16:41 +0000)]
Adjust read only library check for Windows

2 months agoAdd MSI installer for Windows
Nick Gasson [Sun, 18 Feb 2024 16:41:02 +0000 (16:41 +0000)]
Add MSI installer for Windows

2 months agoOption --exit-severity now also controls exit status. Fixes #850
Nick Gasson [Sun, 18 Feb 2024 11:27:22 +0000 (11:27 +0000)]
Option --exit-severity now also controls exit status. Fixes #850

2 months agoMove assert counter logic into rt/assert.c
Nick Gasson [Sun, 18 Feb 2024 11:07:40 +0000 (11:07 +0000)]
Move assert counter logic into rt/assert.c

2 months agoFix crash in port conversion for array-of-array
Nick Gasson [Sat, 17 Feb 2024 18:02:29 +0000 (18:02 +0000)]
Fix crash in port conversion for array-of-array

2 months agoAvoid linear search in cgen_add_dependency
Nick Gasson [Sat, 17 Feb 2024 17:15:55 +0000 (17:15 +0000)]
Avoid linear search in cgen_add_dependency

2 months agoRemove lib_index_kind function
Nick Gasson [Sat, 17 Feb 2024 17:15:38 +0000 (17:15 +0000)]
Remove lib_index_kind function

2 months agoAvoid excessive zeroing in object_marked_p
Nick Gasson [Sat, 17 Feb 2024 11:29:59 +0000 (11:29 +0000)]
Avoid excessive zeroing in object_marked_p

2 months agoFix code generation error with TO_UNSIGNED in case choice
Nick Gasson [Sat, 17 Feb 2024 10:28:46 +0000 (10:28 +0000)]
Fix code generation error with TO_UNSIGNED in case choice

2 months agoFix error when generic value depends on another generic
Nick Gasson [Sat, 17 Feb 2024 09:45:16 +0000 (09:45 +0000)]
Fix error when generic value depends on another generic

Issue #844

2 months agoCompile Vivado libraries for 1993 and 2008 by default
Nick Gasson [Sat, 17 Feb 2024 08:34:49 +0000 (08:34 +0000)]
Compile Vivado libraries for 1993 and 2008 by default

2 months agoTweak format of diagnostic stack traces
Nick Gasson [Thu, 15 Feb 2024 19:52:59 +0000 (19:52 +0000)]
Tweak format of diagnostic stack traces

2 months agoSpeed up pack_writer_get_string by avoiding memmem
Nick Gasson [Wed, 14 Feb 2024 21:53:02 +0000 (21:53 +0000)]
Speed up pack_writer_get_string by avoiding memmem

2 months agoFix uninitialised variable warning in lower_aggregate_bounds
Nick Gasson [Wed, 14 Feb 2024 19:35:08 +0000 (19:35 +0000)]
Fix uninitialised variable warning in lower_aggregate_bounds

2 months agoZStd decompression context is not thread safe
Nick Gasson [Wed, 14 Feb 2024 19:32:27 +0000 (19:32 +0000)]
ZStd decompression context is not thread safe

2 months agoExtend local value numbering to argument slots
Nick Gasson [Tue, 13 Feb 2024 22:15:59 +0000 (22:15 +0000)]
Extend local value numbering to argument slots

2 months agoOnly set target bit on JIT IRs that have branches to them
Nick Gasson [Tue, 13 Feb 2024 21:05:01 +0000 (21:05 +0000)]
Only set target bit on JIT IRs that have branches to them

2 months agoAdjust report and assert message format. Fixes #849
Nick Gasson [Tue, 13 Feb 2024 21:01:05 +0000 (21:01 +0000)]
Adjust report and assert message format. Fixes #849

2 months agoBump OSVVM and UVVM to latest released versions
Nick Gasson [Tue, 13 Feb 2024 18:11:32 +0000 (18:11 +0000)]
Bump OSVVM and UVVM to latest released versions

2 months agoFix crash with external name and component declarations
Nick Gasson [Mon, 12 Feb 2024 22:37:30 +0000 (22:37 +0000)]
Fix crash with external name and component declarations

2 months agoDowngrade purity checks to warning with --relaxed. Issue #848
Nick Gasson [Mon, 12 Feb 2024 21:29:34 +0000 (21:29 +0000)]
Downgrade purity checks to warning with --relaxed. Issue #848

2 months agoMissing error impure function called indirectly via procedure
Nick Gasson [Mon, 12 Feb 2024 21:29:02 +0000 (21:29 +0000)]
Missing error impure function called indirectly via procedure

Issue #848

2 months agoFix incorrect 'last_value result with multiple sources
Nick Gasson [Sat, 10 Feb 2024 12:35:09 +0000 (12:35 +0000)]
Fix incorrect 'last_value result with multiple sources

2 months agoUse a pseudo-source for scheduled deposits
Nick Gasson [Sat, 10 Feb 2024 10:27:00 +0000 (10:27 +0000)]
Use a pseudo-source for scheduled deposits

2 months agoUse a flag bit on rt_signal_t to hold register/bus state
Nick Gasson [Sat, 10 Feb 2024 09:50:06 +0000 (09:50 +0000)]
Use a flag bit on rt_signal_t to hold register/bus state

2 months agoCreate aliases for collapsed signals with globally static bounds
Nick Gasson [Thu, 8 Feb 2024 22:04:36 +0000 (22:04 +0000)]
Create aliases for collapsed signals with globally static bounds

2 months agoImprove error messages when mmap fails
Nick Gasson [Thu, 8 Feb 2024 19:57:00 +0000 (19:57 +0000)]
Improve error messages when mmap fails

2 months agoAllow use of type alias in slice name. Fixes #845
Nick Gasson [Mon, 5 Feb 2024 21:56:32 +0000 (21:56 +0000)]
Allow use of type alias in slice name. Fixes #845

2 months agoRewrite implementation of foreign functions
Nick Gasson [Sun, 4 Feb 2024 12:07:18 +0000 (12:07 +0000)]
Rewrite implementation of foreign functions

Refactoring before adding full VHPIDIRECT support

2 months agoAdd wrapper functions for predefined file operations
Nick Gasson [Sun, 4 Feb 2024 12:40:52 +0000 (12:40 +0000)]
Add wrapper functions for predefined file operations

2 months agoSync NEWS.md from 1.11 branch
Nick Gasson [Sun, 4 Feb 2024 10:20:14 +0000 (10:20 +0000)]
Sync NEWS.md from 1.11 branch

2 months agoAllow port collapsing in component instantiations
Nick Gasson [Sat, 3 Feb 2024 20:25:09 +0000 (20:25 +0000)]
Allow port collapsing in component instantiations

2 months agoSeparate inner and outer block statement for component instantiation
Nick Gasson [Sun, 21 Jan 2024 19:38:37 +0000 (19:38 +0000)]
Separate inner and outer block statement for component instantiation

2 months agoImprove checking for configuration specification
Nick Gasson [Sun, 28 Jan 2024 21:04:01 +0000 (21:04 +0000)]
Improve checking for configuration specification

2 months agoFix incorrect effective value with inout port conversion
Nick Gasson [Sat, 3 Feb 2024 10:41:44 +0000 (10:41 +0000)]
Fix incorrect effective value with inout port conversion

2 months agoCode generation error when component generic references constant string
Nick Gasson [Sat, 3 Feb 2024 10:08:58 +0000 (10:08 +0000)]
Code generation error when component generic references constant string

2 months agoFix download-artifact version in test-osvvm workflow
Nick Gasson [Mon, 29 Jan 2024 18:23:30 +0000 (18:23 +0000)]
Fix download-artifact version in test-osvvm workflow

2 months agoFix deprecation warnings in GitHub Actions workflow
Nick Gasson [Sun, 28 Jan 2024 11:42:37 +0000 (11:42 +0000)]
Fix deprecation warnings in GitHub Actions workflow

2 months agoAvoid multiple evaluation of range bounds
Nick Gasson [Sun, 28 Jan 2024 11:33:16 +0000 (11:33 +0000)]
Avoid multiple evaluation of range bounds

2 months agoOptimise vcode load op in more cases
Nick Gasson [Sun, 28 Jan 2024 11:32:08 +0000 (11:32 +0000)]
Optimise vcode load op in more cases

2 months agoNew approach to translating Verilog modules
Nick Gasson [Sun, 28 Jan 2024 11:27:17 +0000 (11:27 +0000)]
New approach to translating Verilog modules

2 months agoAdjust encoding of Verilog logic values
Nick Gasson [Sat, 27 Jan 2024 16:56:27 +0000 (16:56 +0000)]
Adjust encoding of Verilog logic values

2 months agoAdd support for inertial keyword in port maps. Issue #843
Nick Gasson [Fri, 26 Jan 2024 20:37:25 +0000 (20:37 +0000)]
Add support for inertial keyword in port maps. Issue #843

2 months agoRework implementation of conversions in port maps. Issue #843
Nick Gasson [Fri, 26 Jan 2024 18:05:27 +0000 (18:05 +0000)]
Rework implementation of conversions in port maps. Issue #843

3 months agoFix aggregate bounds calculation with concatenation
Nick Gasson [Sun, 21 Jan 2024 16:10:59 +0000 (16:10 +0000)]
Fix aggregate bounds calculation with concatenation

Fixes #842

3 months agoAdd accelerated SHA1 using ARMv8 crypto extension
Nick Gasson [Fri, 5 Jan 2024 17:39:15 +0000 (17:39 +0000)]
Add accelerated SHA1 using ARMv8 crypto extension

3 months agoFix crash dumping subtype that cannot be represented in FST
Nick Gasson [Fri, 19 Jan 2024 19:49:10 +0000 (19:49 +0000)]
Fix crash dumping subtype that cannot be represented in FST

Issue #840

3 months agoAvoid crash with 'SUBTYPE attribute. Fixes #837
Nick Gasson [Thu, 18 Jan 2024 16:31:30 +0000 (16:31 +0000)]
Avoid crash with 'SUBTYPE attribute. Fixes #837

3 months agoFix error getting resolved value of array-of-record signal
Nick Gasson [Thu, 18 Jan 2024 11:29:57 +0000 (11:29 +0000)]
Fix error getting resolved value of array-of-record signal

Fixes #839

3 months agoUse fatal_trace consistently for internal errors
Nick Gasson [Wed, 17 Jan 2024 21:19:24 +0000 (21:19 +0000)]
Use fatal_trace consistently for internal errors

3 months agoEnsure port map expression has globally static subtype
Nick Gasson [Wed, 17 Jan 2024 20:58:06 +0000 (20:58 +0000)]
Ensure port map expression has globally static subtype

3 months agoCheck prefix of indexed or slice name is a name or function call
Nick Gasson [Wed, 17 Jan 2024 20:42:32 +0000 (20:42 +0000)]
Check prefix of indexed or slice name is a name or function call

Fixes #835

3 months agoAllow the --std option to control which standard the install scripts use
Nick Gasson [Wed, 17 Jan 2024 19:26:13 +0000 (19:26 +0000)]
Allow the --std option to control which standard the install scripts use

Fixes #836

3 months agoFinish implementation of guarded blocks and disconnection specification
Nick Gasson [Tue, 16 Jan 2024 21:58:10 +0000 (21:58 +0000)]
Finish implementation of guarded blocks and disconnection specification

Fixes #829

3 months agoImprove error message with OPEN in generic map
Nick Gasson [Mon, 15 Jan 2024 22:11:12 +0000 (22:11 +0000)]
Improve error message with OPEN in generic map

3 months agoFix crash when generic default value depends on another generic
Nick Gasson [Mon, 15 Jan 2024 21:17:45 +0000 (21:17 +0000)]
Fix crash when generic default value depends on another generic

Fixes #831

3 months agoSimplify logic in lower_direct_mapped_port
Nick Gasson [Mon, 15 Jan 2024 20:24:39 +0000 (20:24 +0000)]
Simplify logic in lower_direct_mapped_port

3 months agoMissing array length check for certain collapsed ports
Nick Gasson [Mon, 15 Jan 2024 18:13:53 +0000 (18:13 +0000)]
Missing array length check for certain collapsed ports

3 months agoMissing check for A_SLICE in build_wait
Nick Gasson [Sat, 13 Jan 2024 20:49:27 +0000 (20:49 +0000)]
Missing check for A_SLICE in build_wait

3 months agoFix integer overflow warning with GCC 12
Nick Gasson [Sat, 13 Jan 2024 20:38:32 +0000 (20:38 +0000)]
Fix integer overflow warning with GCC 12

3 months agoMake tree_assert_kind a no-op on release builds
Nick Gasson [Sat, 13 Jan 2024 19:22:03 +0000 (19:22 +0000)]
Make tree_assert_kind a no-op on release builds

3 months agoAdd separate assoc_kind_t for 2008 slices and concatenations
Nick Gasson [Sat, 13 Jan 2024 19:21:45 +0000 (19:21 +0000)]
Add separate assoc_kind_t for 2008 slices and concatenations

3 months agoRefactor parse rules to avoid use of look_for
Nick Gasson [Sat, 13 Jan 2024 17:39:58 +0000 (17:39 +0000)]
Refactor parse rules to avoid use of look_for

3 months agoCov different top hierarchies (#828)
Blebowski [Sat, 13 Jan 2024 19:29:30 +0000 (14:29 -0500)]
Cov different top hierarchies (#828)

* src: Report multiple top hierarchies in the code coverage report.

* test: Add cover22 for multiple different top hierarchies.

* src: Warn if skipping a coverage scope due to missing source file.

* src: Fix incorrect vararg function.

* nvc: Extend manual with some details on merging.

3 months agoFix memory corruption evaluating aggregate with range association
Nick Gasson [Sat, 13 Jan 2024 12:16:38 +0000 (12:16 +0000)]
Fix memory corruption evaluating aggregate with range association

Issue #827

3 months agoFix incorrect aggregate direction with range association. Fixes #826
Nick Gasson [Fri, 12 Jan 2024 19:32:33 +0000 (19:32 +0000)]
Fix incorrect aggregate direction with range association. Fixes #826

3 months agoConsider aggregate choice expressions when building sensitivity lists
Nick Gasson [Wed, 10 Jan 2024 22:20:05 +0000 (22:20 +0000)]
Consider aggregate choice expressions when building sensitivity lists

Issue #825

3 months agoFurther restrictions on collapsing output ports. Issue #824
Nick Gasson [Mon, 8 Jan 2024 21:29:46 +0000 (21:29 +0000)]
Further restrictions on collapsing output ports. Issue #824

3 months agoParsing for anonymous types in interface declarations
Nick Gasson [Sun, 7 Jan 2024 12:55:40 +0000 (12:55 +0000)]
Parsing for anonymous types in interface declarations

3 months agoOnly call simplify_global once in elab_instance
Nick Gasson [Sun, 7 Jan 2024 10:00:19 +0000 (10:00 +0000)]
Only call simplify_global once in elab_instance

3 months agoSync NEWS.md from 1.11 branch
Nick Gasson [Thu, 4 Jan 2024 20:41:55 +0000 (20:41 +0000)]
Sync NEWS.md from 1.11 branch

3 months agoBump JIT_MAX_ARGS (#822)
sean-anderson-seco [Tue, 2 Jan 2024 21:59:19 +0000 (16:59 -0500)]
Bump JIT_MAX_ARGS (#822)

The mem_initialize procedure in the Lattice MachXO3 behavioural
simulation libraries takes arguments than JIT_MAX_ARGS. Bump
JIT_MAX_ARGS a bit so that this procedure elaborates.

3 months agoFix crash simplifying if-statement. Issue #821
Nick Gasson [Tue, 2 Jan 2024 19:47:24 +0000 (19:47 +0000)]
Fix crash simplifying if-statement. Issue #821

3 months agoFix longest static prefix calculation with constant array reference
Nick Gasson [Tue, 2 Jan 2024 19:31:43 +0000 (19:31 +0000)]
Fix longest static prefix calculation with constant array reference

Fixes #820

3 months agoAdd optimised SHA1 implementation using SSE intrinsics
Nick Gasson [Sat, 30 Dec 2023 22:37:35 +0000 (22:37 +0000)]
Add optimised SHA1 implementation using SSE intrinsics

3 months agoImprove checking for expanded names
Nick Gasson [Sat, 30 Dec 2023 15:43:15 +0000 (15:43 +0000)]
Improve checking for expanded names

3 months agoMore fixes for 2019 improved type generics
Nick Gasson [Sat, 30 Dec 2023 12:41:14 +0000 (12:41 +0000)]
More fixes for 2019 improved type generics

3 months agoAllow alias of type attribute
Nick Gasson [Sat, 30 Dec 2023 11:38:15 +0000 (11:38 +0000)]
Allow alias of type attribute

3 months agoFix crash with aliased enumeration literal in case choice
Nick Gasson [Fri, 29 Dec 2023 20:37:57 +0000 (20:37 +0000)]
Fix crash with aliased enumeration literal in case choice

Fixes #819

3 months agoFix calculation of aggregate bounds with concatenation
Nick Gasson [Fri, 29 Dec 2023 21:21:14 +0000 (21:21 +0000)]
Fix calculation of aggregate bounds with concatenation

3 months agoAdd a simple test for 2019 array type generics
Nick Gasson [Thu, 28 Dec 2023 21:17:17 +0000 (21:17 +0000)]
Add a simple test for 2019 array type generics

3 months agoImplement vhpiIsNullP and vhpiIsDiscreteP for ranges
Nick Gasson [Thu, 28 Dec 2023 19:17:14 +0000 (19:17 +0000)]
Implement vhpiIsNullP and vhpiIsDiscreteP for ranges

4 months agoDo not allow 'VALUE and 'IMAGE for non-scalar types prior to 2019
Nick Gasson [Sat, 23 Dec 2023 21:00:37 +0000 (21:00 +0000)]
Do not allow 'VALUE and 'IMAGE for non-scalar types prior to 2019

4 months agoAvoid illegal characters in design unit file names. Fixes #816
Nick Gasson [Wed, 20 Dec 2023 21:57:03 +0000 (21:57 +0000)]
Avoid illegal characters in design unit file names. Fixes #816

4 months agoIncorrect length check for non-static port map actual. Fixes #817
Nick Gasson [Wed, 20 Dec 2023 18:37:25 +0000 (18:37 +0000)]
Incorrect length check for non-static port map actual. Fixes #817

4 months agoUse lower_get_type_bounds in more places
Nick Gasson [Mon, 18 Dec 2023 20:13:13 +0000 (20:13 +0000)]
Use lower_get_type_bounds in more places

4 months agoAvoid repeated bounds evaluation for array-of-array
Nick Gasson [Sat, 16 Dec 2023 21:45:02 +0000 (21:45 +0000)]
Avoid repeated bounds evaluation for array-of-array

4 months agoSync NEWS.md from 1.11 branch
Nick Gasson [Sat, 16 Dec 2023 14:54:50 +0000 (14:54 +0000)]
Sync NEWS.md from 1.11 branch

4 months agoInclude Git SHA in version output when no tags available
Nick Gasson [Sat, 16 Dec 2023 10:52:40 +0000 (10:52 +0000)]
Include Git SHA in version output when no tags available

Fixes #813

4 months agoFix crash when subtype bounds depend on package instance generic
Nick Gasson [Wed, 13 Dec 2023 22:31:38 +0000 (22:31 +0000)]
Fix crash when subtype bounds depend on package instance generic

Fixes #815

4 months agoCorrect 'VALUE behaviour for arrays of character literals
Nick Gasson [Wed, 13 Dec 2023 21:37:14 +0000 (21:37 +0000)]
Correct 'VALUE behaviour for arrays of character literals