]> git.nickg.me.uk Git - nvc.git/log
nvc.git
9 months agoFix UAF lazy-predefs
Nick Gasson [Thu, 3 Aug 2023 16:06:36 +0000 (17:06 +0100)]
Fix UAF

9 months agoPreload tree shaking
Nick Gasson [Thu, 3 Aug 2023 15:35:43 +0000 (16:35 +0100)]
Preload tree shaking

9 months agoFix tests again
Nick Gasson [Tue, 1 Aug 2023 15:22:47 +0000 (16:22 +0100)]
Fix tests again

9 months agoPut all again
Nick Gasson [Tue, 1 Aug 2023 13:33:06 +0000 (14:33 +0100)]
Put all again

9 months agoFix unit tests
Nick Gasson [Tue, 1 Aug 2023 13:06:31 +0000 (14:06 +0100)]
Fix unit tests

9 months agoLazy new/copy helpers
Nick Gasson [Tue, 1 Aug 2023 08:38:08 +0000 (09:38 +0100)]
Lazy new/copy helpers

9 months agoLazy image/value
Nick Gasson [Mon, 31 Jul 2023 21:41:46 +0000 (22:41 +0100)]
Lazy image/value

9 months agoFolding
Nick Gasson [Mon, 31 Jul 2023 21:23:20 +0000 (22:23 +0100)]
Folding

9 months agoMake lower tests work
Nick Gasson [Mon, 31 Jul 2023 20:41:18 +0000 (21:41 +0100)]
Make lower tests work

9 months agoHacking
Nick Gasson [Mon, 31 Jul 2023 19:22:10 +0000 (20:22 +0100)]
Hacking

9 months agoLazy resolved helper
Nick Gasson [Wed, 19 Jul 2023 13:37:32 +0000 (14:37 +0100)]
Lazy resolved helper

9 months agoFreeing units
Nick Gasson [Sun, 16 Jul 2023 09:09:14 +0000 (10:09 +0100)]
Freeing units

9 months agoWIP lazy lower predefs
Nick Gasson [Wed, 19 Jul 2023 13:30:24 +0000 (14:30 +0100)]
WIP lazy lower predefs

9 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

9 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

9 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

9 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

9 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

9 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

9 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

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

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

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

9 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

9 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

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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

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

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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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

9 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)

9 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

9 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

9 months agoAdd an experimental WebSocket interface to control simulator
Nick Gasson [Fri, 9 Jun 2023 11:36:41 +0000 (12:36 +0100)]
Add an experimental WebSocket interface to control simulator

9 months agoHandle decimal string literals more than 64-bits wide
Nick Gasson [Tue, 18 Jul 2023 17:33:28 +0000 (18:33 +0100)]
Handle decimal string literals more than 64-bits wide

Fixes #731

9 months agoMake 'event fast-path work for any single-element signal
Nick Gasson [Sun, 16 Jul 2023 09:25:24 +0000 (10:25 +0100)]
Make 'event fast-path work for any single-element signal

9 months agoAdd another PSL test
Nick Gasson [Sun, 16 Jul 2023 09:19:23 +0000 (10:19 +0100)]
Add another PSL test

9 months agoImplement shell restart command
Nick Gasson [Sat, 15 Jul 2023 15:23:21 +0000 (16:23 +0100)]
Implement shell restart command

9 months agoRework translation of PSL clock declarations
Nick Gasson [Fri, 14 Jul 2023 20:13:57 +0000 (21:13 +0100)]
Rework translation of PSL clock declarations

9 months agoFix wrong 'EVENT result on delta cycle
Nick Gasson [Sat, 15 Jul 2023 08:42:25 +0000 (09:42 +0100)]
Fix wrong 'EVENT result on delta cycle

9 months agoFix incorrect sensitivity list with constant indexed name
Nick Gasson [Fri, 14 Jul 2023 20:22:54 +0000 (21:22 +0100)]
Fix incorrect sensitivity list with constant indexed name

9 months agoBump version to 1.11-devel
Nick Gasson [Fri, 14 Jul 2023 10:59:13 +0000 (11:59 +0100)]
Bump version to 1.11-devel

