Wilson Snyder
8f0e8e0696
Fix FST tracing of enums inside structs.
2020-01-24 19:46:46 -05:00
Geza Lore
7ab2bdb6bb
Support libgoogle-perftools-dev's libtcmalloc if available. #2137 .
...
As Verilator continuously allocates and releases small objects (e.g.:
AstNode, V3GraphVertex, V3GraphEdge), it spends a significant amount of
time in malloc/free and friends. This patch adds the --enable-tcmalloc
configure option to link Verilator against the high performance malloc
implementation library libtcmalloc. The default is to use libtcmalloc if
available on the system. Note that there are no source code change, we
are simply replacing the standard library memory allocation functions.
Measured major compilation speed improvement of 27% when running
Verilator with -O3 on a large design.
2020-01-23 17:32:19 -05:00
Stefan Wallentowitz
8e26bdd098
Fix vpi scope naming ( #2130 )
...
Dedot and shorten the name so that public modules and interface cells
are accessible too via VPI.
Fixes #2109
2020-01-21 17:03:21 +01:00
Stefan Wallentowitz
22088c907f
Set maximum number width ( #2128 )
...
Adjust the maximum number width to 64K. Add --max-num-width option to
adjust this setting.
Closes #2082
2020-01-21 12:17:31 +01:00
Pieter Kapsenberg
4a122fd0f2
Add detailed location to XML output ( #2122 )
...
* Add detailed location to XML output
* Fixing build failures
* less cryptic regulary expressions
* correcting typo in test
* Adding file letter to the location attribute, and cleaning up the regular expression in the tests.
* Add remaining test expected output files for XML changes
* spacing fix, adding documentation on changes
2020-01-20 14:08:13 -05:00
Pieter Kapsenberg
4443ab34fd
Support left justified . Closes #2101 .
2020-01-15 07:32:45 -05:00
Wilson Snyder
81e8127168
Add parameter values in XML. #2110 .
2020-01-14 18:51:20 -05:00
Wilson Snyder
918df2e618
Support / with assoc arrarys. Closes #2100 .
2020-01-14 07:01:17 -05:00
Stefan Wallentowitz
fad465abf1
Add lint_off -match waivers ( #2102 )
...
* Add more directives to configuration files
Allow to set the same directives in configuration files that can also
be set by comment attributes (such as /* verilator public */ etc).
* Add support for lint messsage waivers
Add configuration file switch '-match' for lint_off. It takes a string
with wildcards allowed and warnings will be matched against it (if
rule and file also match). If it matches, the warning is waived.
Fixes #1649 and #1514
Closes #2072
2020-01-12 10:03:17 +01:00
Wilson Snyder
fe94f9891b
Add error on misused define.
2020-01-11 09:16:26 -05:00
Wilson Snyder
fe9cf9bd42
devel release
2020-01-11 09:08:33 -05:00
Wilson Snyder
0c99bee4b1
Version bump
2020-01-11 06:54:36 -05:00
Wilson Snyder
87d126de49
Commentary
2020-01-09 20:09:50 -05:00
Wilson Snyder
a2911ed933
Fix shebang breaking some shells. Closes #2067 .
2020-01-09 20:01:12 -05:00
Wilson Snyder
2a50fafef2
Fix %{number}s with strings. #2093 .
2020-01-09 19:39:27 -05:00
Wilson Snyder
aac02c1ed1
Fix expand optimization slowing --lint-only. Closes #2091 .
2020-01-09 18:04:49 -05:00
Wilson Snyder
9978cbfa5c
Fix tracing -1 index arrays. Closes #2090 .
2020-01-08 07:32:31 -05:00
Wilson Snyder
f23fe8fd84
Update copyright year.
2020-01-06 18:05:53 -05:00
Peter Monsson
9b998cf6b3
Support implication operator "|->" in assertions, #2069 .
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-23 16:49:18 -05:00
Julien Margetts
c1fb938a61
Fix huge case statement performance. Closes #1644 .
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-23 07:47:57 -05:00
Peter Monsson
ea979c8f83
Fix disable iff in assertions. Closes #1404 .
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-22 15:49:10 -05:00
Wilson Snyder
3a70bbc70c
Update Changes to reflect github issue numbers.
2019-12-22 15:33:45 -05:00
Kuba Ober
ee184f3f39
Fix strcasecmp for windows, bug1651.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-20 06:58:05 -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
Stefan Wallentowitz
d738501c01
Fix queues as statements, bug1641.
2019-12-17 06:08:41 -05:00
Wilson Snyder
f514049c04
Add cleaner error on version control conflicts in sources.
2019-12-16 21:54:20 -05:00
Wilson Snyder
83a1bd0675
Support immediate cover statements & refactor coverage internals.
2019-12-16 21:44:20 -05:00
Yutetsu TAKATSUKASA
8cdc0c4e00
Support string putc, getc, substr, bug1606.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-15 08:09:52 -05:00
Wilson Snyder
460e0541f3
Add error when `resetall inside module
2019-12-14 22:04:58 -05:00
Wilson Snyder
2408de16a0
Support bounded queues.
2019-12-14 21:39:47 -05:00
Stefan Wallentowitz
3ac6745658
Add vpiTimeUnit and allow to specify time as string, bug1636.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-13 19:11:37 -05:00
Wilson Snyder
39950d16d0
Ignore `uselib to end-of-line, bug1634.
2019-12-12 20:57:48 -05:00
Julien Margetts
f7a06cb54a
Fix little endian cell ranges, bug1631.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-11 17:15:45 -05:00
Wilson Snyder
521418d832
Update FST trace API for better performance.
2019-12-10 18:55:09 -05:00
Yutetsu TAKATSUKASA
c2037ddbc5
Support string compare, icompare, ato* methods, bug1606.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-09 19:17:52 -05:00
Wilson Snyder
cda5c53cf9
Add BOUNDED warning and promote bounded queues to unbounded.
2019-12-08 15:56:49 -05:00
Wilson Snyder
3be0eea995
devel release
2019-12-08 13:50:14 -05:00
Wilson Snyder
44ce83cd8e
Version bump
2019-12-08 07:58:47 -05:00
Wilson Snyder
c199930943
Commentary
2019-12-08 07:34:47 -05:00
Wilson Snyder
81fc1d48a6
Fix gate lvalue optimization error, bug831.
2019-12-07 16:49:11 -05:00
Wilson Snyder
10a6b566ef
Fix error on unpacked concatenations, bug1627.
2019-12-07 15:53:34 -05:00
Todd Strader
4480938b25
Fix interface reference tracing, bug1595.
2019-12-07 12:28:19 -05:00
Wilson Snyder
5c6d74cd80
Fix assertion on dotted parameter arrayed function, bug1620.
2019-12-04 19:25:45 -05:00
Garrett Smith
96f8bbd023
Support float and shorts, bug1592, bug1619.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-12-03 18:26:22 -05:00
Wilson Snyder
b0669f3aca
Fix false unused message on __Vemumtab, msg3180.
2019-12-02 19:03:33 -05:00
Wilson Snyder
2076b0219d
Fix labels on functions with returns, bug1614.
2019-12-01 17:19:03 -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
3d6e8e9eb0
Add -Wno-context.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-11-23 10:40:32 -05:00
Wilson Snyder
17ad59394f
Support shortreal as real, with a SHORTREAL warning.
2019-11-23 08:34:40 -05:00
Wilson Snyder
682c2a610f
Fix $display("%p") to be closer to IEEE.
2019-11-21 19:29:46 -05:00
Wilson Snyder
99455a16bf
Fix // in filenames, bug1610.
2019-11-20 21:23:03 -05:00
Matthew Ballance
f63dfd7028
Fix VPI timed callbacks to be one-shot, pull5.
...
Signed-off-by: Matthew Ballance <matt.ballance@gmail.com>
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-11-19 22:44:33 -05:00
Wilson Snyder
0f6b625db8
Fix hang on concat error, bug1608.
2019-11-19 19:23:40 -05:00
Wilson Snyder
0c0198cf55
Support string.toupper and string.tolower.
2019-11-17 05:05:09 -05:00
Wilson Snyder
d480c2f033
Add +verilator+error+limit to see more assertion errors.
2019-11-16 18:25:47 -05:00
Wilson Snyder
8ebe86e54b
Fix color assertion on empty if, bug1604.
2019-11-16 17:23:51 -05:00
Wilson Snyder
c36d9a68f5
Support $ungetc.
2019-11-16 12:55:10 -05:00
Wilson Snyder
8c5aa21a11
Support $rewind.
2019-11-16 12:21:35 -05:00
Wilson Snyder
47b5e36e60
Add -Wpedantic for compliance testing.
2019-11-16 11:59:21 -05:00
Wilson Snyder
a481638edb
Add error on redefining preprocessor directives.
2019-11-16 10:19:43 -05:00
Wilson Snyder
e9c4ffa04e
Fix for loop missing initializer, bug1605.
2019-11-15 18:24:55 -05:00
Wilson Snyder
6ce81698e7
devel release
2019-11-10 14:25:54 -05:00
Wilson Snyder
30be381aa8
Version bump
2019-11-10 14:13:46 -05:00
Wilson Snyder
2b26ca2c07
Optimize mask/and above conditionals.
2019-11-10 13:17:29 -05:00
Wilson Snyder
ce178ec987
Optimize modulus by power-of-two constants.
2019-11-10 12:12:57 -05:00
Wilson Snyder
28cbf39995
Support some unpacked arrays in parameters, bug1315.
2019-11-09 18:31:24 -05:00
Todd Strader
abe95f3ab3
Add interface port visibility in traces, bug1594.
2019-11-08 08:26:48 -05:00
Wilson Snyder
2aed499e00
Fix detecting missing reg types, bug1570.
2019-11-05 21:15:44 -05:00
Wilson Snyder
8a3227697e
Fix bad-syntax crashes, bug1579.
2019-11-04 22:00:20 -05:00
Wilson Snyder
530ab17c8b
Fix bad-syntax crashes, bug1586, bug1587.
2019-11-04 21:51:20 -05:00
Wilson Snyder
ca8da1f54f
Fix bad-syntax crashes, bug1589.
2019-11-04 21:16:07 -05:00
Wilson Snyder
e40ad4a095
Commentary; part of last commit.
2019-11-04 19:33:21 -05:00
Wilson Snyder
67a0ad02d2
Fix bad-syntax crasses, bug1591.
2019-11-04 19:27:31 -05:00
Wilson Snyder
055a978866
Fix bad-syntax crasses, bug1583, bug1585.
2019-11-04 19:06:55 -05:00
Wilson Snyder
67d52372e5
Fix bad-syntax crashes, bug1582.
2019-11-04 18:48:47 -05:00
Wilson Snyder
9ff5ef4ad5
Fix false CMPCONST/UNSIGNED warnings on inside, bug1581.
2019-11-02 16:56:37 -04:00
Wilson Snyder
f781085755
Add --xml-output option.
2019-10-31 21:17:05 -04:00
Wilson Snyder
bcb766b4ce
Fix bad-syntax crashes, bug1577.
2019-10-30 21:49:25 -04:00
Wilson Snyder
63373f6f4c
Fix missing error when parameter assigned to type, bug1576.
2019-10-30 18:18:29 -04:00
Wilson Snyder
8ce60e955f
Fix missing error when parameter assigned to type, bug1575.
2019-10-29 18:38:59 -04:00
Wilson Snyder
171960635e
Add recursive define detection, bug1574.
2019-10-28 22:35:31 -04:00
Wilson Snyder
2ab819aef0
Fix bad-syntax crashes, bug1573
2019-10-28 18:46:13 -04:00
Wilson Snyder
647c321437
Suppress 'command failed' on normal errors.
2019-10-27 17:34:04 -04:00
Wilson Snyder
f852ba8a33
Add --trace-coverage.
2019-10-27 09:27:18 -04:00
Yves Mathieu
baa6a2c31a
Support quoted arguments in -f files, bug1535.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-10-24 07:33:19 -04:00
Todd Strader
3b33438e91
Benchmark --protect-lib runtime, bug1519.
2019-10-23 10:03:37 -04:00
Wilson Snyder
71fa09a25b
Fix bad-syntax crashes, bug1563.
2019-10-18 21:30:34 -04:00
Patrick Stewart
1e4f471049
Add cmake support, bug1363.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-10-17 19:44:10 -04:00
Wilson Snyder
6081c262f2
Fix misc bad-syntax crashes, bug1557-1560.
2019-10-16 20:05:29 -04:00
Wilson Snyder
c73336f8f5
Fix misc bad-syntax crashes, bug1548, bug1550-1553.
2019-10-15 19:06:00 -04:00
Todd Strader
9b09309f51
Commentary: Fix Changes
2019-10-09 08:28:53 -04:00
Todd Strader
da0da9e258
Add --protect-lib to create protected libraries, bug1490.
2019-10-09 06:47:26 -04:00
Patrick Stewart
0ed58a4217
Fix multithreaded yield behavior when no work.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-10-07 19:27:31 -04:00
Patrick Stewart
8e6d68147c
Support multithreading on Windows.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-10-07 19:23:06 -04:00
Wilson Snyder
2f28c5f5b4
Increase case duplicate/incomplete to 16 bit tables, bug1545.
2019-10-07 07:38:40 -04:00
Wilson Snyder
91f1acd85f
Add --protect-ids to obscure information in objects, bug1521.
2019-10-06 13:24:21 -04:00
Wilson Snyder
99b2ab7540
Rename examples in prep for CMake.
2019-10-06 10:32:49 -04:00
Wilson Snyder
763b9909f1
devel release
2019-10-06 10:04:45 -04:00
Wilson Snyder
dfcd412e5f
Version bump
2019-10-06 09:40:36 -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
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
239ef1ae6d
Fix misc bad-syntax crashes, bug1533.
2019-09-30 20:00:30 -04:00
Wilson Snyder
9eaec3b5c1
Fix misc bad-syntax crashes, bug1530.
2019-09-30 19:48:01 -04:00
Wilson Snyder
12fa085b26
Fix misc bad-syntax crashes, bug1529.
2019-09-30 19:22:14 -04:00
Wilson Snyder
a1405dac8e
Fix misc bad-syntax crashes, bug1532.
2019-09-30 18:50:27 -04:00
Wilson Snyder
4f315d9078
Fix ugly error on interface misuse, bug1525.
2019-09-25 21:53:01 -04:00
Lukasz Dalek
d6ac351dcb
Add --public-flat-rw switch, bug1511.
...
This switch exposes VARs, PORTs and WIREs to C++ code. It must be use
with care as it has a significant performance impact and may result in
mis-simulation of generated clocks. Anyhow, it is prefered over
--public and useful for VPI.
Signed-off-by: Lukasz Dalek <ldalek@antmicro.com>
Signed-off-by: Stefan Wallentowitz <stefan@wallentowitz.de>
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-09-23 07:56:07 -04:00
Stefan Wallentowitz
8686ed9b00
Fix vpiType accessor, bug1510.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-09-18 12:24:19 -04:00
Stefan Wallentowitz
32e1207782
Fix vpiType accessor, bug1509.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-09-18 07:22:59 -04:00
Wilson Snyder
900115bb2d
Fix false warning on backward indexing, bug1507.
2019-09-17 15:17:23 -04:00
Wilson Snyder
baa634343b
Fix config_rev revision detection on old versions.
2019-09-13 07:20:26 -04:00
Wilson Snyder
1471f5691a
Fix error on multidimensional cells, bug1505.
2019-09-12 19:06:26 -04:00
Todd Strader
c813026566
Make Syms file honor --output-split-cfuncs, bug1499.
2019-09-04 06:15:41 -04:00
Wilson Snyder
314cd92129
Support $fseek, $ftell, $frewind, bug1496.
2019-09-03 21:28:15 -04:00
Wilson Snyder
3bc260c55d
Fix make test with no VERILATOR_ROOT, bug1494.
2019-09-01 11:15:42 -04:00
Wilson Snyder
4c0f95af10
devel release
2019-08-29 19:12:47 -04:00
Wilson Snyder
35fe205fd6
Version bump
2019-08-29 18:58:38 -04:00
Todd Strader
70cf2582d6
Add XSim support to driver.pl, bug1493.
2019-08-29 17:00:49 -04:00
Todd Strader
ec620387af
Add --dpi-hdr-only, bug1491.
2019-08-27 21:36:59 -04:00
Wilson Snyder
81e806e895
Fix elaboration time errors, bug1429.
2019-08-04 22:34:54 -04:00
Wilson Snyder
a95f58749f
Fix internal error on gate optimization of assign, bug1475.
2019-08-03 21:49:39 -04:00
Wilson Snyder
cf2ac30f66
Fix date.
2019-08-02 21:39:32 -04:00
Todd Strader
4a14788c9b
When showing an error, show the instance location
2019-07-26 12:52:38 -04:00
Wilson Snyder
5560da2934
Commentary
2019-07-26 06:24:26 -04:00
Todd Strader
43ce048f9e
Add rr support
2019-07-25 21:34:09 -04:00
Wilson Snyder
97561bf064
When showing an error, show source code.
2019-07-14 21:42:03 -04:00
Wilson Snyder
173efbc829
Offer suggestions on bad identifier errors.
2019-07-14 10:08:53 -04:00
Wilson Snyder
2ca418288d
Fix enum values not being sized based on parent, bug1442.
2019-07-06 16:26:44 -04:00
Gianfranco Costamagna
07ae7146e3
Honour system flags, this makes debug flags being injected correctly.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-07-06 13:02:36 -04:00
Wilson Snyder
f7641d2ecc
Change MULTITOP to warning to help linting, see manual.
2019-06-30 16:46:48 -04:00
Wilson Snyder
d43e9aa2c5
Fix not in array context on non-power-of-two slices, msg2946.
2019-06-29 11:30:38 -04:00
Wilson Snyder
8e7559c6c9
Show included-from filenames in warnings, bug1439.
2019-06-22 17:01:39 -04:00
Wilson Snyder
5cb6474cc6
Fix not reporting some duplicate signals/ports, bug1462.
2019-06-22 12:43:48 -04:00
Wilson Snyder
89c2a6070a
devel release
2019-06-16 10:01:09 -04:00
Wilson Snyder
c53ea10c75
Version bump
2019-06-16 09:30:56 -04:00
Wilson Snyder
90af180ec1
Fix constant function return of function var, bug1467.
2019-06-15 08:03:39 -04:00
Alex Chadwick
5da5e32e86
Fix --savable invalid C++ on packed arrays, bug1465.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-06-14 18:42:27 -04:00
Wilson Snyder
e713c8ce57
Fix not reporting some duplicate signals, bug1462.
2019-06-12 19:17:10 -04:00
Wilson Snyder
2cedd14d43
Fix build error on MinGW, bug1460.
2019-06-11 21:38:17 -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
Todd Strader
34424e70d8
Fix sameHash error on type parameters, bug1456.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-06-05 20:39:42 -04:00
Wilson Snyder
4e115d4b69
Fix performance when mulithreaded on 1 CPU, bug1455.
2019-06-03 19:13:03 -04:00
Wilson Snyder
f6f8073058
Support logical equivalence operator <->.
2019-06-01 19:40:06 -04:00
Wilson Snyder
97d9de3dad
Support deferred assertions, bug1449.
2019-05-31 07:33:57 -04:00
Wilson Snyder
a58e7d94ec
Error continuation lines no longer have %Error prefix.
2019-05-30 20:30:59 -04:00
Kanad Kanhere
72eb361131
Fix invalid XML output due to special chars, bug1444.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-05-29 18:41:03 -04:00
Wilson Snyder
59d7d9e8c3
Fix real parameter assignment, bug1427.
2019-05-17 20:50:57 -04:00
Wilson Snyder
01725f662f
Fix $display with string without %s, bug1441.
2019-05-16 21:21:38 -04:00