Wilson Snyder
7d7e67b49b
Show Verilog reference on V3Number asserts.
2020-05-04 19:57:21 -04:00
Wilson Snyder
a41ea180fa
Fix +: and -: on unpacked arrays. ( #2304 )
2020-05-04 19:40:50 -04:00
Wilson Snyder
8f64e4a76f
Support $root, #2150 .
2020-05-02 08:29:20 -04:00
Wilson Snyder
a6deee2083
Fix clock enables with bit-extends, #2299 .
2020-04-30 19:22:58 -04:00
Wilson Snyder
9fd4541069
Fix reduction OR on wide data, broke in v4.026, #2300 .
2020-04-30 17:53:54 -04:00
Geza Lore
849487da23
Modify --build to be a standalone option ( #2294 )
...
- Issue an error when --build is used together with --make
- When given --build, always use GNU Make to perform the build
- Update documentation (examples were good as they were)
- Remove the broken t_flag_build_cmake test
Fixes #2280
2020-04-30 12:54:50 +01:00
Geza Lore
209a585a68
Remove VL_NEGATE_{I,Q,E}, use C native unary '-' instead
...
This is to avoid slowing down -O0 models unnecessarily.
2020-04-30 01:05:52 +01:00
Geza Lore
aa9cde22c8
Use SIMD intrinsics to render VCD traces ( #2289 )
...
Use SIMD intrinsics to render VCD traces.
I have measured 10-40% single threaded performance increase with VCD
tracing on SweRV EH1 and lowRISC Ibex using SSE2 intrinsics to render
the trace. Also helps a tiny bit with FST, but now almost all of the FST
overhead is in the FST library.
I have reworked the tracing routines to use more precisely sized
arguments. The nice thing about this is that the performance without the
intrinsics is pretty much the same as it was before, as we do at most 2x
as much work as necessary, but in exchange there are no data dependent
branches at all.
2020-04-30 00:09:09 +01:00
Wilson Snyder
b44efe7ef7
Use 'suggest' for consistent wording.
2020-04-28 21:19:19 -04:00
Wilson Snyder
15ad3f46be
Fix logical not optimization with empty begin, #2291 .
2020-04-28 21:15:20 -04:00
Wilson Snyder
c6d1a9858a
Use clang-format 10.0.0
2020-04-28 18:47:59 -04:00
Wilson Snyder
910803e6db
Fix error on unpacked connecting to packed, #2288 .
2020-04-27 18:38:54 -04:00
Geza Lore
dd967f7769
Improve trace buffer memory utilization and performance.
...
Convert trace buffer to 32-bit entries, rather than a union containing a
pointer type. Also tweaked trace entry layouts for a bit more
performance. This gains another 10% on SweRV EH1 CoreMark.
2020-04-27 19:00:17 +01:00
Geza Lore
b79ef672e1
Various minor optimizations of VCD trace routines
...
- Change templated trace routines to branch table.
Removed templating from trace chgBus and fullBus and replaced them with
a branch table like the other there is a very small (< 1%) penalty for
this on SwerRV EH1 CoreMark, but this is less than the variability of
disk IO so it's worth it to keep the code simpler and smaller.
- Prefetch VCD suffix buffer at the top of emit*
- Increase ILP in VCD emit* routines
- Use a 64-bit unaligned store to emit the VCD suffix (on x86 only)
The performance difference with these is very small, but the changes
hopefully make this code more performance-portable across various
micro-architectures.
2020-04-27 18:44:53 +01:00
Wilson Snyder
70549e1a64
Internals: Parse lifetime directives; still unsupported.
2020-04-26 12:45:06 -04:00
Wilson Snyder
87e1c36e4a
Support event data type (with some restrictions).
2020-04-25 15:37:46 -04:00
Wilson Snyder
5e575f5906
Fix line numbers in tables.
2020-04-24 19:34:26 -04:00
Wilson Snyder
df52e481fb
Collected minor output code cleanups.
2020-04-23 21:22:47 -04:00
Wilson Snyder
f93ae707e0
Tests: Add bad option test.
2020-04-23 19:56:26 -04:00
Geza Lore
6ed10b7fde
Fix --protect-lib generated library link rules ( #2279 )
...
We used to include a .cpp file on the link line for the shared library,
which was ignored, but generated a .d file for the .so which contained
the header files required by the .cpp file. This then caused a rebuild
where we included the .d in verilated.mk to included in the .h headers
among the prerequisites of the .so, yielding a clang error about treating
.h files as c++-header rather than c-header... Long story short, we don't
do that anymore. This used t cause t_a4_examples to fail on occasion.
Note there is no need for a separate compilation rule for the
<--protect-lib>.cpp, as it will jsut pick up the standard OPT_FAST rule.
2020-04-23 17:30:23 -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
77915f78db
Add experimental-only option.
2020-04-21 20:45:23 -04:00
Geza Lore
c52f3349d1
Initial implementation of generic multithreaded tracing ( #2269 )
...
The --trace-threads option can now be used to perform tracing on a
thread separate from the main thread when using VCD tracing (with
--trace-threads 1). For FST tracing --trace-threads can be 1 or 2, and
--trace-fst --trace-threads 1 is the same a what --trace-fst-threads
used to be (which is now deprecated).
Performance numbers on SweRV EH1 CoreMark, clang 6.0.0, Intel i7-3770 @
3.40GHz, IO to ramdisk, with numactl set to schedule threads on different
physical cores. Relative speedup:
--trace -> --trace --trace-threads 1 +22%
--trace-fst -> --trace-fst --trace-threads 1 +38% (as --trace-fst-thread)
--trace-fst -> --trace-fst --trace-threads 2 +93%
Speed relative to --trace with no threaded tracing:
--trace 1.00 x
--trace --trace-threads 1 0.82 x
--trace-fst 1.79 x
--trace-fst --trace-threads 1 1.23 x
--trace-fst --trace-threads 2 0.87 x
This means FST tracing with 2 extra threads is now faster than single
threaded VCD tracing, and is on par with threaded VCD tracing. You do
pay for it in total compute though as --trace-fst --trace-threads 2 uses
about 240% CPU vs 150% for --trace-fst --trace-threads 1, and 155% for
--trace --trace threads 1. Still for interactive use it should be
helpful with large designs.
2020-04-21 23:49:07 +01:00
James Hanlon
97cbc10925
Add --flaten for use with --xml-only ( #2270 ).
2020-04-21 18:14:08 -04:00
James Hanlon
65cd4f6047
Fix comment and add to CONTRIBUTORS ( #2270 ).
2020-04-21 18:11:53 -04:00
Wilson Snyder
15f7685755
Codacity cleanups. No functional change intended.
2020-04-20 21:43:05 -04:00
Wilson Snyder
def40fab9b
Internals: Rename VSigning
2020-04-19 21:19:09 -04:00
Wilson Snyder
9164eb03d5
Show that class parameters even if unused are unsupported.
2020-04-19 18:36:55 -04:00
Wilson Snyder
466535abdc
Support direct class member init.
2020-04-18 20:20:17 -04:00
Wilson Snyder
39d7cbf412
Fix arrayed instances connecting to slices, #2263 .
2020-04-17 19:30:53 -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
Yutetsu TAKATSUKASA
18412f9322
Add --build option to call make/cmake as subprocess ( #2249 )
...
* Add --build, -j, -MAKEFLAGS, and --no-verilate options
* Verilator: Can build on both gmake and cmake
2020-04-15 17:44:21 -04:00
Wilson Snyder
1883ab29cb
clang-format 10.0 forward compatibility. No functional change.
2020-04-15 17:36:57 -04:00
Geza Lore
1a64c7d232
Fix run-time formatting of variable wider than 1023 bits ( #2261 )
2020-04-15 17:26:15 -04:00
Wilson Snyder
f3308d236b
clang-format remaining sources. No functional change.
2020-04-15 07:58:34 -04:00
Wilson Snyder
1b94e3b0e2
Internals: clang-format files needed for #2249 .
2020-04-14 19:55:00 -04:00
Geza Lore
08b74e5ab9
Fix crash when formatting constant wider than 1023 bits ( #2260 )
2020-04-14 18:07:09 -04:00
Wilson Snyder
5c966ec510
clang-format many files. No functional change.
...
Use nodist/clang_formatter to reformat files that are now clean.
2020-04-13 22:52:23 -04:00
Geza Lore
dc5c259069
Improve tracing performance. ( #2257 )
...
* Improve tracing performance.
Various tactics used to improve performance of both VCD and FST tracing:
- Both: Change tracing functions to templates to take variable widths as
template parameters. For VCD, subsequently specialize these to the
values used by Verilator. This avoids redundant instructions and hard
to predict branches.
- Both: Check for value changes via direct pointer access into the
previous signal value buffer. This eliminates a lot of simple pointer
arithmetic instructions form the tracing code.
- Both: Verilator provides clean input, no need to mask out used bits.
- VCD: pre-compute identifier codes and use memory copy instead of
re-computing them every time a code is emitted. This saves a lot of
instructions and hard to predict branches. The added D-cache misses
are cheaper than the removed branches/instructions.
- VCD: re-write the routines emitting the changes to be more efficient.
- FST: Use previous signal value buffer the same way as the VCD tracing
code, and only call the FST API when a change is detected.
Performance as measured on SweRV EH1, with the pre-canned CoreMark
benchmark running from DCCM/ICCM, clang 6.0.0, Intel i7-3770 @ 3.40GHz,
and IO to ramdisk:
+--------------+---------------+----------------------+
| VCD | FST | FST separate thread |
| (--trace) | (--trace-fst) | (--trace-fst-thread) |
------------+-----------------------------------------------------+
Before | 30.2 s | 121.1 s | 69.8 s |
============+==============+===============+======================+
After | 24.7 s | 45.7 s | 32.4 s |
------------+--------------+---------------+----------------------+
Speedup | 22 % | 256 % | 215 % |
------------+--------------+---------------+----------------------+
Rel. to VCD | 1 x | 1.85 x | 1.31 x |
------------+--------------+---------------+----------------------+
In addition, FST trace size for the above reduced by 48%.
2020-04-14 00:13:10 +01:00
Wilson Snyder
dba88bae3c
Support class new.
2020-04-12 18:57:12 -04:00
Wilson Snyder
d4b6e2b2b5
Internals: NodeModule for packages.
2020-04-12 14:53:10 -04:00
Wilson Snyder
1e2d73fc80
Internals: clang-format and refactor taskref pin handling.
2020-04-12 08:26:14 -04:00
Wilson Snyder
ea3acc2d3a
Fix --skip-identical broke recent commit.
2020-04-11 20:22:57 -04:00
Geza Lore
8b2666cd04
Fix to make trace code allocation dense. ( #2250 )
...
This looks like a bits/bytes bug. The affected m_codeInc member
determines how many 32-bit words to allocate in a buffer used to store
previous values of the signal, but this was off by a factor of 8, so
we used to use too much memory.
SweRV VCD tracing speed +6.5% (excluding IO, clang 6.0), due mainly to
reduced D cache misses.
2020-04-11 16:00:43 +01:00
Wilson Snyder
afa8e4c786
Internals: Favor const_iterator. No functional change.
2020-04-11 10:54:42 -04:00
Wilson Snyder
1a6c2fc55d
Fix class members getting misoptimized away.
2020-04-10 21:10:21 -04:00
Wilson Snyder
15b40a97d9
Support `unconnected_drive
2020-04-09 23:26:03 -04:00
Wilson Snyder
343db78c03
Fix including verilated_sc in Syms to fix compile order problem exposed in #2237 .
2020-04-09 23:03:47 -04:00
Geza Lore
0cfa828572
Fix DPI import/export to be standard compliant, #2236 .
2020-04-07 19:07:47 -04:00
Wilson Snyder
4556b6c022
Fix clang warning.
2020-04-07 12:17:48 -04:00
Wilson Snyder
f13bd1aec4
Fix clang unused warning.
2020-04-06 08:53:19 -04:00
Wilson Snyder
b6c21ad21a
Fix duplicate traces with $dumpfile, part of #2237 .
2020-04-06 08:33:51 -04:00
Wilson Snyder
50535a1894
Internals: cppcheck 1.90 fixes. No functional change intended.
2020-04-05 18:57:47 -04:00
Wilson Snyder
efaf375887
Configuring with ccache present now defaults to using it; see OBJCACHE in the manual.
2020-04-05 16:10:33 -04:00
Wilson Snyder
a331397954
Fix real conversion from constant with X/Z.
2020-04-05 11:56:15 -04:00
Wilson Snyder
a494ad5ec7
Support $ferror, #1638 .
2020-04-05 11:22:05 -04:00
Wilson Snyder
b617cd5549
Internals: Add V3ERROR_NA_RETURN. No functional change.
2020-04-05 10:26:53 -04:00
Wilson Snyder
e55338f927
Support $fflush without arguments, #1638 .
2020-04-05 10:11:28 -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
f6048cc9c1
Fix clang warning. No functional change.
2020-04-05 08:22:51 -04:00
Wilson Snyder
9fdb026e95
Add VM_C11 for future need of C++11
2020-04-04 20:48:03 -04:00
Wilson Snyder
bf17bb4648
Fix codacity warnings
2020-04-04 20:08:58 -04:00
Wilson Snyder
a13eab55f5
Internals: Add missing VL_DO_CLEARs. No functional change.
2020-04-04 13:06:31 -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
38a31ae168
Cleanup misc clang-tidy warnings. No functional change intended
2020-04-03 22:31:54 -04:00
Wilson Snyder
c288a7bfb9
Add GCC10-style line number prefix when showing source text for errors.
2020-04-03 20:07:46 -04:00
Marco Widmer
7f9aa057bf
Support split_var in vit files ( #2219 )
2020-04-03 08:08:23 -04:00
Wilson Snyder
6f4a8fe695
Fix Travis-CI failures.
2020-04-02 09:22:10 -04:00
Wilson Snyder
aef2b7ea3c
Internals: clang-format cleanup. No functional change.
2020-04-02 08:25:44 -04:00
Wilson Snyder
dcde026bac
With --Wpedantic, report forward typedefs that are unused.
2020-04-02 07:39:14 -04:00
Wilson Snyder
926209706f
Report REALCVT on $display format mistakes.
2020-04-01 20:42:47 -04:00
Wilson Snyder
bd5d4c61c6
Suppress REALCVT for small whole real numbers.
2020-04-01 19:24:07 -04:00
Wilson Snyder
19abce5535
Suppress REALCVT for whole real numbers.
2020-04-01 18:43:53 -04:00
Wilson Snyder
ab058c85bf
Fix clang warning.
2020-04-01 12:40:49 -04:00
Wilson Snyder
e6beab4037
Fix implicit conversion of floats to wide integers.
2020-03-31 20:42:07 -04:00
Wilson Snyder
ebeb645539
Commentary
2020-03-30 20:09:55 -04:00
Wilson Snyder
5c72f01598
Fix assertions with unique case inside, #2199 .
2020-03-30 18:13:51 -04:00
Wilson Snyder
0cf44a9c4f
Internals: Refactor InsideRange common code. No functional change intended.
2020-03-30 18:12:50 -04:00
Sean Cross
1fe5d5db79
Fix mingw build ( #2215 )
...
* v3Os: include <windows.h> instead of <winnt.h>
The windows.h header file should be included prior to any other headers,
in order to ensure all definitions are available. By only including
some headers, such as winnt.h, many "undefined symbol" messages are
generated.
Include "windows.h" to fix the build on msys2 under mingw64.
Signed-off-by: Sean Cross <sean@xobs.io>
* configure: check for bcrypt and psapi on windows
These two libraries must be linked in order to have access to
BCryptGenRandom and GetProcessMemoryInfo respectively.
Signed-off-by: Sean Cross <sean@xobs.io>
2020-03-29 12:29:40 -04:00
Wilson Snyder
4145a38c47
Fix duplicate typedefs in generate for, #2205 .
2020-03-26 18:10:20 -04:00
Wilson Snyder
590b1853d0
Fix packages as enum base types, #2202 .
2020-03-24 17:57:12 -04:00
Wilson Snyder
1e0e51edd3
Fix parameter type redeclaring a type, #2195 .
2020-03-21 12:13:55 -04:00
Wilson Snyder
1ce360ed5b
Add SPDX license identifiers. No functional change.
2020-03-21 11:24:24 -04:00
Wilson Snyder
c2b49f0174
Internals: clang-format cleanups. No functional change.
2020-03-15 23:20:33 -04:00
Wilson Snyder
92d62a6568
Internals: clang-format cleanups for V3Inline. No functional change.
2020-03-15 22:30:20 -04:00
Wilson Snyder
5d9d1cc09f
Internals: Favor const_iterator (in a few obvious spots, more needed). No functional change.
2020-03-15 18:34:09 -04:00
Wilson Snyder
57068b95ef
Internals: Move code, no functional change.
2020-03-15 13:39:36 -04:00
Wilson Snyder
5f63b24c50
Change --quiet-exit to also suppress 'Exiting due to N errors'.
2020-03-15 08:09:51 -04:00
Wilson Snyder
81c659957e
Add column numbers to errors and warnings.
2020-03-14 22:02:42 -04:00
Wilson Snyder
ee8dd32c04
Check and document error format, #2191 .
2020-03-14 21:48:26 -04:00
Wilson Snyder
9f947bcb5f
Internals: Refactor flags in V3Undriven. No functional change intended.
2020-03-08 21:37:07 -04:00
Wilson Snyder
8ccc17f30b
Add setting VM_PARALLEL_BUILDS=1 when using --output-split, #2185 .
2020-03-08 09:03:29 -04:00
Wilson Snyder
808c958d42
Internals: Add AstNodeCCall and other items towards classes.
2020-03-07 12:52:11 -05:00
Wilson Snyder
961ac49c5c
Internals: Merge parse type from classes branch. No functional change intended.
2020-03-07 11:00:57 -05:00
Wilson Snyder
2d52f525c5
Add --structs-packed for forward compatibility, #1541 .
2020-03-07 10:51:06 -05:00
Wilson Snyder
e70cba77e6
Add support for dynamic arrays, #379 .
2020-03-07 10:24:27 -05:00
Wilson Snyder
8054fc47ea
Internals: Refectoring. No functional change intended.
2020-03-07 08:24:57 -05:00
Wilson Snyder
e673875b3b
Fix clang warning, last commit.
2020-03-06 07:31:56 -05:00
Wilson Snyder
29923b78fd
Internals: Use VL_TO_STRING instead of to_string.
2020-03-05 23:28:41 -05:00
Wilson Snyder
135cbcd79a
Internals: Move 'new' unsupported forward from parse into Ast.
2020-03-05 22:33:31 -05:00
Wilson Snyder
75ecad591a
Implement $displayb/o/h, $writeb/o/h, etc, Closes #1637 .
2020-03-05 21:49:25 -05:00
Wilson Snyder
fd656f6cc1
Fix clang asserted missing lock on m_dumping.
2020-03-03 19:20:04 -05:00
Wilson Snyder
a7e65379fa
Ignore $dumpflush, think causes travis thread error.
2020-03-02 17:56:42 -05:00
Wilson Snyder
905067d13f
Fix $dumpvar multithreaded assert, broke last commit.
2020-03-02 07:43:10 -05:00
Wilson Snyder
30a33a6104
Add support for and , #2126 .
2020-03-01 21:39:23 -05:00
Wilson Snyder
4878fe3a1f
Add split_var metacomment to assist UNOPTFLAT fixes, #2066 .
2020-02-28 19:15:08 -05:00
Wilson Snyder
68b6a0b667
Fix genblk naming with directly nested generate blocks, #2176 .
2020-02-25 22:21:16 -05:00
Wilson Snyder
5b83484f20
Remove dead genblk code & some cleanups.
2020-02-25 18:57:51 -05:00
Wilson Snyder
c9b74847d1
Docs: Tighter margins, save 10 pages.
2020-02-24 18:11:56 -05:00
Todd Strader
120f62fe85
Fix is probably to mark as a clock
2020-02-24 06:36:13 -05:00
Tobias Wölfel
18f8cd0529
Allow assert disable ( #2168 )
...
* Add +verilator+noassert flag
This allows to disable the assert check per simulation argument.
* Add AssertOn check for assert
Insert the check AssertOn to allow disabling of asserts.
Asserts can be disabled by not using the `--assert` flag or by calling
`AssertOn(false)`, or passing the "+verilator+noassert" runtime flag.
Add tests for this behavior.
Bad tests check that the assert still causes a stop.
Non bad tests check that asserts are properly disabled and cause no stop
of the simulation.
Fixes #2162 .
Signed-off-by: Tobias Wölfel <tobias.woelfel@mailbox.org>
* Correct file location
Signed-off-by: Tobias Wölfel <tobias.woelfel@mailbox.org>
* Add description for single test execution
Without this description it is not obvious how to run a single test from
the regression test suite.
Signed-off-by: Tobias Wölfel <tobias.woelfel@mailbox.org>
2020-02-15 18:17:23 -06:00
Wilson Snyder
f7bad37e88
Fix GCC 4.4.7 errors.
2020-02-08 07:09:41 -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
0aabe6ce00
Internals: Fix cppcheck warning including missing init.
2020-02-03 22:10:29 -05:00
Wilson Snyder
f3ebdc40c6
Fix some coverage lost when multithreaded, #2151 .
2020-02-03 18:43:41 -05:00
Wilson Snyder
2ca9f73b31
Internals: Cleanup Emit towards constructor/destructor output.
2020-02-02 21:15:07 -05:00
Wilson Snyder
73f5e3f808
Internals: Add missing const. No functional change.
2020-02-02 10:34:29 -05:00
Wilson Snyder
8d3dad510f
Fix unused variable.
2020-02-02 06:52:28 -05:00
Wilson Snyder
2576c136f6
Fix `pragma pedantic check to work with -E.
2020-02-01 22:03:18 -05:00
Wilson Snyder
a8ad97eef2
Add VL_CACHE_LINE_BYTES and use 64 as defult.
2020-02-01 20:28:03 -05:00
Wilson Snyder
ee7da1e690
Remove .h comments for empty sections.
2020-02-01 20:11:21 -05:00
Wilson Snyder
969a46faf6
Internals: V3Emit refactoring. No functional change intended.
2020-02-01 19:32:04 -05:00
Wilson Snyder
820df28ad9
Internals: V3CUse state refactoring. No functional change intended.
2020-02-01 19:11:19 -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
Geza Lore
f00ff61559
Link Verilator binary partially statically, Closes #2146 .
...
The build is now by default configured to link performance critical
libraries (libgcc, libstdc++, libtcmalloc) statically. This improves
Verilation speed by between 4.5-7% based on my measurements as it
eliminates approx 20% of the mispredicted branches from the execution.
With partial static linking, the size of the .text section in
verilator_bin is increased by about 14%, and the binary is itself only
about 800KB bigger on disk, so hopefully this is not a big issue in
exchange for the faster compilation speed. A configure option
"--disable-partial-static" is provided to restore the old behaviour of
linking everything dynamically.
Note: This patch also changes to use libtcmalloc_minimal, which is all
we really need and itself has fewer dependencies.
2020-01-31 19:13:55 -05:00
Wilson Snyder
2d195ebae5
Cleanup IEEE references.
2020-01-30 20:23:57 -05:00
Wilson Snyder
d218f1746c
Add warning on genvar in normal for loop, #2143 .
2020-01-29 21:16:44 -05:00
Wilson Snyder
d4614c290e
Fix WIDTH warning on </<= of narrower value, #2141 .
2020-01-28 20:10:10 -05:00
Tobias Rosenkranz
027cce35c0
Support enum.next(k) with constant k > 1, #2125 .
2020-01-27 17:25:25 -05:00
Wilson Snyder
9fd81b2c6b
Support string character access via indexing.
2020-01-26 16:38:22 -05:00
Wilson Snyder
5430e4ac9b
Cleanup more errors showing data types.
2020-01-26 15:54:57 -05:00
Wilson Snyder
619214b48f
Support $sampled.
2020-01-26 13:38:15 -05:00
Wilson Snyder
68fa82fb14
Support $typename, and use to cleanup error messages.
2020-01-26 13:21:25 -05:00
Wilson Snyder
cac50282eb
Fix pattern replication without key.
2020-01-26 11:38:34 -05:00
Wilson Snyder
8a8f1135b7
Support type(expression) operator, #1650 .
2020-01-26 10:28:13 -05:00
Wilson Snyder
f0b2336345
Internals: Fix cell recursion with future module-in-module.
2020-01-25 18:15:55 -05:00
Wilson Snyder
52907e7b02
astgen: Preserve #line, #2138 .
2020-01-25 15:36:37 -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
eafed88a6e
Internals: Add assertions. No functional change intended.
2020-01-25 10:19:59 -05:00
Wilson Snyder
d64e6b3f9c
Internals: Refactoring towards classes. No functional change intended.
2020-01-25 09:33:43 -05:00
Wilson Snyder
d68ffba8cd
Internals: Rename to prefixNameProtect. No functional change intended.
2020-01-25 09:16:00 -05:00
Wilson Snyder
f0f370490f
Internals: Style cleanups.
2020-01-25 07:59:25 -05:00
Wilson Snyder
a4e8d39932
Spelling fixes
2020-01-24 20:10:44 -05:00
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
Geza Lore
c5d04631d1
Internals: More performance efficient AstNode casting. Closes #2133 .
...
dynamic_cast can have large run-time cost, so here we implement type
tests for AstNode instances by checking the unique type() property, which
in turn is a constant generated by astgen. For leaf types in the AstNode
type hierarchy, this is a simple equality check. To handle intermediate
types, we generate the type ids of leaf types in a pre-order traversal of
the type hierarchy. This yields contiguous ranges of ids for sub-type
trees, which means we can check membership of a non-leaf type via 2
comparisons against a low and high id. This single patch makes Verilator
itself 6-13% faster (depending on which optimizations are enabled) on a
large design of over 250k lines of Verilog.
2020-01-22 19:07:48 -05:00
Pieter Kapsenberg
957c1d606b
Add detailed XML location to cell elements, #2134 , #2122 .
...
This was accidentally omitted from the previous PR #2122 .
2020-01-22 07:18:50 -05:00
Wilson Snyder
48dd358c03
Fix clang warnings from override.
2020-01-21 20:22:32 -05:00
Geza Lore
220daa5f33
Internals: Restore AstNode naming property. #2133 .
...
The intention was that all subclasses of AstNode which are
intermediate must be abstract as well and called AstNode*. This was
violated recently by 28b9db1903 . This
patch restores that property by:
- Renaming AstFile to AstNodeFile
- Introducing AstNodeSimpleText as the common base of AstText and
AstTextBlock, rather than AstTextBlock deriving from AstText.
2020-01-21 19:54:14 -05:00
Wilson Snyder
d76b5b7823
Fix C++11 intrusion.
2020-01-21 19:45: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
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
Wilson Snyder
abf3850d08
Internals: Misc cleanups for classes.
2020-01-20 16:53:27 -05: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
Wilson Snyder
0352ceea44
Internals: Refactor some emit code towards classes. No functional change intended.
2020-01-20 14:07:03 -05:00
Wilson Snyder
e8ff191a17
Internals: Prepare for hierarchical NodeModule's. No functional change intended.
2020-01-20 13:27:27 -05:00
Wilson Snyder
5ae09daf5b
Internals: Style cleanup. No functional change.
2020-01-20 11:56:08 -05:00
Pieter Kapsenberg
1dd9a74b6c
Internals: Move V3Global function definitions to their own files. No functional change intended. Closes #2120 .
2020-01-19 07:23:26 -05:00
Wilson Snyder
18e837336a
Internals: Rename MethodCall. No functional change.
2020-01-18 14:11:05 -05:00
Wilson Snyder
835f668aaa
Internals: Refactor statement tracking. No functional change intended.
2020-01-18 13:02:42 -05:00
Wilson Snyder
09199f79a6
Internals: Add VL_DO_CLEAR delete protections. No functional change intended.
2020-01-18 10:29:49 -05:00
Wilson Snyder
7024ea8cb6
Cleaner tristate error. #2117 .
2020-01-18 07:56:50 -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
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
af38e8d387
Improve error on > 127 char modnames. #2106 .
2020-01-14 07:33:12 -05:00
Wilson Snyder
67bb0c78c8
Codacity fix.
2020-01-14 07:13:35 -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
98fb7ec193
Commentary.
2020-01-11 21:08:20 -05:00
Wilson Snyder
b71eb76252
For / allow 64-bit addressing.
2020-01-11 14:08:07 -05:00
Todd Strader
a15aa0b82b
Fix clang warning
2020-01-11 09:59:42 -05:00
Wilson Snyder
fe94f9891b
Add error on misused define.
2020-01-11 09:16:26 -05:00
Wilson Snyder
5f9ceb99a7
Cleanup spacing.
2020-01-10 21:37:53 -05:00
Wilson Snyder
2638f9db19
Error cleanups.
2020-01-10 19:18:27 -05:00
Wilson Snyder
1234c83953
Fix some C++11 requirements.
2020-01-10 07:07:21 -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
06247686c5
Codacy cleanups
2020-01-08 19:33:47 -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
Stefan Wallentowitz
37dc33a195
Deprecation ( #2088 )
...
* Add deprecation warning
* Deprecate -msg in configuration files
* Deprecate sc_clock
2020-01-03 17:27:51 +01:00
Stefan Wallentowitz
924fe235a9
No assign alias for unpacked public variables ( #2089 )
...
Public variables are all emitted in the C code and unpacked arrays
arrays are sliced up for this. After inlining public unpacked array
assignments should not be alias assignments but actual assignments, so
that they are sliced and hence emitted properly.
Fixes #2073
2020-01-03 13:44:45 +01:00
Stefan Wallentowitz
b7665a88db
Rename msg to rule in configuration files ( #2080 )
...
Rename the -msg switch to -rule in configuration files as it is more
clear.
resolves #2068
2019-12-30 19:15:43 +01:00
Stefan Wallentowitz
7b384f7eb7
XML: Add variable attributes ( #2079 )
2019-12-30 12:55:36 +01:00
Kuba Ober
7bbce51f7b
Add include guard to V3InstrCount.h. ( #2075 )
...
This is needed for cmake unity build to work.
2019-12-30 06:04:03 +03:00
Kuba Ober
ac1cdf7cdf
Implement APIs missing on Windows. ( #12 )
2019-12-28 19:44:24 +03:00
Wilson Snyder
c753904a3f
Internals: Copy into parser Verilog-Perl rules as comments. No functional change.
2019-12-24 16:15:48 -05:00
Wilson Snyder
8bd43d83b1
Internals: bisonpre should ignore commented BISONPRE lines.
2019-12-24 16:15:47 -05:00
Wilson Snyder
ea5b01d9f3
Internals: Rename pexpr. No functional change intended.
2019-12-24 16:04:28 -05:00
Wilson Snyder
f540dead79
Internals: new() support code, and misc stuff.
2019-12-24 12:47:27 -05:00
Wilson Snyder
40a847d613
Internals: Refactor some code. No functional change intended.
2019-12-24 10:23:43 -05:00
Wilson Snyder
37b9f254a2
Internals: Add origNameProtect. No functional change intended.
2019-12-24 08:47:30 -05:00
Wilson Snyder
c8daab3b46
Internals: Refactor some member handling. No functional change intended.
2019-12-23 20:48:23 -05:00
Wilson Snyder
5089f997cc
Internals: Use standard function for include guards. No functional change intended.
2019-12-23 19:00:17 -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
Wilson Snyder
0f0c3d4684
Internals: Copy into parser Verilog-Perl rules as comments. No functional change.
2019-12-23 16:27:07 -05:00
Wilson Snyder
bacbb4cafd
Parse join_any/join_none still as unsupported.
2019-12-23 15:19:22 -05:00
Wilson Snyder
2cbfe99ad5
Parse all class constructs, as still unsupported.
2019-12-23 15:03:04 -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
Wilson Snyder
49db4d2b66
Internals: Trivial spacing change to force CI rebuild. No functional change.
2019-12-22 20:02:37 -05:00
Wilson Snyder
b087673254
Fix output endif spacing. No functional change.
2019-12-22 18:21:43 -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
Kuba Ober
3f0e2f7d9d
Fix argument in AstConst.m_num.width. ( #9 )
2019-12-21 10:25:05 -05:00
Kuba Ober
c9ca390926
Fix missing <algorithm> header. Pull ( #8 )
2019-12-20 20:14:52 -05:00
Kuba Ober
4a31b69f84
Decrease the number of chained if-else blocks to fix MSVC build. Pull ( #7 )
...
MSVC has a limit of 128 blocks in a chain.
2019-12-20 20:07:50 -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
Wilson Snyder
9807025618
Fix infinite loop on some V3Ast internal errors.
2019-12-19 20:07:48 -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
Julien Margetts
cafb148a62
Commentary
2019-12-17 18:27:47 -05:00
Stefan Wallentowitz
d738501c01
Fix queues as statements, bug1641.
2019-12-17 06:08:41 -05:00
Wilson Snyder
53c6b7df63
Internals: Rename NodeClassDType. No functional change.
2019-12-16 22:46:09 -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
Wilson Snyder
2a1c57ada6
With -Wpedentic, warn about bad `pragma
2019-12-14 10:13:38 -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
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
c896a76fef
Fix clang warning.
2019-12-09 18:25:59 -05:00
Wilson Snyder
bd0eadb311
Fix handling user-botch of %d to print real.
2019-12-08 22:48:44 -05:00
Wilson Snyder
62b0d15d2e
Add lint check for bad enum 4-state values.
2019-12-08 22:26:54 -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
cda5c53cf9
Add BOUNDED warning and promote bounded queues to unbounded.
2019-12-08 15:56:49 -05:00
Wilson Snyder
81fc1d48a6
Fix gate lvalue optimization error, bug831.
2019-12-07 16:49:11 -05:00
Wilson Snyder
f330f16bf6
Internals: Additional debug dumps.
2019-12-07 16:41:34 -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
1a8b192e40
Unsupported on parameters in functions, bug1624.
2019-12-06 18:50:41 -05:00
Wilson Snyder
5c6d74cd80
Fix assertion on dotted parameter arrayed function, bug1620.
2019-12-04 19:25:45 -05:00
Wilson Snyder
8ef4097f00
Fix cppcheck warning.
2019-12-03 19:21:36 -05:00
Wilson Snyder
559852f60b
Add error when number missing value.
2019-12-02 20:21:24 -05:00
Wilson Snyder
b0669f3aca
Fix false unused message on __Vemumtab, msg3180.
2019-12-02 19:03:33 -05:00
Todd Strader
00979ede14
Fix overly aggressive --protect-lib check
2019-12-02 08:33:44 -05:00
Wilson Snyder
809a6de9cd
Fix template brackets to avoid C++11, bug1617.
2019-12-02 06:19:33 -05:00
Wilson Snyder
d65d8fda54
Optimize returns at end of functions.
2019-12-01 17:19:18 -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
6ae7f7b152
Last commit: Fix pattern mismatch crash.
2019-12-01 11:43:48 -05:00
Wilson Snyder
03026b63b9
Internals: Refactor huge pattern function. No functional change intended.
2019-12-01 11:03:53 -05:00
Wilson Snyder
38e586fabe
Internals: Misc refectoring for assoc/queues.
2019-12-01 06:09:58 -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
df192f2b61
Support / with warning.
2019-11-23 09:16:06 -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
Wilson Snyder
0f6b625db8
Fix hang on concat error, bug1608.
2019-11-19 19:23:40 -05:00
Wilson Snyder
f134ac4f2f
Black box some additional unsupported constructs.
2019-11-17 09:01:41 -05:00
Wilson Snyder
39eeda50c6
Internals: Rename MethodCall. No functional change.
2019-11-17 08:51:25 -05:00
Wilson Snyder
09ca4ce791
Internals: Assert proper AstArgs in place.
2019-11-17 08:43:04 -05:00
Wilson Snyder
2ff22d9050
Fix earlier +verilated+error+count to do all .
2019-11-17 08:12:39 -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
62af9dbed4
Fix member to method error messages.
2019-11-16 15:32:55 -05:00
Wilson Snyder
3eb0ff8aa0
Detect wrong number of args on method calls.
2019-11-16 15:18:57 -05:00
Wilson Snyder
ce5a70fbca
Internals: Split large method function. No functional change.
2019-11-16 14:40:45 -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
de7caad710
Fix signed wildcard comparisons.
2019-11-16 09:58:01 -05:00
Wilson Snyder
b1c14e485a
Fix capital S signed numbers.
2019-11-16 09:39:41 -05:00
Wilson Snyder
617424e04a
Internals: Fix cppcheck warning. No functional change.
2019-11-16 03:14:55 -05:00
Wilson Snyder
e9c4ffa04e
Fix for loop missing initializer, bug1605.
2019-11-15 18:24:55 -05:00
Wilson Snyder
21a380def0
Rework variable emit to prep for other data types.
2019-11-12 21:52:25 -05:00
Wilson Snyder
77e30d4920
Internals: Remove dead code. No functional change.
2019-11-12 18:55:16 -05:00
Wilson Snyder
98dcbc6b3e
Remove footprint comment when single threaded.
2019-11-11 22:21:37 -05:00
Wilson Snyder
e04bc16ffa
Codacity cleanup
2019-11-10 13:21:05 -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
fcb733e8d0
Fix clang warning.
2019-11-09 21:47:27 -05:00
Wilson Snyder
f87107e757
Tests etc: Cleanup some clang-format suggestions. No functional change.
2019-11-09 20:35:12 -05:00
Wilson Snyder
cf9f466f0a
Fix false uninit warning
2019-11-09 18:42:18 -05:00
Wilson Snyder
28cbf39995
Support some unpacked arrays in parameters, bug1315.
2019-11-09 18:31:24 -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
704f40b1a2
Internals: Prep work for simulation of array parameters, bug1315. No functional change intended.
2019-11-09 15:27:10 -05:00
Wilson Snyder
c5f859c9a3
Internals: Format cleanup. No functional change.
2019-11-09 15:27:10 -05:00
Todd Strader
abe95f3ab3
Add interface port visibility in traces, bug1594.
2019-11-08 08:26:48 -05:00
Wilson Snyder
2eda38c4d1
Update URLs to https://verilator.org
2019-11-07 22:41:34 -05:00
Wilson Snyder
5811ec07e6
Update URLs to https://verilator.org
2019-11-07 22:33:59 -05:00
Wilson Snyder
f1b10e2b4c
Improve error messages on DIDNOTSETTLE, bug1556.
2019-11-06 19:47:34 -05:00
Wilson Snyder
c1a9ada279
Protect change request filenames.
2019-11-05 21:53:26 -05:00
Wilson Snyder
2aed499e00
Fix detecting missing reg types, bug1570.
2019-11-05 21:15:44 -05:00
Wilson Snyder
b2c5f8e74e
Commentary: No functional change.
2019-11-05 20:42:49 -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
cc4cb4e006
Avoid internal on unsupported; make tests more stable otherwise on internal.
2019-11-04 21:11:15 -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
c0c038c887
Remove false unoptimizable warning under debug
2019-11-02 11:15:08 -04:00
Wilson Snyder
8a5b8d5f38
Internals: Fix VFlagBitPacked giving 4-state types.
2019-11-01 20:10:45 -04:00
Wilson Snyder
ff0dd26fe5
Fix --trace-coverage with randReset.
2019-11-01 20:09:57 -04:00
Wilson Snyder
f781085755
Add --xml-output option.
2019-10-31 21:17:05 -04:00
Wilson Snyder
8f6efdaf5c
Allow both -MMD and --no-MMD, and --no/--skip-identical to override default
2019-10-31 20:59:52 -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
40bdd85a07
Fix minor output spacing issues.
2019-10-29 23:19:59 -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
Wilson Snyder
8f6015aad5
Fix copy-and-paste error in undriven checks.
2019-10-24 22:50:50 -04:00
Wilson Snyder
352adbed74
Codacy/Cppcheck cleanups.
2019-10-24 22:40:15 -04:00
Wilson Snyder
0cbfd29ac5
Codacy/Cppcheck cleanups and badge.
2019-10-24 22:19:46 -04:00
Wilson Snyder
9f977ed419
Codacy/Cppcheck cleanups and badge.
2019-10-24 21:48:45 -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
Wilson Snyder
17ee8579a4
Internals: Make cleanOut/sizeMatters const. No functional change intended.
2019-10-20 11:58:41 -04:00
Wilson Snyder
94f7133c6f
Internals: make dump const. No functional change intended.
2019-10-20 11:49:41 -04:00
Wilson Snyder
71fa09a25b
Fix bad-syntax crashes, bug1563.
2019-10-18 21:30:34 -04:00
Wilson Snyder
89c3c5f952
Internals: Style cleanup. No functional change.
2019-10-18 20:28:59 -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
Wilson Snyder
a7c2037b7a
Add --generate-key.
2019-10-09 18:53:30 -04:00
Todd Strader
da0da9e258
Add --protect-lib to create protected libraries, bug1490.
2019-10-09 06:47:26 -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
307549e8a6
Internals: Fix some cppcheck warnings.
2019-10-06 08:20:02 -04:00
Wilson Snyder
09b79a731a
Fix more output spacing issues.
2019-10-05 21:52:33 -04:00
Wilson Snyder
4544a2fd99
Fix extra declaration of trace() in submodules.
2019-10-05 20:16:33 -04:00
Wilson Snyder
e09c918198
Fix indentation broke in 977a767477.
2019-10-05 18:00:45 -04:00
Wilson Snyder
9bf6135f6d
Remove some output tabs.
2019-10-05 17:35:08 -04:00
Wilson Snyder
d472ef63e9
Internals: Cleanup some misnamed classes. No functional change.
2019-10-05 08:17:21 -04:00
Wilson Snyder
f1c04b5d25
Fix extra space in mtask comment. No functional change.
2019-10-04 22:54:57 -04:00
Wilson Snyder
1cf29c4d20
Fix truncation of comments, broke in f133c4d0b3.
2019-10-04 22:54:17 -04:00
Maarten De Braekeleer
977a767477
Avoid tabs in C output.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-10-04 21:10:53 -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
Wilson Snyder
e1e45cf13c
Internals: Move option checks to notify().
2019-10-03 22:18:29 -04:00
Wilson Snyder
bd89c71694
Internals: Refactor to avoid V3Global requirements in V3String. No functional change intended.
2019-10-02 21:38:16 -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
8b6fb26272
Return good exit status on --help.
2019-09-30 23:15:10 -04:00
Wilson Snyder
881362bb04
Fix clang compile warnings.
2019-09-30 21:55:31 -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
f6e0e9adec
Internals: Use SHA256 instead of insecure SHA1.
2019-09-28 13:32:28 -04:00
Todd Strader
28b9db1903
Add AstVFile and AstTextBlock, towards bug1490.
2019-09-27 04:24:38 -04:00
Wilson Snyder
be4692772c
Ignore MCD fopenw with --bbox-unsup.
2019-09-26 23:37:22 -04:00
Wilson Snyder
4f315d9078
Fix ugly error on interface misuse, bug1525.
2019-09-25 21:53:01 -04:00
Wilson Snyder
f133c4d0b3
Fix mis-indenting AstComments with C++ symbols.
2019-09-24 19:07:22 -04:00
Wilson Snyder
8490046028
Internals: AstComment optional suppression of at. No functional change intended.
2019-09-23 18:44:45 -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
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
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
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
Todd Strader
ec620387af
Add --dpi-hdr-only, bug1491.
2019-08-27 21:36:59 -04:00
Wilson Snyder
e1e4bde125
Remove old V3ClkGater code
2019-08-27 17:51:06 -04:00
Todd Strader
b947391662
Retain widthSized when simulating
2019-08-12 15:38:58 -04:00
Wilson Snyder
562b9551bf
Internals: Remove some unused arguments. No functional change intended.
2019-08-09 04:12:49 -04:00
Wilson Snyder
81e806e895
Fix elaboration time errors, bug1429.
2019-08-04 22:34:54 -04:00
Wilson Snyder
7d4958264a
Support arbitrary-argument $warning/$info etc
2019-08-04 21:50:08 -04:00
Wilson Snyder
429f463032
Don't check SYSTEMC environment, for part of CMake support, bug1363.
2019-08-04 20:21:58 -04:00
Wilson Snyder
b7bd5956ea
Concats should be unsigned
2019-08-04 14:48:17 -04:00
Wilson Snyder
1a36e05cc6
Fix core dump on v3Number replace'ed assertions.
2019-08-04 14:14:28 -04:00
Wilson Snyder
71265a8ec9
Internals: Rename unsized functions. No functional change.
2019-08-04 12:39:35 -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
a95f58749f
Fix internal error on gate optimization of assign, bug1475.
2019-08-03 21:49:39 -04:00
Wilson Snyder
9e58ede480
Internals: Rename V3Hashed functions for future commit. No functional change.
2019-08-03 19:05:59 -04:00
Wilson Snyder
6b798830c9
Fix spacing
2019-07-29 21:07:37 -04:00
Todd Strader
4a14788c9b
When showing an error, show the instance location
2019-07-26 12:52:38 -04:00
Todd Strader
43ce048f9e
Add rr support
2019-07-25 21:34:09 -04:00
Todd Strader
b045111a67
Refactor SimulateVisitor to use AstConst
2019-07-23 13:58:17 -04:00
Todd Strader
654571bd1c
V3Number cleanup
2019-07-22 15:07:08 -04:00
Wilson Snyder
97561bf064
When showing an error, show source code.
2019-07-14 21:42:03 -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
cbb9288cb1
Fix some errors reporting wrong objects.
2019-07-14 12:21:39 -04:00
Wilson Snyder
173efbc829
Offer suggestions on bad identifier errors.
2019-07-14 10:08:53 -04:00
Wilson Snyder
0fef3b02ec
Fix some parse tokens having wrong fileline.
2019-07-13 12:01:26 -04:00
Wilson Snyder
d1ee6689c4
Internals: Make V3LanguageWords a singleton.
2019-07-13 08:57:42 -04:00
Wilson Snyder
a7e5cccf33
In errors, single quote signals and other from-user data.
2019-07-11 22:36:32 -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
83cf1882de
Quote reserved word messages, and related internal cleanups.
2019-07-11 20:49:35 -04:00
Wilson Snyder
dacf45fea9
Fix error message continuations to avoid linenumber repetition
2019-07-11 19:15:40 -04:00
Wilson Snyder
13a20c5ee9
Internals: Fix inserted tabs.
2019-07-11 07:05:33 -04:00
Wilson Snyder
58dfe9d071
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-07-11 06:57:49 -04:00
Wilson Snyder
6c5cc885a6
Internals: Cleanup FileLine constructors. No functional change intended.
2019-07-10 22:04:58 -04:00
Wilson Snyder
9af84c71f5
Internals: More UASSERT_OBJ conversions. No functional change intended.
2019-07-07 09:01:36 -04:00
Wilson Snyder
4ce77d3e68
Header mentions public use.
2019-07-07 09:00:57 -04:00
Wilson Snyder
2ca418288d
Fix enum values not being sized based on parent, bug1442.
2019-07-06 16:26:44 -04:00
Wilson Snyder
bea34d0ced
Internals: Misc enum cleanups. No functional change.
2019-07-06 15:50:25 -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
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
7e54ff1b37
Additional lcov code coverage.
2019-07-05 22:30:19 -04:00
Wilson Snyder
a4b9745e6e
Fix lifetime opt dropping
2019-07-05 22:30:19 -04:00
Wilson Snyder
8612ba2b8d
Internals: Commentary and fix gate debug glibc warning
2019-07-05 22:30:19 -04:00
Wilson Snyder
01ef7122e9
Internals: Add lcov code coverage markers.
2019-06-30 22:37:03 -04:00
Wilson Snyder
ac43e7322b
Internals: Remove dead code.
2019-06-30 22:11:56 -04:00
Wilson Snyder
5cd531a5e0
Tests: Fix glib warning
2019-06-30 21:35:55 -04:00
Wilson Snyder
ec32a9b976
Tests: Close some test coverage holes.
2019-06-30 17:38:41 -04:00
Wilson Snyder
1aae6df669
Internals: Run graph self tests on --debug-self-test
2019-06-30 17:36:58 -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
ba9af4aabf
For internal messages, use <command-line> and <built-in> to match GCC.
2019-06-29 07:39:34 -04:00
Wilson Snyder
6990db70fa
Avoid unique internal fileline in selftest.
2019-06-28 22:34:01 -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
abc0eb92a0
Debug: Show only first line of suppressed warnings
2019-06-22 14:25:31 -04:00
Wilson Snyder
c514bb26e8
Always internal module wrapper TOP.
2019-06-22 13:43:49 -04:00
Wilson Snyder
5cb6474cc6
Fix not reporting some duplicate signals/ports, bug1462.
2019-06-22 12:43:48 -04:00
Wilson Snyder
34ef3c9c38
Internals: Assert V3Number ops have different pointers.
2019-06-15 08:10:17 -04:00
Wilson Snyder
90af180ec1
Fix constant function return of function var, bug1467.
2019-06-15 08:03:39 -04:00
Wilson Snyder
0d71c1154d
Fix overshift error to have user's source line.
2019-06-15 07:44:03 -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
b6c905dffc
Move files into docs directory.
2019-06-13 07:19:44 -04:00
Wilson Snyder
79e9fbaeb7
Tests: Add additional .out files instead of expects.
2019-06-12 21:49:40 -04:00
Wilson Snyder
e713c8ce57
Fix not reporting some duplicate signals, bug1462.
2019-06-12 19:17:10 -04:00
Wilson Snyder
94ed817897
Fix debug over-verbosity.
2019-06-12 19:11:26 -04:00
Wilson Snyder
ff360738b5
XML: Remove extranious space on dtypes.
2019-06-12 07:19:14 -04:00
Wilson Snyder
f7f73a0825
Internals: Standardize internal FileLine filenames.
2019-06-12 07:00:56 -04:00
Wilson Snyder
77c2d49d1a
Internals: Move code out of verilog.y. No functional change.
2019-06-11 21:19:44 -04:00
Wilson Snyder
dd8d5ef687
Internals: Move code out of verilog.l. No functional change.
2019-06-11 21:03:03 -04:00
Wilson Snyder
cfb05cd70a
Whitespace cleanup. No functional change.
2019-06-11 20:20:04 -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
6ffbb7cabf
Internals: Remove extra semicolons. No functional change.
2019-06-11 18:31:06 -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
f6f8073058
Support logical equivalence operator <->.
2019-06-01 19:40:06 -04:00
Wilson Snyder
902ba752a3
Move many unsupported errors from lex to parser so can --bbox-unsup ignore them.
2019-05-31 21:05:50 -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
Wilson Snyder
c0be8bcefb
Internals: Remove some pointless V3Number temporaries. No functional change intended.
2019-05-29 23:18:47 -04:00
Wilson Snyder
8846b365f4
Fix some memory leaks in V3Const/V3Unroll.
2019-05-29 22:43:26 -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
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
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
Wilson Snyder
01725f662f
Fix $display with string without %s, bug1441.
2019-05-16 21:21:38 -04:00
Wilson Snyder
d841e68f4f
Fix parameter function string returns, bug1441.
2019-05-16 21:16:20 -04:00
Wilson Snyder
13ecb8e177
Fix fault on with %t, bug1443.
2019-05-16 19:35:10 -04:00
Wilson Snyder
c8849094fc
Fix spacing of last commit.
2019-05-14 22:05:37 -04:00
Wilson Snyder
afea6d84e3
Mark infrequently called functions with GCC cold attribute.
2019-05-14 22:03:50 -04:00
Wilson Snyder
1fb0af7fba
Internals: Fix some -Wsuggest-attribute=const suggestions.
2019-05-14 21:46:19 -04:00
Wilson Snyder
8ad1a68420
Fix OSX compile issue with -Winvalid-noreturn, bug1440.
2019-05-14 20:51:28 -04:00
Todd Strader
d0fbdfac07
Add --quiet-exit, bug1436.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-05-14 06:47:51 -04:00
Wilson Snyder
7777d10e9b
Tests: Check for and remove trailing newlines
2019-05-13 19:47:52 -04:00
Wilson Snyder
07e6bc17db
Fix error message showing pointer
2019-05-13 19:31:00 -04:00
Wilson Snyder
1f714c6813
Commentary: Spelling fixes.
2019-05-11 18:42:27 -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
b23fc06388
Internals: Detab and fix spacing style issues in some include files. No functional change.
2019-05-07 23:30:24 -04:00
Wilson Snyder
f818ddc71c
Internals: Detab and fix spacing style issues in tests and scripts. No functional change.
2019-05-07 22:34:09 -04:00
Wilson Snyder
37c8cc82b2
Auto-extend and WIDTH warn on unsized X/Zs, bug1423.
2019-05-07 21:57:38 -04:00
Wilson Snyder
03ebd5554f
Fix table compile error with multiinterfaces, bug1431.
2019-05-06 19:33:54 -04:00
Wilson Snyder
c6650f88e1
Internals: Remove some uses of AstConst taking V3Number. No functional change intended.
2019-05-03 21:21:18 -04:00
Wilson Snyder
55a25674a2
Add --trace-fst-thread.
2019-05-02 20:33:05 -04:00
Wilson Snyder
1ff55c20e0
Support "'dx" constants, bug1423.
2019-05-01 20:02:28 -04:00
Wilson Snyder
3acb85a005
Fix FST enums not displaying, bug1426.
2019-05-01 19:18:45 -04:00
Wilson Snyder
08d041cb93
Add error when use parameters without value, bug1424.
2019-04-30 19:16:41 -04:00
Wilson Snyder
2582a83376
Unsupported error on select of concatenation
2019-03-13 19:52:23 -04:00
Wilson Snyder
0094cd7a81
Internals: Spacing fixes. No functional change.
2019-03-13 19:47:47 -04:00
Wilson Snyder
d9b33d74a4
Support void' cast on functions called as tasks, bug1383.
2019-03-10 15:12:20 -04:00
Wilson Snyder
539a773ea7
Add IGNOREDRETURN warning.
2019-03-10 14:57:01 -04:00
Wilson Snyder
b1831d7e33
Fix +1364-1995ext flags applying too late, bug1384.
2019-03-10 14:09:22 -04:00
Wilson Snyder
0eb75a41bb
Fix perl 5.38 warning.
2019-03-10 12:14:02 -04:00
Wilson Snyder
7bf3366041
Support .
2019-03-07 20:56:53 -05:00
Wilson Snyder
455c552132
Fix MSVC compile error, bug1406.
2019-03-04 20:29:01 -05:00
Wilson Snyder
ab3c6576ed
Report PORTSHORT errors on concat constants, bug 1400.
2019-02-27 21:06:07 -05:00
Wilson Snyder
8a43f41ed6
Fix $value$plus$args missing verilated_heavy.h.
2019-02-15 18:33:52 -05:00
Wilson Snyder
46be6d32c9
Add unsupported for loops error, msg2692.
2019-01-22 19:25:00 -05:00
Wilson Snyder
60f2f176a2
Fix DPI export void compiler error, bug1391.
2019-01-16 00:38:42 -05:00
Wilson Snyder
3a51e84ebc
For XML, fix extends, bug1372.
2019-01-13 20:59:15 -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
62a7d713a7
Fix internal error on xrefs into unrolled functions, bug1387.
2019-01-06 17:38:27 -05:00
Wilson Snyder
aaf5b7c2c0
Fix uninitialized data in unroller, bug1386. [Al Grant]
2019-01-06 16:56:56 -05:00
Wilson Snyder
30aa180211
Internals: Use pushDelete for empty unrolls. Theoretical problem only.
2019-01-05 06:53:26 -05:00
Wilson Snyder
0d4270c979
Turn off temporary debug message.
2019-01-05 06:01:22 -05:00
Wilson Snyder
3505486ec8
Internals: Spacing; fix assertion
2019-01-05 05:46:37 -05:00
Wilson Snyder
0e1f8db0d1
Fix uninitialized data in verFiles.dat, bug1385.
2019-01-05 04:58:14 -05:00
Wilson Snyder
8a4aeddbb0
Copyright year update.
2019-01-03 19:17:22 -05:00
Wilson Snyder
e8636f987f
Fix missing too many digits warning, bug1380.
2019-01-03 19:03:27 -05:00
Wilson Snyder
0198a2e9f3
Fix error when no modules in , bug1381.
2019-01-02 18:38:49 -05:00
Wilson Snyder
db92ab47ba
For --xml, add additional information, bug1372.
2019-01-02 07:16:37 -05:00
Wilson Snyder
e01c9df35e
Fix error when pattern assignment has too few elements, bug1378.
2018-12-18 20:41:14 -05:00
Wilson Snyder
89fb57e54f
For --xml, add additional information, bug1372.
2018-12-12 22:12:31 -05:00
Wilson Snyder
8a3e9748b3
For --xml, add additional information, bug1372.
2018-12-10 19:11:35 -05:00
Wilson Snyder
66b23be746
For --xml, add additional modport information, bug1372.
2018-12-10 07:25:44 -05:00
Wilson Snyder
f0cdae129e
Removed --trace-lxt2, use --trace-fst instead.
2018-12-06 19:06:20 -05:00
Wilson Snyder
ede7236945
For --xml, add additional var information, bug1372.
2018-12-06 07:12:39 -05:00
Wilson Snyder
49edcbc2ac
Internals: Misc cleanup. No functional change.
2018-12-06 06:56:39 -05:00
Wilson Snyder
940dc98c66
Add CONTASSREG error on continuous assignments to regs, bug1369.
2018-12-01 10:12:10 -05:00
Wilson Snyder
49353784fd
Fix __Slow files getting compiled with OPT_FAST, bug1370.
2018-11-29 20:35:21 -05:00
Wilson Snyder
61e4b0a472
Add IMPORTSTAR warning on import::* inside scope.
2018-11-28 18:25:34 -05:00
Wilson Snyder
15af706286
Fix crash due to cygwin bug in getline, bug1349.
2018-11-26 19:09:08 -05:00
Wilson Snyder
5cc11839b5
Add PROCASSWIRE error on behavioral assignments to wires, msg2737.
2018-11-26 17:58:18 -05:00
Wilson Snyder
e0b2c46664
Internals: Function return values act as vars, not wires.
2018-11-25 19:50:53 -05:00
Wilson Snyder
ea61559ab5
Internals: Cleaner name for var. No functional change.
2018-11-25 19:10:18 -05:00
Wilson Snyder
6a5a2a56d7
Internals: Favor AstNetlist for global thread errors, and allow 0 line number error suppression.
2018-11-16 20:49:17 -05:00
Wilson Snyder
64f11251b6
Fix verilator_coverage not sorting output
2018-11-01 21:39:37 -04:00
Wilson Snyder
d396c55e34
In --xml-only show module_files and cells ala Verilog-Perl vhier, msg2716.
2018-11-01 19:53:26 -04:00
Wilson Snyder
45c9939a5e
Fix hang on bad pattern keys, bug1364.
2018-11-01 19:03:52 -04:00
Wilson Snyder
ad2929dff0
Support "ref" and "const ref" pins and functions, bug1360.
2018-10-30 20:50:09 -04:00
Wilson Snyder
14b48140bd
In --xml-only show the original unmodified names, msg2716.
2018-10-30 18:17:37 -04:00
Wilson Snyder
d464ce1477
Fix unneeded emit comment. No functional change.
2018-10-29 20:48:50 -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
06c7d8ce3b
Internals: Fix whitespace issues. No functional change, use -b to diff
2018-10-27 10:03:28 -04:00
Wilson Snyder
da1ebcb4e4
Add --pp-comments, msg2700.
2018-10-25 21:17:25 -04:00
Wilson Snyder
8dbfc940ba
Internals: Refactor comment parsing. No functional change intended.
2018-10-25 20:46:23 -04:00
Wilson Snyder
e0654dc218
Add --dump-defines.
2018-10-25 19:47:07 -04:00
Patrick Stewart
74a92e739f
Internals: Fix missing static. No functional change.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-10-24 19:40:07 -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
b7e4083e70
Internals: Cleanup temp string inserts for clang-tidy. No functional change.
2018-10-14 11:10:11 -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
e4d638c73d
Internals: Cleanup string casts. No functional change.
2018-10-13 22:02:39 -04:00
Wilson Snyder
b59c23d346
Move some unsupported syntax to parser for cleaner errors.
2018-10-11 21:57:07 -04:00
Wilson Snyder
08e650a2b4
Commentary
2018-10-11 21:00:29 -04:00
Wilson Snyder
97d89cce35
Move some unsupported syntax to parser for cleaner errors.
2018-10-08 22:18:09 -04:00
Wilson Snyder
cc45a3dd72
For --trace-fst, save enum decoding information, bug1358.
2018-10-08 07:21:22 -04:00
Wilson Snyder
41be66af95
Indent output C code '= {' blocks.
2018-10-07 21:23:45 -04:00
Wilson Snyder
1f344ac99e
Fix whitespace on trace function calls. Output changed, but no functional change.
2018-10-07 18:17:45 -04:00
Wilson Snyder
8b738c0022
Compute struct/union/enum names from surrounding typedefs.
2018-10-07 18:07:42 -04:00
Wilson Snyder
4cd01bc99a
Deprecate --trace-lxt2.
2018-10-06 14:13:38 -04:00
Wilson Snyder
1f5913a83c
Internals: V3Simulate refactoring prep for future work. No functional change.
2018-10-05 20:26:54 -04:00
Wilson Snyder
159c653b4b
Internals: V3Simulate refactoring prep for future work. No functional change.
2018-10-05 20:06:08 -04:00
Wilson Snyder
c5fee7c456
Fix flex warning
2018-10-04 20:51:20 -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
Sergi Granell
a5aa0e2b0a
Add GTKWave FST native tracing, bug1356.
...
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2018-10-02 18:42:53 -04:00
Wilson Snyder
c9ee425ed5
Fix replication of 64-bit signal change detects.
2018-09-28 08:36:37 -04:00
Wilson Snyder
9f8dbc91f2
Support restrict, bug1350.
2018-09-23 15:20:12 -04:00
Wilson Snyder
0e37747d2c
Support $past.
2018-09-23 15:20:01 -04:00
Wilson Snyder
a8519a7a53
Fix MinGW compile issues, msg2636.
2018-09-20 18:09:19 -04:00
Kevin Kiningham
b2ca4995ab
Fix Mac OSX 10.13.6 / LLVM 9.1 compile issues, bug1348.
2018-09-17 18:35:23 -04:00
Wilson Snyder
7876fe94ad
Fix Mac OSX 10.13.6 / LLVM 9.1 compile issues, bug1348.
2018-09-17 06:39:43 -04:00
Wilson Snyder
8c51b5a980
Docs: Add logo to PDF
2018-09-16 17:01:45 -04:00
Wilson Snyder
4f98f84da9
Fix duplicate symbol error on generate tri, bug1347.
2018-09-14 06:56:59 -04:00