Commit Graph

2195 Commits

Author SHA1 Message Date
Sam Harwell 3694d51c4e Don't try to report detailed statistics for empty states (fixes exception in lexer stats reporting) 2013-05-12 17:48:33 -05:00
Sam Harwell 9ea4747524 Call Future.get() to propagate exceptions so it's easier to spot problems 2013-05-12 17:46:55 -05:00
Terence Parr ac7cc7daaf Merge pull request #247 from sharwell/parallel-testing
Parallel testing updates
2013-05-05 12:32:56 -07:00
Terence Parr e1dfa24b8d Merge pull request #246 from sharwell/murmurhash
MurmurHash
2013-05-05 12:32:44 -07:00
Sam Harwell d67d924b0d Update additional classes to use MurmurHash hashing 2013-05-05 14:21:42 -05:00
Sam Harwell fc21b41afb Update PredictionContext to use the MurmurHash 3 hash algorithm 2013-05-05 14:21:41 -05:00
Sam Harwell a7d2838838 Add a default title to the TreeViewer dialog 2013-05-01 22:38:36 -05:00
Sam Harwell 2fe7804ee3 Tweak TreeViewer layout since the zoom slider only affects the visual layout 2013-05-01 22:38:05 -05:00
Bart Kiers 9a75c629d2 Added JTree to TreeViewer. 2013-05-01 22:14:12 -05:00
Sam Harwell d75f8e9aa3 Add the DETAILED_DFA_STATE_STATS option to TestPerformance, which shows a breakdown of DFA states by rule (parsers) or mode (lexers) 2013-05-01 22:06:00 -05:00
Sam Harwell d147e9202d Use ->skip instead of ->channel(HIDDEN) to ensure reported token counts correspond to the number of parsed tokens in TestPerformance 2013-05-01 22:02:26 -05:00
Sam Harwell 28abae9cfb Add the TIME_PARSE_ONLY flag to TestPerformance 2013-04-30 22:03:49 -05:00
Sam Harwell cc0d050622 Display the current pass number in TestPerformance result summary (helps monitor progress on very long runs) 2013-04-30 22:00:35 -05:00
Sam Harwell 3558151e56 Support parallelizing TestPerformance across passes instead of across files (controlled by the FILE_GRANULARITY flag) 2013-04-30 21:58:32 -05:00
Sam Harwell 4dfa245898 Added the COMPUTE_TIMING_STATS and TIMING_CUMULATIVE options to TestPerformance (disabled by default) 2013-04-30 21:53:30 -05:00
Sam Harwell 8f7c43fbf6 Support computing and displaying transition statistics 2013-04-30 21:48:51 -05:00
Sam Harwell be57daa108 Remove unnecessary reflection, fix option to not reuse DFA 2013-04-30 21:41:55 -05:00
Sam Harwell 646f673d84 Track token count separately for each pass 2013-04-30 21:35:10 -05:00
Terence Parr eb9eb17aa2 inline predictATN into adaptivePredict 2013-04-25 17:39:37 -07:00
Terence Parr c9ceb48a3c Merge pull request #235 from sharwell/prediction-fixes
Prediction fixes
2013-04-24 11:03:53 -07:00
Sam Harwell dda9ed9fab Remove unnecessary null checks 2013-04-24 12:48:09 -05:00
Sam Harwell 5821747a42 Add TestPerformance.COMPUTE_TRANSITION_STATS 2013-04-24 12:47:25 -05:00
Sam Harwell ca0b0ae74c Extract methods getExistingTargetState and computeTargetState 2013-04-24 12:42:18 -05:00
Sam Harwell f015942b5e * Simplify creation of new DFA edges - only create the target state and let DFA code check for termination conditions
* Fix handling of previously cached error edges (always need to check previous state for reaching a rule stop state)
* Fix DFA created during SLL-only parsing (should be identical to the DFA created by full LL parsing)
2013-04-24 12:29:43 -05:00
Sam Harwell 297754fff5 Updated documentation for addDFAEdge and addDFAState 2013-04-24 12:18:18 -05:00
Sam Harwell 1a07a6b6fa Improved encapsulation in ParserATNSimulator 2013-04-24 12:18:17 -05:00
Sam Harwell ef8b10ebc4 Cleanup and encapsulation in LexerATNSimulator 2013-04-24 12:18:13 -05:00
Sam Harwell 25676332fb Remove unused and undocumented method DFA.getATNStatesAlongPath 2013-04-24 10:32:51 -05:00
Sam Harwell 15577fd21f Remove unnecessary method ParserInterpreter.predictATN 2013-04-24 10:32:20 -05:00
Sam Harwell 88e836c4d9 Remove unused class ParserATNPathFinder 2013-04-24 10:30:58 -05:00
Terence Parr cb1ea47ecc Merge pull request #231 from sharwell/performance-tweaks
Performance tweaks
2013-04-23 14:46:47 -07:00
Sam Harwell be83edf6d0 Gather additional parsing statistics from each file 2013-04-22 17:35:16 -05:00
Sam Harwell f1fc42024f explicitConstructorInvocation was broken and unnecessary 2013-04-22 17:31:58 -05:00
Sam Harwell ad41c3b14f Assignments can appear in the middle of a ternary expression 2013-04-22 17:31:29 -05:00
Sam Harwell 4b6d0d9ea2 Support diamond operator, improved support for explicit generic invocations 2013-04-22 17:31:02 -05:00
Sam Harwell df336b4e59 Remove unreferenced rule from Java LR 2013-04-22 17:27:44 -05:00
Sam Harwell 69f22f8012 Allow extraneous ';' in annotation interface declaration (not allowed by grammar, but is allowed by compiler and appears in some source code) 2013-04-22 17:24:44 -05:00
Sam Harwell a670d7d2b0 Support Java 7 "try with resources" and "multi-catch" 2013-04-22 17:23:54 -05:00
Sam Harwell c8701a9434 Support directory filters in TestPerformance, add a variety of additional FilenameFilter implementations 2013-04-22 17:16:49 -05:00
Sam Harwell 210dc31a43 Print the proper statistics when only a subset of available files is parsed 2013-04-22 17:13:56 -05:00
Sam Harwell b9918b9e25 Remove unnecessary null checks 2013-04-22 17:10:07 -05:00
Sam Harwell 5280b68cab Add the TestPerformance.PRELOAD_SOURCES configuration field 2013-04-22 17:08:24 -05:00
Sam Harwell 94b06df72f Add TestPerformance.ENCODING configuration field (default UTF-8) 2013-04-22 16:53:53 -05:00
Sam Harwell e7b84c13dd Add comment to TestPerformance.PREDICTION_MODE configuration field 2013-04-22 16:49:36 -05:00
Sam Harwell 845bf53a51 Use HashMap instead of LinkedHashMap for DFA.states 2013-04-22 16:42:48 -05:00
Sam Harwell 7ebcc41b7b Cache the ATNConfigSet hash code after it's made read only 2013-04-22 16:13:22 -05:00
Sam Harwell a55a94c26e Use a better hash code for DFAState 2013-04-22 16:13:13 -05:00
Sam Harwell 6c8a6178ee Avoid constructing the mergeCache when it's not needed 2013-04-22 16:12:20 -05:00
Sam Harwell f5294204ae Add the TestPerformance.MAX_FILES_PER_PARSE_ITERATION configuration field 2013-04-21 15:00:20 -05:00
Sam Harwell 82f4d07243 Default value for TestPerformance.BAIL_ON_ERROR is now false since it's overridden anyway for first phase of two-stage parsing 2013-04-21 14:56:28 -05:00