]> Nick Gasson's Git Repositories - nvc.git/log
nvc.git
15 months agoWrong name mangling with nested function inside unlabelled process
Nick Gasson [Thu, 24 Aug 2023 19:13:05 +0000 (20:13 +0100)]
Wrong name mangling with nested function inside unlabelled process

Issue #751

15 months agoLock around call to unit_registry_get in jit_fill_irbuf
Nick Gasson [Thu, 24 Aug 2023 16:11:00 +0000 (17:11 +0100)]
Lock around call to unit_registry_get in jit_fill_irbuf

15 months agoStore declarations with protected type tree_t
Nick Gasson [Wed, 23 Aug 2023 21:11:18 +0000 (22:11 +0100)]
Store declarations with protected type tree_t

15 months agoIntroduce a dedicated tree type for protected type declarations
Nick Gasson [Wed, 23 Aug 2023 20:50:22 +0000 (21:50 +0100)]
Introduce a dedicated tree type for protected type declarations

15 months agoAdd a test for dumping protected types
Nick Gasson [Wed, 23 Aug 2023 16:48:39 +0000 (17:48 +0100)]
Add a test for dumping protected types

15 months agoWarning instead of error when default binding fails for a component
Nick Gasson [Wed, 23 Aug 2023 11:02:34 +0000 (12:02 +0100)]
Warning instead of error when default binding fails for a component

15 months agoConvert scalar fields during record conversion
Nick Gasson [Tue, 22 Aug 2023 15:48:48 +0000 (16:48 +0100)]
Convert scalar fields during record conversion

15 months agoImplement closely related record types
Nick Gasson [Tue, 22 Aug 2023 15:12:32 +0000 (16:12 +0100)]
Implement closely related record types

15 months agoSync NEWS.md from 1.10 branch
Nick Gasson [Sun, 20 Aug 2023 12:01:49 +0000 (13:01 +0100)]
Sync NEWS.md from 1.10 branch

15 months agoCorrect Ubuntu version in release package matrix
Nick Gasson [Sun, 20 Aug 2023 11:40:00 +0000 (12:40 +0100)]
Correct Ubuntu version in release package matrix

15 months agoRepurpose MSYS2 package workflow as generic release package workflow
Nick Gasson [Sun, 20 Aug 2023 11:17:43 +0000 (12:17 +0100)]
Repurpose MSYS2 package workflow as generic release package workflow

15 months agoReplace "convstr" opcode with a pure VHDL implementation
Nick Gasson [Sun, 20 Aug 2023 10:01:31 +0000 (11:01 +0100)]
Replace "convstr" opcode with a pure VHDL implementation

15 months agoFix stack corruption when function returns pointer to its argument
Nick Gasson [Sun, 20 Aug 2023 09:51:33 +0000 (10:51 +0100)]
Fix stack corruption when function returns pointer to its argument

15 months agoBranch over concatenation in assert message
Nick Gasson [Thu, 17 Aug 2023 21:33:40 +0000 (22:33 +0100)]
Branch over concatenation in assert message

15 months agoReplace the "strconv" opcode with a pure VHDL implementation
Nick Gasson [Thu, 17 Aug 2023 21:22:45 +0000 (22:22 +0100)]
Replace the "strconv" opcode with a pure VHDL implementation

15 months agoRemove a debugging report statement from std_logic ?<= operator
Nick Gasson [Wed, 16 Aug 2023 20:00:45 +0000 (21:00 +0100)]
Remove a debugging report statement from std_logic ?<= operator

15 months agoImprove test of Verilog dumping
Nick Gasson [Wed, 16 Aug 2023 19:28:54 +0000 (20:28 +0100)]
Improve test of Verilog dumping

15 months agoStore Verilog vector dimensions in AST
Nick Gasson [Wed, 16 Aug 2023 19:14:03 +0000 (20:14 +0100)]
Store Verilog vector dimensions in AST

15 months agoCheck target of Verilog continuous/procedural assignment
Nick Gasson [Wed, 16 Aug 2023 17:37:01 +0000 (18:37 +0100)]
Check target of Verilog continuous/procedural assignment

