Wilson Snyder
779cf9248a
Cleanup/standardize configuration file string handling
2024-11-12 11:29:27 -05:00
Wilson Snyder
4d95f6f7b8
Add `--waiver-multiline` for context-sensitive `--waiver-output`.
2024-11-11 20:00:26 -05:00
Wilson Snyder
7c8ff1d19c
Add `--no-std-package` as subset-alias of `--no-std`.
2024-11-11 08:30:07 -05:00
Geza Lore
03bd1bfc63
Move Concat balancing from DFG to FuncOpt ( #5602 )
...
This means it applies more widely, e.g. inside sequential logic.
2024-11-10 17:23:11 +00:00
Geza Lore
77ef2cd487
Split up assignments to wides with Concat on the RHS ( #5599 )
...
Add a new pass to split up (recursively):
foo = {l, r};
into the following, with the right indices, iff the concatenation
straddles a wide word boundary.
foo[_:_] = r;
foo[_:_] = l;
This eliminates more wide temporaries.
Another 23% speedup on VeeR EH2 high_perf. Also brings the predicted
stack size from 8M to 40k.
2024-11-10 15:51:59 +00:00
Wilson Snyder
469eca7de2
Commentary: Changes update
2024-10-25 18:54:39 -04:00
Tomasz Gorochowik
fd2917c928
Commentary: Fix sv-bugpoint paragraph typo ( #5558 )
2024-10-24 09:41:27 -04:00
Tomasz Gorochowik
647af27274
Commentary: Mention sv-bugpoint in the contributing guidelines ( #5553 )
2024-10-24 07:42:57 -04:00
Wilson Snyder
230b145c04
Commentary
2024-10-10 08:14:21 -04:00
Wilson Snyder
2c445e4bfd
Commentary: Changes update
2024-10-07 21:44:07 -04:00
Wilson Snyder
554653900a
Commentary: Move C++20 deprec to after Ubuntu 20.04 EOL
2024-10-03 18:15:51 -04:00
Mariusz Glebocki
0547108e3f
Add `-output-groups` to build with concatenated .cpp files ( #5257 )
...
Signed-off-by: Bartłomiej Chmiel <bchmiel@antmicro.com>
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
Signed-off-by: Arkadiusz Kozdra <akozdra@antmicro.com>
Co-authored-by: Mariusz Glebocki <mglebocki@antmicro.com>
Co-authored-by: Arkadiusz Kozdra <akozdra@antmicro.com>
Co-authored-by: Bartłomiej Chmiel <bachm44@gmail.com>
Co-authored-by: Wilson Snyder <wsnyder@wsnyder.org>
Co-authored-by: Ryszard Rozak <rrozak@antmicro.com>
2024-09-30 21:42:36 -04:00
Wilson Snyder
13a1240359
Commentary: Changes update
2024-09-29 21:41:05 -04:00
Chris Bachhuber
685ea0bc65
Add Docker pre-commit hook ( #5238 ) ( #5452 )
2024-09-23 07:37:24 -04:00
Chris Bachhuber
b17619296a
Documentation: Highlight syntax in install.rst ( #5478 )
2024-09-22 15:55:12 -04:00
Wilson Snyder
49bccb5f1b
Commentary
2024-09-19 17:58:37 -04:00
Wilson Snyder
0fe8c73d19
Fix `$fatal` to not be affected by `+verilator+error+limit` ( #5135 ).
2024-09-13 20:45:44 -04:00
Wilson Snyder
e566b5a4f5
Change .vlt config files to be read before .v files ( #5185 ).
2024-09-09 20:18:54 -04:00
Andrew Nolte
1e7611edea
Change to use maximum for cover point aggregation ( #5402 )
2024-09-09 14:20:18 -04:00
Wilson Snyder
07bb8c701d
Convert test driver to Python ( #5427 )
2024-09-08 13:00:03 -04:00
Andrew Nolte
083fb7e9c2
Add partial coverage symbol and branch data in lcov info files ( #5388 )
2024-09-06 18:15:18 -04:00
Wilson Snyder
ae35be9102
Internals: Reformat with new settings (last commit). No functional change.
2024-08-26 21:53:36 -04:00
Wilson Snyder
8db9c1d227
Commentary: Changes update
2024-08-21 08:40:14 -04:00
Bartłomiej Chmiel
a730daabef
Support 'parameter type' in hierarchical blocks ( #5309 ) ( #5333 )
2024-08-21 05:30:59 -04:00
Luca Colagrande
d1da1664f0
Docs: Fix typos in `:vlopt:` command usage in docs ( #5355 ) ( #5356 )
2024-08-09 14:17:36 +01:00
Wilson Snyder
8f4490628f
Commentary: Clarify some warning messages.
2024-07-20 17:50:14 -04:00
Wilson Snyder
6882f8c55e
Commentary: Surfer ( #5253 )
2024-07-11 18:33:35 -04:00
Ryan Ziegler
947b6fd23f
Add `--emit-accessors` ( #5182 ) ( #5227 )
2024-07-06 13:12:53 +01:00
Bartłomiej Chmiel
864a852bca
Add `--compiler-include` for additional C++ includes ( #5139 ) ( #5202 )
2024-06-27 18:53:44 -04:00
Bartłomiej Chmiel
9e2c8aefc8
Add `--pins-sc-uint-bool` to force SystemC uint type ( #5192 )
2024-06-25 05:27:09 -04:00
Arkadiusz Kozdra
d4c3e35f97
Support `$psprintf` system function ( #4314 ) ( #5169 )
...
`$psprintf` is a non-standard system function present in some other
simulators, and has been rejected for standardization by IEEE because
of being basically the same as `$sformatf`.
To encourage users to fix their codebase, a warning is emitted by
default, but it gets otherwise interpreted as `$sformatf` as early as
during lexing.
Signed-off-by: Arkadiusz Kozdra <akozdra@antmicro.com>
* wording/formatting
Signed-off-by: Arkadiusz Kozdra <akozdra@antmicro.com>
---------
Signed-off-by: Arkadiusz Kozdra <akozdra@antmicro.com>
2024-06-10 08:38:26 -04:00
Ryszard Rozak
839c3bf444
Commentary: Fix docs of verilator_coverage ( #5149 )
...
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2024-05-29 08:11:35 -04:00
Wilson Snyder
f84592af49
Fix x-valued parameters with `--x-assign unique` ( #5129 ).
2024-05-21 08:07:57 -04:00
Arkadiusz Kozdra
739be2f782
Support constrained randomization with external solvers ( #4947 )
2024-05-17 10:38:34 -04:00
Geza Lore
80b08b71aa
Support NBAs to arrays inside loops ( #5092 )
...
For NBAs that might execute a dynamic number of times in a single
evaluation (specifically: those that assign to array elements inside
loops), we introduce a new run-time VlNBACommitQueue data-structure
(currently a vector), which stores all pending updates and the necessary
info to reconstruct the LHS reference of the AstAssignDly at run-time.
All variables needing a commit queue has their corresponding unique
commit queue.
All NBAs to a variable that requires a commit queue go through the
commit queue. This is necessary to preserve update order in sequential
code, e.g.:
a[7] <= 10
for (int i = 1 ; i < 10; ++i) a[i] <= i;
a[2] <= 10
needs to end with array elements 1..9 being 1, 10, 3, 4, 5, 6, 7, 8, 9.
This enables supporting common forms of NBAs to arrays on the left hand
side of <= in non-suspendable/non-fork code. (Suspendable/fork
implementation is unclear to me so I left it unchanged, see #5084 ).
Any NBA that does not need a commit queue (i.e.: those that were
supported before), use the same scheme as before, and this patch should
have no effect on the generated code for those NBAs.
2024-05-03 07:45:49 -04:00
Todd Strader
c99364b81a
Support vpiInertialDelay ( #5087 )
2024-05-01 18:56:50 -04:00
Wilson Snyder
8fd038f88e
Add `--localize-max-size` option and optimization ( #5072 ).
2024-04-30 19:46:54 -04:00
Todd Strader
25fd8ef5c0
Add VPI eval needed tracking ( #5065 )
2024-04-25 09:07:31 -04:00
Paul Wright
a8b5738b44
Support __en/__out signals on top level inout ports ( #4812 ) ( #4856 )
2024-04-11 09:02:58 -04:00
Wilson Snyder
28718f964a
Fix tracing replicated hierarchical models ( #5027 ) ( #5029 )
2024-03-30 16:00:52 -04:00
Szymon Gizler
8301fdc6d3
Add JSON AST dumps ( #5020 )
2024-03-28 07:32:18 -04:00
Wilson Snyder
4df9e2e0e5
Add printing summary reports ( #4909 ) ( #5018 )
2024-03-25 07:03:17 -04:00
Geza Lore
494e05b326
Fix install instructions for attribute checks, do the same in CI ( #4995 )
...
On Ubuntu 22.04, pip install clang picks up a mismatched version by
default. There are 'apt' packages with correct dependencies, so use
those instead.
2024-03-17 12:10:13 +00:00
Wilson Snyder
3d57256070
Commentary: Changes update
2024-03-04 08:22:36 -05:00
Wilson Snyder
5dc8fb5b4f
Commentary ( #4930 )
2024-03-04 08:04:39 -05:00
Wilson Snyder
214173c6b8
Support 1800-2023 preprocessor ifdef expressions; add PREPROC zero warning.
2024-03-02 10:15:19 -05:00
Wilson Snyder
3786f59e03
Change to IEEE 1800-2023 warning mentions
2024-03-02 10:15:19 -05:00
Wilson Snyder
91dd3c5fac
Support 1800-2023 keywords.
2024-03-02 10:15:19 -05:00
Wilson Snyder
e60f652a64
Commentary ( #4936 )
2024-03-01 17:32:26 -05:00
Yutetsu TAKATSUKASA
51ae8e13fb
Add --assert-case option ( #4919 )
2024-02-23 23:05:53 +09:00
Jiangjie Weng
c3ff52208a
Commentary: Fix typo in the call condition of designp->nextTimeSlot() ( #4912 )
2024-02-21 10:15:29 -05:00
Yutetsu TAKATSUKASA
a951446f9b
Add --[no]-stop-fail option ( #4904 )
...
Co-authored-by: Wilson Snyder <wsnyder@wsnyder.org>
2024-02-19 21:26:58 +09:00
Wilson Snyder
a187a16e56
Commentary: Changes update
2024-02-13 21:47:09 -05:00
Geza Lore
cbc76a7816
Dump DFG patterns with --stats ( #4889 )
...
With --stats, we will print DFG pattern combinations, one per line, as
S-expressions to new stat files, together with their frequency, to aid
discovery of new peephole patterns.
2024-02-11 15:41:10 +00:00
Szymon Gizler
d667b73e8d
Add --json-only and related JSON dumping ( #4715 ) ( #4831 ).
2024-02-09 17:50:09 -05:00
Wilson Snyder
7425037db6
Fix Copyright
2024-02-04 09:35:19 -05:00
Szymon Gizler
c715cfc254
Add --valgrind switch ( #4828 )
2024-01-29 07:50:05 -05:00
Wilson Snyder
d6f8ccd20b
Add `unroll_disable` and `unroll_full` loop control metacomments ( #3260 ).
2024-01-26 07:49:07 -05:00
Wilson Snyder
d4c8a15407
Add --runtime-debug for Verilated executable runtime debugging.
2024-01-25 07:34:30 -05:00
Wilson Snyder
354a534d68
Add '--decorations node' for inserting debug comments into emitted code.
2024-01-24 21:51:47 -05:00
Wilson Snyder
23836ee8d0
Document gprof steps better. Add t_prof_timing test to show GCC bug ( #4858 ).
2024-01-24 17:55:23 -05:00
Wilson Snyder
1a92502788
Add --main support for dumping coverage, and +verilator+coverage+file runtime option.
2024-01-20 12:28:49 -05:00
Wilson Snyder
8b03f2d47b
Commentary
2024-01-17 19:47:07 -05:00
Wilson Snyder
6f96c6763d
Commentary
2024-01-17 08:25:54 -05:00
Chykon
1a0c8f1573
Commentary: Add a link to `Create-Binary Execution` to the list of examples ( #4802 )
2024-01-04 10:47:22 -05:00
Wilson Snyder
2be6f03848
Commentary: runtime debugging
2024-01-03 21:03:17 -05:00
Pengcheng Xu
ec01008fe3
Change zero replication width error to ZEROREPL warning ( #4753 ) ( #4762 )
2024-01-03 07:11:50 -05:00
Wilson Snyder
3eaed3b6f5
Remove deprecated 32-bit pointer mode ( #4791 ).
2024-01-01 10:16:48 -05:00
Wilson Snyder
e76f29e5ba
Copyright year update
2024-01-01 03:19:59 -05:00
Rasfunk
2d7e8b58e4
Require C++14 or newer ( #4784 ) ( #4786 )
2023-12-29 10:39:00 -05:00
Wilson Snyder
f3a97841bd
Commentary
2023-12-27 15:35:22 -05:00
Wilson Snyder
14ac24cacc
Commentary: sccache
2023-12-26 15:15:15 -05:00
Fan Shupei
540cd772e4
Add user C/C++ code to final achieve, and make a libmodel.a ( #4749 ) ( #4754 )
2023-12-23 09:31:10 -05:00
Wilson Snyder
e5118661a7
Commentary
2023-11-24 13:02:05 -05:00
Wilson Snyder
ed05caec93
Rename __hier*.f files to match other generated files
2023-11-21 20:31:54 -05:00
Wilson Snyder
25ca965938
Commentary
2023-11-21 19:17:39 -05:00
Wilson Snyder
673f086e87
Commentary: Update contributors.
2023-11-11 18:49:51 -05:00
Anthony Donlon
ab06ace1f6
Fix trace when using SystemC with certain configurations ( #4676 )
2023-11-09 07:48:23 -05:00
Geza Lore
dc346b7ffa
Remove deprecated options ( #4663 )
2023-11-04 17:28:36 +00:00
Wilson Snyder
2a57ead7e3
Commentary ( #4517 )
2023-11-01 17:43:11 -04:00
Geza Lore
4c0edd2efb
Improve --prof-exec infrastructure and report
...
Again --prof-exec have bit-rotted a little with all the recent changes
to the structure of the generated code. This patch contains a few
improvements:
- Repalce the eval/evl_loop begin/end events with generic
section_push/section_pop events, that can be arbitrarily sprinkled
into the generate code (so long as they are matched correctly) to
measure various sections. The report then contains a nested profile
of the sections, and the VCD trace shows the section names.
- Better handling of exec graphs
- Clearer overall statistics
2023-10-21 21:09:03 +01:00
Wilson Snyder
eae942b91c
Internals: Fix some lint-py warnings
2023-10-21 12:48:36 -04:00
Wilson Snyder
a773a52559
Cleanup some IEEE references
2023-10-19 19:26:36 -04:00
Wilson Snyder
c14eae6d56
Add SIDEEFFECT warning on mishandled side effect cases ( #487 partial)
2023-10-15 06:44:35 -04:00
Wilson Snyder
472ad90d83
Change lint_off to not propagate upwards to files including where the lint_off is.
2023-10-09 04:12:01 -04:00
Wilson Snyder
7f38414276
Internals: Rename addIgnoreMatch. No functional change.
2023-10-08 01:02:23 -04:00
Wilson Snyder
45162652de
Commentary
2023-10-04 20:13:59 -04:00
Wilson Snyder
429cb1f7f7
Commentary ( #4517 )
2023-09-23 09:04:35 -04:00
Michal Czyz
b9ea249f81
Rewrite usage of annotation options ( #4486 ) ( #4504 )
2023-09-19 09:08:17 -04:00
Wilson Snyder
24ff3155ae
Support randc ( #4349 ).
2023-09-18 21:17:21 -04:00
Wilson Snyder
b68f101e81
Support preprocessing __LINE__
2023-09-17 19:49:38 -04:00
Wilson Snyder
10c1653e72
Fix ZERODLY to not warn on 'wait(0)'.
2023-09-15 08:53:29 -04:00
Kamil Rakoczy
6e977e1024
Generate compile_commands.json using bear ( #4463 )
2023-09-08 17:26:11 -04:00
Wilson Snyder
6cdf8da3f7
Fix documentation line wrap ( #4456 )
2023-09-05 07:25:33 -04:00
Wilson Snyder
5e6519c1b0
Commentary
2023-08-30 07:46:39 -04:00
Yinan Xu
b4b74d72f0
Add prepareClone and atClone APIs for Verilated models ( #3503 ) ( #4444 )
...
This API is used if the user copies the process using `fork`
and similar OS-level mechanisms. The `at_clone` member function
ensures that all model-allocated resources are re-allocated, such
that the copied child process/model can simulate correctly.
A typical allocated resource is the thread pool, which every model
has its own pool.
2023-08-30 07:02:55 -04:00
Ethan Sifferman
8d1570db28
Add check for conflicting options e.g. binary+lintonly ( #4409 )
2023-08-29 19:55:37 -04:00
Wilson Snyder
95f3dd0535
Commentary ( #4429 )
2023-08-21 06:23:35 -04:00
Frans Skarman
e9cc2786b7
Add --no-trace-top option ( #4422 )
2023-08-19 04:51:29 -04:00
Wilson Snyder
817ade27fb
Commentary: Changes update
2023-08-05 03:18:00 -04:00