Commit Graph

1790 Commits

Author SHA1 Message Date
Wilson Snyder
7fc565a1bd Merge from master 2018-06-14 19:04:36 -04:00
Wilson Snyder
0eb1d0a84e Fix cppcheck warnings. No functional change intended. 2018-06-14 18:59:24 -04:00
Wilson Snyder
5d26bca55c Internals: Remove unneeded returns on asserts. 2018-06-13 18:05:00 -04:00
Wilson Snyder
5988bba9fb Merge from master 2018-06-12 21:25:26 -04:00
Wilson Snyder
1c5c9e2435 cppcheck fixes 2018-06-12 21:14:20 -04:00
Wilson Snyder
adfb903469 Merge from master 2018-06-12 05:23:13 -04:00
John Coiner
3e739db7fa Fix linear searches. bug1316. 2018-06-11 22:05:45 -04:00
James Hutchinson
f0ed4346b2 Fix to be in verilog 2005, bug1319.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-06-08 08:01:22 -04:00
John Coiner
94c8064798 Fix linear search; this is part of the fix for issue 1316. 2018-06-07 12:43:19 -04:00
Wilson Snyder
e4a79d643d Fix error without nodep. 2018-05-29 20:03:58 -04:00
Wilson Snyder
27c7d0c95b Merge from master 2018-05-29 20:02:07 -04:00
Wilson Snyder
cf0464c263 Internals: Cleanup V3EmitC common code. No functional change. From threads branch. 2018-05-29 19:55:42 -04:00
Wilson Snyder
05a8a9ee28 Remove NULL checks of this, as upsets some compilers. 2018-05-26 08:28:19 -04:00
Wilson Snyder
c253b7769e Merge from master 2018-05-20 09:14:30 -04:00
Wilson Snyder
0efe343494 Renamed --profile-cfuncs to --prof-cfuncs. 2018-05-20 09:12:29 -04:00
Wilson Snyder
3d49136e27 Merge from master 2018-05-19 09:32:15 -04:00
Wilson Snyder
b6e8133a4d When tracing, use scalars on single bit arrays to appease vcddiff. 2018-05-19 07:52:07 -04:00
Wilson Snyder
cd4e6b35b3 Internals: Standardize debug() function generation. No functional change intended. 2018-05-14 06:50:47 -04:00
Wilson Snyder
9ba6fc9279 Merge from master 2018-05-13 19:39:30 -04:00
Wilson Snyder
2c568603f6 Fix latex warning & misc Commentary 2018-05-13 19:21:08 -04:00
Wilson Snyder
05db8ce6c8 Internals: Move iterators to AstNVisitor to avoid null this. 2018-05-10 20:55:37 -04:00
Wilson Snyder
51422e3ee8 Fix parsing error on bad missing #, bug1308. 2018-05-09 18:32:12 -04:00
Wilson Snyder
489f58011b Merge from master 2018-05-08 21:43:55 -04:00
Wilson Snyder
0ef3c10931 Pull some thread include changes from thread branch. 2018-05-08 21:43:32 -04:00
Wilson Snyder
f02b99c709 Merge from master 2018-04-30 20:36:26 -04:00
Wilson Snyder
c8ba51581f Commentary 2018-04-30 20:34:52 -04:00
John Coiner
542cf9b6e1 Remove errant assert from V3Split 2018-04-13 06:54:53 -04:00
Wilson Snyder
8b954dc381 Additional debug prints 2018-04-12 22:00:34 -04:00
Wilson Snyder
2f7002c5ec Merge from master 2018-04-10 22:11:49 -04:00
John Coiner
767ac2547d Misc clang warning fixes.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-04-10 22:05:55 -04:00
Todd Strader
9219ddaece Report interface ports connected to wrong interface, bug1294. 2018-04-04 21:03:43 -04:00
Wilson Snyder
c7c99d8553 Fix parsing "output signed" in V2K port list, msg2540. 2018-03-29 20:10:27 -04:00
John Coiner
422c915c1d Fix a nondeterminism issue in the new V3Split 2018-03-29 14:03:18 -04:00
Wilson Snyder
1f04d17e77 Merge from master 2018-03-17 12:03:08 -04:00
Wilson Snyder
3963fe4384 Fix GCC-8 compile error. 2018-03-17 11:33:47 -04:00
Wilson Snyder
e49539fb4c Internals: Put cell assigns near cell. No functional change intended except statement order. 2018-03-17 08:43:19 -04:00
Wilson Snyder
02f18fc21b Merge from master 2018-03-15 23:31:59 -04:00
Wilson Snyder
1bcaaa0f0d Internals: Cleanup V3Inst unused argument. No functional change intended. 2018-03-15 23:19:43 -04:00
Wilson Snyder
7922a1de28 Internals: Misc cleanups related to V3LinkDot. No functional change intended. 2018-03-15 19:46:05 -04:00
John Coiner
f55040a38b Fix severe runtime performance bug in certain foreach loops. 2018-03-15 08:59:52 -04:00
Wilson Snyder
2d580e6939 Support IEEE 1800-2017 as default language. 2018-03-12 22:26:34 -04:00
John Coiner
fc48008c1c Support 2018-03-12 16:44:01 -04:00
Wilson Snyder
5652867316 Merge from master 2018-03-11 10:42:44 -04:00
Wilson Snyder
c8cf2afb15 Support assert properties, bug785, bug1290. 2018-03-11 10:37:20 -04:00
Wilson Snyder
d08a91b71e Fix GCC lint complaint of calling NULL->cloneTree. No functional change intended. 2018-03-10 17:44:17 -05: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
0a1b775ed6 Fix various small node leaks. 2018-03-10 14:10:41 -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
John Coiner
db1af07d72 On convergence errors, show activity. 2018-03-10 12:52:11 -05:00
John Coiner
ff82f75023 Add --no-debug-leak to reduce memory use under debug. 2018-03-10 12:18:19 -05:00
Wilson Snyder
22ff760f0b Support calling system functions as tasks, bug1285. 2018-03-08 23:40:19 -05:00
Wilson Snyder
3dccd89c18 Fix missing include for gcc6.4 2018-03-08 21:46:20 -05:00
Tymoteusz Blazejczyk
9f52e23158 Fix verilator_coverage --annotate-min, bug1284. 2018-03-07 19:52:29 -05:00
Wilson Snyder
aed3307214 Enable GCC debug when in debug build 2018-03-03 20:43:14 -05:00
John Coiner
ef3c7bb6a2 Better optimize large always block splitting, bug1244.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-02-28 06:58:41 -05:00
John Coiner
0a887c29f1 Internals: Fix V3LifePost recording assignPre variables.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-02-28 06:57:08 -05:00
Wilson Snyder
e1410775fb Fix CC warning with flex 2.5.35. 2018-02-28 06:34:03 -05:00
Wilson Snyder
f0ba17a19b Merge from master. 2018-02-27 07:24:31 -05:00
John Coiner
a7a790416e Internals: Fix passing bool as int. No functional change.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-02-27 07:16:16 -05:00
Patrick Stewart
fe5c4df079 Support trig functions (() etc), bug1281.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-02-26 04:25:07 -05:00
Wilson Snyder
1376e5de92 Fix pullup/pulldowns on bit selects, bug1274. 2018-02-10 19:08:07 -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
32859d9fc2 Fix GCC 8.0 issues 2018-02-07 18:58:21 -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
0ca0854cac Fix compile error with --public and interface bind, bug1264. 2018-02-01 20:07:46 -05:00
Wilson Snyder
097107bd0b Support 'assume' similar to 'assert', bug1269. 2018-01-31 07:33:10 -05:00
Wilson Snyder
b40b152b87 Fix missing edge type in xml output, msg2480. 2018-01-31 07:29:14 -05:00
Wilson Snyder
3c7fef68c0 Internals: Sort EmitXml visitors. No functional change. 2018-01-31 07:25:10 -05:00
Wilson Snyder
e3f137875b Fix spacing of trace func decls. No functional change. 2018-01-29 19:04:37 -05:00
Wilson Snyder
71fcf45d73 Fix gate optimization out of memory, add --gate-stmts, bug1260. 2018-01-27 15:06:51 -05:00
Wilson Snyder
652b68a5a0 Fix compile error on public real parameters by suppressing, bug1261. 2018-01-24 22:30:30 -05:00
John Coiner
3e0401de1c Misc harmless cleanups from thread branch.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-01-24 20:20:26 -05:00
Stefan Wallentowitz
c164024f38 Remove c++filt and fix status code of Makefile, bug1265
In the generated Makefile the linker output is piped through c++filt
which was very useful for older linkers. But unfortunately the status
code is lost during the piping. So when the make process is embedded
in a larger setup a failure will not manifest to the outside flow.

