Wilson Snyder
3a55600913
Internals: Restyle with C++11 using replacing typedef
2021-03-12 18:10:45 -05:00
Wilson Snyder
404b323f8c
Internals: Remove some unnecessary typedefs. No functional change.
2021-03-12 17:26:53 -05:00
Yutetsu TAKATSUKASA
5b280c1911
Fix hierarchical verilation with explicit setting of default parameter value ( #2738 )
...
* Test hierarchical block that is explicitly set its default parameter value.
* Fix hierarchical verilation when a hierarchical block is instantiated with explicit setting of the default value.
Parameterized hierarchical block must have mangled name even when all parameters have default value,
otherwise the parameterized module will be hidden by protect-lib wrapper.
* rename variable names. No functional change is intended.
2021-01-03 12:19:37 +09:00
Wilson Snyder
83d978c2cd
Fix generate for unrolling to be signed ( #2730 ).
2021-01-02 21:43:13 -05:00
Yutetsu TAKATSUKASA
c0a6858c42
Refactor V3Param ( #2736 )
...
* Use unique_ptr to manage lifetime. Slightly changed variable name. No functional change is intended.
* Let ParameterizedHierBlocks::areSame() public. No functional change is intended.
2021-01-03 07:21:45 +09:00
Wilson Snyder
bd602d0e2d
Copyright year update
2021-01-01 10:29:54 -05:00
Wilson Snyder
b7a533109d
Fix cppcheck warnings. No functional change intended.
2020-12-23 15:22:02 -05:00
Wilson Snyder
c39a8b439a
Internals: Use emplace instead of insert(make_pair(...)). No functional change intended.
2020-12-18 18:24:47 -05:00
Wilson Snyder
81ce2cbc05
Internals: Params cleanups in prep for dedot.
2020-12-12 15:48:10 -05:00
Wilson Snyder
570631380b
Internal: Misc cleanups. No functional change intended.
2020-12-06 13:49:44 -05:00
Wilson Snyder
f0e691a1b8
Handle unsupported parameters through link phase
2020-12-05 11:30:14 -05:00
Wilson Snyder
e14319b401
Internals: Refactor V3Param through code movement only. No functional change intended.
2020-11-28 12:04:29 -05:00
Wilson Snyder
963fd0664d
Fix class-in-module issues
2020-11-27 09:42:51 -05:00
Wilson Snyder
4643d6e883
Internals: Refactor V3Param through code movement only. No functional change intended.
2020-11-27 09:17:44 -05:00
Wilson Snyder
d89fc05da1
Internals: Refactor V3Param through code movement only. No functional change intended.
2020-11-27 09:04:56 -05:00
Wilson Snyder
84d7380588
Internals: Param immediate delete, in prep for next commit. No functional change intended.
2020-11-27 08:50:29 -05:00
Wilson Snyder
04febb1944
Internals: Move V3Param code. No functional change.
2020-11-26 15:03:55 -05:00
Wilson Snyder
f2d8e45d72
For performance, use unordered_set/map where possible. No functional change intended.
2020-11-25 20:57:30 -05:00
Wilson Snyder
b6ded59c2b
Internals: Use and enforce class final for ~5% performance boost.
2020-11-18 21:32:16 -05:00
Wilson Snyder
fa77141519
Fix unpacked array parameters near functions ( #2639 ).
2020-11-18 20:12:14 -05:00
Wilson Snyder
b3760911e7
Internals: Param minor cleanups. No functional change intended.
2020-11-18 19:50:47 -05:00
Wilson Snyder
2f718b9ea0
Show IEEE reference in array port message, plus internal cleanups.
2020-11-17 21:10:50 -05:00
Wilson Snyder
1e7c61b23e
Internals: Refactor huge func in V3Param. No functional change intended.
2020-11-16 22:35:51 -05:00
Wilson Snyder
1b0a48ea02
Internals: Use C++11 = default where obvious. No functional change intended.
2020-11-16 19:56:16 -05:00
Wilson Snyder
79d33bf1ee
Use C++11 for loops, from clang-migrate. No functional change intended
2020-11-10 22:10:38 -05:00
Wilson Snyder
51b0963e61
Internals: Favor const for map keys. No functional change intended.
2020-10-30 18:00:40 -04:00
Wilson Snyder
5c070558ae
Internals: Misc cleanups in prep for interface bugfix. No functional change intended.
2020-10-29 21:27:19 -04:00
Wilson Snyder
1899a875a4
Internals: Create VAccess class. No functional change intended.
2020-09-07 17:09:25 -04:00
Wilson Snyder
ee9d6dd63f
C++11: Favor auto, range for. No functional change intended.
2020-08-16 11:44:06 -04:00
Wilson Snyder
72d2cff0a1
C++11: Use member declaration initalizations. No functional change intended.
2020-08-16 11:44:06 -04:00
Wilson Snyder
042d3eed23
C++11: Use override where possible. No functional change.
2020-08-16 11:44:05 -04:00
Wilson Snyder
c0127599df
C++11: Use nullptr. No functional change.
2020-08-16 11:44:05 -04:00
Wilson Snyder
7c54a451a9
C++11: Remove pre-c11 VL_OVERRIDE etc. No functional change.
2020-08-16 11:44:05 -04:00
Wilson Snyder
9927e8b3ee
clang-format uses C++11 style. No functional change.
2020-08-15 09:48:08 -04:00
Yutetsu TAKATSUKASA
953a442827
Support hierarchical verilation using protect lib ( #2206 )
2020-08-15 09:43:53 -04:00
Wilson Snyder
a52f975bd7
Fix combining different-width parameters ( #2484 ).
2020-07-26 17:54:23 -04:00
Wilson Snyder
1488f9130d
Enable simple function localparams ( #2461 )
2020-07-15 19:31:19 -04:00
Wilson Snyder
d42f9c095b
Delay parsing of associative arrays until dtypes known.
2020-06-09 07:13:40 -04:00
Wilson Snyder
3963a50aef
Internals: Refactor param array handling to use subroutine. No functional change intended.
2020-06-08 07:43:07 -04:00
Geza Lore
95534fa5c5
Remove unused headers ( #2389 )
2020-05-31 20:21:07 +01:00
Wilson Snyder
6a882f9dc6
Internal code coverage improvements. No functional change intended.
2020-05-23 10:34:58 -04:00
Wilson Snyder
4773a1e77c
Misc internal coverage improvements.
2020-05-17 11:06:14 -04:00
Wilson Snyder
72bd91c7f1
Support $isunbounded and parameter $. ( #2104 )
2020-05-07 21:12:58 -04:00
Wilson Snyder
f3308d236b
clang-format remaining sources. No functional change.
2020-04-15 07:58:34 -04:00
Wilson Snyder
50535a1894
Internals: cppcheck 1.90 fixes. No functional change intended.
2020-04-05 18:57:47 -04:00
Wilson Snyder
19b472cf0b
Internals: Cleanup unused nodep in visitors. No functional change intended.
2020-04-04 08:31:14 -04:00
Wilson Snyder
1ce360ed5b
Add SPDX license identifiers. No functional change.
2020-03-21 11:24:24 -04:00
Wilson Snyder
5b83484f20
Remove dead genblk code & some cleanups.
2020-02-25 18:57:51 -05:00
Todd Strader
77f1b3eef4
Support parameter access from arrays of interfaces, #2155 .
2020-02-06 19:19:23 -05:00
Wilson Snyder
609a5dc26d
Fix cppcheck warnings. No functional change intended.
2020-02-03 23:21:56 -05:00
Wilson Snyder
a4e8d39932
Spelling fixes
2020-01-24 20:10:44 -05:00
Yutetsu TAKATSUKASA
fbdf5f2dad
Internals: Mark all visit() with VL_OVERRIDE. Closes #2132 .
...
* Add VL_OVERRIDE macro so that compiler can tell my typo when trying to override a function.
* Mark visit() with VL_OVERRIDE. No functional change intended.
2020-01-21 17:35:56 -05:00
Wilson Snyder
623c4ec103
Internals: Create VL_DO_DANGLING. No functional change intended.
2020-01-16 20:17:11 -05:00
Wilson Snyder
f23fe8fd84
Update copyright year.
2020-01-06 18:05:53 -05:00
Wilson Snyder
5811ec07e6
Update URLs to https://verilator.org
2019-11-07 22:33:59 -05:00
Wilson Snyder
9f977ed419
Codacy/Cppcheck cleanups and badge.
2019-10-24 21:48:45 -04:00
Wilson Snyder
9bf6135f6d
Remove some output tabs.
2019-10-05 17:35:08 -04:00
Wilson Snyder
771a301f66
Commentary: Remove newlines, upsets some patches. No functional change.
2019-10-04 20:17:11 -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
Todd Strader
4a14788c9b
When showing an error, show the instance location
2019-07-26 12:52:38 -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
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
Todd Strader
6f2f668449
Fix dotted references to type parameter sizes, bug1458.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-06-11 19:00:24 -04:00
Wilson Snyder
c0be8bcefb
Internals: Remove some pointless V3Number temporaries. No functional change intended.
2019-05-29 23:18:47 -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
Wilson Snyder
59d7d9e8c3
Fix real parameter assignment, bug1427.
2019-05-17 20:50:57 -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
08d041cb93
Add error when use parameters without value, bug1424.
2019-04-30 19:16:41 -04:00
Wilson Snyder
aaf5b7c2c0
Fix uninitialized data in unroller, bug1386. [Al Grant]
2019-01-06 16:56:56 -05:00
Wilson Snyder
8a4aeddbb0
Copyright year update.
2019-01-03 19:17:22 -05:00
Wilson Snyder
304a24d03a
Internals: Fix many clang-tidy issues. No functional change intended.
2018-10-14 18:39:33 -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
e4d638c73d
Internals: Cleanup string casts. No functional change.
2018-10-13 22:02:39 -04:00
Wilson Snyder
86d85412e1
Merge from master
2018-06-22 18:51:02 -04:00
Wilson Snyder
35a40b4930
Commentary
2018-06-22 06:35:27 -04:00
Wilson Snyder
4c7a397dc4
Merge from master
2018-06-16 18:05:26 -04:00
Wilson Snyder
047a08c999
Internals: Clean some UASSERTs. No functional change.
2018-06-16 18:00:21 -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
2f7002c5ec
Merge from master
2018-04-10 22:11:49 -04:00
Todd Strader
9219ddaece
Report interface ports connected to wrong interface, bug1294.
2018-04-04 21:03:43 -04:00
Wilson Snyder
2c30aecc5b
Merge from master
2018-03-10 16:51:34 -05:00
Wilson Snyder
54a101acbe
Internals: Fix -DLEAK_CHECKS failing due to visitor destructor being too late.
2018-03-10 12:57:50 -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
a579e9273b
Support self-recursive modules, bug659.
2017-11-18 17:42:35 -05:00
Wilson Snyder
21369bec95
Internals: Renames in prep for recursion. No functional change.
2017-11-18 17:40:10 -05:00
Wilson Snyder
0bdc57a14a
Fix lost .tree debug file extensions in recent commit.
2017-10-01 22:17:37 -04:00
Wilson Snyder
63361fc56e
Add performance information to --stats file.
2017-09-17 22:52:57 -04:00
Wilson Snyder
7fb29621c3
Fix interface functions returning wrong parameters, bug996.
2017-05-18 22:49:17 -04:00
Wilson Snyder
9dc01cf540
Support arrayed parameter overrides, bug1153.
2017-05-02 19:16:54 -04:00
Wilson Snyder
8943ad5966
internals: Remove extra newlines on v3fatalSrc. No functional change.
2017-04-28 20:09:27 -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
7efa40966a
Internals: Remove second argument to visitors. No functional change intended.
2016-11-27 08:11:38 -05:00
Wilson Snyder
183cabc77d
Internals: Have cloning return node's type to avoid casts. No functional change.
2016-11-08 21:16:22 -05:00
Stefan Wallentowitz
3edba7b662
Fix type parameters with low optimization, bug1101.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2016-11-04 22:58:21 -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
e061eb3003
Fix using short parameter names on negative params, bug1022.
2016-01-20 22:09:11 -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
Wilson Snyder
f0af8726e3
Internals: Fix some spacing. No functional change.
2015-12-05 17:12:03 -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
c72ee41142
Add z to param values to avoid conflicts.
2015-11-05 07:00:04 -05:00
Wilson Snyder
bf5dee955d
Fix real parameters causing bad module names, bug992.
2015-11-04 22:01:21 -05:00
Wilson Snyder
4464b13163
Fix dot indexing into arrayed inferfaces, bug978.
2015-10-23 23:06:24 -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
318ded4198
Internals: Cleanup cppcheck warnings.
2015-10-03 22:33:06 -04:00
Wilson Snyder
d0653f72e2
Fix very long module names, bug937.
2015-09-19 20:12:35 -04:00
Wilson Snyder
7163c8d048
Fix internal error on dotted refs into generates, bug958.
2015-09-18 20:57:27 -04:00
Wilson Snyder
0ee5743853
Add --dump-treei-<srcfile>, bug894.
2015-03-12 19:48:04 -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
5559ec903b
Fix error when tracing public parameters, bug722.
2014-07-21 20:44:33 -04:00
Wilson Snyder
28e35a64ea
Support parameter arrays, bug683.
2014-04-01 23:16:16 -04:00
Wilson Snyder
4422de0c6c
Copyright year update.
2014-01-06 19:28:57 -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
f07f6a26a8
cppcheck fixes
2013-02-03 13:27:37 -05:00
Wilson Snyder
d4ef86afc0
Fix signed/unsigned parameter misconversion, bug606.
2013-01-18 21:35:43 -05:00
Wilson Snyder
a8bbf7231b
Copyright year update.
2013-01-01 09:42:59 -05:00
Wilson Snyder
e4f0a8952c
Fix double-deep parameter cell WIDTHs, bug541.
2012-08-02 07:02:57 -04:00
Wilson Snyder
8b9b7178a2
Internals: MAJOR CHANGE. Combine V3Link and V3LinkDot stages for structures.
...
Functionality should be similar, but may introduce instability in resolving variables/cells.
Final merge from dot.
2012-07-21 17:12:42 -04:00
Wilson Snyder
c6e7d87960
Commentary - Remove author lines as amany contributors now
2012-05-24 19:19:48 -04:00
Wilson Snyder
87e8736823
IMPORTANT: Major internal changes for supporting complex data types.
...
Adds dtype() to every node, keep global table of dtypes and remove duplicates.
Final merge from dtype branch.
2012-04-29 10:14:13 -04:00
Wilson Snyder
a4ddc5b3ac
Internals: Create user1SetOnce(). No functional change.
2012-04-29 08:55:33 -04:00
Wilson Snyder
74c4c1bf44
Internals: Pass unconnected pins through structures. No functional change intended.
2012-04-26 19:01:11 -04:00
Wilson Snyder
2d8feabe54
Fix generate operators not short circuiting, bug413. Merge from Jeremy Bennett.
2012-04-19 22:53:52 -04:00
Wilson Snyder
50edef4ab2
Add Emacs indentation line. No functional change
2012-04-12 21:08:20 -04:00
Wilson Snyder
996f48fcf0
Fix processing unused parametrized modules, bug470.
2012-03-24 15:54:06 -04:00
Wilson Snyder
37839e2709
Cleanup trailing whitespace. No functional change
2012-03-20 16:01:53 -04:00
Wilson Snyder
c0f7bc4b5e
Tests: Parameter bug case
2012-03-09 19:35:37 -05:00
Wilson Snyder
c2c7c7bd9a
Copyright year update
2012-01-15 10:26:28 -05:00
Wilson Snyder
d051912f21
Internals: Rename functions to match real branch. No functional change.
2011-07-21 21:32:31 -04:00
Wilson Snyder
481b261458
Internals: add a few userIncs, No functional change
2011-01-18 21:19:12 -05:00
Wilson Snyder
71c1f00ec2
Copyright year update
2011-01-01 18:21:19 -05:00
Wilson Snyder
06967c0c46
Fix some constant parameter functions causing crash, bug253.
2010-05-25 19:37:45 -04:00
Wilson Snyder
2da9d46ca6
Internals: Rename AstVar::initp to valuep as it's a constant, not initial value
2010-01-21 18:20:47 -05:00
Wilson Snyder
729dfdfed7
Copyright year update
2010-01-05 21:15:06 -05:00
Wilson Snyder
e0bca07e06
Internals: Create AstNodeModule in prep for packages
2009-11-07 06:20:20 -05:00
Wilson Snyder
f7efae93d5
Internals: Clean up the main flex/bison files to have some sanity.
...
(Hopefully) no functional change.
. V3Parse.h External consumer interface to V3ParseImp
. V3ParseImp Internals to parser, common to across flex & bison
... V3ParseGrammar Wrapper that includes V3ParseBison
..... V3ParseBison Bison output
... V3ParseLex Wrapper that includes lex output
..... V3Lexer.yy.cpp Flex output
2009-10-31 10:08:38 -04:00
Wilson Snyder
39444d83c5
Support little endian bit vectors ("reg [0:2] x;").
2009-10-25 16:53:55 -04:00
Wilson Snyder
64b57fa907
Internals: Commentary and new select tests for future merge-in. No functional change.
2009-10-15 21:47:15 -04:00
Wilson Snyder
dd4059beb8
Internals: Rework V3Param, V3Width and V3Const to return a AstNode* representing
...
any replacement edit they made to the passed in node. Assure all callers use it
and/or comment on non-use. Hopefully no function changed.
2009-10-14 20:13:04 -04:00