Wilson Snyder
8da261f302
Tests: Rename to avoid dash.
2022-09-18 10:19:15 -04:00
Geza Lore
7d88e63bab
astgen: generate type specific addNext, remove astNextNull
...
Generate type specific static overloads of Ast<Node>::addNext, which
return the correct sub-type of the 'this' they were invoked on.
Also remove AstNode::addNextNull, which is now only used in the parser,
implement in verilog.y directly as a template function.
2022-09-17 15:05:22 +01:00
Wilson Snyder
79be097e34
Sort -V env variable output
2022-09-17 08:17:55 -04:00
Wilson Snyder
11b0d36ba2
Merge cleanups from 'develop-v5'. No functional change
2022-09-17 08:17:22 -04:00
Wilson Snyder
80b73859a2
Commentary: Some fixes from 'develop-v5'
2022-09-17 08:00:40 -04:00
Wilson Snyder
a548a77f26
Merge branch 'develop-v5' into master: Changes file
2022-09-17 07:58:56 -04:00
Wilson Snyder
d6bfb37e6a
Docker: Use 22.04
2022-09-17 07:47:06 -04:00
Geza Lore
38a8d7fb2e
Remove redundant 'inline' keywords from definitions
...
Also add checks to t/t_dist_cppstyle
2022-09-16 15:52:25 +01:00
Geza Lore
0c70a0dcbf
Remove redundant 'virtual' keywords from overridden methods
...
'virtual' is redundant when 'override' is present, so keep only
'override'.
Add t/t_dist_cppstyle.pl to check for this.
2022-09-16 15:19:38 +01:00
Geza Lore
d16619fe86
astgen: Explicitly generate AstNode members
...
Generate boilerplate members of AstNode sub-types directly via astgen.
This is in preparation for generating additional members.
2022-09-16 11:18:20 +01:00
Wilson Snyder
2dc85a5acd
Internals: enum constructor cleanups. No functional change intended.
2022-09-15 19:58:10 -04:00
Kamil Rakoczy
dbe1348b4c
Tests: Fix earlier commit, add build jobs to stats ( #3623 ) ( #3626 )
2022-09-15 11:29:50 -04:00
Wilson Snyder
d74536a4dc
Internals: Cleanup some constructors. No functional change intended.
2022-09-15 08:54:04 -04:00
Kamil Rakoczy
da20da264b
Add --build-jobs, and rework arguments for -j ( #3623 )
2022-09-15 08:28:58 -04:00
Geza Lore
22b9dfb9c9
Split and re-order AstNode definitions ( #3622 )
...
- Move DType representations into V3AstNodeDType.h
- Move AstNodeMath and subclasses into V3AstNodeMath.h
- Move any other AstNode subtypes into V3AstNodeOther.h
- Fix up out-of-order definitions via inline methods and implementations
in V3Inlines.h and V3AstNodes.cpp
- Enforce declaration order of AstNode subtypes via astgen,
which will now fail when definitions are mis-ordered.
2022-09-15 13:10:39 +01:00
Wilson Snyder
e43c089ab8
Commentary
2022-09-14 23:26:34 -04:00
Wilson Snyder
d85b909054
Internals: Use std:: for mem and str functions.
2022-09-14 21:10:19 -04:00
Wilson Snyder
75fd71d7e5
Add --main to generate main() C++ (previously was experimental only) ( #3265 ).
2022-09-14 20:18:40 -04:00
Wilson Snyder
9efd64ab98
Commentary
2022-09-14 20:13:28 -04:00
Wilson Snyder
7aa01625d8
Commentary: Changes update
2022-09-14 08:15:42 -04:00
Ryszard Rozak
a3c58d7b70
Support IEEE constant signal strengths ( #3601 ).
2022-09-14 07:39:27 -04:00
Kamil Rakoczy
ae466b1703
Internals: Improve Verilation peak memory usage in V3Subst ( #3512 ).
2022-09-14 07:37:51 -04:00
Geza Lore
2564484429
astgen: Rewrite in a more OOP way, in preparation for extensions
...
Rely less on strings and represent AstNode classes as a 'class Node',
with all associated properties kept together, rather than distributed
over multiple dictionaries or constructed at retrieval time.
No functional change intended.
2022-09-13 21:54:12 +01:00
Kamil Rakoczy
93a044f587
Internals: Rework addFilesp towards parallel emit ( #3620 ). No functional change intended.
2022-09-13 12:15:34 -04:00
Wilson Snyder
81fe35ee2e
Fix typedef'ed class conversion to boolean ( #3616 ).
2022-09-12 18:03:56 -04:00
Geza Lore
08b6bdddf9
Update default --mod-prefix when --prefix is repeated
...
Fixes #3603
2022-09-12 17:25:09 +01:00
Kamil Rakoczy
4d49db48a3
Internals: Remove usage of user1 from EmitCTrace ( #3617 ). No Functional change intended.
2022-09-12 12:00:41 -04:00
Kamil Rakoczy
9b2266f68c
Internals: Remove usage of global state in V3EmitCFunc ( #3615 ). No functional change intended.
2022-09-12 11:59:14 -04:00
Wilson Snyder
752f425025
Tests: Process/Semaphore/Mailbox testing (all fail until supported)
2022-09-11 13:05:24 -04:00
Gustav Svensk
47262cd4ec
Fix arguments in non-static method call ( #3547 ) ( #3582 )
2022-09-11 12:33:31 -04:00
Wilson Snyder
47e64535d6
Commentary
2022-09-11 12:25:44 -04:00
Wilson Snyder
45d622e4bc
Github actions: Avoid cpan cert expirations.
2022-09-08 11:06:44 -04:00
Wilson Snyder
249feaae7c
Tests: Remove lint-py, need ci package.
2022-09-07 22:59:32 -04:00
Wilson Snyder
9a27004ae5
Github actions: Avoid cpan cert expirations.
2022-09-07 22:49:09 -04:00
Wilson Snyder
42283150d7
Actions: Use 22.04 for contrib action
2022-09-07 22:13:02 -04:00
Wilson Snyder
5a1bcf9794
Tests: Add lint-py checker
2022-09-07 22:04:57 -04:00
Wilson Snyder
361cef4633
Fix pylint warnings.
2022-09-07 21:48:52 -04:00
github action
e94cdcf29c
Apply 'make format'
2022-09-05 22:43:09 +00:00
Mladen Slijepcevic
1af046986d
Fix thread saftey in SystemC VL_ASSIGN_SBW/WSB ( #3494 ) ( #3513 ).
2022-09-05 18:42:12 -04:00
Wilson Snyder
1c9263a25b
Commentary
2022-09-05 15:20:08 -04:00
Krzysztof Bieganski
6b6790fc50
Preserve return type of AstNode::addNext
via templating ( #3597 )
...
No functional change intended.
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2022-09-05 16:56:57 +01:00
Krzysztof Bieganski
fb931087ab
Add stats tracking for V3Undriven
. ( #3600 )
...
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2022-09-05 16:20:38 +01:00
Geza Lore
937e893b6d
Build verilator_bin with -O3 ( #3592 )
...
This is consistently a few percent faster.
2022-09-03 22:10:07 +01:00
Geza Lore
d42a2d6494
Fix V3Gate crash on circular logic
...
The recent patch to defer substitutions on V3Gate crashes on circular
logic that has cycle length >= 3 with all inlineable signals (cycle
length 2 is detected correctly and is not inlined). Fix by stopping
recursion at the loop-back edge.
Fixes #3543
2022-09-02 19:58:58 +01:00
Geza Lore
8e8f4b1e5c
Remove AstVarScope::valuep() and related code
...
This is detritus from when V3TraceDecl used to run after V3Gate, today
V3TraceDecl runs before V3Gate and this value has no function at all.
No functional change intended.
2022-09-02 16:44:13 +01:00
Geza Lore
2ba39b25f1
Replace dynamic_casts with static_casts
...
dynamic_cast is not free. Replace obvious instances (where the result is
unconditionally dereferenced) with static_cast in contexts with
performance implications.
2022-09-02 12:08:34 +01:00
Geza Lore
5c828b7e60
V3Partition: use V3Lists to keep track of SiblingMCs
...
Replace std::set<SiblingMC> with V3Lists to keep track of SiblingMCs
associated with MTasks, use a std::set<LogicMTask*> for ensuring
uniqueness. This yields a bit more speed in PartContraction.
2022-09-01 19:40:44 +01:00
Wilson Snyder
8d0c06e570
devel release
2022-08-31 19:49:24 -04:00
Wilson Snyder
5b2fbf4f37
Version bump
2022-08-31 19:46:45 -04:00
Wilson Snyder
592dab2bdb
Commentary: Changes update
2022-08-31 19:27:43 -04:00