15 months agoImprove checking for LCS2016_04 changes
Nick Gasson [Tue, 15 Aug 2023 19:59:33 +0000 (20:59 +0100)]
Improve checking for LCS2016_04 changes

15 months agoParse empty bit string literals
Nick Gasson [Tue, 15 Aug 2023 19:18:42 +0000 (20:18 +0100)]
Parse empty bit string literals

15 months agoImprove checking for LCS2016_002 changes
Nick Gasson [Mon, 14 Aug 2023 08:38:12 +0000 (09:38 +0100)]
Improve checking for LCS2016_002 changes

15 months agoDo not collapse ports which are driven from generate statements
Nick Gasson [Mon, 14 Aug 2023 07:34:44 +0000 (08:34 +0100)]
Do not collapse ports which are driven from generate statements

15 months agoReplace "canon value" opcode with pure VHDL implementation
Nick Gasson [Sun, 13 Aug 2023 18:28:57 +0000 (19:28 +0100)]
Replace "canon value" opcode with pure VHDL implementation

15 months agoCollapse output ports in restricted circumstances
Nick Gasson [Sun, 13 Aug 2023 09:18:21 +0000 (10:18 +0100)]
Collapse output ports in restricted circumstances

15 months agoSplit out driver extraction into a separate module
Nick Gasson [Sat, 12 Aug 2023 09:03:08 +0000 (10:03 +0100)]
Split out driver extraction into a separate module

15 months agoImprove error checking for configuration specifications
Nick Gasson [Sat, 12 Aug 2023 20:33:07 +0000 (21:33 +0100)]
Improve error checking for configuration specifications

15 months agoRemove unused vtype_includes function
Nick Gasson [Sat, 12 Aug 2023 18:16:54 +0000 (19:16 +0100)]
Remove unused vtype_includes function

15 months agoDelete dead code in emit_record_ref
Nick Gasson [Sat, 12 Aug 2023 18:14:33 +0000 (19:14 +0100)]
Delete dead code in emit_record_ref

15 months agoOptimise caching in private_scope_for
Nick Gasson [Sat, 12 Aug 2023 18:08:12 +0000 (19:08 +0100)]
Optimise caching in private_scope_for

15 months agoFix memory leak in name table
Nick Gasson [Sat, 12 Aug 2023 17:50:58 +0000 (18:50 +0100)]
Fix memory leak in name table

15 months agoRewrite orphan-tests.rb as a make target
Nick Gasson [Sat, 12 Aug 2023 10:22:54 +0000 (11:22 +0100)]
Rewrite orphan-tests.rb as a make target

15 months agoFix regression of vhpi9 test case
Nick Gasson [Sat, 12 Aug 2023 10:28:43 +0000 (11:28 +0100)]
Fix regression of vhpi9 test case

15 months agoRelax library requirement on configurations
Nick Gasson [Fri, 11 Aug 2023 21:36:04 +0000 (22:36 +0100)]
Relax library requirement on configurations

VHDL-2019 feature

15 months agoAdd a regression test for another driver corner case
Nick Gasson [Sat, 12 Aug 2023 09:48:58 +0000 (10:48 +0100)]
Add a regression test for another driver corner case

15 months agoRemove global scope cache
Nick Gasson [Sat, 12 Aug 2023 09:48:06 +0000 (10:48 +0100)]
Remove global scope cache

15 months agoSplit Ubuntu package build into separate workflow step
Nick Gasson [Fri, 11 Aug 2023 17:57:20 +0000 (18:57 +0100)]
Split Ubuntu package build into separate workflow step

15 months agoRefactor parsing of use clauses
Nick Gasson [Fri, 11 Aug 2023 17:57:20 +0000 (18:57 +0100)]
Refactor parsing of use clauses

15 months agoUse clause tree_t should point at container rather than library
Nick Gasson [Fri, 11 Aug 2023 17:57:20 +0000 (18:57 +0100)]
Use clause tree_t should point at container rather than library

15 months agoAdd a test case for issue #750
Nick Gasson [Wed, 9 Aug 2023 19:37:36 +0000 (20:37 +0100)]
Add a test case for issue #750

