Stefan Wallentowitz
045ff25f80
Support vpiModule, bug1469.
...
Add very basic support for vpiModule. Basically it allows to traverse
the module tree to find a variable etc. It does not support more than
vpi_iterate and vpi_scan for vpiModule along basic operations like
vpi_get_str on vpiModule.
The support is added non-intrusively to non-VPI verilator runs. It
essentially:
- Tracks the creation of cell instances and keeps them alive until
the emit phase. They are there converted to scopes if modules.
- Emits empty (don't add anything during construction)
VerilatedScopes for all inlined modules, only for those inlined
modules that are on the hierarchical path to public variables.
- Adds VerilatedHierarchy as abstraction to structure of the
scopes. It is only created for VPI designs. It allows to traverse
the hierarchy from the top (NULL).
Signed-off-by: Stefan Wallentowitz <stefan@wallentowitz.de>
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-10-01 21:57:45 -04:00
Wilson Snyder
e556269692
Commentary - Spelling fixes
2019-09-12 07:22:22 -04:00
Wilson Snyder
fa904f386c
Commentary - Spelling fixes
2019-09-09 07:50:21 -04:00
Wilson Snyder
a4820fc700
Misc minor error cleanups from show-source branch.
2019-07-14 20:59:56 -04:00
Wilson Snyder
ee469eedaf
Fix some errors reporting wrong objects.
2019-07-14 15:06:49 -04:00
Wilson Snyder
173efbc829
Offer suggestions on bad identifier errors.
2019-07-14 10:08:53 -04:00
Wilson Snyder
0f857ce423
In errors, single quote signals and other from-user data.
2019-07-11 22:09:30 -04:00
Wilson Snyder
dacf45fea9
Fix error message continuations to avoid linenumber repetition
2019-07-11 19:15:40 -04:00
Wilson Snyder
8548ecfdac
Internals: Add UASSERT_OBJ macro to replace hand-done ifs. No functional change intended.
...
This makes it easier to filter out correctly zero code-coverage lines.
2019-07-06 12:57:50 -04:00
Wilson Snyder
f7641d2ecc
Change MULTITOP to warning to help linting, see manual.
2019-06-30 16:46:48 -04:00
Wilson Snyder
af5616c077
Fix line number in dup vars.
2019-06-28 22:34:01 -04:00
Wilson Snyder
8e7559c6c9
Show included-from filenames in warnings, bug1439.
2019-06-22 17:01:39 -04:00
Wilson Snyder
951521320a
Warnings: Suppress dup lines, and use lowercase note: to match gcc
2019-06-22 16:12:17 -04:00
Wilson Snyder
5cb6474cc6
Fix not reporting some duplicate signals/ports, bug1462.
2019-06-22 12:43:48 -04:00
Wilson Snyder
e713c8ce57
Fix not reporting some duplicate signals, bug1462.
2019-06-12 19:17:10 -04:00
Wilson Snyder
b83b606267
Internals: Detab and fix spacing style issues. No functional change.
...
When diff, recommend using "git diff --ignore-all-space"
When merging, recommend using "git merge -Xignore-all-space"
2019-05-19 16:13:13 -04:00
Todd Strader
eac3458647
Internals: V3Number tracks node information, part of bug1305.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-05-09 20:03:19 -04:00
Wilson Snyder
8a4aeddbb0
Copyright year update.
2019-01-03 19:17:22 -05:00
Wilson Snyder
61e4b0a472
Add IMPORTSTAR warning on import::* inside scope.
2018-11-28 18:25:34 -05:00
Wilson Snyder
e0b2c46664
Internals: Function return values act as vars, not wires.
2018-11-25 19:50:53 -05:00
Wilson Snyder
b8098098d8
Internals: Refactor input/output to new class in prep for ref support.
2018-10-27 17:29:00 -04:00
Wilson Snyder
5ae1ce90ad
Internals: Refactor into cvtToHex function. No functional change.
2018-10-14 16:25:36 -04:00
Wilson Snyder
d87b9d25ca
Internals: Cleanup and standardize include order. No functional change intended.
2018-10-14 13:59:40 -04:00
Wilson Snyder
595419b370
Internals: Sort includes for clang-tidy. No functional change intended.
2018-10-14 07:04:18 -04:00
Wilson Snyder
442e4f35f0
Internals: Cleanup empty string constructors for clang-tidy. No functional change.
2018-10-13 23:06:36 -04:00
Wilson Snyder
e8b8b33ff6
Internals: Cleanup find with chars for clang-tidy. No functional change.
2018-10-13 22:28:59 -04:00
Wilson Snyder
75f28fd446
Internals: Fix spacing of function calls. No functional change.
2018-08-25 09:52:45 -04:00
Wilson Snyder
22939d7473
Merge from master
2018-07-14 19:27:51 -04:00
Wilson Snyder
9e3a88c41d
Inability to write a file is typically user, not internal error.
2018-07-14 19:22:50 -04:00
Wilson Snyder
cd4e6b35b3
Internals: Standardize debug() function generation. No functional change intended.
2018-05-14 06:50:47 -04:00
Wilson Snyder
05db8ce6c8
Internals: Move iterators to AstNVisitor to avoid null this.
2018-05-10 20:55:37 -04:00
Wilson Snyder
02f18fc21b
Merge from master
2018-03-15 23:31:59 -04:00
Wilson Snyder
7922a1de28
Internals: Misc cleanups related to V3LinkDot. No functional change intended.
2018-03-15 19:46:05 -04:00
Wilson Snyder
2c30aecc5b
Merge from master
2018-03-10 16:51:34 -05:00
Wilson Snyder
770045676f
Internals: Split some extremely long lines. No functional change.
2018-03-10 16:32:04 -05:00
Wilson Snyder
f0ba17a19b
Merge from master.
2018-02-27 07:24:31 -05:00
Wilson Snyder
7f5b1a402c
Internals: Part of last change, spacing.
2018-02-07 20:29:58 -05:00
Wilson Snyder
22573d238b
Internals: Fix GCC8 cppcheck warnings. No functional change.
2018-02-07 20:16:53 -05:00
Wilson Snyder
597d28b505
Fix internals to make null-pointer-check clean. Also add more const's. No functional change intended, but likely something will break.
2018-02-01 21:32:58 -05:00
Wilson Snyder
94e8cf1de9
Internals: Use explicit std:: instead of using namespace std. No functional change intended.
2018-02-01 21:24:41 -05:00
Wilson Snyder
8e65d93d6d
Copyright year update. No functional change.
2018-01-02 18:05:06 -05:00
Wilson Snyder
0d645757e7
Less debug verbosity
2017-11-21 21:52:22 -05:00
Wilson Snyder
a579e9273b
Support self-recursive modules, bug659.
2017-11-18 17:42:35 -05:00
Wilson Snyder
8cc4b588b2
Add error when driving input-only modport.
2017-11-14 19:50:31 -05:00
Wilson Snyder
cc0b780412
Internals: More use of unordered_map/set. No functional change intended.
2017-10-18 18:22:58 -04:00
Wilson Snyder
a1a8f17617
Internals: Add const's. No functional change
2017-10-10 20:24:10 -04:00
Wilson Snyder
0bdc57a14a
Fix lost .tree debug file extensions in recent commit.
2017-10-01 22:17:37 -04:00
Wilson Snyder
89c8449ec0
Support package export, bug1217.
2017-09-20 21:04:59 -04:00
Wilson Snyder
63361fc56e
Add performance information to --stats file.
2017-09-17 22:52:57 -04:00
Todd Strader
2fa16708b7
Fix non-arrayed cells with interface arrays, bug1153.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-05-10 19:05:42 -04:00
Wilson Snyder
8943ad5966
internals: Remove extra newlines on v3fatalSrc. No functional change.
2017-04-28 20:09:27 -04:00
Wilson Snyder
96a5445d44
Support ports of array of reals, bug1154.
2017-04-28 06:10:14 -04:00
Wilson Snyder
473d555dc1
Fix ugly interface-to-non-interface errors, bug1112.
2017-03-17 18:35:53 -04:00
Wilson Snyder
e6d7e7e329
Version bump
2017-01-15 12:13:13 -05:00
Wilson Snyder
2d0084308d
Internals: Convert AstNUser to non-pointer to avoid NULL call. No functional change intended.
2016-11-27 09:40:12 -05:00
Wilson Snyder
7efa40966a
Internals: Remove second argument to visitors. No functional change intended.
2016-11-27 08:11:38 -05:00
Wilson Snyder
70ddf32719
Fix error on referencing variable in parent, bug1099.
2016-11-05 08:37:18 -04:00
Wilson Snyder
f093c3d78b
Fix error on bad interface name, bug1097.
2016-10-22 08:05:27 -04:00
Stefan Wallentowitz
482bdab0e0
Support command-line -G/+pvalue param overrides, bug1045.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2016-03-24 19:14:15 -04:00
Wilson Snyder
9ae40d64f0
Support parameter type, bug376.
2016-03-14 21:51:31 -04:00
Wilson Snyder
cef097b7b7
Internals: Refactoring prep for parameter type branch. No functional change intended.
2016-03-12 20:54:52 -05:00
Wilson Snyder
db6e5ce7cf
Internals: Misc code cleanups. No functional change.
2016-02-03 20:43:05 -05:00
Wilson Snyder
d56179df17
Internals: Fix compares to null, part of bug1030. No functional change intended.
2016-02-02 21:02:00 -05:00
Johan Bjork
61a1f3d817
Support inlining interfaces, bug1018.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2016-01-21 19:11:53 -05:00
Wilson Snyder
b738d1960a
Copyright year update
2016-01-06 20:36:41 -05:00
Johan Bjork
f920b3945e
Fix dotted generated array error, bug1005.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2015-12-05 19:58:58 -05:00
Todd Strader
5e54d3e41a
Fix interface inside generate, bug1001, bug1003.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2015-12-05 19:39:40 -05:00
Johan Bjork
c7e0f2e196
Fix function calls on arrayed interface, bug994.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2015-11-11 20:40:24 -05:00
Wilson Snyder
fa63bc6b78
Fix error message on missing interface, bug985.
2015-10-29 21:44:02 -04:00
Wilson Snyder
4464b13163
Fix dot indexing into arrayed inferfaces, bug978.
2015-10-23 23:06:24 -04:00
Wilson Snyder
17a3f9691d
Fix package:scope.scope variable references.
2015-10-23 21:03:35 -04:00
Wilson Snyder
040b1b06d5
Support genvar indexes into arrayed cells, bug517.
2015-10-22 20:13:49 -04:00
Wilson Snyder
4fc9a906f6
Internals: Fix cppcheck warnings; add VL_DANGLING. No functional change.
2015-10-04 13:16:35 -04:00
Wilson Snyder
8323092a0c
Fix cppcheck warnings. No functional change.
2015-02-09 21:05:27 -05:00
Wilson Snyder
4c91ade61d
Copyright year update
2015-01-07 18:25:53 -05:00
Wilson Snyder
c1593f856d
Support enum.first/name and similar methods, bug848.
2014-11-28 20:34:23 -05:00
Wilson Snyder
71b2eed32c
Fix false name conflict on cells in generate blocks, bug749.
2014-06-09 22:00:45 -04:00
Wilson Snyder
a1c1ff9981
Fix seg-fault with variable of parameterized interface, bug692.
2014-05-28 07:33:40 -04:00
Wilson Snyder
2accba2e71
Update WIDTH warning message formats to match future commit.
2014-04-29 21:11:57 -04:00
Wilson Snyder
6cf6d9f7e1
Fix modport function import not-found error.
2014-04-03 21:53:39 -04:00
Wilson Snyder
c18df68ead
Fix C++-2011 warnings.
2014-03-15 14:50:03 -04:00
Wilson Snyder
4422de0c6c
Copyright year update.
2014-01-06 19:28:57 -05:00
Wilson Snyder
bcefc17631
Support modport import, bug696.
2013-12-21 06:51:15 -05:00
Wilson Snyder
5d233b8c09
Fix parameter pin vs. normal pin error, bug704.
2013-12-14 18:04:10 -05:00
Wilson Snyder
23bb045a72
Support interfaces and modports, bug102.
2013-05-27 21:39:19 -04:00
Wilson Snyder
7c834ad118
Internals: Misc cleanups from interface branch. No functional change.
2013-05-27 20:56:20 -04:00
Wilson Snyder
6b8d9b5c36
Internals: If registered, dump symtable on any error
2013-05-25 12:15:38 -04:00
Wilson Snyder
6a69813326
Internals: Renames for interfaces. No functional change.
2013-05-18 19:45:52 -04:00
Wilson Snyder
464679c78b
Fix module resolution with __, bug631.
2013-03-12 07:27:17 -04:00
Wilson Snyder
6594a54a95
Fix wrong dot resolution under inlining.
2013-02-21 23:38:29 -05:00
Wilson Snyder
f07f6a26a8
cppcheck fixes
2013-02-03 13:27:37 -05:00
Wilson Snyder
b4a8be07f3
Fix enum items under packages.
2013-02-02 14:11:50 -05:00
Wilson Snyder
e1eb41fe77
Fix segfault on multidimensional dotted arrays, bug607.
2013-01-25 21:27:19 -05:00
Wilson Snyder
08fec0534d
Fix package import preventing local var, bug599.
2013-01-08 19:06:52 -05:00
Wilson Snyder
a8bbf7231b
Copyright year update.
2013-01-01 09:42:59 -05:00
Wilson Snyder
229d854607
Fix package resolution of parameters, bug586.
2012-12-31 17:05:13 -05:00
Wilson Snyder
562460606f
Internals: Add V3LinkDot m_ds structure, towards bug586. No functional change.
2012-12-31 14:00:04 -05:00
Wilson Snyder
46f70b1cbb
Fix implying dotted wire names
2012-12-31 13:50:44 -05:00
Wilson Snyder
a547133efe
Internals: Remove VAR_MEM to match Verilog-Perl, towards bug586.
2012-12-31 13:47:34 -05:00
Wilson Snyder
98f68e46d6
Fix package import of package imports, partial bug592.
2012-12-17 20:26:40 -05:00