9 months agoInclude Verilog test files in distribution
Nick Gasson [Fri, 14 Jul 2023 10:59:02 +0000 (11:59 +0100)]
Include Verilog test files in distribution

9 months agoUpdate for 1.10 release r1.10.0
Nick Gasson [Fri, 14 Jul 2023 10:33:55 +0000 (11:33 +0100)]
Update for 1.10 release

9 months agoWork around issues with dlclose on Alpine/musl
Nick Gasson [Fri, 14 Jul 2023 10:24:17 +0000 (11:24 +0100)]
Work around issues with dlclose on Alpine/musl

9 months agoUpdate Quartus installation script for 22.1
Nick Gasson [Fri, 14 Jul 2023 09:40:35 +0000 (10:40 +0100)]
Update Quartus installation script for 22.1

9 months agoRemove the SYNOPSYS.ATTRIBUTES package
Nick Gasson [Wed, 12 Jul 2023 21:55:12 +0000 (22:55 +0100)]
Remove the SYNOPSYS.ATTRIBUTES package

9 months agoUpdate builds.sr.ht configs
Nick Gasson [Wed, 12 Jul 2023 21:45:44 +0000 (22:45 +0100)]
Update builds.sr.ht configs

9 months agoAllow capturing all output from TCL shell
Nick Gasson [Tue, 11 Jul 2023 18:58:15 +0000 (19:58 +0100)]
Allow capturing all output from TCL shell

9 months agoAdd test case for PSL SEREs
Nick Gasson [Wed, 12 Jul 2023 15:12:33 +0000 (16:12 +0100)]
Add test case for PSL SEREs

9 months agoNamed associations in aggregate target. Fixes #712
Nick Gasson [Tue, 11 Jul 2023 18:20:45 +0000 (19:20 +0100)]
Named associations in aggregate target. Fixes #712

9 months agoFix crash when "add wave" called multiple times
Nick Gasson [Tue, 11 Jul 2023 18:20:45 +0000 (19:20 +0100)]
Fix crash when "add wave" called multiple times

9 months agoFix compile error in workqbench
Nick Gasson [Tue, 11 Jul 2023 18:20:45 +0000 (19:20 +0100)]
Fix compile error in workqbench

9 months agoAdd mechanism to redirect TCL stdout and stderr
Nick Gasson [Tue, 11 Jul 2023 18:20:45 +0000 (19:20 +0100)]
Add mechanism to redirect TCL stdout and stderr

9 months agoFix uninitialised variable warning
Nick Gasson [Mon, 10 Jul 2023 17:02:21 +0000 (18:02 +0100)]
Fix uninitialised variable warning

9 months agoHack to allow elaborated unit in unit_registry_get. Fixes #736
Nick Gasson [Sat, 8 Jul 2023 20:15:54 +0000 (21:15 +0100)]
Hack to allow elaborated unit in unit_registry_get. Fixes #736

9 months agoAdd record subtype mirrors
Nick Gasson [Sat, 8 Jul 2023 10:53:35 +0000 (11:53 +0100)]
Add record subtype mirrors

9 months agoAdd test for missing protected type method
Nick Gasson [Sat, 8 Jul 2023 10:10:27 +0000 (11:10 +0100)]
Add test for missing protected type method

9 months agoAdd shell event handler
Nick Gasson [Sun, 9 Jul 2023 08:05:28 +0000 (09:05 +0100)]
Add shell event handler

