Terence Parr
|
e7b65057a6
|
added var for sll loop tail recursion default value; updated unit tests
|
2012-08-03 18:12:52 -07:00 |
Terence Parr
|
95f5d858cb
|
fix null ptr
|
2012-08-03 16:56:41 -07:00 |
Sam Harwell
|
674471c090
|
Add NotNull annotations, null check, tweak documentation
|
2012-08-03 08:46:07 -05:00 |
Sam Harwell
|
43da92e117
|
Remove old tree parser code
|
2012-08-03 08:45:36 -05:00 |
Sam Harwell
|
5019278204
|
Add ATN optimization to collapse multiple alternatives to a single SetTransition where possible. Currently disabled for parser grammars since the code generator doesn't support set transitions.
|
2012-08-03 08:33:11 -05:00 |
Sam Harwell
|
1f4df2ea5a
|
Add ATN optimization to remove null state entries and renumber the remaining states
|
2012-08-03 08:33:10 -05:00 |
Sam Harwell
|
f9bacf5060
|
Add ATN optimizer (currently doesn't provide optimizations)
|
2012-08-03 08:33:10 -05:00 |
Sam Harwell
|
eff9e0c47f
|
Move TailEpsilonRemover to top-level class
|
2012-08-03 08:33:09 -05:00 |
Sam Harwell
|
54a3759412
|
LexerATNSimulator and ParserATNSimulator switch on result of getSerializationType() instead of performing multiple type checks
|
2012-08-03 08:24:24 -05:00 |
Terence Parr
|
86e47b9c02
|
update comments to explain SLL vs LL, predicate strategy, etc... (and did a small tweak in code)
|
2012-08-02 18:23:11 -07:00 |
Terence Parr
|
06d7c150fd
|
slow again since i had to remove full LL context->alt cache (wasn't correct). But, threaded now makes bigger diff than before.
|
2012-08-02 17:01:53 -07:00 |
Sam Harwell
|
ff4eb0f744
|
Transition classes except for SetTransition are final
|
2012-08-02 12:15:36 -05:00 |
Sam Harwell
|
60df00be4f
|
Transition classes override getSerializationType()
|
2012-08-02 12:15:35 -05:00 |
Terence Parr
|
754e6eb593
|
mirrored parser ATN sim changes in lexer ATN sim for thread safety. reduced contention for contextCache.
|
2012-08-01 18:25:25 -07:00 |
Terence Parr
|
b0b30fec68
|
cleanup
|
2012-08-01 18:05:47 -07:00 |
Terence Parr
|
ff24630494
|
add cmt
|
2012-08-01 15:03:32 -07:00 |
Terence Parr
|
b0c9a9c7c2
|
tried optimization concerning recomputing DFA states in DFA, but didn't help much. left in as comment for now.
|
2012-08-01 14:51:37 -07:00 |
Terence Parr
|
0cfe3b4206
|
tweak to leave code for printing DFA DOT
|
2012-08-01 14:36:19 -07:00 |
Terence Parr
|
abb0ef5296
|
Merge branch 'main' of github.com:parrt/antlr4 into main
|
2012-08-01 13:44:52 -07:00 |
Terence Parr
|
80560efcf8
|
wow. i think i got threaded working. rm readwrite lock, sync add add to shared context and add dfa state
|
2012-07-31 19:39:31 -07:00 |
Terence Parr
|
feb41eee15
|
fix a few unit tests.
|
2012-07-31 19:09:40 -07:00 |
Terence Parr
|
3d2cbe087d
|
refactoring
|
2012-07-31 18:54:00 -07:00 |
Terence Parr
|
abb268416e
|
Merge branch 'master' into main
|
2012-07-31 18:34:33 -07:00 |
Terence Parr
|
b8f7acdeac
|
refactor to create DFAState target, fill it in, then add to DFA only after it's complete. Combine some helper methods. simpler.
|
2012-07-31 18:26:39 -07:00 |
Sam Harwell
|
170a8347bb
|
Emit a RangeTransition instead of SetTransition if a set has only one interval
|
2012-07-31 09:07:04 -05:00 |
Terence Parr
|
fedb7c105b
|
tweaks
|
2012-07-30 22:24:12 -07:00 |
Terence Parr
|
85ea296632
|
added D2 as dup temp of D state. almost ready to change position of addDFAState
|
2012-07-30 22:15:09 -07:00 |
Terence Parr
|
56c304ead4
|
Merge branch 'master' into main
|
2012-07-30 17:29:26 -07:00 |
Sam Harwell
|
8c820269e4
|
Fix IntegerList.binarySearch
|
2012-07-30 19:24:20 -05:00 |
Terence Parr
|
c893f2af08
|
Pulled Sam's new IntegerList
|
2012-07-30 15:20:43 -07:00 |
Sam Harwell
|
7d4f71d829
|
Use IntegerList in the tool
|
2012-07-30 15:18:07 -05:00 |
Sam Harwell
|
dcdcad8feb
|
Add IntegerList.addAll overload for Collection<Integer>, add contains, sort, hashCode, equals, toString.
|
2012-07-30 15:17:02 -05:00 |
Sam Harwell
|
3bf99d6d88
|
Add IntervalSet.toIntegerList(), use IntegerStack to hold mode stack in Lexer
|
2012-07-30 15:13:26 -05:00 |
Sam Harwell
|
fa62570737
|
Add IntegerList and IntegerStack, behaves like ArrayList<Integer> and ArrayDeque<Integer> (mostly) except doesn't require boxing
|
2012-07-30 15:13:26 -05:00 |
Terence Parr
|
c0ece0bd09
|
add read/write lock to lexer.
|
2012-07-29 17:21:10 -07:00 |
Terence Parr
|
489f3d17cb
|
tweak
|
2012-07-29 17:04:05 -07:00 |
Terence Parr
|
8836e13954
|
use ReentrantReadWriteLock to sync. works much better but still occasional illegal monitor state :(
|
2012-07-29 17:01:41 -07:00 |
Terence Parr
|
f5f6715a07
|
back to core sync around creating DFA in decisionToDFA. not thread-safe for dfa update.
|
2012-07-29 14:33:18 -07:00 |
Terence Parr
|
4fe9efeb85
|
tweak tester
|
2012-07-29 14:28:59 -07:00 |
Terence Parr
|
c97f36bd89
|
reorg workers
|
2012-07-29 13:45:41 -07:00 |
Terence Parr
|
9bcfc83678
|
adding full LL prediction in DFAState from ctx -> predicted alt. Drops from 17s to 12s and costs only 4M more ram. woot!
|
2012-07-29 13:30:18 -07:00 |
Terence Parr
|
230b687b03
|
add barrier
|
2012-07-29 13:03:10 -07:00 |
Terence Parr
|
5712424156
|
create 2 worker threads for testjavalr
|
2012-07-29 12:28:29 -07:00 |
Terence Parr
|
7181483bbf
|
test javalr does -2x now
|
2012-07-29 10:57:51 -07:00 |
Terence Parr
|
510c1c0dd9
|
clean up
|
2012-07-29 10:50:14 -07:00 |
Terence Parr
|
79594a942e
|
synchronized lexer. just as fast now to build new parser/lexer each iter in TestJavaLR
|
2012-07-29 10:48:08 -07:00 |
Terence Parr
|
ceab49e3ce
|
rm for now
|
2012-07-29 10:12:09 -07:00 |
Terence Parr
|
e3e739dfc7
|
The lexer and parser ATN simulators' adaptivePredict now synchronize on the specific DFA of the decision to be simulated. This should prevent a lot of contention that would occur if we synchronize the entire adaptivePredict method. When the individual DFA are created, we also synchronize on the shared DFA[] table quickly to create a DFA and insert it into the array. Code generation modified to have _decisionToDFA generated at the top of both the parser and the lexer. Simulators created now with the recognizer, ATN, DFA[]. Not sure the LexerInterp/ParserInterp work but pushing ahead anyway for the moment.
|
2012-07-29 09:49:35 -07:00 |
Terence Parr
|
8c8752a7b2
|
print file names if > 1 file
|
2012-07-28 18:33:21 -07:00 |
Terence Parr
|
3f26d42d53
|
add Sam's getConflictingAlts potential bug fix as comment
|
2012-07-28 18:33:05 -07:00 |