]> git.nickg.me.uk Git - nvc.git/log
nvc.git
4 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

4 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

4 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

4 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

4 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

4 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

4 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

4 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.

4 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

4 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

4 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

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

4 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

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

4 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

4 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

4 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

4 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

5 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

5 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

5 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

5 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

5 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

5 months agoAvoid multiple evaluation of subtype bounds
Nick Gasson [Wed, 6 Dec 2023 11:10:53 +0000 (11:10 +0000)]
Avoid multiple evaluation of subtype bounds

5 months agovhpi: Support types from package instances (#814)
sean-anderson-seco [Tue, 12 Dec 2023 18:34:04 +0000 (13:34 -0500)]
vhpi: Support types from package instances (#814)

Search declarations as well as statements so we can find package
instances. This allows VHPI to use signals which have types defined in
package instances.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
5 months agoReport error when object has unconstrained generic type
Nick Gasson [Sun, 10 Dec 2023 15:30:17 +0000 (15:30 +0000)]
Report error when object has unconstrained generic type

5 months agoAdd new module to handle instancing
Nick Gasson [Sun, 10 Dec 2023 15:04:26 +0000 (15:04 +0000)]
Add new module to handle instancing

5 months agoRemove vcode serialisation
Nick Gasson [Sat, 9 Dec 2023 18:24:50 +0000 (18:24 +0000)]
Remove vcode serialisation

5 months agoMake --jit work without --no-save
Nick Gasson [Sat, 9 Dec 2023 17:51:09 +0000 (17:51 +0000)]
Make --jit work without --no-save

5 months agoRestore interpreter-only mode
Nick Gasson [Sat, 9 Dec 2023 16:36:00 +0000 (16:36 +0000)]
Restore interpreter-only mode

5 months agoPass unit_registry_t instance into TCL shell
Nick Gasson [Fri, 8 Dec 2023 12:33:03 +0000 (12:33 +0000)]
Pass unit_registry_t instance into TCL shell

5 months agoCorrect type check in lower_port_ref
Nick Gasson [Thu, 7 Dec 2023 21:11:48 +0000 (21:11 +0000)]
Correct type check in lower_port_ref

5 months agoFix crash when simplifying if-statement. Issue #812
Nick Gasson [Thu, 7 Dec 2023 20:45:18 +0000 (20:45 +0000)]
Fix crash when simplifying if-statement. Issue #812

5 months agoBump version to 1.12-devel
Nick Gasson [Thu, 7 Dec 2023 19:48:13 +0000 (19:48 +0000)]
Bump version to 1.12-devel

5 months agoUpdate for 1.11 release r1.11.0
Nick Gasson [Wed, 6 Dec 2023 20:43:40 +0000 (20:43 +0000)]
Update for 1.11 release

5 months agoMissing length check for string literal
Nick Gasson [Tue, 5 Dec 2023 21:40:41 +0000 (21:40 +0000)]
Missing length check for string literal

5 months agoFix crash elaborating port map
Nick Gasson [Tue, 5 Dec 2023 20:51:48 +0000 (20:51 +0000)]
Fix crash elaborating port map

5 months agoCall TCL_Init on TCL interpreter object
Nick Gasson [Tue, 5 Dec 2023 20:22:20 +0000 (20:22 +0000)]
Call TCL_Init on TCL interpreter object

5 months agoFix regression passing unconstrained port to procedure
Nick Gasson [Mon, 4 Dec 2023 21:34:56 +0000 (21:34 +0000)]
Fix regression passing unconstrained port to procedure

5 months agoBuild VHPI subtypes dynamically for unconstrained ports and generics
Nick Gasson [Sun, 3 Dec 2023 11:00:27 +0000 (11:00 +0000)]
Build VHPI subtypes dynamically for unconstrained ports and generics

5 months agoFix crash with generic SFIXED example. Fixes #809
Nick Gasson [Sat, 2 Dec 2023 10:20:20 +0000 (10:20 +0000)]
Fix crash with generic SFIXED example. Fixes #809

5 months agoConstrain ports during code generation. Fixes #809
Nick Gasson [Fri, 1 Dec 2023 19:53:09 +0000 (19:53 +0000)]
Constrain ports during code generation. Fixes #809

5 months agoFix 'SUBTYPE for array-of-record
Nick Gasson [Thu, 30 Nov 2023 21:23:39 +0000 (21:23 +0000)]
Fix 'SUBTYPE for array-of-record

5 months agoArithmetic identities for **
Nick Gasson [Thu, 30 Nov 2023 21:23:39 +0000 (21:23 +0000)]
Arithmetic identities for **

5 months agoSimplify logic in lower_ports
Nick Gasson [Thu, 30 Nov 2023 21:23:39 +0000 (21:23 +0000)]
Simplify logic in lower_ports

5 months agoFix argument order to lower_check_array_sizes
Nick Gasson [Thu, 30 Nov 2023 21:23:39 +0000 (21:23 +0000)]
Fix argument order to lower_check_array_sizes

5 months agoCorrect VHDL-2008 rules for globally static attributes
Nick Gasson [Thu, 30 Nov 2023 21:23:39 +0000 (21:23 +0000)]
Correct VHDL-2008 rules for globally static attributes

5 months agoAdd separate entry point for scheduling process after delay
Nick Gasson [Wed, 29 Nov 2023 21:50:24 +0000 (21:50 +0000)]
Add separate entry point for scheduling process after delay

5 months agoAvoid an extra runtime call when suspending procedure
Nick Gasson [Wed, 29 Nov 2023 19:46:33 +0000 (19:46 +0000)]
Avoid an extra runtime call when suspending procedure

5 months agoDisable reflect5 test on FreeBSD
Nick Gasson [Mon, 27 Nov 2023 09:14:52 +0000 (09:14 +0000)]
Disable reflect5 test on FreeBSD

No way to get path from file descriptor

5 months agoAvoid calling VirtualProtect on zero length region. Issue #807
Nick Gasson [Sun, 26 Nov 2023 19:51:49 +0000 (19:51 +0000)]
Avoid calling VirtualProtect on zero length region. Issue #807

5 months agoAdd nvc_decommit to free committed pages
Nick Gasson [Sun, 26 Nov 2023 19:56:38 +0000 (19:56 +0000)]
Add nvc_decommit to free committed pages

5 months agoFix for random macOS dependency install failure
Nick Gasson [Sun, 26 Nov 2023 19:33:42 +0000 (19:33 +0000)]
Fix for random macOS dependency install failure

5 months agoAvoid bounds check failure on never-taken branch
Nick Gasson [Sun, 26 Nov 2023 18:26:56 +0000 (18:26 +0000)]
Avoid bounds check failure on never-taken branch

Fixes #806

5 months agoAdd support for Verilog unary ~ and ! operators
Nick Gasson [Sun, 26 Nov 2023 13:59:59 +0000 (13:59 +0000)]
Add support for Verilog unary ~ and ! operators

5 months agoAllow stdin as source of analysis file list
Nick Gasson [Sun, 26 Nov 2023 09:09:32 +0000 (09:09 +0000)]
Allow stdin as source of analysis file list

5 months agoFix parsing ABS followed by **. Fixes #805
Nick Gasson [Sun, 26 Nov 2023 08:58:42 +0000 (08:58 +0000)]
Fix parsing ABS followed by **. Fixes #805

5 months agoAvoid unnecessary comparisons in jit_attach_thread
Nick Gasson [Fri, 24 Nov 2023 17:41:57 +0000 (17:41 +0000)]
Avoid unnecessary comparisons in jit_attach_thread

5 months agoAvoid repeated calls to NOW in VitalGlitch
Nick Gasson [Fri, 24 Nov 2023 17:16:41 +0000 (17:16 +0000)]
Avoid repeated calls to NOW in VitalGlitch

5 months agoAdd more never_waits attributes to VITAL procedures
Nick Gasson [Fri, 24 Nov 2023 17:10:42 +0000 (17:10 +0000)]
Add more never_waits attributes to VITAL procedures

5 months agoOnly allow 'VALUE for one-dimensional arrays prior to 2019
Nick Gasson [Thu, 23 Nov 2023 22:07:28 +0000 (22:07 +0000)]
Only allow 'VALUE for one-dimensional arrays prior to 2019

5 months agoHook up __nvc_last_event
Nick Gasson [Thu, 23 Nov 2023 21:54:36 +0000 (21:54 +0000)]
Hook up __nvc_last_event

5 months agoTidy up logic in p_concurrent_statement
Nick Gasson [Wed, 22 Nov 2023 21:34:54 +0000 (21:34 +0000)]
Tidy up logic in p_concurrent_statement

5 months agoSplit PSL declarations from directives. Fixes #803
Nick Gasson [Wed, 22 Nov 2023 21:22:06 +0000 (21:22 +0000)]
Split PSL declarations from directives. Fixes #803

5 months agoFix crash with type alias in implicit condition conversion
Nick Gasson [Wed, 22 Nov 2023 19:57:34 +0000 (19:57 +0000)]
Fix crash with type alias in implicit condition conversion

Fixes #802

5 months agoAdd warning for predefined array comparisons with different lengths
Nick Gasson [Tue, 21 Nov 2023 19:21:29 +0000 (19:21 +0000)]
Add warning for predefined array comparisons with different lengths

Fixes #800

5 months agoFix crash with type alias and string literal
Nick Gasson [Tue, 21 Nov 2023 18:48:02 +0000 (18:48 +0000)]
Fix crash with type alias and string literal

Fixes #801

5 months agoWorkaround for macOS GitHub Actions failure
Nick Gasson [Tue, 21 Nov 2023 19:57:02 +0000 (19:57 +0000)]
Workaround for macOS GitHub Actions failure

5 months agoFix wrong result bounds when TO_UNSIGNED is constant folded
Nick Gasson [Mon, 20 Nov 2023 21:09:00 +0000 (21:09 +0000)]
Fix wrong result bounds when TO_UNSIGNED is constant folded

Fixes #799

5 months agoDisable __builtin_setjmp with Clang
Nick Gasson [Mon, 20 Nov 2023 17:51:01 +0000 (17:51 +0000)]
Disable __builtin_setjmp with Clang

Fixes #796

5 months agoCover functional exclude (#798)
Blebowski [Sun, 19 Nov 2023 20:43:52 +0000 (15:43 -0500)]
Cover functional exclude (#798)

* src: Fix forgotten loc when COVER_DEBUG_EMIT is enabled.

* src: Add exclude support for functional cover points.

* src: Add exclude button to functional cover points.

5 months agoBasic functional coverage from PSL cover directive
Nick Gasson [Sun, 19 Nov 2023 16:28:42 +0000 (16:28 +0000)]
Basic functional coverage from PSL cover directive

Issue #795

5 months agoRevert to using the old array macros in cov/
Nick Gasson [Sun, 19 Nov 2023 15:34:49 +0000 (15:34 +0000)]
Revert to using the old array macros in cov/

5 months agoMake cover_add_item take a generic object_t pointer
Nick Gasson [Sun, 19 Nov 2023 15:05:23 +0000 (15:05 +0000)]
Make cover_add_item take a generic object_t pointer

5 months agoDo not store tree kind directly in coverage database
Nick Gasson [Sun, 19 Nov 2023 15:00:00 +0000 (15:00 +0000)]
Do not store tree kind directly in coverage database

5 months agoAdd basic support for PSL cover directives
Nick Gasson [Sat, 18 Nov 2023 19:54:01 +0000 (19:54 +0000)]
Add basic support for PSL cover directives

Issue #795

6 months agoAvoid unnecessary scalar conversions
Nick Gasson [Fri, 17 Nov 2023 22:41:57 +0000 (22:41 +0000)]
Avoid unnecessary scalar conversions

6 months agoRemove unused solve_param function
Nick Gasson [Fri, 17 Nov 2023 21:08:29 +0000 (21:08 +0000)]
Remove unused solve_param function

6 months agoImprove handling of implicit literal conversions
Nick Gasson [Thu, 16 Nov 2023 22:28:47 +0000 (22:28 +0000)]
Improve handling of implicit literal conversions

6 months agoSimplify handling of implicit condition conversion
Nick Gasson [Wed, 15 Nov 2023 19:43:56 +0000 (19:43 +0000)]
Simplify handling of implicit condition conversion

6 months agoFix check for entity name in absolute external pathnames
Nick Gasson [Wed, 15 Nov 2023 22:17:20 +0000 (22:17 +0000)]
Fix check for entity name in absolute external pathnames

Fixes #794

6 months agoSingle elaboration function for Verilog and VHDL
Nick Gasson [Sun, 12 Nov 2023 21:00:08 +0000 (21:00 +0000)]
Single elaboration function for Verilog and VHDL

6 months agoAdd side-channel for passing JSON objects from TCL to GUI
Nick Gasson [Sun, 12 Nov 2023 20:28:31 +0000 (20:28 +0000)]
Add side-channel for passing JSON objects from TCL to GUI

6 months agoAdd TCL describe command to query object properties
Nick Gasson [Sun, 12 Nov 2023 15:07:45 +0000 (15:07 +0000)]
Add TCL describe command to query object properties

6 months agoAdd some initial support for Windows on Arm64
Nick Gasson [Sun, 12 Nov 2023 10:50:45 +0000 (10:50 +0000)]
Add some initial support for Windows on Arm64

6 months agoImprove overload resolution for partial associations. Fixes #793
Nick Gasson [Sun, 12 Nov 2023 10:01:21 +0000 (10:01 +0000)]
Improve overload resolution for partial associations. Fixes #793

6 months agoImprove error when architecture name hides object
Nick Gasson [Thu, 9 Nov 2023 22:18:47 +0000 (22:18 +0000)]
Improve error when architecture name hides object

Fixes #789

6 months agoAdd a --port option to set GUI port number
Nick Gasson [Thu, 9 Nov 2023 21:37:22 +0000 (21:37 +0000)]
Add a --port option to set GUI port number

6 months agoLimit maximum size of stack allocations to 64kB
Nick Gasson [Wed, 8 Nov 2023 21:39:53 +0000 (21:39 +0000)]
Limit maximum size of stack allocations to 64kB

Fixes #791

6 months agoServe static files using binary mode
Nick Gasson [Wed, 8 Nov 2023 21:38:47 +0000 (21:38 +0000)]
Serve static files using binary mode

6 months agoUse memset for aggregates with repeating string literals
Nick Gasson [Wed, 8 Nov 2023 21:31:25 +0000 (21:31 +0000)]
Use memset for aggregates with repeating string literals

6 months agoCrash with alias of protected type in VHDL-2002
Nick Gasson [Wed, 8 Nov 2023 19:20:50 +0000 (19:20 +0000)]
Crash with alias of protected type in VHDL-2002

Fixes #792

6 months agoUse GCC builtin setjmp/longjmp where available
Nick Gasson [Wed, 8 Nov 2023 19:08:04 +0000 (19:08 +0000)]
Use GCC builtin setjmp/longjmp where available

6 months agoSimplify vcode dump callback
Nick Gasson [Wed, 8 Nov 2023 19:08:04 +0000 (19:08 +0000)]
Simplify vcode dump callback

6 months agoRemove implicit argument from some vcode_* functions
Nick Gasson [Wed, 8 Nov 2023 19:08:04 +0000 (19:08 +0000)]
Remove implicit argument from some vcode_* functions

6 months agoFixes for GUI and build warnings on Windows. Issue #786
Nick Gasson [Tue, 7 Nov 2023 22:14:03 +0000 (22:14 +0000)]
Fixes for GUI and build warnings on Windows. Issue #786