9 months agoCoverage report enhancements (#738)
Blebowski [Sun, 9 Jul 2023 06:53:46 +0000 (08:53 +0200)]
Coverage report enhancements (#738)

* src/cover: Show LHS/RHS arrows in the HTML report.

* src/cover: Add function name for expression coverage. Split loc and tree for emitted cover tags to distinguish branch type and branch condition location. Add titles and print also multi-line code samples for coverage tags.

---------

Co-authored-by: Ondrej Ille <ondrej.ille@tropicsqaure.com>
9 months agoImplement GET methods for array value mirrors
Nick Gasson [Sat, 8 Jul 2023 08:32:28 +0000 (09:32 +0100)]
Implement GET methods for array value mirrors

9 months agoFix incorrect parsing of conditional return statement
Nick Gasson [Sat, 8 Jul 2023 07:35:52 +0000 (08:35 +0100)]
Fix incorrect parsing of conditional return statement

9 months agoAdd enumeration value/subtype mirrors
Nick Gasson [Fri, 7 Jul 2023 21:16:36 +0000 (22:16 +0100)]
Add enumeration value/subtype mirrors

9 months agoCover HTML report enhancements (#735)
Blebowski [Fri, 7 Jul 2023 17:19:36 +0000 (19:19 +0200)]
Cover HTML report enhancements (#735)

* src/cover: Format printed HTML nicely for debug. Avoid printing past text buffer. Dont print newlines in code samples.

* src: Reduce size of generated coverage report, add CSS classes for common properties.

9 months agoFix unused variable warning in list_get macro
Nick Gasson [Fri, 7 Jul 2023 16:43:11 +0000 (17:43 +0100)]
Fix unused variable warning in list_get macro

9 months agoHide homographs within a declaration. Issue #733
Nick Gasson [Fri, 7 Jul 2023 08:05:27 +0000 (09:05 +0100)]
Hide homographs within a declaration. Issue #733

9 months agoRemove unused internal warn-on-hidden option
Nick Gasson [Fri, 7 Jul 2023 07:28:39 +0000 (08:28 +0100)]
Remove unused internal warn-on-hidden option

9 months agoMissing index check for null array. Fixes #734
Nick Gasson [Thu, 6 Jul 2023 20:41:04 +0000 (21:41 +0100)]
Missing index check for null array. Fixes #734

9 months agoFix crash folding IEEE matching operators
Nick Gasson [Thu, 6 Jul 2023 20:19:10 +0000 (21:19 +0100)]
Fix crash folding IEEE matching operators

9 months agoParsing for VHDL-2019 improved type generics
Nick Gasson [Thu, 6 Jul 2023 18:29:55 +0000 (19:29 +0100)]
Parsing for VHDL-2019 improved type generics

10 months agoMore attributes for array subtype mirrors
Nick Gasson [Wed, 5 Jul 2023 18:54:48 +0000 (19:54 +0100)]
More attributes for array subtype mirrors

10 months agoGet rid of global vcode unit registry
Nick Gasson [Fri, 30 Jun 2023 08:18:00 +0000 (09:18 +0100)]
Get rid of global vcode unit registry

10 months agoAdd floating value and subtype mirrors
Nick Gasson [Sun, 2 Jul 2023 20:31:57 +0000 (21:31 +0100)]
Add floating value and subtype mirrors

10 months agoInteger subtype mirrors and subtype reflection
Nick Gasson [Sat, 1 Jul 2023 21:25:40 +0000 (22:25 +0100)]
Integer subtype mirrors and subtype reflection

10 months agoUse cover scope to store hierarchy information
Nick Gasson [Sat, 1 Jul 2023 11:41:08 +0000 (12:41 +0100)]
Use cover scope to store hierarchy information

10 months agoSimplify interface between lower and coverage
Nick Gasson [Sat, 1 Jul 2023 09:23:53 +0000 (10:23 +0100)]
Simplify interface between lower and coverage

10 months agoStore coverage scopes directly in database
Nick Gasson [Sat, 1 Jul 2023 08:36:55 +0000 (09:36 +0100)]
Store coverage scopes directly in database

10 months agoUse a single namespace for cover tags
Nick Gasson [Fri, 30 Jun 2023 16:31:17 +0000 (17:31 +0100)]
Use a single namespace for cover tags

10 months agoFix crash getting expression coverage with function bodies
Nick Gasson [Fri, 30 Jun 2023 16:15:41 +0000 (17:15 +0100)]
Fix crash getting expression coverage with function bodies

10 months agoInferring constraints from initial values for signals and variables
Nick Gasson [Thu, 29 Jun 2023 21:13:54 +0000 (22:13 +0100)]
Inferring constraints from initial values for signals and variables