15 months agoFix error with use clause for instantiated package
Nick Gasson [Wed, 9 Aug 2023 19:27:18 +0000 (20:27 +0100)]
Fix error with use clause for instantiated package

15 months agoFix error with others => association in generic map with generic type
Nick Gasson [Wed, 9 Aug 2023 19:04:24 +0000 (20:04 +0100)]
Fix error with others => association in generic map with generic type

15 months agoAllow partially connected vectors on port map in VHDL-2019
Nick Gasson [Tue, 8 Aug 2023 21:10:16 +0000 (22:10 +0100)]
Allow partially connected vectors on port map in VHDL-2019

15 months agoImplement 'VALUE for character arrays
Nick Gasson [Mon, 7 Aug 2023 08:17:26 +0000 (09:17 +0100)]
Implement 'VALUE for character arrays

15 months agoMissing array bounds check for composite 'VALUE result
Nick Gasson [Sun, 6 Aug 2023 21:02:14 +0000 (22:02 +0100)]
Missing array bounds check for composite 'VALUE result

15 months agoImplement 'VALUE for composite types
Nick Gasson [Sun, 6 Aug 2023 19:49:24 +0000 (20:49 +0100)]
Implement 'VALUE for composite types

15 months agoImplement TO_STRING and 'IMAGE for composite types
Nick Gasson [Sun, 6 Aug 2023 15:43:47 +0000 (16:43 +0100)]
Implement TO_STRING and 'IMAGE for composite types

15 months agoAvoid unaligned loads in jit_lvn_copy
Nick Gasson [Sun, 6 Aug 2023 09:13:51 +0000 (10:13 +0100)]
Avoid unaligned loads in jit_lvn_copy

15 months agoAvoid integer overflow when checking array case choices
Nick Gasson [Sun, 6 Aug 2023 09:04:19 +0000 (10:04 +0100)]
Avoid integer overflow when checking array case choices

15 months agoLazy code generation for subprograms
Nick Gasson [Sat, 5 Aug 2023 20:55:38 +0000 (21:55 +0100)]
Lazy code generation for subprograms

15 months agoInclude STD.REFLECTION in preload library
Nick Gasson [Sat, 5 Aug 2023 09:30:02 +0000 (10:30 +0100)]
Include STD.REFLECTION in preload library

15 months agoFold constant vcode "not" operations
Nick Gasson [Sat, 5 Aug 2023 09:28:30 +0000 (10:28 +0100)]
Fold constant vcode "not" operations

15 months agoBetter process to determine which units need variables on stack
Nick Gasson [Sat, 5 Aug 2023 09:27:54 +0000 (10:27 +0100)]
Better process to determine which units need variables on stack

15 months agoCheck for side effects in assert severity expression
Nick Gasson [Fri, 4 Aug 2023 20:39:24 +0000 (21:39 +0100)]
Check for side effects in assert severity expression

15 months agoImplement get/set textio read severity level
Nick Gasson [Fri, 4 Aug 2023 20:12:52 +0000 (21:12 +0100)]
Implement get/set textio read severity level

15 months agoImplement GetVhdlAssertFormat
Nick Gasson [Fri, 4 Aug 2023 19:56:00 +0000 (20:56 +0100)]
Implement GetVhdlAssertFormat

15 months agoAdd VHDL-2019 assert format API
Nick Gasson [Fri, 4 Aug 2023 17:08:34 +0000 (18:08 +0100)]
Add VHDL-2019 assert format API

