Wilson Snyder
7bfc1a00a7
Fix tracing interfaces inside interfaces ( #3309 ).
2022-04-14 09:14:44 -04:00
Julien Margetts
baff64a43d
Add VK_USER_OBJS dependency to --create-lib library ( #3370 ) ( #3382 ).
2022-04-12 07:04:31 -04:00
Wilson Snyder
f5f4e15ce2
Fix filenames with dots overwriting debug .vpp files ( #3373 ).
2022-04-10 10:33:16 -04:00
Geza Lore
c79ea88576
Fix incorrect localization when encountering non-leaf functions.
...
Fixes #3286 .
2022-04-09 20:30:39 +01:00
Wilson Snyder
9be4e7b576
Fix Bison 3.8.2 error ( #3366 ).
2022-03-31 19:14:13 -04:00
Wilson Snyder
e02f97854c
Deprecate 'vluint64_t' and similar types ( #3255 ).
2022-03-27 15:27:40 -04:00
Wilson Snyder
3f7bf3d2dc
Fix MSVC localtime_s ( #3124 ).
2022-03-27 13:59:18 -04:00
Geza Lore
b1b5b5dfe2
Improve run-time profiling
...
The --prof-threads option has been split into two independent options:
1. --prof-exec, for collecting verilator_gantt and other execution
related profiling data, and
2. --prof-pgo, for collecting data needed for PGO
The implementation of execution profiling is extricated from
VlThreadPool and is now a separate class VlExecutionProfiler. This means
--prof-exec can now be used for single-threaded models (though it does
not measure a lot of things just yet). For consistency VerilatedProfiler
is renamed VlPgoProfiler. Both VlExecutionProfiler and VlPgoProfiler are
in verilated_profiler.{h/cpp}, but can be used completely independently.
Also re-worked the execution profile format so it now only emits events
without holding onto any temporaries. This is in preparation for some
future optimizations that would be hindered by the introduction of function
locals via AstText.
Also removed the Barrier event. Clearing the profile buffers is not
notably more expensive as the profiling records are trivially
destructible.
2022-03-27 15:57:30 +02:00
Wilson Snyder
e744c21f56
devel release
2022-03-12 13:17:48 -05:00
Wilson Snyder
89a0632ecc
Version bump
2022-03-12 13:09:08 -05:00
Wilson Snyder
dcc05db7f1
Commentary: Changes updated.
2022-03-12 11:34:04 -05:00
Wilson Snyder
b5ce7d5982
Add VERILATOR_VERSION_INTEGER for determining API ( #3343 ).
2022-03-12 11:17:39 -05:00
Wilson Snyder
ae005434e4
Fix $fscanf etc to return -1 on EOF ( #3313 ).
2022-03-07 17:44:16 -05:00
Wilson Snyder
ef87d057fc
Fix $fscanf etc to return -1 on EOF ( #3113 ).
2022-03-07 17:43:33 -05:00
Wilson Snyder
22656d6fdd
Fix Vdeeptemp error with --threads and --compiler clang ( #3338 ).
2022-03-05 20:17:36 -05:00
Wilson Snyder
90c61c79d6
Fix unnamedblk error on foreach ( #3321 ).
2022-03-05 17:04:52 -05:00
Wilson Snyder
4ba3bff87f
Fix class stringification on wide arrays ( #3312 ).
2022-03-05 16:32:30 -05:00
Wilson Snyder
c3dd6f5344
Fix public function arguments that are arrayed ( #3316 ).
2022-03-05 16:19:53 -05:00
Wilson Snyder
321880f5a6
Add trace dumpvars() call for selective runtime tracing ( #3322 ).
2022-03-05 15:44:32 -05:00
Geza Lore
3737d209f6
Keep recursive module list topologically ( #3324 ).
...
Fixes (#3324 ).
2022-03-05 15:04:13 +00:00
Wilson Snyder
956f64c6ba
Fix compile error with --trace-fst --sc ( #3332 ).
2022-03-02 07:26:26 -05:00
Wilson Snyder
e52a4ac74f
Fix $readmem file not found to be warning not error ( #3310 ).
2022-02-19 10:04:12 -05:00
Wilson Snyder
5a3eab634a
Suppress WIDTH warning on negate using carry bit ( #3295 ). [Peter Monsson]
2022-02-13 15:28:07 -05:00
Wilson Snyder
77e68acf54
Suppress WIDTH warning on negate using carry bit ( #2395 ). [Peter Monsson]
2022-02-13 15:27:31 -05:00
Wilson Snyder
7a355d448a
Fix skipping public enum values with four-state values ( #3303 ).
2022-02-10 19:27:28 -05:00
Wilson Snyder
434c3c3ef3
Removed the deprecated "fl" attribute in XML output; use "loc" attribute instead.
2022-01-17 16:22:07 -05:00
Wilson Snyder
21e05c43dd
Removed the deprecated lint_off flag -msg; use -rule instead.
2022-01-17 16:04:06 -05:00
Wilson Snyder
0e154b35ef
devel release
2022-01-17 15:54:31 -05:00
Wilson Snyder
e6554e061c
Version bump
2022-01-17 15:52:26 -05:00
Wilson Snyder
0f004c8e7b
Commentary, ChangeLog up to date
2022-01-17 14:16:09 -05:00
Julie Schwartz
f5b1a5cd58
Fix make support for BSD ar ( #2999 ) ( #3256 ). [Julie Schwartz]
...
While GNU 'ar' supports '@' to specify a file, BSD 'ar' does not.
The max line length can be handled by 'xargs' instead, which will know
to break up the command. In case there are multiple calls, only build
the index (specified with '-s') once in a later call.
2022-01-17 14:04:43 -05:00
Geza Lore
f8c0169e82
Implement 'forceable' attribute
...
Using the 'forceable' directive in a configuration file, or the /*
verilator forceable */ metacomment on a variable declaration will
generate additional public signals that allow the specified signals to
be forced/released from the C++ code.
2022-01-16 15:31:37 +00:00
Geza Lore
b4d8220cbb
Deprecate --cdc ( #3279 )
2022-01-16 15:30:44 +00:00
Yutetsu TAKATSUKASA
4e5f30858b
Fix #3258 of internal error with inout port ( #3268 )
...
* Tests: Modify t_tri_inout to reproduce #3258
* Set direction of __en accorting to its main signal direction
* Update Changes
2022-01-05 08:37:20 +09:00
Wilson Snyder
2e2b82c052
Support class static members ( #2233 ).
2022-01-02 15:09:07 -05:00
Wilson Snyder
e4c5eb5e69
Fix spurious UNUSED by ignoring inout pin connections ( #3242 ).
2022-01-01 18:37:34 -05:00
Wilson Snyder
655910d486
Fix associative array first method as statement ( #3228 ).
2022-01-01 17:10:26 -05:00
Wilson Snyder
80859a609a
Fix $fclose not accepting expressions ( #3237 ).
2022-01-01 16:48:15 -05:00
Wilson Snyder
d679d50eca
Fix $random not updating seed ( #3238 ). [Julie Schwartz]
2022-01-01 16:43:06 -05:00
Wilson Snyder
4cd56b1fb9
Use C++11 standard types for MacOS portability ( #3254 ) ( #3257 ).
2022-01-01 16:04:20 -05:00
Wilson Snyder
a68a4fc888
Commentary
2022-01-01 12:26:30 -05:00
Wilson Snyder
0c3ffa1841
Support force/release ( #2491 ) ( #2593 ).
2022-01-01 12:24:19 -05:00
Wilson Snyder
ca42be982c
Copyright year update.
2022-01-01 08:26:40 -05:00
Wilson Snyder
7526151670
Fix bad ending address on $readmem ( #3205 ).
2021-12-21 19:55:04 -05:00
Wilson Snyder
560b59f97f
Use C++11 standard types for MacOS portability ( #3254 ).
2021-12-21 13:18:05 -05:00
Geza Lore
1de2de4bde
Fix splitting of large _eval and related functions
...
Fix bug that only used to measure size of first statement in functions
to determine if splitting was necessary. Measure whole function instead.
2021-12-20 11:24:11 +00:00
Geza Lore
ff425369ac
Reduce .rodata footprint of trace initialization ( #3250 )
...
Trace initialization (tracep->decl* functions) used to explicitly pass
the complete hierarchical names of signals as string constants. This
contains a lot of redundancy (path prefixes), does not scale well with
large designs and resulted in .rodata sections (the string constants) in
ELF executables being extremely large.
This patch changes the API of trace initialization that allows pushing
and popping name prefixes as we walk the hierarchy tree, which are
prepended to declared signal names at run-time during trace
initialization. This in turn allows us to emit repeat path/name
components only once, effectively removing all duplicate path prefixes.
On SweRV EH1 this reduces the .rodata section in a --trace build by 94%.
Additionally, trace declarations are now emitted in lexical order by
hierarchical signal names, and the top level trace initialization
function respects --output-split-ctrace.
2021-12-19 15:15:07 +00:00
Wilson Snyder
6b0601fd54
Support lower dimension looping in foreach loops ( #3172 ).
2021-12-11 20:39:58 -05:00
Wilson Snyder
740fee660e
Fix associative array foreach loop ( #3229 ).
2021-12-11 18:38:23 -05:00
Wilson Snyder
984ee624ed
Fix break under foreach loop ( #3230 ).
...
Internals: Move Foreach handling into V3Width.
2021-12-11 15:06:33 -05:00
Wilson Snyder
59d170c6f8
Support up to 64 bit enums for .next/.prev/.name ( #3244 ).
2021-12-11 11:29:01 -05:00
Wilson Snyder
8696e38e6f
Primary inputs and outputs (VL_INW/VL_OUTW) now use VlWide type ( #3236 ).
2021-12-09 19:41:33 -05:00
Wilson Snyder
706162ecc6
Commentary
2021-12-09 19:30:16 -05:00
Unai Martinez-Corral
7b119a594f
Fix MSWIN compile error ( #2681 ).
2021-12-06 08:15:58 -05:00
Wilson Snyder
ac05a779ae
devel release
2021-12-05 11:16:02 -05:00
Wilson Snyder
935032366f
Version bump
2021-12-05 11:10:19 -05:00
Wilson Snyder
293a5f402b
Fix timescale portability on Arm64 ( #3222 ).
2021-11-28 15:47:19 -05:00
Wilson Snyder
692306ef44
Optimize $random concatenates/selects ( #3114 ).
2021-11-28 14:17:28 -05:00
Wilson Snyder
04e0c7e4f1
Support tracing through --hierarchical/--lib-create libraries ( #3200 ).
2021-11-27 17:07:27 -05:00
Wilson Snyder
833686446c
Commentary, ChangeLog up to date
2021-11-27 09:05:51 -05:00
Wilson Snyder
c6dae40cf6
Support task name in $display %m ( #3211 ).
2021-11-26 20:38:48 -05:00
Wilson Snyder
62387a0e32
Fix display of empty string constant ( #3207 ) ( #3215 ).
2021-11-25 08:03:27 -05:00
Wilson Snyder
31079ca8b5
Fix $size on dynamic strings ( #3216 ).
2021-11-25 07:50:47 -05:00
Wilson Snyder
e7ebe0e280
Fix $fopen etc on integer arrays ( #3214 ).
2021-11-23 18:22:16 -05:00
Wilson Snyder
c14bbb9421
Fix incorrect width after and-or optimization ( #3208 ).
2021-11-23 18:15:21 -05:00
Wilson Snyder
b1b92b7dd4
Fix hang on recursive definition error ( #3199 ).
2021-11-23 07:27:41 -05:00
Julie Schwartz
a14394dbb5
Commentary: remove duplicate/wrong change-log entry ( #3212 )
2021-11-18 05:15:02 -05:00
Wilson Snyder
1e440765c0
Commentary, about previous commit: Fix display of signed without format ( #3204 ).
2021-11-17 18:52:53 -05:00
Wilson Snyder
2ccf49031b
Fix $display of signed/unsigned without format ( #3207 ).
2021-11-17 18:50:52 -05:00
Wilson Snyder
0abc856be9
Fix %0 format on $value$plusargs.
2021-11-17 17:54:07 -05:00
Wilson Snyder
d2a8fa7440
Fix display of empty string constant ( #3207 ).
2021-11-17 17:46:08 -05:00
Wilson Snyder
899de9a282
Add --lib-create, similar to --protect-lib but without protections ( #3200 ).
2021-11-14 09:39:31 -05:00
Wilson Snyder
8b00939f0c
Improve performance of V3Scoreboard. Only performance change intended.
2021-11-03 22:16:18 -04:00
Wilson Snyder
758264dc77
Fix nested generate if genblk naming ( #3189 ).
2021-11-01 08:59:00 -04:00
Wilson Snyder
304697d133
Commentary
2021-11-01 08:57:43 -04:00
Wilson Snyder
0ef9087f89
Commentary
2021-10-17 14:51:50 -04:00
Wilson Snyder
00059987a1
devel release
2021-10-17 14:47:19 -04:00
Wilson Snyder
8f090176a6
Version bump
2021-10-17 14:36:23 -04:00
Wilson Snyder
43e8263d1f
Commentary
2021-10-17 14:35:34 -04:00
Wilson Snyder
b8f6b262e4
Fix false EOFNEWLINE warning when DOS carriage returns present ( #3171 ).
2021-10-13 21:21:51 -04:00
Wilson Snyder
b64e89f7ed
Fix calling new with arguments in same class ( #3166 ).
2021-10-12 21:22:59 -04:00
Wilson Snyder
c3bec344a4
Fix missing install of vl_file_copy/vl_hier_graph ( #3165 ).
2021-10-12 20:20:45 -04:00
Wilson Snyder
9029da5ab8
Add profile-guided optmization of mtasks ( #3150 ).
2021-09-26 22:51:11 -04:00
Wilson Snyder
def7c8fe4d
Commentary
2021-09-26 16:21:58 -04:00
Wilson Snyder
9184c4f501
Fix cygwin compile error due to missing -std=gnu++14 ( #3149 )
2021-09-26 16:19:46 -04:00
Wilson Snyder
87ced0cc3e
Fix crash on clang 12/13 ( #3148 ).
2021-09-25 17:10:57 -04:00
Wilson Snyder
33650336f5
Commentary
2021-09-24 08:49:16 -04:00
Wilson Snyder
bbce1dc256
Commentary
2021-09-24 08:48:20 -04:00
Wilson Snyder
8ab51dbf22
Verilator_gantt: remove ASCII graphics
2021-09-24 08:48:20 -04:00
Wilson Snyder
c2819923c5
Verilator_gantt now shows the predicted mtask times, eval times, and additional statistics.
2021-09-23 22:59:36 -04:00
Wilson Snyder
08c8b0d7d6
Fix removing if statement with side effect in condition ( #3131 ).
2021-09-13 15:52:53 -04:00
Wilson Snyder
d384a69877
Fix display has no time units on class function ( #3116 ).
2021-09-08 19:31:46 -04:00
Wilson Snyder
d09b6a7d2c
Include processor information in verilator_gantt data file.
2021-09-05 11:56:28 -04:00
Wilson Snyder
56dc66d842
Fix verilator_profcfunc profile accounting ( #3115 ).
2021-09-03 19:59:10 -04:00
Wilson Snyder
da833d55fe
devel release
2021-09-01 21:08:17 -04:00
Wilson Snyder
960813cb0f
Version bump
2021-09-01 20:58:03 -04:00
Wilson Snyder
3e03cd5a4d
Commentary
2021-09-01 20:39:59 -04:00
Wilson Snyder
27d53691bd
Add header guards on Dpi.h generated files ( #2979 ).
2021-08-23 21:43:54 -04:00
Wilson Snyder
c3d64d9743
Fix internal error on wide -x-initial unique ( #3106 ).
2021-08-23 20:13:09 -04:00
Wilson Snyder
f9806595f2
Add error when constant function under a generate ( #3103 ).
2021-08-21 10:33:20 -04:00