Commit Graph

56 Commits

Author SHA1 Message Date
Ilya Rezvov edbdeaec46 start instruction evaluator 2018-03-14 21:12:01 -07:00
Ilya Rezvov c09397539f store integer const instructions as words 2018-03-03 10:20:02 -08:00
Ilya Rezvov 88696e4666 make tests green again 2018-02-25 16:12:56 -08:00
Ilya Rezvov c7ecb055d4 fix types indexes in some cases 2018-02-25 09:19:54 -08:00
Ilya Rezvov e05bcdd0cb handle functions with empty body 2018-02-24 21:49:06 -08:00
Ilya Rezvov 55215f56de pass more tests 2018-02-24 21:08:18 -08:00
Ilya Rezvov 254bfca5f8 fix function parsing 2018-02-24 20:36:11 -08:00
Ilya Rezvov e7978b8d48 properly handle order of params and result types in function type in call_indirect instruction 2018-02-23 17:01:22 -08:00
Ilya Rezvov 4c8a71de16 reduce shift/reduce conflicts 2018-02-23 16:40:40 -08:00
Ilya Rezvov 97ae291be5 handle call_indirect properly in raw instruction case 2018-02-23 16:17:11 -08:00
Ilya Rezvov a30e6676ff accept only folded form of instructions inside folded forms 2018-02-23 15:00:06 -08:00
Ilya Rezvov 31735c93aa handle raw instructions properly 2018-02-23 14:52:03 -08:00
Ilya Rezvov 75bdf0637f start binary format support 2018-02-18 19:03:21 -08:00
Ilya Rezvov 4f11058f4b desugarize exports 2018-02-18 10:19:12 -08:00
Ilya Rezvov 2774c04689 desugarize globals 2018-02-18 08:14:49 -08:00
Ilya Rezvov b4aae1f89f desugarize datas and elems 2018-02-17 17:45:11 -08:00
Ilya Rezvov a952a3c155 desugarize functions 2018-02-17 09:23:19 -08:00
Ilya Rezvov 4630002e36 desugarize instructions 2018-02-17 08:23:30 -08:00
Ilya Rezvov 23d83cc3fe add more desugaring 2018-02-15 21:20:29 -08:00
Ilya Rezvov 241669b1ec extract imports from module fields 2018-02-15 16:43:46 -08:00
Ilya Rezvov 4b2e6e2a91 desugarize type definitions 2018-02-15 15:30:53 -08:00
Ilya Rezvov f97441d6b0 define types for wasm internal structure and share some parts with text representation types 2018-02-14 20:21:20 -08:00
Ilya Rezvov a411ac1f52 use continuation pass style for ident propagation 2018-02-13 21:12:27 -08:00
Ilya Rezvov 33d789f239 add types exports 2018-01-26 14:00:43 -08:00
Ilya Rezvov 93a89e4470 simplify insturction type 2018-01-25 15:27:19 -08:00
Ilya Rezvov aae3401ff6 add abbreviation for memory inline data definition 2018-01-25 11:51:43 -08:00
Ilya Rezvov f547898e1f parse inline exports and imports in memory definition 2018-01-23 18:28:24 -08:00
Ilya Rezvov acd4d65027 add inline import and export parsing for globals 2018-01-23 11:40:16 -08:00
Ilya Rezvov e9e59f1a9b simplify function parsing code 2018-01-23 11:14:17 -08:00
Ilya Rezvov 23aa6d5238 remove unused rules 2018-01-23 10:33:34 -08:00
Ilya Rezvov a200b5a62d support inline module definitions 2018-01-23 09:42:00 -08:00
Ilya Rezvov 61c554d119 remove some unused rules 2018-01-22 21:15:30 -08:00
Ilya Rezvov 5618f59cc3 add more test files 2018-01-22 20:16:05 -08:00
Ilya Rezvov 0b593a4a8c fix block, loop and if folded forms parsing 2018-01-22 18:39:53 -08:00
Ilya Rezvov e78f07a19f parse if folded form correct 2018-01-22 18:21:28 -08:00
Ilya Rezvov f26c0e305d handle folded inderect_call on higher level due to grammar ambiguites 2018-01-22 17:24:04 -08:00
Ilya Rezvov 6f61f2fd1d support abbreviated forms for tables 2018-01-22 15:42:19 -08:00
Ilya Rezvov 64fb4c0a35 support part of tables abbreviations 2018-01-22 15:18:18 -08:00
Ilya Rezvov 4980993487 parse inline exports in functions 2018-01-22 13:52:36 -08:00
Ilya Rezvov fb58259ab2 support inline imports in function definitions 2018-01-22 13:05:00 -08:00
Ilya Rezvov 058962a831 parse functions body 2018-01-21 18:28:30 -08:00
Ilya Rezvov c537fa13e2 factorize typeuse rule 2018-01-21 12:21:44 -08:00
Ilya Rezvov 91ceecb51e improve parsing error message 2018-01-21 10:14:32 -08:00
Ilya Rezvov c0992fee62 parse module 2018-01-21 09:57:29 -08:00
Ilya Rezvov b03471271b add more toplevel definitions 2018-01-20 22:39:16 -08:00
Ilya Rezvov 67f5a377c4 add abbreviated function import 2018-01-20 18:17:31 -08:00
Ilya Rezvov fdf1163c93 add function defs 2018-01-20 18:13:00 -08:00
Ilya Rezvov ca44840a9f add folded instructions parser and improve indexes definition 2018-01-20 17:37:19 -08:00
Ilya Rezvov d90da425e0 add block instructions 2018-01-20 17:01:27 -08:00
Ilya Rezvov df740bc733 complete numeric instructions 2018-01-20 16:28:20 -08:00