15 months agoVHDL2019 assert api - partial (#748)
Blebowski [Fri, 4 Aug 2023 08:32:47 +0000 (04:32 -0400)]
VHDL2019 assert api - partial (#748)

15 months agoImplement DIR_DELETEDIR
Nick Gasson [Wed, 2 Aug 2023 20:14:36 +0000 (21:14 +0100)]
Implement DIR_DELETEDIR

15 months agoRemove interpreter backedge limit
Nick Gasson [Mon, 31 Jul 2023 20:52:57 +0000 (21:52 +0100)]
Remove interpreter backedge limit

15 months agoRemove "mode" global variable from lower.c
Nick Gasson [Mon, 31 Jul 2023 19:24:56 +0000 (20:24 +0100)]
Remove "mode" global variable from lower.c

15 months agoArray bounds check incorrectly optimised out. Fixes #747
Nick Gasson [Mon, 31 Jul 2023 17:34:13 +0000 (18:34 +0100)]
Array bounds check incorrectly optimised out. Fixes #747

15 months agoImplement DIR_OPEN and DIR_CLOSE
Nick Gasson [Sun, 30 Jul 2023 21:34:55 +0000 (22:34 +0100)]
Implement DIR_OPEN and DIR_CLOSE

15 months agoImplement DIR_DELETEFILE from VHDL-2019
Nick Gasson [Sun, 30 Jul 2023 20:15:56 +0000 (21:15 +0100)]
Implement DIR_DELETEFILE from VHDL-2019

15 months agoFix crash when reflecting integer subtypes
Nick Gasson [Sun, 30 Jul 2023 17:49:46 +0000 (18:49 +0100)]
Fix crash when reflecting integer subtypes

15 months agoImplement LCS2016_007 sequential block statements
Nick Gasson [Sun, 30 Jul 2023 17:17:59 +0000 (18:17 +0100)]
Implement LCS2016_007 sequential block statements

15 months agoReflection for physical and protected types
Nick Gasson [Sun, 30 Jul 2023 14:59:20 +0000 (15:59 +0100)]
Reflection for physical and protected types

15 months agoReflection for access types
Nick Gasson [Sun, 30 Jul 2023 11:10:11 +0000 (12:10 +0100)]
Reflection for access types

15 months agoImplement reflection for files
Nick Gasson [Sun, 30 Jul 2023 10:29:29 +0000 (11:29 +0100)]
Implement reflection for files

15 months agoReflection for unconstrained record elements
Nick Gasson [Sat, 29 Jul 2023 21:05:20 +0000 (22:05 +0100)]
Reflection for unconstrained record elements

15 months agoReflection for record types with array elements
Nick Gasson [Sat, 29 Jul 2023 19:11:11 +0000 (20:11 +0100)]
Reflection for record types with array elements

15 months agoFix memory leak when parsing configurations
Nick Gasson [Sat, 29 Jul 2023 15:53:02 +0000 (16:53 +0100)]
Fix memory leak when parsing configurations

15 months agoReturn identifiers directly from lexer
Nick Gasson [Sat, 29 Jul 2023 15:50:25 +0000 (16:50 +0100)]
Return identifiers directly from lexer

15 months agoPrinting for strings and physical types
Nick Gasson [Sat, 29 Jul 2023 08:03:28 +0000 (09:03 +0100)]
Printing for strings and physical types

15 months agoSync NEWS.md from 1.10 branch
Nick Gasson [Fri, 28 Jul 2023 21:47:07 +0000 (22:47 +0100)]
Sync NEWS.md from 1.10 branch

15 months agoEncode signal values as strings in update events
Nick Gasson [Fri, 28 Jul 2023 21:42:56 +0000 (22:42 +0100)]
Encode signal values as strings in update events

15 months agoAvoid name-based lookup for type declaration design unit in VHPI
Nick Gasson [Fri, 28 Jul 2023 08:26:12 +0000 (09:26 +0100)]
Avoid name-based lookup for type declaration design unit in VHPI

Fixes #744

15 months agoRead simple scalar record elements through reflection
Nick Gasson [Thu, 27 Jul 2023 20:21:19 +0000 (21:21 +0100)]
Read simple scalar record elements through reflection

15 months agoAdd free_token to free external storage associated with token
Nick Gasson [Thu, 27 Jul 2023 19:25:47 +0000 (20:25 +0100)]
Add free_token to free external storage associated with token

15 months agoRename type_index_constr to type_index
Nick Gasson [Thu, 27 Jul 2023 19:19:23 +0000 (20:19 +0100)]
Rename type_index_constr to type_index

15 months agoAdd PoC to GitHub Actions tests
Nick Gasson [Wed, 26 Jul 2023 21:07:06 +0000 (22:07 +0100)]
Add PoC to GitHub Actions tests

15 months agoOptimise code generation for protected procedure calls
Nick Gasson [Wed, 26 Jul 2023 20:52:48 +0000 (21:52 +0100)]
Optimise code generation for protected procedure calls

15 months agoFix data corruption in overloaded protected procedure call
Nick Gasson [Wed, 26 Jul 2023 20:37:00 +0000 (21:37 +0100)]
Fix data corruption in overloaded protected procedure call

15 months agoEnsure JIT is shut down before exiting
Nick Gasson [Wed, 26 Jul 2023 18:25:02 +0000 (19:25 +0100)]
Ensure JIT is shut down before exiting

15 months agoFix error with minimum/maximum predefined functions on array of physical
Nick Gasson [Wed, 26 Jul 2023 18:25:02 +0000 (19:25 +0100)]
Fix error with minimum/maximum predefined functions on array of physical

15 months agoAvoid use of tree_visit in simp_has_drivers
Nick Gasson [Wed, 26 Jul 2023 18:25:02 +0000 (19:25 +0100)]
Avoid use of tree_visit in simp_has_drivers

15 months agovhpi: Downgrade unimplemented iterators to error
Sean Anderson [Sun, 2 Jul 2023 18:48:56 +0000 (14:48 -0400)]
vhpi: Downgrade unimplemented iterators to error

We have implemented most of the critical iterator types, so the
remaining iterators don't necessarily represent a fatal bug in the
program. Just produce an error and keep going. This allows partial
functionality for VHPI programs which try these iterators.

15 months agovhpi: Add support for argv
Sean Anderson [Sun, 2 Jul 2023 18:25:45 +0000 (14:25 -0400)]
vhpi: Add support for argv

Add support for reading the argvs, allowing tools to parse out plusargs.

15 months agoAllow overriding generics on internal instances
Nick Gasson [Tue, 25 Jul 2023 21:06:52 +0000 (22:06 +0100)]
Allow overriding generics on internal instances

15 months agoUse X86 POPCNT instruction where supported
Nick Gasson [Tue, 25 Jul 2023 20:08:36 +0000 (21:08 +0100)]
Use X86 POPCNT instruction where supported

15 months agoFix crash simplifying locally static expression in package
Nick Gasson [Tue, 25 Jul 2023 19:01:42 +0000 (20:01 +0100)]
Fix crash simplifying locally static expression in package

Fixes #742

16 months agoAdd command to export coverage data in Cobertura format
Nick Gasson [Sun, 23 Jul 2023 16:18:47 +0000 (17:18 +0100)]
Add command to export coverage data in Cobertura format

16 months agoFix assertion failure parsing invalid physical literal
Nick Gasson [Sat, 22 Jul 2023 17:13:20 +0000 (18:13 +0100)]
Fix assertion failure parsing invalid physical literal

16 months agoAdd "force" and "noforce" commands to TCL shell
Nick Gasson [Sat, 22 Jul 2023 10:04:39 +0000 (11:04 +0100)]
Add "force" and "noforce" commands to TCL shell

16 months agoExtend parse_value to handle character arrays
Nick Gasson [Sat, 22 Jul 2023 08:38:25 +0000 (09:38 +0100)]
Extend parse_value to handle character arrays

16 months agoWork around crash when using -i or --do after -e
Nick Gasson [Fri, 21 Jul 2023 20:56:28 +0000 (21:56 +0100)]
Work around crash when using -i or --do after -e

16 months agoAdd TCL shell event for next time step
Nick Gasson [Fri, 21 Jul 2023 19:49:10 +0000 (20:49 +0100)]
Add TCL shell event for next time step

16 months agoAdd parsing of PSL "union" and "built-in-function" calls. (#691)
Blebowski [Fri, 21 Jul 2023 17:41:57 +0000 (19:41 +0200)]
Add parsing of PSL "union" and "built-in-function" calls. (#691)

16 months agoAdd TCL quit and exit commands
Nick Gasson [Wed, 19 Jul 2023 19:24:55 +0000 (20:24 +0100)]
Add TCL quit and exit commands

16 months agoChange format of to_string for time to match other implementations
Nick Gasson [Tue, 18 Jul 2023 19:11:50 +0000 (20:11 +0100)]
Change format of to_string for time to match other implementations