Commit graph

744 commits

Author SHA1 Message Date
Meredith L. Patterson
3e85648844 Merge pull request #13 from pesco/LALR
LALR backend
2013-06-16 13:34:17 -07:00
Meredith L. Patterson
fdafb64762 Merge pull request #12 from pesco/recursive_indirect
Pre-allocate the result of h_desugar so recursive h_indirect works
2013-06-16 13:33:52 -07:00
Sven M. Hallberg
67b6e9666c fix a potentially uninitialized variable 2013-06-16 22:29:53 +02:00
Sven M. Hallberg
24c15f34cc augment grammar to ensure start symbol never occurs on rhs 2013-06-16 22:23:35 +02:00
Sven M. Hallberg
8d21c782e7 fix eq/hash_lalr_item to compare symbols by value 2013-06-15 21:24:27 +02:00
Sven M. Hallberg
f0cd2de55c fix match_production for the empty-sequence case 2013-06-15 20:54:53 +02:00
Sven M. Hallberg
5a57adabab some refactoring trying to get h_many to work 2013-06-15 20:30:57 +02:00
Sven M. Hallberg
9a96314931 refactor hashtable iterations to use H_FOREACH 2013-06-15 19:06:10 +02:00
Sven M. Hallberg
e56f052255 remove the extra +1 from h_arena_malloc 2013-06-15 16:04:29 +02:00
Sven M. Hallberg
a7fe3824cd minor bugfixies 2013-06-14 19:07:26 +02:00
Sven M. Hallberg
d51e13173a add LALR test suite 2013-06-14 17:36:46 +02:00
Sven M. Hallberg
1918c97e1c fix a premature arena delete 2013-06-14 17:36:30 +02:00
Sven M. Hallberg
06acbe2fb5 LALR example parses! 2013-06-14 17:17:23 +02:00
Sven M. Hallberg
bfc2433320 don't call compare function on NULL hashtable keys 2013-06-14 17:07:56 +02:00
Sven M. Hallberg
6f44ab1196 Merge branch 'recursive_indirect' into LALR 2013-06-14 12:51:48 +02:00
Sven M. Hallberg
f65b0ae82a commentation 2013-06-14 12:50:39 +02:00
Sven M. Hallberg
dfe4c3ad47 add right-recursion test for packrat and llk 2013-06-14 12:42:55 +02:00
Sven M. Hallberg
7b04ab8d9d pre-allocate h_desugar's result to squelch recursive calls 2013-06-14 12:27:35 +02:00
Sven M. Hallberg
92f16a4d14 proper LALR example with conflict in LR(0) 2013-06-14 12:24:18 +02:00
Sven M. Hallberg
fd297b636c add LALR conflict resolution (untested) 2013-06-13 14:45:26 +02:00
Sven M. Hallberg
ddfd3796a7 why not include the lhs in pretty-printed reduce entries? 2013-06-12 16:48:59 +02:00
Sven M. Hallberg
4b5a936667 handle charsets 2013-06-12 16:38:50 +02:00
Sven M. Hallberg
41d4be4b84 avoid a segfault on getting the token position 2013-06-12 15:54:46 +02:00
Sven M. Hallberg
ce387d81b6 save production rhs in reduce actions for pretty-printing if not compiled NDEBUG 2013-06-12 15:48:52 +02:00
Sven M. Hallberg
805dfeb363 duh, forgot to record the start symbol in table 2013-06-12 15:33:53 +02:00
Sven M. Hallberg
0a7548bb2f lr driver, first stab (still bugged) 2013-06-12 15:07:19 +02:00
Sven M. Hallberg
bbdced376e derps etc 2013-06-11 01:12:25 +02:00
Sven M. Hallberg
04487ff80f add table pretty-printer 2013-06-10 23:45:25 +02:00
Sven M. Hallberg
4cd51b8953 make it compile and fix some basic segfaults 2013-06-10 22:05:12 +02:00
Sven M. Hallberg
dabe4b07a9 wip end-of-day commit - almost there (untested) 2013-06-10 00:46:03 +02:00
Sven M. Hallberg
3bb26162c3 end-of-day scratch commit (LALR table generation) 2013-06-07 22:39:09 +02:00
Sven M. Hallberg
f041775bb9 declare h_cfgrammar_new in cfgrammar.h 2013-06-07 22:38:26 +02:00
Sven M. Hallberg
732545274a look up neighbor set index properly (was left uninitialized) 2013-06-07 16:55:36 +02:00
Sven M. Hallberg
67e5b2fee0 add DFA pretty-printer 2013-06-07 16:44:07 +02:00
Sven M. Hallberg
373a7aef94 make h_pprint_char from cfgrammar public so LR pretty printers can use it 2013-06-07 16:29:14 +02:00
Sven M. Hallberg
43fc07e67b add construction of LR(0) automaton (untested) 2013-06-07 13:47:00 +02:00
Sven M. Hallberg
3ad4c51070 fix hte_same_length() 2013-06-07 13:46:16 +02:00
Sven M. Hallberg
167e187151 scratch commit of LALR preparations (breaks compile) 2013-06-06 13:05:48 +02:00
Sven M. Hallberg
e7a388d1c7 move djbhash into general availability as h_djbhash 2013-06-06 13:02:29 +02:00
Sven M. Hallberg
b959bcb5c7 fix an array index 2013-06-06 13:01:39 +02:00
Sven M. Hallberg
636f741d88 add h_hashset_equal (set comparison) 2013-06-05 15:12:48 +02:00
Sven M. Hallberg
976205f9da hook up LALR backend stub 2013-06-04 22:14:06 +02:00
Sven M. Hallberg
ef52f66a8c Merge branch 'LL' of github.com:pesco/hammer into LL
Conflicts:
	src/cfgrammar.c
2013-06-04 22:02:04 +02:00
Sven M. Hallberg
3be83c7fa2 set index and offset of result tokens in llk driver 2013-06-04 21:59:39 +02:00
Sven M. Hallberg
dba9d41eda rename HCFStringMap to HStringMap 2013-06-04 21:47:09 +02:00
Dan Hirsch
92f2eecf6c Remove unneeded desugaring code. 2013-05-27 08:31:15 +02:00
Sven M. Hallberg
e0207b8d5f properly initialize NULL fields in h_cfgrammar_new and h_stringmap_new 2013-05-25 14:49:59 +02:00
Sven M. Hallberg
02f1c80eea Merge remote-tracking branch 'mlp/master' into LL 2013-05-25 14:34:10 +02:00
Meredith L. Patterson
8618f9cb62 remove useless desugar_unimplemented; revert incorrect changes to test_llk() 2013-05-24 20:10:21 -07:00
Meredith L. Patterson
02d68f6d18 Merge branch 'master' of https://github.com/thequux/hammer
Conflicts:
	src/backends/llk.c
2013-05-24 20:00:41 -07:00