]>
Nick Gasson's Git Repositories - nvc.git/log
Nick Gasson [Wed, 21 Aug 2024 21:04:20 +0000 (22:04 +0100)]
Fix potential overflows in mspace bitmask handling. Fixes #949
Nick Gasson [Tue, 20 Aug 2024 19:03:09 +0000 (20:03 +0100)]
Fix crash with signal alias in generic package. Fixes #946
Nick Gasson [Tue, 20 Aug 2024 18:06:27 +0000 (19:06 +0100)]
Missing type check for conversion function actual. Fixes #945
Blizzard Finnegan [Mon, 19 Aug 2024 19:23:24 +0000 (15:23 -0400)]
Add RPM-based dependencies to README for build-from-source (#947)
Update README.md
Include RPM-based dependencies
Nick Gasson [Sun, 18 Aug 2024 08:38:58 +0000 (09:38 +0100)]
Fix precedence for Verilog binary operators
Nick Gasson [Sat, 17 Aug 2024 20:49:23 +0000 (21:49 +0100)]
Code generation for Verilog primitive gates
Nick Gasson [Sat, 17 Aug 2024 17:15:40 +0000 (18:15 +0100)]
Parsing for more Verilog gate instance types
Nick Gasson [Sat, 17 Aug 2024 16:40:31 +0000 (17:40 +0100)]
Verilog implicit net declarations
Nick Gasson [Sat, 17 Aug 2024 16:18:14 +0000 (17:18 +0100)]
Lowering for sequential UDPs
Nick Gasson [Sat, 17 Aug 2024 13:05:26 +0000 (14:05 +0100)]
Parsing for Verilog sequential UDP bodies
Nick Gasson [Sat, 17 Aug 2024 11:28:54 +0000 (12:28 +0100)]
Add some semantic checks for Verilog UDPs
Nick Gasson [Sat, 17 Aug 2024 10:13:33 +0000 (11:13 +0100)]
Handle nested packages in lower_context_for_call. Issue #943
Nick Gasson [Sat, 17 Aug 2024 08:15:23 +0000 (09:15 +0100)]
Use well_known instead of ident_new when parsing operators
Nick Gasson [Sat, 17 Aug 2024 07:56:47 +0000 (08:56 +0100)]
Implement LCS2016_I13 precedence of unary operators
Nick Gasson [Sat, 17 Aug 2024 07:47:30 +0000 (08:47 +0100)]
Implement LCS2016_I03 signature in generic association
Nick Gasson [Fri, 16 Aug 2024 17:32:09 +0000 (18:32 +0100)]
Lowering for Verilog UDPs
Issue #937
Nick Gasson [Fri, 16 Aug 2024 17:30:09 +0000 (18:30 +0100)]
Parsing for Verilog user-defined primitives
Issue #937
Nick Gasson [Thu, 15 Aug 2024 20:23:36 +0000 (21:23 +0100)]
Simplify parse tracing
Nick Gasson [Thu, 15 Aug 2024 20:11:42 +0000 (21:11 +0100)]
Replace T_FUNC and T_PROC types kinds with a single T_SIGNATURE
Nick Gasson [Thu, 15 Aug 2024 20:11:42 +0000 (21:11 +0100)]
Exclude fatal_trace and should_not_reach_here from test coverage
Nick Gasson [Thu, 15 Aug 2024 18:52:59 +0000 (19:52 +0100)]
Do not create coverage scopes for component implicit block
Fixes #941
Nick Gasson [Thu, 15 Aug 2024 18:39:46 +0000 (19:39 +0100)]
Add separate cover_create_instance for instances
Nick Gasson [Wed, 14 Aug 2024 21:33:26 +0000 (22:33 +0100)]
No longer need to force eager code generation with coverage
Nick Gasson [Wed, 14 Aug 2024 21:22:26 +0000 (22:22 +0100)]
Remove cover_pop_scope
Nick Gasson [Wed, 14 Aug 2024 19:56:46 +0000 (20:56 +0100)]
Remove top_scope state from cover_data_t
Nick Gasson [Wed, 14 Aug 2024 19:40:25 +0000 (20:40 +0100)]
Modify cover_{push,pop}_scope to take an explicit scope argument
Nick Gasson [Wed, 14 Aug 2024 18:40:10 +0000 (19:40 +0100)]
Remove redundant nesting of case choice branch coverage
Nick Gasson [Tue, 13 Aug 2024 20:12:58 +0000 (21:12 +0100)]
Add XML coverage dump format for testing
Nick Gasson [Tue, 13 Aug 2024 20:13:19 +0000 (21:13 +0100)]
Prune empty coverage scopes
Nick Gasson [Mon, 12 Aug 2024 18:31:11 +0000 (19:31 +0100)]
Fix crash after empty interface list. Fixes #942
Nick Gasson [Sun, 11 Aug 2024 15:17:33 +0000 (16:17 +0100)]
Replace Bison Verilog parser with hand-written recursive descent
Nick Gasson [Sun, 11 Aug 2024 21:03:24 +0000 (22:03 +0100)]
Add should_not_reach_here helper
Blebowski [Sun, 11 Aug 2024 15:13:02 +0000 (17:13 +0200)]
Coverage folding (#939)
* src, test: Rework exclude file handling
Parse first, and traverse hierarchy only then.
Add stub of "collapse" command.
* src, test: coverage fixes after rebase.
* man: Fix section title.
* src: Implement support for "fold" command into exclude file.
* src: Fix forgotten option of "cover_merge" command.
* test: Add cover23 test for coverage folding.
* src: Remove commented code for union creation during folding/
* man: Document coverage folding.
* src: Fix fold command array allocation issues.
* src: typo fix
* src: Simplify to_upper_str
* src: Remove excessive exclamation marks.
* src: Remove excessive debug prints.
* src: Make folding scope match print message only upon DEBUG build.
* nvc.1: Spelling fix.
* src: Apply comments from review
* test: Adapt tests for modified information messages.
* NEWS: fix conflicts.
* src, test: Remove "ifdef DEBUG".
* src: Remove two more occurences of debug print.
Blebowski [Sun, 11 Aug 2024 14:45:01 +0000 (16:45 +0200)]
nvc.1: Minor consistency fix in generic documentation. Fixes #832. (#940)
Nick Gasson [Sun, 11 Aug 2024 11:02:05 +0000 (12:02 +0100)]
Detect msys/gcc in configure script. Fixes #936
Nick Gasson [Sun, 11 Aug 2024 10:31:48 +0000 (11:31 +0100)]
Sync NEWS.md from 1.13 branch
Nick Gasson [Sun, 11 Aug 2024 08:45:14 +0000 (09:45 +0100)]
Enable more VUnit tests
Nick Gasson [Sun, 11 Aug 2024 08:39:32 +0000 (09:39 +0100)]
Replace can_overload with a name mask bit
Nick Gasson [Sun, 11 Aug 2024 08:30:18 +0000 (09:30 +0100)]
Incorrect ambiguous subprogram error in 1993 mode
Nick Gasson [Fri, 9 Aug 2024 20:41:04 +0000 (21:41 +0100)]
Sync fstapi.c to GtkWave
d20056758
Nick Gasson [Fri, 9 Aug 2024 20:26:16 +0000 (21:26 +0100)]
Use cmark for Markdown to HTML conversion
Nick Gasson [Fri, 9 Aug 2024 16:46:07 +0000 (17:46 +0100)]
Fix random segfault when heap is larger than 4g. Fixes #935
Nick Gasson [Thu, 8 Aug 2024 19:37:05 +0000 (20:37 +0100)]
Update to UVVM 2024.07.03b
Nick Gasson [Thu, 8 Aug 2024 19:01:29 +0000 (20:01 +0100)]
Fix crash with qualified expression. Fixes #934
Nick Gasson [Wed, 7 Aug 2024 22:23:22 +0000 (23:23 +0100)]
Fix error generating VCD files on Windows UCRT. Issue #637
Nick Gasson [Tue, 6 Aug 2024 21:03:19 +0000 (22:03 +0100)]
Avoid linker errors on Windows with long command lines
Nick Gasson [Sun, 4 Aug 2024 17:50:31 +0000 (18:50 +0100)]
Remove internal debug and deprecated options from --help
Nick Gasson [Sun, 4 Aug 2024 17:28:57 +0000 (18:28 +0100)]
Fix HTML validation errors in coverage report
Nick Gasson [Sun, 4 Aug 2024 16:18:31 +0000 (17:18 +0100)]
Split -c sub-command into --cover-report and --cover-merge
Nick Gasson [Sun, 4 Aug 2024 10:47:41 +0000 (11:47 +0100)]
Use fbuf_put_uint for coverage data and add magic number
Nick Gasson [Fri, 2 Aug 2024 18:28:17 +0000 (19:28 +0100)]
Correct documentation for foreign subprograms
Nick Gasson [Fri, 2 Aug 2024 17:29:00 +0000 (18:29 +0100)]
Add a generic saturate_add macro
Nick Gasson [Thu, 1 Aug 2024 20:48:41 +0000 (21:48 +0100)]
Re-enable OSVVM testing in GitHub Actions workflow
Nick Gasson [Wed, 31 Jul 2024 21:33:29 +0000 (22:33 +0100)]
Warn in some cases when inner declaration hides outer. Fixes #905
Nick Gasson [Thu, 1 Aug 2024 19:11:08 +0000 (20:11 +0100)]
Update OSVVM to 2024.07
Nick Gasson [Wed, 31 Jul 2024 21:41:40 +0000 (22:41 +0100)]
Improve warning when identifier is a reserved word in future standard
Nick Gasson [Wed, 31 Jul 2024 19:34:38 +0000 (20:34 +0100)]
Adjust generic type implicit operator lookup in 2008 to match 2019
Issue #927, #686
See also ghdl/ghdl#2696
Nick Gasson [Tue, 30 Jul 2024 21:26:33 +0000 (22:26 +0100)]
Add intrinsics for some Synopsys subprograms
Nick Gasson [Mon, 29 Jul 2024 18:05:12 +0000 (19:05 +0100)]
Fix Windows installer build in GitHub Actions
Nick Gasson [Sun, 28 Jul 2024 09:58:37 +0000 (10:58 +0100)]
Optimise redundant array range calculation
Nick Gasson [Sun, 28 Jul 2024 09:43:57 +0000 (10:43 +0100)]
Fix incorrect bounds check error with partially constrained subtype
Fixes #932
Nick Gasson [Thu, 25 Jul 2024 10:15:32 +0000 (11:15 +0100)]
Refactor implementation of 'stable and 'quiet
Nick Gasson [Thu, 25 Jul 2024 12:58:18 +0000 (13:58 +0100)]
Sync NEWS.md from 1.3 branch
Nick Gasson [Thu, 25 Jul 2024 10:57:11 +0000 (11:57 +0100)]
Fix wrong result for slice of generic. Fixes #931
Nick Gasson [Wed, 24 Jul 2024 18:15:32 +0000 (19:15 +0100)]
Fix longest static prefix for array slice with 'length. Fixes #930
Nick Gasson [Wed, 24 Jul 2024 11:37:48 +0000 (12:37 +0100)]
Fix crash with unconstrained array-of-record port
Nick Gasson [Wed, 24 Jul 2024 10:18:43 +0000 (11:18 +0100)]
Fix crash with shared variable in generic package. Fixes #923
Nick Gasson [Wed, 24 Jul 2024 09:11:44 +0000 (10:11 +0100)]
Stop after errors in top-level generics
Nick Gasson [Mon, 22 Jul 2024 08:28:00 +0000 (09:28 +0100)]
Fix "failed to suspend thread" error on macOS. Fixes #922
Nick Gasson [Sun, 21 Jul 2024 20:04:44 +0000 (21:04 +0100)]
Elaboration crash with generic package on entity. Fixes #925
Nick Gasson [Sun, 21 Jul 2024 18:16:00 +0000 (19:16 +0100)]
Also look up external names in port list. Issue #921
Nick Gasson [Sun, 21 Jul 2024 17:30:18 +0000 (18:30 +0100)]
Fix crash with subprogram alias in generic <>. Fixes #924
Nick Gasson [Sun, 21 Jul 2024 17:19:02 +0000 (18:19 +0100)]
Add test for generic hints in elaboration errors
Nick Gasson [Sun, 21 Jul 2024 16:51:18 +0000 (17:51 +0100)]
Fix duplicate symbol error with 'DELAYED attribute
Nick Gasson [Sun, 21 Jul 2024 12:05:19 +0000 (13:05 +0100)]
Fix crash with open unconstrained port
Nick Gasson [Sun, 21 Jul 2024 10:19:04 +0000 (11:19 +0100)]
Hint if overload would not be ambiguous with --relaxed
Nick Gasson [Sun, 21 Jul 2024 10:18:41 +0000 (11:18 +0100)]
Remove redundant check in elab_external_name
Nick Gasson [Sun, 21 Jul 2024 09:58:04 +0000 (10:58 +0100)]
Cannot reference generic in external name. Fixes #921
Nick Gasson [Fri, 19 Jul 2024 20:20:49 +0000 (21:20 +0100)]
Use new GitHub Action for OSVVM workflow
Nick Gasson [Sun, 21 Jul 2024 04:11:35 +0000 (05:11 +0100)]
Generate Windows installer file list dynamically
Nick Gasson [Fri, 19 Jul 2024 21:56:47 +0000 (22:56 +0100)]
Add workaround for actions/checkout#290
Blebowski [Sun, 21 Jul 2024 06:07:50 +0000 (02:07 -0400)]
Cover saturate toggle (#919)
Nick Gasson [Thu, 18 Jul 2024 17:34:54 +0000 (18:34 +0100)]
Only the initial PSL state should repeat
Nick Gasson [Mon, 15 Jul 2024 21:11:09 +0000 (22:11 +0100)]
Refactor x86 JIT instruction emission
Blebowski [Thu, 18 Jul 2024 17:31:45 +0000 (13:31 -0400)]
Cover items to counters (#918)
* src: Move toggle coverage emit (recursive array traversal) to "cov-data" from lower.
* src: Linearize control flow in cover_add_toggle_items_for.
* src, test: Convert toggle coverage to separate cover_item for 0->1 and 1->0.
* src: Set "num" by default to 1 -> Becomes valid for statements. Simplify cover chain append logic for COV_ITEM_STMT.
* src: Move "num" setting for COV_ITEM_TOGGLE to better place.
* WIP: Branch coverage - Conversion to counters.
* src: Convert branch items fully to single item per covered item in reports too.
* src: Move bin name append for toggle items to cover_add_item.
* src: Move FSM state coverage logic to "cover" and make it counter, not flag.
* src: Fix typo in Button that gives you coverage exclude command.
* src: Move "num" setting for COV_ITEM_TOGGLE to better place.
* WIP: Branch coverage - Conversion to counters.
* src: Convert branch items fully to single item per covered item in reports too.
* src: Move bin name append for toggle items to cover_add_item.
* src: Port fixes from #909 and #906 to coverage refactoring.
* src, test: Rework expression coverage conversion to counters.
* src: Unify reporting of COV_ITEM_FUNCTIONAL to use new conversion to cover_chain_t.
* src: Remove Exclude mask from cov_item_t, now handled by single flag.
* src: Fix build on MACOS.
* src, test: Fix leak in the branch coverage.
* src: Rename "num" to "consecutive" to better correspond to its meaning.
* src, test: Get rid of the BIN in the exclude file completely.
* src, test: Clarify that simultaneous covered + excluded will result in covered.
* src: Unify "cover_add_*" API towards lower.
* src, test: Merge VCODE_OP_COVER_STMT, VCODE_OP_COVER_BRANCH and VCODE_OP_COVER_EXPRESSION.
* src, test: Rename "STATE" to "BIN_STATE" to have the same naming as rest of bins.
* NEWS, www: Update documentation and changes.
* Apply comments from review.
* Revert "src, test: Merge VCODE_OP_COVER_STMT, VCODE_OP_COVER_BRANCH and VCODE_OP_COVER_EXPRESSION."
This reverts commit
9daa3dc0fd1d3ba1e3e63e1e9b4d0b0c020b90ac.
* src: Remove unused variable.
Nick Gasson [Sat, 13 Jul 2024 20:07:14 +0000 (21:07 +0100)]
Add support for PSL "never" assertions. Fixes #914
Nick Gasson [Sat, 13 Jul 2024 19:43:44 +0000 (20:43 +0100)]
Crash with parenthesised PSL assertion. Fixes #911
Nick Gasson [Sat, 13 Jul 2024 19:43:04 +0000 (20:43 +0100)]
Avoid cascading errors from overload resolution
Nick Gasson [Sat, 13 Jul 2024 19:22:19 +0000 (20:22 +0100)]
Bump version to 1.14-devel
Nick Gasson [Sat, 13 Jul 2024 08:57:37 +0000 (09:57 +0100)]
Update for 1.13 release
Nick Gasson [Thu, 11 Jul 2024 20:24:09 +0000 (21:24 +0100)]
Fix handling of multi-line PSL comments
Fixes #910
Fixes #913
Nick Gasson [Wed, 10 Jul 2024 21:06:37 +0000 (22:06 +0100)]
Check result of realpath(3) for stdenv dir_open
Nick Gasson [Wed, 10 Jul 2024 20:59:43 +0000 (21:59 +0100)]
Downgrade case totality errors to warnings with --relaxed
Issue #902
Nick Gasson [Wed, 10 Jul 2024 20:10:06 +0000 (21:10 +0100)]
Fix build warnings on Windows and add installer sanity test step
Issue #786
Nick Gasson [Tue, 9 Jul 2024 19:24:15 +0000 (20:24 +0100)]
Allow function interface declarations to be pure or impure
Fixes #917
Nick Gasson [Tue, 9 Jul 2024 19:40:44 +0000 (20:40 +0100)]
Hide source for diagnostics unless an explicit location is passed
Nick Gasson [Mon, 8 Jul 2024 20:53:22 +0000 (21:53 +0100)]
Dump package signals to FST file. Fixes #901
Nick Gasson [Mon, 8 Jul 2024 21:05:03 +0000 (22:05 +0100)]
Fix unused variable warning on release build
Nick Gasson [Mon, 8 Jul 2024 20:04:40 +0000 (21:04 +0100)]
Replace list_* macros in rt_scope_t
Nick Gasson [Sun, 7 Jul 2024 08:46:08 +0000 (09:46 +0100)]
Ensure fatal_* functions are never inlined