Commit Graph

3671 Commits

Author SHA1 Message Date
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
05e51d0d18 Tests: Excempt some wide files 2020-06-07 09:59:09 -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
0098e67e59 Tests: Use lint in many negative tests to avoid running under both vlt and vltmt 2020-06-07 07:15:07 -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
Wilson Snyder
aae2bf872c devel release 2020-06-06 07:51:54 -04:00
Wilson Snyder
04c0fc8aa7 Version bump 2020-06-06 07:48:47 -04:00
Wilson Snyder
1d8955fea5 Internal: Update fastcov.py from upstream. 2020-06-06 05:48:36 -04:00
Wilson Snyder
48740a0dba Tests: Add t_param_type 2020-06-05 22:22: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
2590c9c4a6 Internal: Update fastcov.py from upstream. 2020-06-05 18:05:49 -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
5a622fd9db Tests: Temporary fix for (#2407) 2020-06-05 07:28:51 -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
8d61cd9029 New fastcov internal coverage scheme 2020-06-04 20:59:52 -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
Geza Lore
b88e1e6970 Travis: Fix cron (always build focal) 2020-06-04 17:36:53 +01:00
Wilson Snyder
79f228b04f Remove dead code (bisonreader) 2020-06-03 20:11:09 -04:00
Wilson Snyder
d7cc1e6844 Tests: Use lint in many negative tests to avoid running under both vlt and vltmt 2020-06-03 20:05:13 -04:00
Wilson Snyder
42312101b5 Tests: Add array OOB tests as unsupported (#792) 2020-06-03 19:36:50 -04:00
Wilson Snyder
329f5b712a Tests: Add alias tests as unsupported (#697) 2020-06-03 19:27:22 -04:00
Geza Lore
6ddd92c0a1
Travis: Use workspaces and per job persistent ccache (#2399)
Change the Travis builds to use workspaces and persistent ccache

We proceed in 2 stages (as before, but using workspaces for
persistence):
1. In the 'build' stage, we clone the repo, build it and
   save the whole checkout ($TRAVIS_BUILD_DIR) as a workspace
2. In the 'test' stage, rather than cloning the repo, multiple jobs
   pull down the same workspace we built to run the tests from

This enables:
- Reuse of the build in multiple test jobs (this is what we used the Travis
  cache for before)
- Each job having a separate persistent Travis cache, which now only
  contains the ccache. This means all jobs, including 'build' and 'test'
  jobs can make maximum use of ccache across runs. This drastically cuts
  down build times when the ccache hits, which is very often the case for
  'test' jobs. Also, the separate caches only store the objects build by
  the particular job that owns the cache, so we can keep the per job
  ccache small.

If the commit message contains '[travis ccache clear]', the ccache will
be cleared at the beginning of the build. This can be used to test build
complete within the 50 minute timeout imposed by Travis, even without a
persistent ccache.
2020-06-03 21:10:13 +01:00