As modern linkers do the job of c++filt, this removes it from the
generated Makefile. It will also produce a proper status code then.

Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-01-18 21:25:43 -05:00
Wilson Snyder
bd1f1e8699 Fix compile error on public real parameters by suppressing, bug1261. 2018-01-16 19:53:50 -05:00
Wilson Snyder
8e65d93d6d Copyright year update. No functional change. 2018-01-02 18:05:06 -05:00
Wilson Snyder
4901668f13 Add INFINITELOOP warning, bug1254. 2017-12-26 21:35:08 -05:00
Wilson Snyder
49fe4d081c Support DPI open arrays, bug909, bug1245. 2017-12-17 16:28:58 -05:00
Wilson Snyder
3054b36a8d Internals: Avoid cleaning arrays in prep for openarrays. 2017-12-17 12:53:22 -05:00
Wilson Snyder
37a931feb4 Internals: Refactor some V3Task code in prep for openarrays. No functional change intended. 2017-12-16 15:46:21 -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
9a2a5d3155 Internals: Unroll V3Width task processing, in prep for openarrays. No functional change intended. 2017-12-16 09:36:07 -05:00
Wilson Snyder
51787d68b9 Add error if always_comb has sensitivity list. 2017-12-13 19:49:37 -05:00
Wilson Snyder
33eb0db6f8 Fix resolving inline nested interface names, bug1250. 2017-12-13 19:42:49 -05:00
Wilson Snyder
a0b2727c59 Use power-of-two number of members to align structs 2017-12-11 19:16:49 -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
ea91b10086 Internals: Add charIQWN. Proper capitalization. 2017-12-09 14:44:55 -05:00
Wilson Snyder
345657ab32 Workaround GCC/clang bug with huge compile times, bug1248. 2017-12-09 11:52:35 -05:00
Wilson Snyder
b11fa372b1 Fix constant propagation across DPI imports of inout strings. 2017-12-07 20:10:27 -05:00
Wilson Snyder
662ebece71 Support string len() method. 2017-12-07 19:57:11 -05:00
Wilson Snyder
6b6e8dc83e Use VL_UNCOPYABLE in emitted code. No functional change intended. 2017-12-06 23:26:27 -05:00
Wilson Snyder
d215149c7c Fix false ALWCOMBORDER on interface references, bug1247. 2017-12-06 21:29:10 -05:00
Wilson Snyder
895fc0911a Support > 64 bit decimal $display. 2017-12-02 22:10:58 -05:00
John Coiner
f0217edef1 Internals: Keep a ptr to _eval in AstNetlist, make it easier to find.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-30 18:53:57 -05:00
Wilson Snyder
8f1798cc6f Fix modport outputs being treated as inputs, bug1246. 2017-11-28 19:11:41 -05:00
John Coiner
631bda395d Avoid duplicated scans of CFuncs.
Trace into non-entry-point functions (most of them) at their call
sites. We'll trace into entry-point functions (like eval) from their parent
scope. We must trace eval_ to reach the tree of calls beneath it.

Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-28 18:38:19 -05:00
John Coiner
791d02a753 Internals: Remove dead code. No functional change.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-28 18:29:14 -05:00
Wilson Snyder
54b3f92951 Commentary 2017-11-28 18:21:43 -05:00
Wilson Snyder
45de0599d7 Commentary 2017-11-27 20:11:34 -05:00
John Coiner
331ecdc2e7 Commentary
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-27 19:23:55 -05:00
Wilson Snyder
38b0e8a777 Fix some clang-analyzer warnings 2017-11-25 15:41:49 -05:00
Wilson Snyder
ae9179f412 Fix partial slicing with pattern assignments, bug991. 2017-11-23 14:55:32 -05:00
Wilson Snyder
7369500bb7 Fix cppcheck warnings 2017-11-23 10:43:34 -05:00
Wilson Snyder
45702e319b Support $size/$bits/etc on type references. 2017-11-23 10:17:56 -05:00
Wilson Snyder
813468bfe6 Work around bison 3.0 bug printing wrong debug token names 2017-11-23 09:50:15 -05:00
John Coiner
cb72390b57 Internals: Remove dead loop-related code in V3Order.cpp and V3OrderGraph.h
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-23 08:26:36 -05:00
John Coiner
71b2eeef67 Internals: V3GenClk should scan CFunc internals only at the CCall
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-23 08:21:20 -05:00
Wilson Snyder
57c8590b21 When resolving module names, only use defines if no other choice. 2017-11-22 18:44:19 -05:00
Wilson Snyder
f8ad0a0923 Fix false DECLFILENAME on recursive modules. 2017-11-21 22:01:28 -05:00
Wilson Snyder
7c443ab108 Fix error on "unique case" with no cases. 2017-11-21 21:52:37 -05:00
Wilson Snyder
0d645757e7 Less debug verbosity 2017-11-21 21:52:22 -05:00
Wilson Snyder
dd37c2ea86 Support $error/$warning in elaboration time blocks. 2017-11-21 21:10:42 -05:00
Wilson Snyder
d3032bfc21 Fix flex warning. 2017-11-21 21:10:14 -05:00
Wilson Snyder
bd6ecdfa6f Fix mis-showing debug message. 2017-11-21 20:04:29 -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
d119d10569 Add BSSPACE and COLONPLUS lint warnings. 2017-11-15 20:19:12 -05:00
Wilson Snyder
38988c005c Fix false unused warning on interfaces, bug1241. 2017-11-14 20:10:25 -05:00
Wilson Snyder
8cc4b588b2 Add error when driving input-only modport. 2017-11-14 19:50:31 -05:00
Wilson Snyder
12607abb33 Remove tabs from --xml output. 2017-11-13 18:24:18 -05:00
Wilson Snyder
562f17ea4b Fix xml tags on typedefs. 2017-11-13 18:04:13 -05:00
Wilson Snyder
0aea9b7709 Update references to coverage.dat, msg2412. 2017-11-13 07:20:36 -05:00
Wilson Snyder
c0afe96b80 Fix addition of data types to --xml. 2017-11-09 18:04:16 -05:00
John Coiner
5c919cd0de Fix null dereference crash in width process.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-09 07:43:30 -05:00
Wilson Snyder
f555c93c11 Add data types to --xml. 2017-11-08 21:27:15 -05:00
Wilson Snyder
cbb7cd16d0 Detect MSB overflow when under VL_DEBUG, bug1238. 2017-11-05 21:47:55 -05:00
John Coiner
6edaef9598 Internals: Fix debugging with null logicp() graphs.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-11-04 18:12:29 -04: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
add5cc8b56 Internals: Add VL_UNCOPYABLE to make classes uncopyable. No functional change intended. 2017-11-01 18:51:41 -04:00
Wilson Snyder
eb87232472 Fix stats critical fast path calculation. 2017-10-30 22:38:47 -04:00
Wilson Snyder
52c3031a82 Internals: Rename selfTest, no functional change. 2017-10-30 19:01:58 -04:00
John Coiner
df471e87eb Internals: Break unnecessary dependencies in V3Order.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-10-28 13:31:04 -04:00
Wilson Snyder
ec6fae5d1a Internals: Add const to same() methods. No functional change. 2017-10-28 10:26:34 -04:00
Wilson Snyder
cb422a9a02 Internals: Number astgen from 1 as 0p looks like Op. No functional change. 2017-10-28 08:48:24 -04:00
Wilson Snyder
f91bac7b31 Rewrite include libraries to support VL_THREADED towards future threading 2017-10-26 21:51:51 -04:00
John Coiner
4e98d96755 Internals: Add const's. No functional change intended.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-10-26 18:42:50 -04:00
Wilson Snyder
c17c81254e Internals: Use = delete via a macro for a bit of C++11 forward compatibility 2017-10-25 20:00:38 -04:00
Wilson Snyder
5ead61dc7b Unify format of VL_DEBUG print messages 2017-10-24 22:56:58 -04:00
Wilson Snyder
32874fa848 Internals: Misc VCD code cleanups. No functional change. 2017-10-21 17:53:23 -04:00
Wilson Snyder
b90f383cfe Add --threads option through to makefiles, unadvertised for now. 2017-10-21 16:41:43 -04:00
Wilson Snyder
eb65984368 Tests: Additional display merge tests. No functional change. 2017-10-21 13:50:31 -04:00
Wilson Snyder
f4b00d3c64 Call VL_PRINTF/vl_stop/vl_finish/vl_fatal through wrappers as hook for future MT use. 2017-10-19 19:40:51 -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
1372d62186 Remove duplicate class forward declarations. 2017-10-18 17:38:10 -04:00
Ahmed El-Mahmoudy
a69936de74 Spelling fixes
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2017-10-16 21:58:47 -04:00
Wilson Snyder
96f5f66c26 Move generated objects into bin/ to match --prefix installations 2017-10-14 16:09:02 -04:00
Wilson Snyder
bbed4d50ab Fix clang and cppcheck warnings. 2017-10-14 14:51:57 -04:00
Wilson Snyder
4b7ee8267b Slicing: Fix off-by-one error earlier this version. 2017-10-14 14:04:15 -04:00