Wilson Snyder
f20997a2f0
Support global clocking and $global_clock.
2023-01-28 12:31:52 -05:00
Wilson Snyder
bea225e191
Fix duplicate name check on extern symbols
2023-01-28 11:55:44 -05:00
Ryszard Rozak
91c44d7830
Support class extending its parameter ( #3904 )
2023-01-25 20:33:18 -05:00
Ryszard Rozak
4a8cfe367d
Support function calls without parenthesis ( #3903 ) ( #3902 )
...
Signed-off-by: Ryszard Rozak <rrozak@antmicro.com>
2023-01-24 15:36:30 +01:00
Ryszard Rozak
b56e7f6910
Support static function variables ( #3830 )
2023-01-23 08:35:10 -05:00
Ryszard Rozak
be53eec5ca
Support property calls without parenthesis ( #3879 ) ( #3893 )
2023-01-20 07:25:37 -05:00
Wilson Snyder
035bf13e4a
Fix foreach unnamedblk duplicate error ( #3885 ).
2023-01-18 21:48:06 -05:00
Wilson Snyder
b24d7c83d3
Copyright year update
2023-01-01 10:18:39 -05:00
Wilson Snyder
24198ef0ed
Internal line coverage fix
2022-12-29 14:18:45 -05:00
Larry Doolittle
80a144797d
Commentary: Fix more spelling ( #3828 )
2022-12-26 10:30:41 +01:00
Krzysztof Bieganski
bb44d4e4f2
Support clocking blocks ( #3674 )
2022-12-23 07:34:49 -05:00
Wilson Snyder
2c7f1ef40f
Internals: Cleanup debug dumps so can grep-out leading-dashed lines
2022-11-27 08:31:22 -05:00
Wilson Snyder
833780fac1
Internal: cppcheck fixes. No functional change intended.
2022-11-27 05:52:40 -05:00
Ryszard Rozak
68f8617f79
Support member selects in with clauses ( #3775 )
2022-11-23 13:15:10 -05:00
Wilson Snyder
f44cd9cd48
Internals: Fix constructor style.
2022-11-20 17:40:38 -05:00
Geza Lore
3abb65d732
Strengthen AstNode types to AstNodeExpr
...
Declare every AstNode children and variables as AstNodeExpr where we
statically know this is the appropriate sub-type.
2022-11-20 19:31:28 +00:00
Ryszard Rozak
3ddfa214e3
Fix $unit as base package for other packages ( #3755 )
2022-11-16 18:58:57 -05:00
Wilson Snyder
c6ecd60993
Support pre_randomize and post_randomize.
2022-11-13 11:59:40 -05:00
Wilson Snyder
6736e92cdb
Internals: Fix some ugly line breaks. No functional change.
2022-11-11 22:33:17 -05:00
Wilson Snyder
16586d1d37
Fix tracing parameters overridden with -G ( #3723 ).
2022-11-10 20:30:10 -05:00
Ryszard Rozak
441b5da5ce
Fix 'with' clause handling in functions ( #3739 )
2022-11-10 18:08:15 -05:00
Geza Lore
65e08f4dbf
Make all expressions derive from AstNodeExpr ( #3721 ).
...
Apart from the representational changes below, this patch renames
AstNodeMath to AstNodeExpr, and AstCMath to AstCExpr.
Now every expression (i.e.: those AstNodes that represent a [possibly
void] value, with value being interpreted in a very general sense) has
AstNodeExpr as a super class. This necessitates the introduction of an
AstStmtExpr, which represents an expression in statement position, e.g :
'foo();' would be represented as AstStmtExpr(AstCCall(foo)). In exchange
we can get rid of isStatement() in AstNodeStmt, which now really always
represent a statement
Peak memory consumption and verilation speed are not measurably changed.
Partial step towards #3420
2022-11-03 16:02:16 +00:00
Arkadiusz Kozdra
627a144b83
Support access to constructs inside type parameters ( #3702 )
...
This changeset brings support for accesses like:
class Cls#(type TYPE1);
TYPE1::some_method();
endclass
It is done by delaying dot resolution on type parameters until they get
resolved by V3Param, and doing a more thorough reference skip.
2022-10-21 09:00:40 -04:00
Arkadiusz Kozdra
0e4da3b0bf
Support virtual interfaces ( #3654 )
2022-10-20 06:31:00 -04:00
Krzysztof Bieganski
22243d1e49
Support class type params without defaults ( #3693 )
2022-10-19 21:59:26 -04:00
Arkadiusz Kozdra
038d57070b
Support standalone 'this' in classes ( #3675 ) ( #2594 ) ( #3248 )
2022-10-14 08:55:55 -04:00
github action
f1ba6cb517
Apply 'make format'
2022-10-01 14:53:40 +00:00
Kanad Kanhere
159cf0429c
Support linting for top module interfaces ( #3635 )
2022-10-01 10:48:37 -04:00
Geza Lore
63c694f65f
Streamline dump control options
...
- Rename `--dump-treei` option to `--dumpi-tree`, which itself is now a
special case of `--dumpi-<tag>` where tag can be a magic word, or a
filename
- Control dumping via static `dump*()` functions, analogous to `debug()`
- Make dumping independent of the value of `debug()` (so dumping always
works even without the debug flag)
- Add separate `--dumpi-graph` for dumping V3Graphs, which is again a
special case of `--dumpi-<tag>`
- Alias `--dump-<tag>` to `--dumpi-<tag> 3` as before
2022-09-22 17:24:41 +01:00
Geza Lore
ce03293128
Generate AstNode accessors via astgen
...
Introduce the @astgen directives parsed by astgen, currently used for
the generation child node (operand) accessors. Please see the updated
internal documentation for details.
2022-09-21 13:56:03 +01: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
Wilson Snyder
2dc85a5acd
Internals: enum constructor cleanups. No functional change intended.
2022-09-15 19:58:10 -04:00
Wilson Snyder
d85b909054
Internals: Use std:: for mem and str functions.
2022-09-14 21:10:19 -04:00
Wilson Snyder
51daa64e9a
Fix --hierarchical with order-based pin connections ( #3585 ).
2022-08-31 18:12:21 -04:00
Wilson Snyder
ea55db7286
Internals: Cleanup some string constructors. No functional change.
2022-08-30 01:02:39 -04:00
Wilson Snyder
6a5f77b278
Internals: Cleanup some string/model constructors. No functional change.
2022-08-29 23:50:32 -04:00
Arkadiusz Kozdra
0a3a15a66e
Support class parameters ( #2231 ) ( #3541 )
2022-08-28 10:24:55 -04:00
Geza Lore
96a4b3e5a5
Update clang-format config and apply
...
- Regroup and sort #include directives (like we used to, but automatic)
- Set AlwaysBreakTemplateDeclarations to true
2022-08-05 12:00:24 +01:00
Wilson Snyder
b9d7819faa
Internals: Fix some cppcheck issues. Some dump functions fixed.
2022-07-30 10:01:39 -04:00
Wilson Snyder
530817191e
Support non-ANSI interface port declarations ( #3439 ).
2022-05-25 00:50:50 -04:00
Wilson Snyder
3c4131d45d
Fix 'with' operator with type casting ( #3387 ).
2022-05-15 09:53:48 -04:00
Yoda Lee
a6d678d41d
Fix hang in generate symbol references ( #3391 ) ( #3398 )
2022-04-27 18:40:36 -04:00
Wilson Snyder
33105f017c
Commentary
2022-03-30 20:17:59 -04:00
Wilson Snyder
90c61c79d6
Fix unnamedblk error on foreach ( #3321 ).
2022-03-05 17:04:52 -05:00
github action
77fe7c426e
Apply 'make format'
2022-02-16 05:11:38 +00:00
Raynard Qiao
331c2244fc
Fixed signed number operation ( #3294 ) ( #3308 )
2022-02-16 00:10:34 -05:00
Wilson Snyder
15b32dc140
Internals: cpplint cleanups. No functional change.
2022-01-08 12:01:39 -05:00
Wilson Snyder
b989ac6db5
Internals: Support linking recursive function calls (but not later stages)
2022-01-03 18:50:41 -05:00
Wilson Snyder
4d1f4bbf49
Backout last commit; is unstable.
2022-01-03 13:04:47 -05:00