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

4 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

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

4 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

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

4 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

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

4 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

4 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

4 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

4 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

4 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

4 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

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

4 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

4 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

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

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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

5 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

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

5 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

5 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

5 months agoFixes for 32-bit Windows
Nick Gasson [Tue, 7 Nov 2023 21:02:46 +0000 (21:02 +0000)]
Fixes for 32-bit Windows

5 months agoRemove .eslintignore file
Nick Gasson [Mon, 6 Nov 2023 22:34:53 +0000 (22:34 +0000)]
Remove .eslintignore file

5 months agoAdd an experimental browser-based GUI
Nick Gasson [Fri, 9 Jun 2023 11:36:41 +0000 (12:36 +0100)]
Add an experimental browser-based GUI

5 months agoBump GitHub Actions macOS runner to macos-12
Nick Gasson [Sat, 4 Nov 2023 17:47:34 +0000 (17:47 +0000)]
Bump GitHub Actions macOS runner to macos-12

5 months agoRemove MicroHTTP dependency for WebSocket server
Nick Gasson [Sat, 4 Nov 2023 13:55:04 +0000 (13:55 +0000)]
Remove MicroHTTP dependency for WebSocket server

5 months agoAdd NEVER_WAITS attribute for some VITAL procedures
Nick Gasson [Fri, 3 Nov 2023 21:45:36 +0000 (21:45 +0000)]
Add NEVER_WAITS attribute for some VITAL procedures

6 months agoWrong data passed to 'VALUE attribute. Fixes #790
Nick Gasson [Fri, 3 Nov 2023 09:13:15 +0000 (09:13 +0000)]
Wrong data passed to 'VALUE attribute. Fixes #790

6 months agoWorkarounds for slow emulated TLS on MinGW
Nick Gasson [Thu, 2 Nov 2023 22:26:25 +0000 (22:26 +0000)]
Workarounds for slow emulated TLS on MinGW

6 months agoCreate drivers for procedure arguments with mode view indications
Nick Gasson [Thu, 2 Nov 2023 20:44:00 +0000 (20:44 +0000)]
Create drivers for procedure arguments with mode view indications

6 months agoSemantic checks for procedure parameters with mode view indication
Nick Gasson [Wed, 1 Nov 2023 22:45:48 +0000 (22:45 +0000)]
Semantic checks for procedure parameters with mode view indication

6 months agoFix crash with assignment to null signal. Fixes #787
Nick Gasson [Wed, 1 Nov 2023 19:59:32 +0000 (19:59 +0000)]
Fix crash with assignment to null signal. Fixes #787

6 months agoFix-up merging of non-matching coverage items and scopes. (#785)
Blebowski [Wed, 1 Nov 2023 19:48:57 +0000 (20:48 +0100)]
Fix-up merging of non-matching coverage items and scopes. (#785)

6 months agoCheck for and warn about emulated thread-local storage
Nick Gasson [Tue, 31 Oct 2023 18:59:58 +0000 (18:59 +0000)]
Check for and warn about emulated thread-local storage

6 months agoEscape backslash in symbol name on Windows
Nick Gasson [Tue, 31 Oct 2023 18:56:21 +0000 (18:56 +0000)]
Escape backslash in symbol name on Windows

6 months agoAdd NEVER_WAITS attribute to optimise code generation for procedures
Nick Gasson [Tue, 31 Oct 2023 17:20:36 +0000 (17:20 +0000)]
Add NEVER_WAITS attribute to optimise code generation for procedures

6 months agoAdd specialised exit handler for 'last_event
Nick Gasson [Tue, 31 Oct 2023 15:10:50 +0000 (15:10 +0000)]
Add specialised exit handler for 'last_event

6 months agoAdd specialised foreign calling convention for internal routines
Nick Gasson [Tue, 31 Oct 2023 14:39:55 +0000 (14:39 +0000)]
Add specialised foreign calling convention for internal routines

6 months agoFix occasional JIT compilation failure due to too-small code buffer
Nick Gasson [Tue, 31 Oct 2023 12:19:43 +0000 (12:19 +0000)]
Fix occasional JIT compilation failure due to too-small code buffer

6 months agoAdd intrinsics for more IEEE.MATH_REAL operations
Nick Gasson [Mon, 30 Oct 2023 20:37:26 +0000 (20:37 +0000)]
Add intrinsics for more IEEE.MATH_REAL operations

6 months agoSubprogram specification/body wrong way round in diagnostic hint
Nick Gasson [Mon, 30 Oct 2023 20:04:58 +0000 (20:04 +0000)]
Subprogram specification/body wrong way round in diagnostic hint

6 months agoElaborate external name in alias declaration exactly once
Nick Gasson [Sun, 29 Oct 2023 22:51:38 +0000 (22:51 +0000)]
Elaborate external name in alias declaration exactly once

6 months agoCheck relative pathname for enclosing concurrent region
Nick Gasson [Sun, 29 Oct 2023 20:28:24 +0000 (20:28 +0000)]
Check relative pathname for enclosing concurrent region