Wilson Snyder
0674267333
Parser: Test and handle semaphore, mailbox and process.
2020-07-09 20:04:22 -04:00
Geza Lore
1632160fb1
Internals: Remove redunand SenItem nodes ( #2457 )
2020-07-05 13:13:03 -04:00
Geza Lore
e609328ebb
Ensure VarRef inherits dtype when varp is set.
...
Inlining used to set some VarRefs to point to new Var nodes, without
updating the dtype of the VarRef to the dtype of the new Var.
AstNode::sameTree does identity comparison on the dtype, so some trees
that were semantically the same did not compare as such with sameTree
because of the dtype. This in turn results in some missed opportunities
for combining equivalent SenTree sensitivities when the clock came from
outside.
2020-07-05 16:09:22 +01:00
Yutetsu TAKATSUKASA
8291ef6537
Internals: Pass FileLine to findDotted() for error location ( #2455 )
...
* Pass FileLine so that findDotted() will be able to tell the error location though it is not used yet.
* reorder the parameter order. No functional change is intended.
2020-07-04 09:35:04 -04:00
Yutetsu TAKATSUKASA
30600bf1a3
Internals: Add const
2020-07-03 14:16:43 -04:00
Wilson Snyder
b968f57711
Suppress unsupported constraint, as implied by unsupported randomize.
2020-07-02 21:10:05 -04:00
Wilson Snyder
ee7b399bf5
Parser: Move 'static' unsupported messages down out of parser.
2020-07-02 21:02:49 -04:00
Wilson Snyder
50c28fa9d3
Parser: Move 'pure virtual' and 'extern' unsupported messages down out of parser.
2020-07-02 08:24:50 -04:00
Geza Lore
a17f51eac0
Improve V3MergeCond
...
- Do try to merge after assignment to condition when possible.
- Do not try to merge reduced form if not the expected statement.
This used to cause a crash.
2020-07-02 13:13:51 +01:00
Yutetsu TAKATSUKASA
cc50126ad3
Internals: Generalize V3Config to be able to set any module pragma. No functional change intended. ( #2451 )
2020-07-02 07:54:37 -04:00
Wilson Snyder
9d1a39a5e4
Parser: Move 'with' block unsupported messages down out of parser
2020-07-02 07:36:15 -04:00
Yutetsu TAKATSUKASA
82cc1a319f
Internals: Simplify condition in V3Dead.cpp. No functional change intended. ( #2454 )
2020-07-02 07:35:55 -04:00
Yutetsu TAKATSUKASA
2fd23458ce
Internals: Factor out making a make cmd string in Verilator.cpp. No functional change intended. ( #2453 )
2020-07-02 07:30:40 -04:00
Yutetsu TAKATSUKASA
271fa5fe3c
Internals: move parseParamLiteral() to AstConst . No functional change intended. ( #2452 )
2020-07-02 07:29:52 -04:00
Fan Shupei
04c96694e6
Add $writememb support ( #2450 )
2020-07-01 17:32:15 -04:00
Wilson Snyder
e7bd44561c
Parse dotted new
2020-07-01 07:39:37 -04:00
Wilson Snyder
4d5e448664
Parser: Move member qualifier unsupporteds out of parser.
2020-07-01 07:31:53 -04:00
Wilson Snyder
236c2141e3
Parser: Move 'with' block unsupported messages down out of parser
2020-06-30 21:37:11 -04:00
Wilson Snyder
0b09636c58
Support for-loop increments with commas.
2020-06-29 21:18:41 -04:00
Wilson Snyder
af197f2ceb
Parser: Move 'virtual class' block unsupported messages down out of parser
2020-06-29 21:03:14 -04:00
Wilson Snyder
748c818ccb
Parser: Move 'wait' block unsupported messages down out of parser
2020-06-29 20:39:39 -04:00
Wilson Snyder
ad55564905
Parser: Move disable fork and wait fork down into elaborate stage
2020-06-29 20:22:39 -04:00
Wilson Snyder
ad2cb45a14
Parser: Move unsupported error detection of 'this'/'super' down into link stage
2020-06-29 20:02:15 -04:00
Geza Lore
7342cf278a
Travis: Add 32-bit build on focal
2020-06-28 20:11:22 +01:00
Geza Lore
378d947702
Travis: Add FreeBSD build + portability fixes
2020-06-28 15:37:24 +01:00
Wilson Snyder
0af971292e
Commentary ( #2437 )
2020-06-27 22:35:31 -04:00
Geza Lore
5a4cc333fb
Travis: Add OS X build ( #2440 )
2020-06-22 10:13:54 +01:00
Ludwig Rogiers
f13fd4478c
Init params in constructor to support pre-c++11 compilers
2020-06-22 09:01:39 +01:00
Geza Lore
aa595d40de
Do not fold IF with 'bx condition before V3Unknown ( #2438 )
...
Fixes #2425
2020-06-20 04:16:07 +01:00
Yutetsu TAKATSUKASA
19c2906a64
Improve code coverage of V3SplitVar.cpp ( #2418 )
2020-06-13 04:45:47 -04:00
Ludwig Rogiers
c367b671b6
Support VPI parameter and localparam ( #2370 )
2020-06-12 18:38:01 -04:00
Geza Lore
fac89c5d62
Close trace on vl_fatal/vl_finish ( #2414 )
...
This is required to get the last bit of FST trace and close the FST file
properly on $stop or assertion failure.
2020-06-12 07:15:42 +01:00
Conor McCullough
f40f0464e2
Fix replaceMulShift optimization ( #2413 )
2020-06-11 07:42:25 -04:00
Yutetsu TAKATSUKASA
a7edf13d62
Fix V3SplitVar test stability ( #2408 )
2020-06-09 22:39:10 -04:00
Wilson Snyder
6e57076726
Support --bbox-unsup parsing of nested foreach.
2020-06-09 22:05:06 -04:00
Wilson Snyder
cef56c6fca
Support --bbox-unsup parsing of class extend typedefs
2020-06-09 20:59:45 -04:00
Wilson Snyder
91f30af01f
Fix --bbox-unsup crash from earlier commit.
2020-06-09 19:49:11 -04:00
Wilson Snyder
3c8953fec2
Fix $sformat with non-constant string first argument
2020-06-09 19:40:49 -04:00
Wilson Snyder
6de78d58fa
Add new UNSUPPORTED error code to replace most previous Unsupported: messages.
2020-06-09 19:20:16 -04:00
Wilson Snyder
d42f9c095b
Delay parsing of associative arrays until dtypes known.
2020-06-09 07:13:40 -04:00
Wilson Snyder
46e10173f8
Support --bbox-unsup parsing of class extern function/task.
2020-06-08 22:33:57 -04:00
Wilson Snyder
d84c7df38f
Internals: Reformat V3Options. No functional change.
2020-06-08 22:17:30 -04:00
Wilson Snyder
6e2d8df9e5
Tests: Add --debug-exit-parse
2020-06-08 22:10:55 -04:00
Wilson Snyder
3963a50aef
Internals: Refactor param array handling to use subroutine. No functional change intended.
2020-06-08 07:43:07 -04:00
Wilson Snyder
47f040a5fd
Internals: Do data type elaboration always as child node, before movement to symbol table.
2020-06-08 06:47:18 -04:00
Wilson Snyder
7b7a2e99e3
Internals: Misc parser cleanups.
2020-06-07 22:15:19 -04:00
Wilson Snyder
25397e7612
Author site: Don't rebuild revision if VERILATOR_NO_OPT_BUILD
2020-06-07 20:08:19 -04:00
Wilson Snyder
4984d19ae9
Support --bbox-unsup parsing :: referencing typedef in class
2020-06-07 19:59:03 -04:00
Wilson Snyder
305448ea86
Cleanup parser errors to identify packages by :: instead of symbol table
2020-06-07 16:54:25 -04:00
Wilson Snyder
4a1d18f0e9
Internals: Refactor parser pipeline to use deque. No functional change intended.
2020-06-07 15:35:36 -04:00
Wilson Snyder
30482f3eea
Internals: Add parser debug printer.
2020-06-07 14:07:15 -04:00
Wilson Snyder
b469feb44b
Fix some syntax error context by splitting internal parse and lex filelines
2020-06-07 13:45:50 -04:00
Wilson Snyder
466fd56d18
Move XML verilator tag handling into parser.
2020-06-07 13:09:18 -04:00
Wilson Snyder
1aaf3f3424
Internals: Rename parser functions called by lexer. No functional change intended.
2020-06-07 12:18:23 -04:00
Wilson Snyder
b5e4917405
Internals: Pass unconnected drive in parser token stream.
2020-06-07 12:08:12 -04:00
Wilson Snyder
140671300c
Internals: Pass parser celldefine state through FileLine. No functional change intended.
2020-06-07 11:58:53 -04:00
Wilson Snyder
820a4dbbdd
Internals: Pass fileline directly. No functional change intended.
2020-06-07 10:53:21 -04:00
Wilson Snyder
53d8ccd149
Internals: Move yyerror to parser. No functional change intended.
2020-06-07 10:31:42 -04:00
Wilson Snyder
418b36ea71
Internals: Pass fileline directly and avoid yyerror
2020-06-07 10:17:50 -04:00
Wilson Snyder
575c565e77
Internals: Refactor to decouple LinkDot from ParseImp. No functional change intended.
2020-06-07 08:23:01 -04:00
Wilson Snyder
01255082a6
Internals: Refactor to decouple LinkDot from ParseImp. No functional change intended.
2020-06-07 08:21:22 -04:00
Wilson Snyder
3798a472b5
Commentary: Indicate mid-rule parser actions.
2020-06-06 17:42:10 -04:00
Wilson Snyder
0e322e2e85
Fix segfault after pin unsupported error.
2020-06-06 16:17:41 -04:00
Wilson Snyder
5cd5c05c05
Support --bbox-unsup parsing of event control expressions
2020-06-06 15:54:44 -04:00
Wilson Snyder
933e796cc2
Support $swrite with arbitrary arguments
2020-06-06 14:47:54 -04:00
Wilson Snyder
ae701e014d
Support --bbox-unsup parsing of for with multiple increments
2020-06-06 13:55:15 -04:00
Wilson Snyder
3a0b8c8870
Fix parsing parameter type with assignment and no type keyword.
2020-06-06 13:44:45 -04:00
Geza Lore
dea0e6793f
Simplify V3SenTree.h. No functional change intended.
...
- Remove unused headers
- Simplify container functors
- SenTreeFinder need not be a Visitor
- Update comments
Line coverage should now be 100%
2020-06-06 17:30:32 +01:00
Wilson Snyder
4862916f39
Support --bbox-unsup parsing of 'constraint', 'dist', 'solve'
2020-06-06 12:08:36 -04:00
Wilson Snyder
870ec27b73
Support --bbox-unsup parsing of 'randomize'
2020-06-06 11:22:48 -04:00
Wilson Snyder
a21947d887
Support --bbox-unsup parsing of 'with'
2020-06-06 11:11:23 -04:00
Wilson Snyder
893dee3434
Support --bbox-unsup parsing of forward defed class calls
2020-06-06 10:21:16 -04:00
Wilson Snyder
f083805ab5
Support --bbox-unsup parsing of parameterized classes
2020-06-06 10:06:32 -04:00
Wilson Snyder
7067afde5d
Support --bbox-unsup parsing of foreach(this.foo)
2020-06-06 09:43:13 -04:00
Wilson Snyder
1eaec2aa8a
Support --bbox-unsup of $cast
2020-06-06 09:30:11 -04:00
Wilson Snyder
da01810d98
Internals: Add UNSUP tokens from VParseBison and sort lists. No functional change.
2020-06-06 09:09:26 -04:00
Wilson Snyder
4c7d5a1dc0
Fix --bbox-unsup to bypass more parser unsupported errors.
2020-06-06 08:50:47 -04:00
Wilson Snyder
d15e3d93c4
Internals: Reindent and move parser code. No functional change.
2020-06-06 08:44:44 -04:00
Geza Lore
4a404bd92e
Always mask LSB in V3Merge Cond when mergin AstAnd
2020-06-06 00:17:59 +01:00
Wilson Snyder
ff41701ddc
Fix crash on undeclared packages.
2020-06-05 18:50:06 -04:00
Wilson Snyder
c5d61da5d2
Internal coverage: Fix coverage of tests that abort. No functional change intended.
2020-06-05 08:00:22 -04:00
Wilson Snyder
c83b1478e1
Internals: Ifdef out V3Combine incomplete dead code.
2020-06-04 21:55:00 -04:00
Wilson Snyder
3243651c63
Internals: Fix misc internal coverage holes. No functional change intended.
2020-06-04 21:40:40 -04:00
Wilson Snyder
7fe49de420
Tests: Tests to fix misc internal coverage holes.
2020-06-04 20:23:55 -04:00
Wilson Snyder
a433096d5a
Internals: Fix misc internal coverage holes. No functional change intended.
2020-06-04 19:49:39 -04:00
Tomasz Gorochowik
277dee109c
Fix Ariane issues with PostAdd nodes ( #2400 )
2020-06-03 12:50:24 -04:00
Wilson Snyder
ef71576825
Fix coredump from increment patch ( #2391 )
2020-06-03 08:30:49 -04:00
Wilson Snyder
c3271aa891
Fix duplicate VLCOVGEN short code
2020-06-02 21:42:24 -04:00
Geza Lore
1cf17b5e78
Fix unused variable.
2020-06-02 22:45:55 +01:00
Wilson Snyder
8b647f0977
Fix error on UNPACKED in parser. ( #1541 )
2020-06-02 08:00:37 -04:00
Wilson Snyder
4c31c5fab5
Fix unused variable.
2020-06-02 07:52:27 -04:00
Wilson Snyder
6ce878cb0d
Fix some clang-tidy warnings
2020-06-01 23:16:17 -04:00
Geza Lore
a67ba04c37
Remove dead code and some unused parameters
...
Found with CLion inspections
2020-06-01 17:49:42 +01:00
Wilson Snyder
ae448e5ef9
Fix older GCC compiler error.
2020-06-01 09:08:50 -04:00
Wilson Snyder
a57826b125
Line Coverage now tracks all statement lines, not just branch lines.
2020-05-31 15:52:17 -04:00
Geza Lore
656c460605
Add --dump-tree-addrids developer option
2020-05-31 20:21:55 +01:00
Geza Lore
95534fa5c5
Remove unused headers ( #2389 )
2020-05-31 20:21:07 +01:00
Wilson Snyder
611e8b10c6
Fix Verilog coverage to pass real column information
2020-05-31 09:05:10 -04:00
Geza Lore
6318a08056
Fix --dump-tree with sparse dumps.
...
"No changes since last dump!" is now only printed if the "last" dump was
actually performed and not skipped due to V3Option::dumpTreeLevel
settings.
2020-05-31 13:48:30 +01:00
Wilson Snyder
b60a92eed3
Fix pre-C11 compiler warning.
2020-05-30 21:11:37 -04:00