Geza Lore
60d5f0e86b
Emit model implementation as loose methods. ( #3006 )
...
This patch introduces the concept of 'loose' methods, which semantically
are methods, but are declared as global functions, and are passed an
explicit 'self' pointer. This enables these methods to be declared
outside the class, only when they are needed, therefore removing the
header dependency. The bulk of the emitted model implementation now uses
loose methods.
2021-06-13 14:33:11 +01:00
Geza Lore
61c9866a1e
Internals: Generate ASTGEN_SUPER_* macros instead of expanding. ( #2975 )
...
astgen now generates ASTGEN_SUPER_* macros, instead of expanding the
ASTGEN_SUPER itself. This means that V3AstNodes.h itself can be included
in V3Ast.h, which helps IDEs (namely CLion) find definitions in
V3AstNodes.h a lot better. Albeit this is a little bit more boilerplate,
writing constructors of Ast nodes should be a lot rarer than trying to
find their definitions, so hopefully this is an improvement overall.
astgen will error if the developer calls the wrong superclass
constructor.
2021-05-22 11:13:02 +01:00
Wilson Snyder
2ca21c01d2
Internal coverage improvements
2021-03-28 20:03:08 -04:00
Wilson Snyder
e3788e871e
Fix unpacked-in-class array reference assignments
2021-03-13 13:04:13 -05:00
Wilson Snyder
1b4a82acde
Verilated signals now use VlUnpacked in place of C arrays. ( #2774 ) partial.
2021-03-13 12:37:19 -05:00
Wilson Snyder
689d5b5090
Internals: Add std:: to make_pair. No functional change.
2021-03-12 18:17:49 -05:00
Wilson Snyder
9650aefa42
Internals: Cleanup unneeded {}. No functional change
2021-02-21 21:25:21 -05:00
Julien Margetts
a11700271f
Add LATCH and NOLATCH warnings ( #1609 ) ( #2740 ).
2021-01-05 14:26:01 -05:00
Wilson Snyder
bd602d0e2d
Copyright year update
2021-01-01 10:29:54 -05:00
Wilson Snyder
9f8b17230a
Cleanup extra space on 'VlWide<...>>'
2020-12-23 18:09:12 -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
Yutetsu TAKATSUKASA
13e88106da
Internals:Cleanup dpiTypesToStringConverter. No functional change is intended. ( #2698 )
2020-12-13 16:05:06 +09:00
Wilson Snyder
517fdb7587
Support queue of arrays
2020-12-12 19:19:32 -05:00
Wilson Snyder
251812638d
Internals: Rename accessor. No functional change.
2020-12-07 18:50:31 -05:00
Wilson Snyder
f858dd44ac
Fix :: references to forward classes
2020-12-05 16:23:20 -05:00
Wilson Snyder
d21b4e3fc7
Internal cast preparatory cleanups.
2020-11-29 18:26:06 -05:00
Wilson Snyder
aa360052a8
Internals: Code movement, no functional change.
2020-11-28 22:01:11 -05:00
Wilson Snyder
e09f039a36
Internals: Remove dead code. No functional change.
2020-11-28 21:43:37 -05:00
Wilson Snyder
a37866ee92
Support 'super'.
2020-11-26 11:06:59 -05:00
Wilson Snyder
bf24fa9478
Fix access to non-overridden base class variable ( #2654 ).
2020-11-24 22:46:02 -05:00
Wilson Snyder
e1c45440fc
Internals: Rename packagep(). No functional change.
2020-11-24 21:56:03 -05:00
Wilson Snyder
fd21a41acd
Internals: Minor cleanups before class fix ( #2654 ). No functional change intended.
2020-11-24 21:28:26 -05:00
Wilson Snyder
c371a63d41
Internals: Fix missing final. No functional change.
2020-11-19 08:23:15 -05:00
Yutetsu TAKATSUKASA
0102efd4ea
Support unpacked array in DPI-C ( #2648 )
...
* Add tests for unpacked array in DPI-C
* Add more generic parameter generator to AstNodes
* Supports multi dimensional array in DPI ( DPI argmuments <=> Verilator internal type conversion)
consider typedef in V3Task
fix export test
fix inout for scalar
support export func of time
* V3Premit does not show an error for wide words nor ArraySel
* Unnecessary pack func for unapcked array does not appear anymore
* Support unpacked array in runtime header
- Add an overload for lvalue VL_CVT_PACK_STR_NN
- Allow conversion from void *
* touch up tests for codacy advices
* resolve free functions. no functional change intended.
2020-11-19 22:02:58 +09:00
Wilson Snyder
b6ded59c2b
Internals: Use and enforce class final for ~5% performance boost.
2020-11-18 21:32:16 -05:00
Wilson Snyder
c0888c1b0f
Internals: Use newline instead of endl to avoid unneeded flush.
2020-11-18 21:03:23 -05:00
Wilson Snyder
b84c9bb4c0
Internals: Show scope debug information.
2020-11-11 19:00:10 -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
44eb362a18
clang-tidy cleanups. No functional change intended.
2020-11-10 21:40:14 -05:00
Wilson Snyder
ff5465308b
Internals: Tree dump DEFAULT pattern. No functional change.
2020-11-07 11:56:24 -05:00
Wilson Snyder
80284c437e
Internals: Refactor some VAssign printing. No functional change.
2020-11-01 16:59:23 -05:00
Wilson Snyder
2aedc91151
Support queue and associative array 'with' statements. ( #2616 )
2020-11-01 10:56:07 -05:00
Wilson Snyder
a56e0a6e89
Internals: Prep for type method. No functional change intended.
2020-10-17 16:48:11 -04:00
Wilson Snyder
451e961e03
Internals: Prep for type method. No functional change intended.
2020-10-17 16:04:29 -04:00
Wilson Snyder
4ba2637360
Fix class wide member display ( #2567 ).
2020-09-25 07:37:38 -04:00
Piotr Binkowski
57a53c014d
Internals: Add proper delegation to dump methods ( #2555 )
2020-09-16 21:52:24 -04:00
Wilson Snyder
1899a875a4
Internals: Create VAccess class. No functional change intended.
2020-09-07 17:09:25 -04:00
Wilson Snyder
3d073c9534
Fix class extends to use virtual destruction
2020-08-23 20:00:39 -04:00
Wilson Snyder
9702d11657
Support class extern.
2020-08-22 19:46:21 -04:00
Wilson Snyder
6013b54f7b
clang-tidy cleanups. No functional change intended.
2020-08-16 14:55:46 -04:00
Wilson Snyder
ac04e85a1c
C++11: More range for. No functional change intended.
2020-08-16 12:54:32 -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
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
Yutetsu TAKATSUKASA
953a442827
Support hierarchical verilation using protect lib ( #2206 )
2020-08-15 09:43:53 -04:00
Wilson Snyder
fdb4d3a145
Fix coredump with UVM parse, caused by recent commit.
2020-07-11 20:32:27 -04:00
Wilson Snyder
bb8899f307
Internals: Rename AstPackageRef as may point to class.
2020-07-11 10:29:15 -04:00
Geza Lore
1632160fb1
Internals: Remove redunand SenItem nodes ( #2457 )
2020-07-05 13:13:03 -04:00
Yutetsu TAKATSUKASA
271fa5fe3c
Internals: move parseParamLiteral() to AstConst . No functional change intended. ( #2452 )
2020-07-02 07:29:52 -04:00
Wilson Snyder
6de78d58fa
Add new UNSUPPORTED error code to replace most previous Unsupported: messages.
2020-06-09 19:20:16 -04:00
Wilson Snyder
ae448e5ef9
Fix older GCC compiler error.
2020-06-01 09:08:50 -04:00
Wilson Snyder
a57826b125
Line Coverage now tracks all statement lines, not just branch lines.
2020-05-31 15:52:17 -04:00
Geza Lore
656c460605
Add --dump-tree-addrids developer option
2020-05-31 20:21:55 +01:00
Geza Lore
95534fa5c5
Remove unused headers ( #2389 )
2020-05-31 20:21:07 +01:00
Wilson Snyder
35fc8b7259
Debug: Show column numbers in .tree files
2020-05-30 10:08:30 -04:00
Wilson Snyder
f7249ad23a
Internals: AstRefDType points to AstTypedef instead of sub-dtype, in prep for future commits.
2020-05-24 14:22:06 -04:00
Wilson Snyder
71651718d4
Internals: Track :: in AstDot parsing. No parsing change intended.
2020-05-23 12:44:15 -04:00
Geza Lore
ac09ad3ffd
Minor improvements to DPI open array handling ( #2316 )
...
- Allow arbitrary number of open array dimensions, not just 3. Note
right now this only works with the array querying functions specified
in IEEE 1800-2017 H.12.2
- Issue error when passing dynamic array or queue as DPI open array
(currently unsupported)
- Also tweaked AstVar::vlArgTypeRecurse, which should now error or fail
for unsupported types.
2020-05-08 18:22:44 +01:00
Wilson Snyder
546ccd56c4
Internals: Enable future JumpGo to non-end. No functional change intended.
2020-05-06 21:33:05 -04:00
Wilson Snyder
70549e1a64
Internals: Parse lifetime directives; still unsupported.
2020-04-26 12:45:06 -04:00
Wilson Snyder
7176aee852
Internals: Parse fork and delays, but then still report unsupported.
2020-04-22 21:31:40 -04:00
Wilson Snyder
def40fab9b
Internals: Rename VSigning
2020-04-19 21:19:09 -04:00
Wilson Snyder
e6f345e45d
Internal: clang-tidy fixes. No functional change.
2020-04-15 21:47:37 -04:00
Wilson Snyder
d4f7f5297a
Support IEEE time units and time precisions, #234 . ( #2253 )
...
Includes `timescale, $printtimescale, $timeformat.
VL_TIME_MULTIPLIER, VL_TIME_PRECISION, VL_TIME_UNIT have been removed
and the time precision must now match the SystemC time precision.
To get closer behavior to older versions, use e.g. --timescale-override
"1ps/1ps".
2020-04-15 19:39:03 -04:00
Wilson Snyder
f3308d236b
clang-format remaining sources. No functional change.
2020-04-15 07:58:34 -04:00
Wilson Snyder
1a6c2fc55d
Fix class members getting misoptimized away.
2020-04-10 21:10:21 -04:00
Geza Lore
0cfa828572
Fix DPI import/export to be standard compliant, #2236 .
2020-04-07 19:07:47 -04:00
Wilson Snyder
6eadb8e771
Add simplistic class support with many restrictions, see manual, #377 .
2020-04-05 09:30:23 -04:00
Wilson Snyder
bf17bb4648
Fix codacity warnings
2020-04-04 20:08:58 -04:00
Wilson Snyder
0cf44a9c4f
Internals: Refactor InsideRange common code. No functional change intended.
2020-03-30 18:12:50 -04:00
Wilson Snyder
1ce360ed5b
Add SPDX license identifiers. No functional change.
2020-03-21 11:24:24 -04:00
Wilson Snyder
808c958d42
Internals: Add AstNodeCCall and other items towards classes.
2020-03-07 12:52:11 -05:00
Wilson Snyder
e70cba77e6
Add support for dynamic arrays, #379 .
2020-03-07 10:24:27 -05:00
Wilson Snyder
68b6a0b667
Fix genblk naming with directly nested generate blocks, #2176 .
2020-02-25 22:21:16 -05:00
Wilson Snyder
609a5dc26d
Fix cppcheck warnings. No functional change intended.
2020-02-03 23:21:56 -05:00
Wilson Snyder
2ca9f73b31
Internals: Cleanup Emit towards constructor/destructor output.
2020-02-02 21:15:07 -05:00
Wilson Snyder
119162912a
Internals: Determine emit forward declaraions in new pass, towards classes.
2020-02-01 16:51:05 -05:00
Wilson Snyder
80d94891e1
Internals: Allow const & non-member CFuncs for class branch. No functional change.
2020-02-01 10:57:55 -05:00
Wilson Snyder
68fa82fb14
Support $typename, and use to cleanup error messages.
2020-01-26 13:21:25 -05:00
Geza Lore
ef5250f0ca
Internals: Further performance improvement of AstNode type tests, #2138 . No functional change intended.
...
Replace the virtual type() method on AstNode with a non-virtual, inlined
accessor to a const member variable m_type. This means that in order to be
able to use this for type testing, it needs to be initialized based on the
final type of the node. This is achieved by passing the relevant AstType
value back through the constructor call chain. Most of the boilerplate
involved is auto generated by first feeding V3AstNodes.h through astgen to
get V3AstNodes__gen.h, which is then included in V3Ast.h. No client code
needs to be aware and there is no functional change intended.
Eliminating the virtual function call to fetch the node type identifier
results in measured compilation speed improvement of 5-10% as it
eliminates up to 20% of all mispredicted branches from the execution.
2020-01-25 15:29:44 -05:00
Wilson Snyder
623c4ec103
Internals: Create VL_DO_DANGLING. No functional change intended.
2020-01-16 20:17:11 -05:00
Wilson Snyder
023526ad4b
Internals: Minor refactoring from class branch.
2020-01-15 20:18:12 -05:00
Wilson Snyder
f23fe8fd84
Update copyright year.
2020-01-06 18:05:53 -05:00
Stefan Wallentowitz
9a54b2144b
Fix queue issues, bug1643.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-18 18:17:18 -05:00
Wilson Snyder
53c6b7df63
Internals: Rename NodeClassDType. No functional change.
2019-12-16 22:46:09 -05:00
Wilson Snyder
83a1bd0675
Support immediate cover statements & refactor coverage internals.
2019-12-16 21:44:20 -05:00
Wilson Snyder
2408de16a0
Support bounded queues.
2019-12-14 21:39:47 -05:00
Wilson Snyder
700f2072c0
Framework for WDatas being vectors of 64-bit EDatas, but not supporting this at this time.
2019-12-08 21:36:38 -05:00
Wilson Snyder
809a6de9cd
Fix template brackets to avoid C++11, bug1617.
2019-12-02 06:19:33 -05:00
Wilson Snyder
e28175108f
Support queues (excluding {} notation and pattern assignments), bug545.
2019-12-01 12:35:49 -05:00
Wilson Snyder
b81295230a
Support associative arrays.
2019-12-01 11:52:48 -05:00
Wilson Snyder
38e586fabe
Internals: Misc refectoring for assoc/queues.
2019-12-01 06:09:58 -05:00
Wilson Snyder
21a380def0
Rework variable emit to prep for other data types.
2019-11-12 21:52:25 -05:00
Wilson Snyder
4767083a72
Internals: Rework AstInitArray to have O(1) access. No functional change intended.
2019-11-09 17:12:26 -05:00
Wilson Snyder
5811ec07e6
Update URLs to https://verilator.org
2019-11-07 22:33:59 -05:00
Wilson Snyder
352adbed74
Codacy/Cppcheck cleanups.
2019-10-24 22:40:15 -04:00
Wilson Snyder
94f7133c6f
Internals: make dump const. No functional change intended.
2019-10-20 11:49:41 -04:00
Wilson Snyder
91f1acd85f
Add --protect-ids to obscure information in objects, bug1521.
2019-10-06 13:24:21 -04:00
Wilson Snyder
307549e8a6
Internals: Fix some cppcheck warnings.
2019-10-06 08:20:02 -04:00
Wilson Snyder
f1c04b5d25
Fix extra space in mtask comment. No functional change.
2019-10-04 22:54:57 -04:00
Wilson Snyder
771a301f66
Commentary: Remove newlines, upsets some patches. No functional change.
2019-10-04 20:17:11 -04:00
Wilson Snyder
a9954a71c3
Fix case statements with strings, bug1536.
2019-10-04 19:13:39 -04:00
Todd Strader
28b9db1903
Add AstVFile and AstTextBlock, towards bug1490.
2019-09-27 04:24:38 -04:00
Wilson Snyder
3a720204c2
Internals: Remove m_logicMap as m_detailedMap covers it. No functional change intended.
2019-08-04 08:16:24 -04:00
Wilson Snyder
97561bf064
When showing an error, show source code.
2019-07-14 21:42:03 -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
9af84c71f5
Internals: More UASSERT_OBJ conversions. No functional change intended.
2019-07-07 09:01:36 -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
01ef7122e9
Internals: Add lcov code coverage markers.
2019-06-30 22:37:03 -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
Kanad Kanhere
3411279294
Internals: Relocate quoteNameControls, part of bug1444.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-05-16 21:44:01 -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
0094cd7a81
Internals: Spacing fixes. No functional change.
2019-03-13 19:47:47 -04:00
Wilson Snyder
60f2f176a2
Fix DPI export void compiler error, bug1391.
2019-01-16 00:38:42 -05:00
Wilson Snyder
a2a09253a2
Internals: Show static funcs.
2019-01-12 09:43:24 -05:00
Wilson Snyder
ef884143d1
Add circular typedef error, bug1388.
2019-01-12 09:33:57 -05:00
Wilson Snyder
3505486ec8
Internals: Spacing; fix assertion
2019-01-05 05:46:37 -05:00
Wilson Snyder
8a4aeddbb0
Copyright year update.
2019-01-03 19:17:22 -05:00
Wilson Snyder
ede7236945
For --xml, add additional var information, bug1372.
2018-12-06 07:12:39 -05:00
Wilson Snyder
ad2929dff0
Support "ref" and "const ref" pins and functions, bug1360.
2018-10-30 20:50:09 -04: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
304a24d03a
Internals: Fix many clang-tidy issues. No functional change intended.
2018-10-14 18:39:33 -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
e8b8b33ff6
Internals: Cleanup find with chars for clang-tidy. No functional change.
2018-10-13 22:28:59 -04:00
Wilson Snyder
d11592cadd
Support signal types in FST dumps, bug1358.
2018-10-04 20:24:41 -04:00
Wilson Snyder
8ef9ac7dba
Support in/out directions in FST dumps, bug1358.
2018-10-03 19:51:05 -04:00
Wilson Snyder
ec8dbbffed
MAJOR: Add multithreaded model generation.
2018-07-22 20:54:28 -04:00
Wilson Snyder
05a8a9ee28
Remove NULL checks of this, as upsets some compilers.
2018-05-26 08:28:19 -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
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
49fe4d081c
Support DPI open arrays, bug909, bug1245.
2017-12-17 16:28:58 -05:00
Wilson Snyder
bf3f111ca4
Internals: Move VLVF flags to common function. No functional change.
2017-12-16 10:07:15 -05:00
Wilson Snyder
d1b8f53711
Support DPI time and svLogicVal.
...
Note older version incorrectly assumed svBitVal even for logicals.
2017-12-09 20:17:37 -05:00
Wilson Snyder
ae9179f412
Fix partial slicing with pattern assignments, bug991.
2017-11-23 14:55:32 -05:00
Wilson Snyder
a579e9273b
Support self-recursive modules, bug659.
2017-11-18 17:42:35 -05:00
John Coiner
f63e946f04
Internals: Add consts. No functional change.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-02 18:02:11 -04: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
75aab4e9d2
Fix conditional slices and add related optimizations.
2017-10-04 21:27:34 -04:00
Wilson Snyder
c2e8062f84
Verilated headers no longer "use namespace std;"
2017-09-23 07:32:37 -04:00
Wilson Snyder
89c8449ec0
Support package export, bug1217.
2017-09-20 21:04:59 -04:00
Wilson Snyder
ce879122bb
Fix --assert with complex case statements, bug1164.
2017-05-17 20:15:40 -04:00
Wilson Snyder
be6a3d0f10
Fix wreal not handling continuous assign, bug1150.
2017-03-30 18:32:37 -04:00
Wilson Snyder
e6d7e7e329
Version bump
2017-01-15 12:13:13 -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
Wilson Snyder
04977ef721
Internals: Show clocker in debug dumps. Part of bug1009.
2016-05-05 22:40:19 -04:00
Wilson Snyder
a509b6a21c
Internals: Fix compares to null, ongoing part of bug1030. No functional change intended.
2016-02-08 22:15:44 -05:00
Wilson Snyder
b738d1960a
Copyright year update
2016-01-06 20:36:41 -05:00
Wilson Snyder
00759f777e
Fix dpi imports inside generates.
2015-06-16 19:27:18 -04:00
Wilson Snyder
6ac672b4a3
Fix SystemC arrayed bit vectors, bug886.
2015-02-25 21:09:55 -05:00
Wilson Snyder
8323092a0c
Fix cppcheck warnings. No functional change.
2015-02-09 21:05:27 -05:00
Wilson Snyder
a6743588b6
Fix UNOPTFLAT change detect on multidim arrays, bug872.
2015-01-21 20:43:21 -05:00
Wilson Snyder
4c91ade61d
Copyright year update
2015-01-07 18:25:53 -05:00
Wilson Snyder
43be4cf2b5
Add 'string' printing and comparisons, bug746, bug747, etc.
2014-11-28 15:01:50 -05:00
Wilson Snyder
8b457b9b66
Internal: Rename string functions. No functional change.
2014-11-28 13:50:37 -05:00
Wilson Snyder
3f82fd2f37
Add public enums, bug833.
2014-11-07 07:50:11 -05:00
Wilson Snyder
fe5bf01b25
Fix dpiGetContext in dotted scopes, bug740.
2014-07-21 20:55:52 -04:00
Wilson Snyder
2e10555f03
Fix tracing of packed arrays without --trace-structs, bug742.
2014-04-15 20:20:45 -04:00
Wilson Snyder
0dbdbffba7
Fix double I/O port warnings.
2014-04-15 18:50:04 -04:00
Wilson Snyder
2d61e0270e
Support case inside, bug708.
2014-01-20 21:59:53 -05: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
23bb045a72
Support interfaces and modports, bug102.
2013-05-27 21:39:19 -04:00
Wilson Snyder
8e2617ab8d
Internals: V3Inline support for future hard-no-inline. No functional change.
2013-05-26 11:17:42 -04:00
Wilson Snyder
24fcae4f49
Internals: When broken link fatal, say which rule violated
2013-05-25 17:05:22 -04:00
Wilson Snyder
6a69813326
Internals: Renames for interfaces. No functional change.
2013-05-18 19:45:52 -04:00
Wilson Snyder
d581582339
Add ALWCOMBORDER warning.
2013-04-30 22:55:28 -04:00
Wilson Snyder
345a5d5646
Add --pins-sc-uint and --pins-sc-biguint, bug638.
2013-04-26 21:02:32 -04:00
Wilson Snyder
772a3a97eb
Internals: Functions in order. No functional change.
2013-02-18 12:15:50 -05:00
Wilson Snyder
929aeebf12
Support , and related functions, bug448.
2013-01-20 12:19:22 -05:00
Wilson Snyder
de4016dcff
Internals: Ast classes create declRange().
2013-01-17 20:41:45 -05:00
Jeremy Bennett
8b47c4e307
Fix loosing logic/bit difference and -x-initial-edge fallout, bug604.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2013-01-17 07:16:19 -05:00
Wilson Snyder
6d1b42bedb
Fix implicit one bit parameter selection, bug603.
2013-01-16 20:58:48 -05:00
Wilson Snyder
f0a4bd28b6
Comment about -x-initial-edge and logic/bit.
2013-01-16 20:47:22 -05:00
Wilson Snyder
8127a79cb1
Fix nested packed arrays and structs, bug600.
...
IMPORTANT: Packed arrays are now represented as a single linear vector in
Verilated models this may affect packed arrays that are public or accessed via the VPI.
2013-01-14 21:49:22 -05:00
Wilson Snyder
7f5220a6ca
Internals: Fix marking of packed vs unpacked wires.
2013-01-13 22:18:57 -05:00
Wilson Snyder
7a8184d206
Internals: Remove dimension and use only dtypes for V3Width.
2013-01-13 15:21:38 -05:00
Wilson Snyder
dfc11da2ce
Internals: Dump array bounds in tree file.
2013-01-13 14:30:56 -05:00
Wilson Snyder
0985b82760
Commentary
2013-01-13 09:48:12 -05:00
Wilson Snyder
5c7a6e278f
Internals: Split into packed and unpacked array types
2013-01-12 16:19:25 -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
cc47ba2404
Support "unsigned int" DPI import functions, msg966.
2012-12-03 20:43:13 -05:00
Wilson Snyder
6339159b04
MAJOR: Support packed structures and unions, bug181.
2012-07-29 10:16:20 -04:00
Wilson Snyder
aec019991c
Tests: Misc fixes from struct branch.
2012-07-28 14:05:30 -04:00
Wilson Snyder
b52d94273c
Internals: Move variable referencing into LinkDot in support of structs.
2012-07-24 06:26:35 -04:00
Wilson Snyder
09ebc0c163
Internals: Fix 0x tree debug suffix. Misc merges from struct. No functional change.
2012-07-22 22:48:39 -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
b7d1c34aa6
Internals: Add more sym table debug, renames. Merge from dot. No functional change
2012-07-19 21:18:39 -04:00
Wilson Snyder
c6e7d87960
Commentary - Remove author lines as amany contributors now
2012-05-24 19:19:48 -04:00
Wilson Snyder
b31a7cdcbf
Internals: Fix uninitialized m_alhs
2012-05-08 20:05:43 -04:00
Wilson Snyder
ff69bdbc6f
Debug: Add @ to end of dtype to avoid miscutting
2012-05-07 19:01:45 -04:00
Wilson Snyder
33c9591a4b
Internals: Move widthPow2. No functional change.
2012-04-29 11:34:25 -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
641024c235
Fix generated inouts with duplicated modules, bug498.
2012-04-27 19:41:13 -04:00
Wilson Snyder
d9598db117
Internals: In debug dumps, show user pointers
2012-04-27 19:01:08 -04:00
Wilson Snyder
68046244dd
Fix 'output tri0' 2001 declaration; Var characteristics must be attributes
2012-04-24 07:45:02 -04:00
Wilson Snyder
0048b04540
Merge from Tristate branch, part 1 of 2. No functional change intended
2012-04-21 19:30:08 -04:00
Wilson Snyder
4d0b964e36
Internals: Merge from dtype. Create subDTypep. No functional change intended.
2012-04-14 12:43:03 -04:00
Wilson Snyder
50edef4ab2
Add Emacs indentation line. No functional change
2012-04-12 21:08:20 -04:00
Wilson Snyder
de696b7092
Debug: Print dtype big endian correctly
2012-03-30 21:50:37 -04:00
Wilson Snyder
37839e2709
Cleanup trailing whitespace. No functional change
2012-03-20 16:01:53 -04:00
Wilson Snyder
8687dcbce1
Internals: Add isRanged, more debug. No functional change.
2012-03-04 16:18:41 -05:00
Wilson Snyder
764399256c
Internals: Rename gdb dump utilities, add fileline dump
2012-03-03 11:29:09 -05:00
Wilson Snyder
e6244ca204
Internals: Move dimension accessors from AstVar to AstNodeDType.
2012-02-28 21:33:17 -05:00
Wilson Snyder
d699247269
Internals: In AstBasicDType avoid use of Range for constants. No functional change.
2012-02-20 11:48:31 -05:00
Wilson Snyder
7caafb4014
Internals: Use dtype functions; changes to integer to match spec
2012-02-20 09:55:20 -05:00
Wilson Snyder
c2c7c7bd9a
Copyright year update
2012-01-15 10:26:28 -05:00
Wilson Snyder
362d642c87
Support "generate for (genvar i=0; ...".
2011-11-29 18:23:18 -05:00
Wilson Snyder
e378cc5791
Add sc_bv attribute to force bit vectors, bug402.
2011-10-26 08:57:27 -04:00
Wilson Snyder
40076287ea
Internals: In .tree files show filename as letter
2011-10-11 07:17:39 -04:00
Wilson Snyder
55906486d8
Support 'real' numbers and related functions.
2011-07-24 15:01:51 -04:00
Wilson Snyder
a007458cb8
Internals: Rename float/double to match real branch. No functional change.
2011-07-21 22:10:25 -04:00
Wilson Snyder
a9ba4a9fcd
Internals: Cleanups in V3Signed towards reals; no functional change
2011-07-05 21:05:35 -04:00
Wilson Snyder
696660639a
Support 'const' variables in limited cases; similar to enums.
2011-07-02 12:45:26 -04:00
Wilson Snyder
6e41d532fe
Use 'vluint64_t' for SystemC instead of (same sized) 'uint64' for MSVC++.
2011-06-29 19:19:01 -04:00
Wilson Snyder
2b330b78b7
Support bit vectors > 64 bits wide in DPI import and exports.
2011-05-20 21:33:31 -04:00
Wilson Snyder
9704f59566
Internals: Rename AstCast to AstCCast
2011-03-17 21:09:52 -04:00
Wilson Snyder
0ab739e8b1
Fix false BLKSEQ on non-unrolled for loop indexes.
2011-01-06 06:46:19 -05:00
Wilson Snyder
71c1f00ec2
Copyright year update
2011-01-01 18:21:19 -05:00
Byron Bradley
9163ce0f6e
Internals: modify AstVar::dimensions() to return a pair, bug227
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2010-04-09 20:43:25 -04:00
Byron Bradley
d776638f53
Internals: Mark packed dimensions in arrays, bug227
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2010-04-09 20:40:41 -04:00
Wilson Snyder
936738b750
Add /*verilator public_flat_rw*/ for timing-specific public access.
2010-04-05 20:01:17 -04:00
Wilson Snyder
ba93a08b40
Support runtime access to public signal names
2010-03-17 08:22:49 -04:00
Wilson Snyder
cdd06e7236
Support "break", "continue", "return".
2010-02-14 10:01:21 -05:00
Wilson Snyder
3912e5ef0b
Allow empty top-level module name, to match standalone simulation
2010-02-03 19:19:18 -05:00
Wilson Snyder
89e03a86b7
Support assignments of multidimensional slices, bug170
2010-01-19 10:52:11 -05:00
Wilson Snyder
788f69a8c9
DPI: Support strings in DPI Imports
2010-01-17 15:10:37 -05:00
Wilson Snyder
729dfdfed7
Copyright year update
2010-01-05 21:15:06 -05:00
Wilson Snyder
dbce06500d
Support enums
2009-12-27 08:29:55 -05:00
Wilson Snyder
ef3ed6e338
Support DPI exports
2009-12-20 08:27:00 -05:00
Wilson Snyder
3386466e7a
DPI svSetScope is speced to return last scope, not new one
2009-12-08 21:35:15 -05:00
Wilson Snyder
17bf13fcb6
Support DPI context imports
2009-12-05 10:38:49 -05:00
Wilson Snyder
a40fae04ce
Support direct programming interface (DPI) "import".
2009-12-03 06:55:29 -05:00
Wilson Snyder
3b39c3391d
Support "import".
2009-11-09 19:07:59 -05:00
Wilson Snyder
e0bca07e06
Internals: Create AstNodeModule in prep for packages
2009-11-07 06:20:20 -05:00
Wilson Snyder
377f194837
Support typedef
2009-11-06 23:16:06 -05:00
Wilson Snyder
700c1f836d
Internals: Move array definitions to AstArrayDType instead of under AstVars.
...
Prep work for more complicated data types.
2009-11-04 22:31:53 -05:00
Wilson Snyder
6bc81d3d26
Support byte, shortint, int, longint in variables, parameters and functions.
...
Internals: function/var sizing and signing now comes via dtypep()
Internals: cleanup code that widths parameters (again)
2009-11-02 22:14:11 -05:00
Wilson Snyder
4c26792c9b
Internals: Create data types and attach to AstVars, in prep for typedefs.
...
Added AstNodeDType and AstBasicDType and associated enums.
2009-11-02 08:06:04 -05:00
Wilson Snyder
39444d83c5
Support little endian bit vectors ("reg [0:2] x;").
2009-10-25 16:53:55 -04:00
Wilson Snyder
b4d3806f10
Fix carriage-returns embedded in display formats
...
Internals: Store all AstDisplay etc strings in un-backslashed raw format.
2009-10-22 21:29:18 -04:00
Wilson Snyder
b1e6fe7139
Fix core dump with SystemVerilog var declarations under unnamed begins.
2009-10-11 20:50:31 -04:00
Wilson Snyder
ceb2f6894f
Fix writing to out-of-bounds arrays writing element 0.
2009-10-08 20:42:45 -04:00
Wilson Snyder
348c43de63
Add verilator --pins-uint8 option to use sc_in<uint8_t/uint16_t>.
2009-06-29 09:21:21 -04:00
Wilson Snyder
4569278c53
Reconsile parser with Verilog-Perl version, to enable more SV features
2009-05-07 18:28:05 -04:00
Wilson Snyder
7df730cedd
Verilator is now licensed under LGPL v3 and/or Artistic v2.0.
2009-05-04 17:07:57 -04:00
Wilson Snyder
193dcf38f4
Add --pins-bv option to use sc_bv for all ports.
2009-03-13 14:17:30 -04:00
Wilson Snyder
59159b4811
Clock gating optimization, currently disabled. Merge from branch
2009-01-07 09:37:59 -05:00
Wilson Snyder
3d06720628
Copyright year update
2009-01-02 11:47:39 -05:00
Wilson Snyder
77405ddded
Add toggle coverage
2008-12-12 15:34:02 -05:00
Wilson Snyder
ddbfc176b6
Internals: Create AstNodeSelItem in prep for future commits.
...
No real functional change, outside of minor debug dump differences.
2008-11-20 07:55:54 -05:00
Wilson Snyder
3b1929259a
Support negative bit indexes.
...
Allow arbitrary characters in symbols (to make '-' work.)
Final merge from negative_lsb branch.
2008-10-06 09:59:22 -04:00
Wilson Snyder
cdd6ea8e60
Fix genvars causing link error when using --public.
2008-09-30 08:58:07 -04:00
Wilson Snyder
3463080a71
Fix extra evaluation of pure combo blocks in SystemC output.
2008-08-06 17:09:33 -04:00
Wilson Snyder
20aa21d4b6
Replace stdio.h and stdarg.h with C++ versions
2008-06-30 13:11:25 -04:00
Wilson Snyder
52912c6329
Convert repository to git from svn.
...
- Change .cvsignore to .gitignore
- Remove Id metacomments
- Cleanup whitespace at end of lines
2008-06-09 21:25:10 -04:00
Wilson Snyder
8e812058cb
Change website references to veripool.org
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@1039 77ca24e4-aefa-0310-84f0-b9a241c72d87
2008-04-25 12:14:27 +00:00
Wilson Snyder
f6fb2362c6
Fix dropping of backslash quoted-quote at end of .
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@1012 77ca24e4-aefa-0310-84f0-b9a241c72d87
2008-03-26 14:58:30 +00:00
Wilson Snyder
a2ffe86a36
Copyright update
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@976 77ca24e4-aefa-0310-84f0-b9a241c72d87
2008-01-15 14:29:08 +00:00
Wilson Snyder
d2ce499b59
Support SystemVerilog .name and .* interconnect.
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@906 77ca24e4-aefa-0310-84f0-b9a241c72d87
2007-03-14 13:06:08 +00:00
Wilson Snyder
895a3264a3
Add isolate_assignments meta comment
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@871 77ca24e4-aefa-0310-84f0-b9a241c72d87
2007-01-18 00:51:26 +00:00
Wilson Snyder
b5b1d94d4a
Copyright date update
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@864 77ca24e4-aefa-0310-84f0-b9a241c72d87
2007-01-02 22:06:40 +00:00
Wilson Snyder
58b1ad1439
Rework parser and add V3LinkParse so we can handle foo[#].foo[#].foo[#:#] etc
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@862 77ca24e4-aefa-0310-84f0-b9a241c72d87
2006-12-21 21:53:51 +00:00
Wilson Snyder
3b554f4c5b
Rename config.h to config_build.h, and add cross compile notes.
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@842 77ca24e4-aefa-0310-84f0-b9a241c72d87
2006-12-18 19:20:45 +00:00
Wilson Snyder
3ad5872d30
Add verilator no_inline_task
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@816 77ca24e4-aefa-0310-84f0-b9a241c72d87
2006-10-11 15:41:42 +00:00
Wilson Snyder
318a6e348c
Support wide public task outputs.
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@810 77ca24e4-aefa-0310-84f0-b9a241c72d87
2006-10-05 14:53:17 +00:00
Wilson Snyder
e471a34323
Add maybePointedTo to v3Broken for better and faster checks
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@809 77ca24e4-aefa-0310-84f0-b9a241c72d87
2006-10-05 00:45:39 +00:00
Wilson Snyder
4f42c25c7c
Fix inout task arguments
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@795 77ca24e4-aefa-0310-84f0-b9a241c72d87
2006-09-25 20:40:52 +00:00
Wilson Snyder
ce10dbd11c
Version bump
...
git-svn-id: file://localhost/svn/verilator/trunk/verilator@753 77ca24e4-aefa-0310-84f0-b9a241c72d87
2006-08-26 11:35:28 +00:00