| Grammar |
| |
| 0 $accept: script_start "EOF" |
| |
| 1 non_empty_text_list: TEXT |
| 2 | non_empty_text_list TEXT |
| |
| 3 text_list: %empty |
| 4 | non_empty_text_list |
| |
| 5 quoted_text: TEXT |
| |
| 6 value_type_list: %empty |
| 7 | value_type_list VALUE_TYPE |
| |
| 8 elem_type: ANYFUNC |
| |
| 9 global_type: VALUE_TYPE |
| 10 | "(" MUT VALUE_TYPE ")" |
| |
| 11 func_type: "(" FUNC func_sig ")" |
| |
| 12 func_sig: %empty |
| 13 | "(" PARAM value_type_list ")" |
| 14 | "(" PARAM value_type_list ")" "(" RESULT value_type_list ")" |
| 15 | "(" RESULT value_type_list ")" |
| |
| 16 table_sig: limits elem_type |
| |
| 17 memory_sig: limits |
| |
| 18 limits: nat |
| 19 | nat nat |
| |
| 20 type_use: "(" TYPE var ")" |
| |
| 21 nat: NAT |
| |
| 22 literal: NAT |
| 23 | INT |
| 24 | FLOAT |
| |
| 25 var: nat |
| 26 | VAR |
| |
| 27 var_list: %empty |
| 28 | var_list var |
| |
| 29 bind_var_opt: %empty |
| 30 | bind_var |
| |
| 31 bind_var: VAR |
| |
| 32 labeling_opt: %empty |
| 33 | bind_var |
| |
| 34 offset_opt: %empty |
| 35 | OFFSET_EQ_NAT |
| |
| 36 align_opt: %empty |
| 37 | ALIGN_EQ_NAT |
| |
| 38 instr: plain_instr |
| 39 | block_instr |
| 40 | expr |
| |
| 41 plain_instr: UNREACHABLE |
| 42 | NOP |
| 43 | DROP |
| 44 | SELECT |
| 45 | BR var |
| 46 | BR_IF var |
| 47 | BR_TABLE var_list var |
| 48 | RETURN |
| 49 | CALL var |
| 50 | CALL_INDIRECT var |
| 51 | GET_LOCAL var |
| 52 | SET_LOCAL var |
| 53 | TEE_LOCAL var |
| 54 | GET_GLOBAL var |
| 55 | SET_GLOBAL var |
| 56 | LOAD offset_opt align_opt |
| 57 | STORE offset_opt align_opt |
| 58 | CONST literal |
| 59 | UNARY |
| 60 | BINARY |
| 61 | COMPARE |
| 62 | CONVERT |
| 63 | CURRENT_MEMORY |
| 64 | GROW_MEMORY |
| |
| 65 block_instr: BLOCK labeling_opt block END labeling_opt |
| 66 | LOOP labeling_opt block END labeling_opt |
| 67 | IF labeling_opt block END labeling_opt |
| 68 | IF labeling_opt block ELSE labeling_opt instr_list END labeling_opt |
| |
| 69 block: value_type_list instr_list |
| |
| 70 expr: "(" expr1 ")" |
| |
| 71 expr1: plain_instr expr_list |
| 72 | BLOCK labeling_opt block |
| 73 | LOOP labeling_opt block |
| 74 | IF labeling_opt value_type_list if_ |
| |
| 75 if_: "(" THEN instr_list ")" "(" ELSE instr_list ")" |
| 76 | "(" THEN instr_list ")" |
| 77 | expr "(" THEN instr_list ")" "(" ELSE instr_list ")" |
| 78 | expr "(" THEN instr_list ")" |
| 79 | expr expr expr |
| 80 | expr expr |
| |
| 81 instr_list: %empty |
| 82 | instr instr_list |
| |
| 83 expr_list: %empty |
| 84 | expr expr_list |
| |
| 85 const_expr: instr_list |
| |
| 86 func_fields: func_body |
| 87 | "(" RESULT value_type_list ")" func_body |
| 88 | "(" PARAM value_type_list ")" func_fields |
| 89 | "(" PARAM bind_var VALUE_TYPE ")" func_fields |
| |
| 90 func_body: instr_list |
| 91 | "(" LOCAL value_type_list ")" func_body |
| 92 | "(" LOCAL bind_var VALUE_TYPE ")" func_body |
| |
| 93 func_info: func_fields |
| |
| 94 func: "(" FUNC bind_var_opt inline_export type_use func_info ")" |
| 95 | "(" FUNC bind_var_opt type_use func_info ")" |
| 96 | "(" FUNC bind_var_opt inline_export func_info ")" |
| 97 | "(" FUNC bind_var_opt func_info ")" |
| |
| 98 offset: "(" OFFSET const_expr ")" |
| 99 | expr |
| |
| 100 elem: "(" ELEM var offset var_list ")" |
| 101 | "(" ELEM offset var_list ")" |
| |
| 102 table: "(" TABLE bind_var_opt inline_export_opt table_sig ")" |
| 103 | "(" TABLE bind_var_opt inline_export_opt elem_type "(" ELEM var_list ")" ")" |
| |
| 104 data: "(" DATA var offset text_list ")" |
| 105 | "(" DATA offset text_list ")" |
| |
| 106 memory: "(" MEMORY bind_var_opt inline_export_opt memory_sig ")" |
| 107 | "(" MEMORY bind_var_opt inline_export "(" DATA text_list ")" ")" |
| 108 | "(" MEMORY bind_var_opt "(" DATA text_list ")" ")" |
| |
| 109 global: "(" GLOBAL bind_var_opt inline_export global_type const_expr ")" |
| 110 | "(" GLOBAL bind_var_opt global_type const_expr ")" |
| |
| 111 import_kind: "(" FUNC bind_var_opt type_use ")" |
| 112 | "(" FUNC bind_var_opt func_sig ")" |
| 113 | "(" TABLE bind_var_opt table_sig ")" |
| 114 | "(" MEMORY bind_var_opt memory_sig ")" |
| 115 | "(" GLOBAL bind_var_opt global_type ")" |
| |
| 116 import: "(" IMPORT quoted_text quoted_text import_kind ")" |
| 117 | "(" FUNC bind_var_opt inline_import type_use ")" |
| 118 | "(" FUNC bind_var_opt inline_import func_sig ")" |
| 119 | "(" TABLE bind_var_opt inline_import table_sig ")" |
| 120 | "(" MEMORY bind_var_opt inline_import memory_sig ")" |
| 121 | "(" GLOBAL bind_var_opt inline_import global_type ")" |
| |
| 122 inline_import: "(" IMPORT quoted_text quoted_text ")" |
| |
| 123 export_kind: "(" FUNC var ")" |
| 124 | "(" TABLE var ")" |
| 125 | "(" MEMORY var ")" |
| 126 | "(" GLOBAL var ")" |
| |
| 127 export: "(" EXPORT quoted_text export_kind ")" |
| |
| 128 inline_export_opt: %empty |
| 129 | inline_export |
| |
| 130 inline_export: "(" EXPORT quoted_text ")" |
| |
| 131 type_def: "(" TYPE func_type ")" |
| 132 | "(" TYPE bind_var func_type ")" |
| |
| 133 start: "(" START var ")" |
| |
| 134 module_fields: %empty |
| 135 | module_fields type_def |
| 136 | module_fields global |
| 137 | module_fields table |
| 138 | module_fields memory |
| 139 | module_fields func |
| 140 | module_fields elem |
| 141 | module_fields data |
| 142 | module_fields start |
| 143 | module_fields import |
| 144 | module_fields export |
| |
| 145 raw_module: "(" MODULE bind_var_opt module_fields ")" |
| 146 | "(" MODULE bind_var_opt non_empty_text_list ")" |
| |
| 147 module: raw_module |
| |
| 148 script_var_opt: %empty |
| 149 | VAR |
| |
| 150 action: "(" INVOKE script_var_opt quoted_text const_list ")" |
| 151 | "(" GET script_var_opt quoted_text ")" |
| |
| 152 assertion: "(" ASSERT_MALFORMED raw_module quoted_text ")" |
| 153 | "(" ASSERT_INVALID raw_module quoted_text ")" |
| 154 | "(" ASSERT_UNLINKABLE raw_module quoted_text ")" |
| 155 | "(" ASSERT_TRAP raw_module quoted_text ")" |
| 156 | "(" ASSERT_RETURN action const_list ")" |
| 157 | "(" ASSERT_RETURN_CANONICAL_NAN action ")" |
| 158 | "(" ASSERT_RETURN_ARITHMETIC_NAN action ")" |
| 159 | "(" ASSERT_TRAP action quoted_text ")" |
| 160 | "(" ASSERT_EXHAUSTION action quoted_text ")" |
| |
| 161 cmd: action |
| 162 | assertion |
| 163 | module |
| 164 | "(" REGISTER quoted_text script_var_opt ")" |
| |
| 165 cmd_list: %empty |
| 166 | cmd_list cmd |
| |
| 167 const: "(" CONST literal ")" |
| |
| 168 const_list: %empty |
| 169 | const_list const |
| |
| 170 script: cmd_list |
| |
| 171 script_start: script |
| |
| |
| Terminals, with rules where they appear |
| |
| "EOF" (0) 0 |
| error (256) |
| "(" (258) 10 11 13 14 15 20 70 75 76 77 78 87 88 89 91 92 94 95 96 |
| 97 98 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
| 115 116 117 118 119 120 121 122 123 124 125 126 127 130 131 132 |
| 133 145 146 150 151 152 153 154 155 156 157 158 159 160 164 167 |
| ")" (259) 10 11 13 14 15 20 70 75 76 77 78 87 88 89 91 92 94 95 96 |
| 97 98 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
| 115 116 117 118 119 120 121 122 123 124 125 126 127 130 131 132 |
| 133 145 146 150 151 152 153 154 155 156 157 158 159 160 164 167 |
| NAT (260) 21 22 |
| INT (261) 23 |
| FLOAT (262) 24 |
| TEXT (263) 1 2 5 |
| VAR (264) 26 31 149 |
| VALUE_TYPE (265) 7 9 10 89 92 |
| ANYFUNC (266) 8 |
| MUT (267) 10 |
| NOP (268) 42 |
| DROP (269) 43 |
| BLOCK (270) 65 72 |
| END (271) 65 66 67 68 |
| IF (272) 67 68 74 |
| THEN (273) 75 76 77 78 |
| ELSE (274) 68 75 77 |
| LOOP (275) 66 73 |
| BR (276) 45 |
| BR_IF (277) 46 |
| BR_TABLE (278) 47 |
| CALL (279) 49 |
| CALL_INDIRECT (280) 50 |
| RETURN (281) 48 |
| GET_LOCAL (282) 51 |
| SET_LOCAL (283) 52 |
| TEE_LOCAL (284) 53 |
| GET_GLOBAL (285) 54 |
| SET_GLOBAL (286) 55 |
| LOAD (287) 56 |
| STORE (288) 57 |
| OFFSET_EQ_NAT (289) 35 |
| ALIGN_EQ_NAT (290) 37 |
| CONST (291) 58 167 |
| UNARY (292) 59 |
| BINARY (293) 60 |
| COMPARE (294) 61 |
| CONVERT (295) 62 |
| SELECT (296) 44 |
| UNREACHABLE (297) 41 |
| CURRENT_MEMORY (298) 63 |
| GROW_MEMORY (299) 64 |
| FUNC (300) 11 94 95 96 97 111 112 117 118 123 |
| START (301) 133 |
| TYPE (302) 20 131 132 |
| PARAM (303) 13 14 88 89 |
| RESULT (304) 14 15 87 |
| LOCAL (305) 91 92 |
| GLOBAL (306) 109 110 115 121 126 |
| MODULE (307) 145 146 |
| TABLE (308) 102 103 113 119 124 |
| ELEM (309) 100 101 103 |
| MEMORY (310) 106 107 108 114 120 125 |
| DATA (311) 104 105 107 108 |
| OFFSET (312) 98 |
| IMPORT (313) 116 122 |
| EXPORT (314) 127 130 |
| REGISTER (315) 164 |
| INVOKE (316) 150 |
| GET (317) 151 |
| ASSERT_MALFORMED (318) 152 |
| ASSERT_INVALID (319) 153 |
| ASSERT_UNLINKABLE (320) 154 |
| ASSERT_RETURN (321) 156 |
| ASSERT_RETURN_CANONICAL_NAN (322) 157 |
| ASSERT_RETURN_ARITHMETIC_NAN (323) 158 |
| ASSERT_TRAP (324) 155 159 |
| ASSERT_EXHAUSTION (325) 160 |
| LOW (326) |
| |
| |
| Nonterminals, with rules where they appear |
| |
| $accept (72) |
| on left: 0 |
| non_empty_text_list (73) |
| on left: 1 2, on right: 2 4 146 |
| text_list (74) |
| on left: 3 4, on right: 104 105 107 108 |
| quoted_text (75) |
| on left: 5, on right: 116 122 127 130 150 151 152 153 154 155 159 |
| 160 164 |
| value_type_list (76) |
| on left: 6 7, on right: 7 13 14 15 69 74 87 88 91 |
| elem_type (77) |
| on left: 8, on right: 16 103 |
| global_type (78) |
| on left: 9 10, on right: 109 110 115 121 |
| func_type (79) |
| on left: 11, on right: 131 132 |
| func_sig (80) |
| on left: 12 13 14 15, on right: 11 112 118 |
| table_sig (81) |
| on left: 16, on right: 102 113 119 |
| memory_sig (82) |
| on left: 17, on right: 106 114 120 |
| limits (83) |
| on left: 18 19, on right: 16 17 |
| type_use (84) |
| on left: 20, on right: 94 95 111 117 |
| nat (85) |
| on left: 21, on right: 18 19 25 |
| literal (86) |
| on left: 22 23 24, on right: 58 167 |
| var (87) |
| on left: 25 26, on right: 20 28 45 46 47 49 50 51 52 53 54 55 100 |
| 104 123 124 125 126 133 |
| var_list (88) |
| on left: 27 28, on right: 28 47 100 101 103 |
| bind_var_opt (89) |
| on left: 29 30, on right: 94 95 96 97 102 103 106 107 108 109 110 |
| 111 112 113 114 115 117 118 119 120 121 145 146 |
| bind_var (90) |
| on left: 31, on right: 30 33 89 92 132 |
| labeling_opt (91) |
| on left: 32 33, on right: 65 66 67 68 72 73 74 |
| offset_opt (92) |
| on left: 34 35, on right: 56 57 |
| align_opt (93) |
| on left: 36 37, on right: 56 57 |
| instr (94) |
| on left: 38 39 40, on right: 82 |
| plain_instr (95) |
| on left: 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
| 59 60 61 62 63 64, on right: 38 71 |
| block_instr (96) |
| on left: 65 66 67 68, on right: 39 |
| block (97) |
| on left: 69, on right: 65 66 67 68 72 73 |
| expr (98) |
| on left: 70, on right: 40 77 78 79 80 84 99 |
| expr1 (99) |
| on left: 71 72 73 74, on right: 70 |
| if_ (100) |
| on left: 75 76 77 78 79 80, on right: 74 |
| instr_list (101) |
| on left: 81 82, on right: 68 69 75 76 77 78 82 85 90 |
| expr_list (102) |
| on left: 83 84, on right: 71 84 |
| const_expr (103) |
| on left: 85, on right: 98 109 110 |
| func_fields (104) |
| on left: 86 87 88 89, on right: 88 89 93 |
| func_body (105) |
| on left: 90 91 92, on right: 86 87 91 92 |
| func_info (106) |
| on left: 93, on right: 94 95 96 97 |
| func (107) |
| on left: 94 95 96 97, on right: 139 |
| offset (108) |
| on left: 98 99, on right: 100 101 104 105 |
| elem (109) |
| on left: 100 101, on right: 140 |
| table (110) |
| on left: 102 103, on right: 137 |
| data (111) |
| on left: 104 105, on right: 141 |
| memory (112) |
| on left: 106 107 108, on right: 138 |
| global (113) |
| on left: 109 110, on right: 136 |
| import_kind (114) |
| on left: 111 112 113 114 115, on right: 116 |
| import (115) |
| on left: 116 117 118 119 120 121, on right: 143 |
| inline_import (116) |
| on left: 122, on right: 117 118 119 120 121 |
| export_kind (117) |
| on left: 123 124 125 126, on right: 127 |
| export (118) |
| on left: 127, on right: 144 |
| inline_export_opt (119) |
| on left: 128 129, on right: 102 103 106 |
| inline_export (120) |
| on left: 130, on right: 94 96 107 109 129 |
| type_def (121) |
| on left: 131 132, on right: 135 |
| start (122) |
| on left: 133, on right: 142 |
| module_fields (123) |
| on left: 134 135 136 137 138 139 140 141 142 143 144, on right: |
| 135 136 137 138 139 140 141 142 143 144 145 |
| raw_module (124) |
| on left: 145 146, on right: 147 152 153 154 155 |
| module (125) |
| on left: 147, on right: 163 |
| script_var_opt (126) |
| on left: 148 149, on right: 150 151 164 |
| action (127) |
| on left: 150 151, on right: 156 157 158 159 160 161 |
| assertion (128) |
| on left: 152 153 154 155 156 157 158 159 160, on right: 162 |
| cmd (129) |
| on left: 161 162 163 164, on right: 166 |
| cmd_list (130) |
| on left: 165 166, on right: 166 170 |
| const (131) |
| on left: 167, on right: 169 |
| const_list (132) |
| on left: 168 169, on right: 150 156 169 |
| script (133) |
| on left: 170, on right: 171 |
| script_start (134) |
| on left: 171, on right: 0 |
| |
| |
| State 0 |
| |
| 0 $accept: . script_start "EOF" |
| |
| $default reduce using rule 165 (cmd_list) |
| |
| cmd_list go to state 1 |
| script go to state 2 |
| script_start go to state 3 |
| |
| |
| State 1 |
| |
| 166 cmd_list: cmd_list . cmd |
| 170 script: cmd_list . |
| |
| "(" shift, and go to state 4 |
| |
| $default reduce using rule 170 (script) |
| |
| raw_module go to state 5 |
| module go to state 6 |
| action go to state 7 |
| assertion go to state 8 |
| cmd go to state 9 |
| |
| |
| State 2 |
| |
| 171 script_start: script . |
| |
| $default reduce using rule 171 (script_start) |
| |
| |
| State 3 |
| |
| 0 $accept: script_start . "EOF" |
| |
| "EOF" shift, and go to state 10 |
| |
| |
| State 4 |
| |
| 145 raw_module: "(" . MODULE bind_var_opt module_fields ")" |
| 146 | "(" . MODULE bind_var_opt non_empty_text_list ")" |
| 150 action: "(" . INVOKE script_var_opt quoted_text const_list ")" |
| 151 | "(" . GET script_var_opt quoted_text ")" |
| 152 assertion: "(" . ASSERT_MALFORMED raw_module quoted_text ")" |
| 153 | "(" . ASSERT_INVALID raw_module quoted_text ")" |
| 154 | "(" . ASSERT_UNLINKABLE raw_module quoted_text ")" |
| 155 | "(" . ASSERT_TRAP raw_module quoted_text ")" |
| 156 | "(" . ASSERT_RETURN action const_list ")" |
| 157 | "(" . ASSERT_RETURN_CANONICAL_NAN action ")" |
| 158 | "(" . ASSERT_RETURN_ARITHMETIC_NAN action ")" |
| 159 | "(" . ASSERT_TRAP action quoted_text ")" |
| 160 | "(" . ASSERT_EXHAUSTION action quoted_text ")" |
| 164 cmd: "(" . REGISTER quoted_text script_var_opt ")" |
| |
| MODULE shift, and go to state 11 |
| REGISTER shift, and go to state 12 |
| INVOKE shift, and go to state 13 |
| GET shift, and go to state 14 |
| ASSERT_MALFORMED shift, and go to state 15 |
| ASSERT_INVALID shift, and go to state 16 |
| ASSERT_UNLINKABLE shift, and go to state 17 |
| ASSERT_RETURN shift, and go to state 18 |
| ASSERT_RETURN_CANONICAL_NAN shift, and go to state 19 |
| ASSERT_RETURN_ARITHMETIC_NAN shift, and go to state 20 |
| ASSERT_TRAP shift, and go to state 21 |
| ASSERT_EXHAUSTION shift, and go to state 22 |
| |
| |
| State 5 |
| |
| 147 module: raw_module . |
| |
| $default reduce using rule 147 (module) |
| |
| |
| State 6 |
| |
| 163 cmd: module . |
| |
| $default reduce using rule 163 (cmd) |
| |
| |
| State 7 |
| |
| 161 cmd: action . |
| |
| $default reduce using rule 161 (cmd) |
| |
| |
| State 8 |
| |
| 162 cmd: assertion . |
| |
| $default reduce using rule 162 (cmd) |
| |
| |
| State 9 |
| |
| 166 cmd_list: cmd_list cmd . |
| |
| $default reduce using rule 166 (cmd_list) |
| |
| |
| State 10 |
| |
| 0 $accept: script_start "EOF" . |
| |
| $default accept |
| |
| |
| State 11 |
| |
| 145 raw_module: "(" MODULE . bind_var_opt module_fields ")" |
| 146 | "(" MODULE . bind_var_opt non_empty_text_list ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 24 |
| bind_var go to state 25 |
| |
| |
| State 12 |
| |
| 164 cmd: "(" REGISTER . quoted_text script_var_opt ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 27 |
| |
| |
| State 13 |
| |
| 150 action: "(" INVOKE . script_var_opt quoted_text const_list ")" |
| |
| VAR shift, and go to state 28 |
| |
| $default reduce using rule 148 (script_var_opt) |
| |
| script_var_opt go to state 29 |
| |
| |
| State 14 |
| |
| 151 action: "(" GET . script_var_opt quoted_text ")" |
| |
| VAR shift, and go to state 28 |
| |
| $default reduce using rule 148 (script_var_opt) |
| |
| script_var_opt go to state 30 |
| |
| |
| State 15 |
| |
| 152 assertion: "(" ASSERT_MALFORMED . raw_module quoted_text ")" |
| |
| "(" shift, and go to state 31 |
| |
| raw_module go to state 32 |
| |
| |
| State 16 |
| |
| 153 assertion: "(" ASSERT_INVALID . raw_module quoted_text ")" |
| |
| "(" shift, and go to state 31 |
| |
| raw_module go to state 33 |
| |
| |
| State 17 |
| |
| 154 assertion: "(" ASSERT_UNLINKABLE . raw_module quoted_text ")" |
| |
| "(" shift, and go to state 31 |
| |
| raw_module go to state 34 |
| |
| |
| State 18 |
| |
| 156 assertion: "(" ASSERT_RETURN . action const_list ")" |
| |
| "(" shift, and go to state 35 |
| |
| action go to state 36 |
| |
| |
| State 19 |
| |
| 157 assertion: "(" ASSERT_RETURN_CANONICAL_NAN . action ")" |
| |
| "(" shift, and go to state 35 |
| |
| action go to state 37 |
| |
| |
| State 20 |
| |
| 158 assertion: "(" ASSERT_RETURN_ARITHMETIC_NAN . action ")" |
| |
| "(" shift, and go to state 35 |
| |
| action go to state 38 |
| |
| |
| State 21 |
| |
| 155 assertion: "(" ASSERT_TRAP . raw_module quoted_text ")" |
| 159 | "(" ASSERT_TRAP . action quoted_text ")" |
| |
| "(" shift, and go to state 39 |
| |
| raw_module go to state 40 |
| action go to state 41 |
| |
| |
| State 22 |
| |
| 160 assertion: "(" ASSERT_EXHAUSTION . action quoted_text ")" |
| |
| "(" shift, and go to state 35 |
| |
| action go to state 42 |
| |
| |
| State 23 |
| |
| 31 bind_var: VAR . |
| |
| $default reduce using rule 31 (bind_var) |
| |
| |
| State 24 |
| |
| 145 raw_module: "(" MODULE bind_var_opt . module_fields ")" |
| 146 | "(" MODULE bind_var_opt . non_empty_text_list ")" |
| |
| TEXT shift, and go to state 43 |
| |
| $default reduce using rule 134 (module_fields) |
| |
| non_empty_text_list go to state 44 |
| module_fields go to state 45 |
| |
| |
| State 25 |
| |
| 30 bind_var_opt: bind_var . |
| |
| $default reduce using rule 30 (bind_var_opt) |
| |
| |
| State 26 |
| |
| 5 quoted_text: TEXT . |
| |
| $default reduce using rule 5 (quoted_text) |
| |
| |
| State 27 |
| |
| 164 cmd: "(" REGISTER quoted_text . script_var_opt ")" |
| |
| VAR shift, and go to state 28 |
| |
| $default reduce using rule 148 (script_var_opt) |
| |
| script_var_opt go to state 46 |
| |
| |
| State 28 |
| |
| 149 script_var_opt: VAR . |
| |
| $default reduce using rule 149 (script_var_opt) |
| |
| |
| State 29 |
| |
| 150 action: "(" INVOKE script_var_opt . quoted_text const_list ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 47 |
| |
| |
| State 30 |
| |
| 151 action: "(" GET script_var_opt . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 48 |
| |
| |
| State 31 |
| |
| 145 raw_module: "(" . MODULE bind_var_opt module_fields ")" |
| 146 | "(" . MODULE bind_var_opt non_empty_text_list ")" |
| |
| MODULE shift, and go to state 11 |
| |
| |
| State 32 |
| |
| 152 assertion: "(" ASSERT_MALFORMED raw_module . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 49 |
| |
| |
| State 33 |
| |
| 153 assertion: "(" ASSERT_INVALID raw_module . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 50 |
| |
| |
| State 34 |
| |
| 154 assertion: "(" ASSERT_UNLINKABLE raw_module . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 51 |
| |
| |
| State 35 |
| |
| 150 action: "(" . INVOKE script_var_opt quoted_text const_list ")" |
| 151 | "(" . GET script_var_opt quoted_text ")" |
| |
| INVOKE shift, and go to state 13 |
| GET shift, and go to state 14 |
| |
| |
| State 36 |
| |
| 156 assertion: "(" ASSERT_RETURN action . const_list ")" |
| |
| $default reduce using rule 168 (const_list) |
| |
| const_list go to state 52 |
| |
| |
| State 37 |
| |
| 157 assertion: "(" ASSERT_RETURN_CANONICAL_NAN action . ")" |
| |
| ")" shift, and go to state 53 |
| |
| |
| State 38 |
| |
| 158 assertion: "(" ASSERT_RETURN_ARITHMETIC_NAN action . ")" |
| |
| ")" shift, and go to state 54 |
| |
| |
| State 39 |
| |
| 145 raw_module: "(" . MODULE bind_var_opt module_fields ")" |
| 146 | "(" . MODULE bind_var_opt non_empty_text_list ")" |
| 150 action: "(" . INVOKE script_var_opt quoted_text const_list ")" |
| 151 | "(" . GET script_var_opt quoted_text ")" |
| |
| MODULE shift, and go to state 11 |
| INVOKE shift, and go to state 13 |
| GET shift, and go to state 14 |
| |
| |
| State 40 |
| |
| 155 assertion: "(" ASSERT_TRAP raw_module . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 55 |
| |
| |
| State 41 |
| |
| 159 assertion: "(" ASSERT_TRAP action . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 56 |
| |
| |
| State 42 |
| |
| 160 assertion: "(" ASSERT_EXHAUSTION action . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 57 |
| |
| |
| State 43 |
| |
| 1 non_empty_text_list: TEXT . |
| |
| $default reduce using rule 1 (non_empty_text_list) |
| |
| |
| State 44 |
| |
| 2 non_empty_text_list: non_empty_text_list . TEXT |
| 146 raw_module: "(" MODULE bind_var_opt non_empty_text_list . ")" |
| |
| ")" shift, and go to state 58 |
| TEXT shift, and go to state 59 |
| |
| |
| State 45 |
| |
| 135 module_fields: module_fields . type_def |
| 136 | module_fields . global |
| 137 | module_fields . table |
| 138 | module_fields . memory |
| 139 | module_fields . func |
| 140 | module_fields . elem |
| 141 | module_fields . data |
| 142 | module_fields . start |
| 143 | module_fields . import |
| 144 | module_fields . export |
| 145 raw_module: "(" MODULE bind_var_opt module_fields . ")" |
| |
| "(" shift, and go to state 60 |
| ")" shift, and go to state 61 |
| |
| func go to state 62 |
| elem go to state 63 |
| table go to state 64 |
| data go to state 65 |
| memory go to state 66 |
| global go to state 67 |
| import go to state 68 |
| export go to state 69 |
| type_def go to state 70 |
| start go to state 71 |
| |
| |
| State 46 |
| |
| 164 cmd: "(" REGISTER quoted_text script_var_opt . ")" |
| |
| ")" shift, and go to state 72 |
| |
| |
| State 47 |
| |
| 150 action: "(" INVOKE script_var_opt quoted_text . const_list ")" |
| |
| $default reduce using rule 168 (const_list) |
| |
| const_list go to state 73 |
| |
| |
| State 48 |
| |
| 151 action: "(" GET script_var_opt quoted_text . ")" |
| |
| ")" shift, and go to state 74 |
| |
| |
| State 49 |
| |
| 152 assertion: "(" ASSERT_MALFORMED raw_module quoted_text . ")" |
| |
| ")" shift, and go to state 75 |
| |
| |
| State 50 |
| |
| 153 assertion: "(" ASSERT_INVALID raw_module quoted_text . ")" |
| |
| ")" shift, and go to state 76 |
| |
| |
| State 51 |
| |
| 154 assertion: "(" ASSERT_UNLINKABLE raw_module quoted_text . ")" |
| |
| ")" shift, and go to state 77 |
| |
| |
| State 52 |
| |
| 156 assertion: "(" ASSERT_RETURN action const_list . ")" |
| 169 const_list: const_list . const |
| |
| "(" shift, and go to state 78 |
| ")" shift, and go to state 79 |
| |
| const go to state 80 |
| |
| |
| State 53 |
| |
| 157 assertion: "(" ASSERT_RETURN_CANONICAL_NAN action ")" . |
| |
| $default reduce using rule 157 (assertion) |
| |
| |
| State 54 |
| |
| 158 assertion: "(" ASSERT_RETURN_ARITHMETIC_NAN action ")" . |
| |
| $default reduce using rule 158 (assertion) |
| |
| |
| State 55 |
| |
| 155 assertion: "(" ASSERT_TRAP raw_module quoted_text . ")" |
| |
| ")" shift, and go to state 81 |
| |
| |
| State 56 |
| |
| 159 assertion: "(" ASSERT_TRAP action quoted_text . ")" |
| |
| ")" shift, and go to state 82 |
| |
| |
| State 57 |
| |
| 160 assertion: "(" ASSERT_EXHAUSTION action quoted_text . ")" |
| |
| ")" shift, and go to state 83 |
| |
| |
| State 58 |
| |
| 146 raw_module: "(" MODULE bind_var_opt non_empty_text_list ")" . |
| |
| $default reduce using rule 146 (raw_module) |
| |
| |
| State 59 |
| |
| 2 non_empty_text_list: non_empty_text_list TEXT . |
| |
| $default reduce using rule 2 (non_empty_text_list) |
| |
| |
| State 60 |
| |
| 94 func: "(" . FUNC bind_var_opt inline_export type_use func_info ")" |
| 95 | "(" . FUNC bind_var_opt type_use func_info ")" |
| 96 | "(" . FUNC bind_var_opt inline_export func_info ")" |
| 97 | "(" . FUNC bind_var_opt func_info ")" |
| 100 elem: "(" . ELEM var offset var_list ")" |
| 101 | "(" . ELEM offset var_list ")" |
| 102 table: "(" . TABLE bind_var_opt inline_export_opt table_sig ")" |
| 103 | "(" . TABLE bind_var_opt inline_export_opt elem_type "(" ELEM var_list ")" ")" |
| 104 data: "(" . DATA var offset text_list ")" |
| 105 | "(" . DATA offset text_list ")" |
| 106 memory: "(" . MEMORY bind_var_opt inline_export_opt memory_sig ")" |
| 107 | "(" . MEMORY bind_var_opt inline_export "(" DATA text_list ")" ")" |
| 108 | "(" . MEMORY bind_var_opt "(" DATA text_list ")" ")" |
| 109 global: "(" . GLOBAL bind_var_opt inline_export global_type const_expr ")" |
| 110 | "(" . GLOBAL bind_var_opt global_type const_expr ")" |
| 116 import: "(" . IMPORT quoted_text quoted_text import_kind ")" |
| 117 | "(" . FUNC bind_var_opt inline_import type_use ")" |
| 118 | "(" . FUNC bind_var_opt inline_import func_sig ")" |
| 119 | "(" . TABLE bind_var_opt inline_import table_sig ")" |
| 120 | "(" . MEMORY bind_var_opt inline_import memory_sig ")" |
| 121 | "(" . GLOBAL bind_var_opt inline_import global_type ")" |
| 127 export: "(" . EXPORT quoted_text export_kind ")" |
| 131 type_def: "(" . TYPE func_type ")" |
| 132 | "(" . TYPE bind_var func_type ")" |
| 133 start: "(" . START var ")" |
| |
| FUNC shift, and go to state 84 |
| START shift, and go to state 85 |
| TYPE shift, and go to state 86 |
| GLOBAL shift, and go to state 87 |
| TABLE shift, and go to state 88 |
| ELEM shift, and go to state 89 |
| MEMORY shift, and go to state 90 |
| DATA shift, and go to state 91 |
| IMPORT shift, and go to state 92 |
| EXPORT shift, and go to state 93 |
| |
| |
| State 61 |
| |
| 145 raw_module: "(" MODULE bind_var_opt module_fields ")" . |
| |
| $default reduce using rule 145 (raw_module) |
| |
| |
| State 62 |
| |
| 139 module_fields: module_fields func . |
| |
| $default reduce using rule 139 (module_fields) |
| |
| |
| State 63 |
| |
| 140 module_fields: module_fields elem . |
| |
| $default reduce using rule 140 (module_fields) |
| |
| |
| State 64 |
| |
| 137 module_fields: module_fields table . |
| |
| $default reduce using rule 137 (module_fields) |
| |
| |
| State 65 |
| |
| 141 module_fields: module_fields data . |
| |
| $default reduce using rule 141 (module_fields) |
| |
| |
| State 66 |
| |
| 138 module_fields: module_fields memory . |
| |
| $default reduce using rule 138 (module_fields) |
| |
| |
| State 67 |
| |
| 136 module_fields: module_fields global . |
| |
| $default reduce using rule 136 (module_fields) |
| |
| |
| State 68 |
| |
| 143 module_fields: module_fields import . |
| |
| $default reduce using rule 143 (module_fields) |
| |
| |
| State 69 |
| |
| 144 module_fields: module_fields export . |
| |
| $default reduce using rule 144 (module_fields) |
| |
| |
| State 70 |
| |
| 135 module_fields: module_fields type_def . |
| |
| $default reduce using rule 135 (module_fields) |
| |
| |
| State 71 |
| |
| 142 module_fields: module_fields start . |
| |
| $default reduce using rule 142 (module_fields) |
| |
| |
| State 72 |
| |
| 164 cmd: "(" REGISTER quoted_text script_var_opt ")" . |
| |
| $default reduce using rule 164 (cmd) |
| |
| |
| State 73 |
| |
| 150 action: "(" INVOKE script_var_opt quoted_text const_list . ")" |
| 169 const_list: const_list . const |
| |
| "(" shift, and go to state 78 |
| ")" shift, and go to state 94 |
| |
| const go to state 80 |
| |
| |
| State 74 |
| |
| 151 action: "(" GET script_var_opt quoted_text ")" . |
| |
| $default reduce using rule 151 (action) |
| |
| |
| State 75 |
| |
| 152 assertion: "(" ASSERT_MALFORMED raw_module quoted_text ")" . |
| |
| $default reduce using rule 152 (assertion) |
| |
| |
| State 76 |
| |
| 153 assertion: "(" ASSERT_INVALID raw_module quoted_text ")" . |
| |
| $default reduce using rule 153 (assertion) |
| |
| |
| State 77 |
| |
| 154 assertion: "(" ASSERT_UNLINKABLE raw_module quoted_text ")" . |
| |
| $default reduce using rule 154 (assertion) |
| |
| |
| State 78 |
| |
| 167 const: "(" . CONST literal ")" |
| |
| CONST shift, and go to state 95 |
| |
| |
| State 79 |
| |
| 156 assertion: "(" ASSERT_RETURN action const_list ")" . |
| |
| $default reduce using rule 156 (assertion) |
| |
| |
| State 80 |
| |
| 169 const_list: const_list const . |
| |
| $default reduce using rule 169 (const_list) |
| |
| |
| State 81 |
| |
| 155 assertion: "(" ASSERT_TRAP raw_module quoted_text ")" . |
| |
| $default reduce using rule 155 (assertion) |
| |
| |
| State 82 |
| |
| 159 assertion: "(" ASSERT_TRAP action quoted_text ")" . |
| |
| $default reduce using rule 159 (assertion) |
| |
| |
| State 83 |
| |
| 160 assertion: "(" ASSERT_EXHAUSTION action quoted_text ")" . |
| |
| $default reduce using rule 160 (assertion) |
| |
| |
| State 84 |
| |
| 94 func: "(" FUNC . bind_var_opt inline_export type_use func_info ")" |
| 95 | "(" FUNC . bind_var_opt type_use func_info ")" |
| 96 | "(" FUNC . bind_var_opt inline_export func_info ")" |
| 97 | "(" FUNC . bind_var_opt func_info ")" |
| 117 import: "(" FUNC . bind_var_opt inline_import type_use ")" |
| 118 | "(" FUNC . bind_var_opt inline_import func_sig ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 96 |
| bind_var go to state 25 |
| |
| |
| State 85 |
| |
| 133 start: "(" START . var ")" |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 100 |
| |
| |
| State 86 |
| |
| 131 type_def: "(" TYPE . func_type ")" |
| 132 | "(" TYPE . bind_var func_type ")" |
| |
| "(" shift, and go to state 101 |
| VAR shift, and go to state 23 |
| |
| func_type go to state 102 |
| bind_var go to state 103 |
| |
| |
| State 87 |
| |
| 109 global: "(" GLOBAL . bind_var_opt inline_export global_type const_expr ")" |
| 110 | "(" GLOBAL . bind_var_opt global_type const_expr ")" |
| 121 import: "(" GLOBAL . bind_var_opt inline_import global_type ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 104 |
| bind_var go to state 25 |
| |
| |
| State 88 |
| |
| 102 table: "(" TABLE . bind_var_opt inline_export_opt table_sig ")" |
| 103 | "(" TABLE . bind_var_opt inline_export_opt elem_type "(" ELEM var_list ")" ")" |
| 119 import: "(" TABLE . bind_var_opt inline_import table_sig ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 105 |
| bind_var go to state 25 |
| |
| |
| State 89 |
| |
| 100 elem: "(" ELEM . var offset var_list ")" |
| 101 | "(" ELEM . offset var_list ")" |
| |
| "(" shift, and go to state 106 |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 107 |
| expr go to state 108 |
| offset go to state 109 |
| |
| |
| State 90 |
| |
| 106 memory: "(" MEMORY . bind_var_opt inline_export_opt memory_sig ")" |
| 107 | "(" MEMORY . bind_var_opt inline_export "(" DATA text_list ")" ")" |
| 108 | "(" MEMORY . bind_var_opt "(" DATA text_list ")" ")" |
| 120 import: "(" MEMORY . bind_var_opt inline_import memory_sig ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 110 |
| bind_var go to state 25 |
| |
| |
| State 91 |
| |
| 104 data: "(" DATA . var offset text_list ")" |
| 105 | "(" DATA . offset text_list ")" |
| |
| "(" shift, and go to state 106 |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 111 |
| expr go to state 108 |
| offset go to state 112 |
| |
| |
| State 92 |
| |
| 116 import: "(" IMPORT . quoted_text quoted_text import_kind ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 113 |
| |
| |
| State 93 |
| |
| 127 export: "(" EXPORT . quoted_text export_kind ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 114 |
| |
| |
| State 94 |
| |
| 150 action: "(" INVOKE script_var_opt quoted_text const_list ")" . |
| |
| $default reduce using rule 150 (action) |
| |
| |
| State 95 |
| |
| 167 const: "(" CONST . literal ")" |
| |
| NAT shift, and go to state 115 |
| INT shift, and go to state 116 |
| FLOAT shift, and go to state 117 |
| |
| literal go to state 118 |
| |
| |
| State 96 |
| |
| 94 func: "(" FUNC bind_var_opt . inline_export type_use func_info ")" |
| 95 | "(" FUNC bind_var_opt . type_use func_info ")" |
| 96 | "(" FUNC bind_var_opt . inline_export func_info ")" |
| 97 | "(" FUNC bind_var_opt . func_info ")" |
| 117 import: "(" FUNC bind_var_opt . inline_import type_use ")" |
| 118 | "(" FUNC bind_var_opt . inline_import func_sig ")" |
| |
| "(" shift, and go to state 119 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| type_use go to state 147 |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_fields go to state 153 |
| func_body go to state 154 |
| func_info go to state 155 |
| inline_import go to state 156 |
| inline_export go to state 157 |
| |
| |
| State 97 |
| |
| 21 nat: NAT . |
| |
| $default reduce using rule 21 (nat) |
| |
| |
| State 98 |
| |
| 26 var: VAR . |
| |
| $default reduce using rule 26 (var) |
| |
| |
| State 99 |
| |
| 25 var: nat . |
| |
| $default reduce using rule 25 (var) |
| |
| |
| State 100 |
| |
| 133 start: "(" START var . ")" |
| |
| ")" shift, and go to state 158 |
| |
| |
| State 101 |
| |
| 11 func_type: "(" . FUNC func_sig ")" |
| |
| FUNC shift, and go to state 159 |
| |
| |
| State 102 |
| |
| 131 type_def: "(" TYPE func_type . ")" |
| |
| ")" shift, and go to state 160 |
| |
| |
| State 103 |
| |
| 132 type_def: "(" TYPE bind_var . func_type ")" |
| |
| "(" shift, and go to state 101 |
| |
| func_type go to state 161 |
| |
| |
| State 104 |
| |
| 109 global: "(" GLOBAL bind_var_opt . inline_export global_type const_expr ")" |
| 110 | "(" GLOBAL bind_var_opt . global_type const_expr ")" |
| 121 import: "(" GLOBAL bind_var_opt . inline_import global_type ")" |
| |
| "(" shift, and go to state 162 |
| VALUE_TYPE shift, and go to state 163 |
| |
| global_type go to state 164 |
| inline_import go to state 165 |
| inline_export go to state 166 |
| |
| |
| State 105 |
| |
| 102 table: "(" TABLE bind_var_opt . inline_export_opt table_sig ")" |
| 103 | "(" TABLE bind_var_opt . inline_export_opt elem_type "(" ELEM var_list ")" ")" |
| 119 import: "(" TABLE bind_var_opt . inline_import table_sig ")" |
| |
| "(" shift, and go to state 167 |
| |
| $default reduce using rule 128 (inline_export_opt) |
| |
| inline_import go to state 168 |
| inline_export_opt go to state 169 |
| inline_export go to state 170 |
| |
| |
| State 106 |
| |
| 70 expr: "(" . expr1 ")" |
| 98 offset: "(" . OFFSET const_expr ")" |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| OFFSET shift, and go to state 174 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 107 |
| |
| 100 elem: "(" ELEM var . offset var_list ")" |
| |
| "(" shift, and go to state 106 |
| |
| expr go to state 108 |
| offset go to state 177 |
| |
| |
| State 108 |
| |
| 99 offset: expr . |
| |
| $default reduce using rule 99 (offset) |
| |
| |
| State 109 |
| |
| 101 elem: "(" ELEM offset . var_list ")" |
| |
| $default reduce using rule 27 (var_list) |
| |
| var_list go to state 178 |
| |
| |
| State 110 |
| |
| 106 memory: "(" MEMORY bind_var_opt . inline_export_opt memory_sig ")" |
| 107 | "(" MEMORY bind_var_opt . inline_export "(" DATA text_list ")" ")" |
| 108 | "(" MEMORY bind_var_opt . "(" DATA text_list ")" ")" |
| 120 import: "(" MEMORY bind_var_opt . inline_import memory_sig ")" |
| |
| "(" shift, and go to state 179 |
| |
| $default reduce using rule 128 (inline_export_opt) |
| |
| inline_import go to state 180 |
| inline_export_opt go to state 181 |
| inline_export go to state 182 |
| |
| |
| State 111 |
| |
| 104 data: "(" DATA var . offset text_list ")" |
| |
| "(" shift, and go to state 106 |
| |
| expr go to state 108 |
| offset go to state 183 |
| |
| |
| State 112 |
| |
| 105 data: "(" DATA offset . text_list ")" |
| |
| TEXT shift, and go to state 43 |
| |
| $default reduce using rule 3 (text_list) |
| |
| non_empty_text_list go to state 184 |
| text_list go to state 185 |
| |
| |
| State 113 |
| |
| 116 import: "(" IMPORT quoted_text . quoted_text import_kind ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 186 |
| |
| |
| State 114 |
| |
| 127 export: "(" EXPORT quoted_text . export_kind ")" |
| |
| "(" shift, and go to state 187 |
| |
| export_kind go to state 188 |
| |
| |
| State 115 |
| |
| 22 literal: NAT . |
| |
| $default reduce using rule 22 (literal) |
| |
| |
| State 116 |
| |
| 23 literal: INT . |
| |
| $default reduce using rule 23 (literal) |
| |
| |
| State 117 |
| |
| 24 literal: FLOAT . |
| |
| $default reduce using rule 24 (literal) |
| |
| |
| State 118 |
| |
| 167 const: "(" CONST literal . ")" |
| |
| ")" shift, and go to state 189 |
| |
| |
| State 119 |
| |
| 20 type_use: "(" . TYPE var ")" |
| 70 expr: "(" . expr1 ")" |
| 87 func_fields: "(" . RESULT value_type_list ")" func_body |
| 88 | "(" . PARAM value_type_list ")" func_fields |
| 89 | "(" . PARAM bind_var VALUE_TYPE ")" func_fields |
| 91 func_body: "(" . LOCAL value_type_list ")" func_body |
| 92 | "(" . LOCAL bind_var VALUE_TYPE ")" func_body |
| 122 inline_import: "(" . IMPORT quoted_text quoted_text ")" |
| 130 inline_export: "(" . EXPORT quoted_text ")" |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| TYPE shift, and go to state 190 |
| PARAM shift, and go to state 191 |
| RESULT shift, and go to state 192 |
| LOCAL shift, and go to state 193 |
| IMPORT shift, and go to state 194 |
| EXPORT shift, and go to state 195 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 120 |
| |
| 42 plain_instr: NOP . |
| |
| $default reduce using rule 42 (plain_instr) |
| |
| |
| State 121 |
| |
| 43 plain_instr: DROP . |
| |
| $default reduce using rule 43 (plain_instr) |
| |
| |
| State 122 |
| |
| 65 block_instr: BLOCK . labeling_opt block END labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 197 |
| |
| |
| State 123 |
| |
| 67 block_instr: IF . labeling_opt block END labeling_opt |
| 68 | IF . labeling_opt block ELSE labeling_opt instr_list END labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 198 |
| |
| |
| State 124 |
| |
| 66 block_instr: LOOP . labeling_opt block END labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 199 |
| |
| |
| State 125 |
| |
| 45 plain_instr: BR . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 200 |
| |
| |
| State 126 |
| |
| 46 plain_instr: BR_IF . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 201 |
| |
| |
| State 127 |
| |
| 47 plain_instr: BR_TABLE . var_list var |
| |
| $default reduce using rule 27 (var_list) |
| |
| var_list go to state 202 |
| |
| |
| State 128 |
| |
| 49 plain_instr: CALL . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 203 |
| |
| |
| State 129 |
| |
| 50 plain_instr: CALL_INDIRECT . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 204 |
| |
| |
| State 130 |
| |
| 48 plain_instr: RETURN . |
| |
| $default reduce using rule 48 (plain_instr) |
| |
| |
| State 131 |
| |
| 51 plain_instr: GET_LOCAL . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 205 |
| |
| |
| State 132 |
| |
| 52 plain_instr: SET_LOCAL . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 206 |
| |
| |
| State 133 |
| |
| 53 plain_instr: TEE_LOCAL . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 207 |
| |
| |
| State 134 |
| |
| 54 plain_instr: GET_GLOBAL . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 208 |
| |
| |
| State 135 |
| |
| 55 plain_instr: SET_GLOBAL . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 209 |
| |
| |
| State 136 |
| |
| 56 plain_instr: LOAD . offset_opt align_opt |
| |
| OFFSET_EQ_NAT shift, and go to state 210 |
| |
| $default reduce using rule 34 (offset_opt) |
| |
| offset_opt go to state 211 |
| |
| |
| State 137 |
| |
| 57 plain_instr: STORE . offset_opt align_opt |
| |
| OFFSET_EQ_NAT shift, and go to state 210 |
| |
| $default reduce using rule 34 (offset_opt) |
| |
| offset_opt go to state 212 |
| |
| |
| State 138 |
| |
| 58 plain_instr: CONST . literal |
| |
| NAT shift, and go to state 115 |
| INT shift, and go to state 116 |
| FLOAT shift, and go to state 117 |
| |
| literal go to state 213 |
| |
| |
| State 139 |
| |
| 59 plain_instr: UNARY . |
| |
| $default reduce using rule 59 (plain_instr) |
| |
| |
| State 140 |
| |
| 60 plain_instr: BINARY . |
| |
| $default reduce using rule 60 (plain_instr) |
| |
| |
| State 141 |
| |
| 61 plain_instr: COMPARE . |
| |
| $default reduce using rule 61 (plain_instr) |
| |
| |
| State 142 |
| |
| 62 plain_instr: CONVERT . |
| |
| $default reduce using rule 62 (plain_instr) |
| |
| |
| State 143 |
| |
| 44 plain_instr: SELECT . |
| |
| $default reduce using rule 44 (plain_instr) |
| |
| |
| State 144 |
| |
| 41 plain_instr: UNREACHABLE . |
| |
| $default reduce using rule 41 (plain_instr) |
| |
| |
| State 145 |
| |
| 63 plain_instr: CURRENT_MEMORY . |
| |
| $default reduce using rule 63 (plain_instr) |
| |
| |
| State 146 |
| |
| 64 plain_instr: GROW_MEMORY . |
| |
| $default reduce using rule 64 (plain_instr) |
| |
| |
| State 147 |
| |
| 95 func: "(" FUNC bind_var_opt type_use . func_info ")" |
| |
| "(" shift, and go to state 214 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_fields go to state 153 |
| func_body go to state 154 |
| func_info go to state 215 |
| |
| |
| State 148 |
| |
| 82 instr_list: instr . instr_list |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 217 |
| |
| |
| State 149 |
| |
| 38 instr: plain_instr . |
| |
| $default reduce using rule 38 (instr) |
| |
| |
| State 150 |
| |
| 39 instr: block_instr . |
| |
| $default reduce using rule 39 (instr) |
| |
| |
| State 151 |
| |
| 40 instr: expr . |
| |
| $default reduce using rule 40 (instr) |
| |
| |
| State 152 |
| |
| 90 func_body: instr_list . |
| |
| $default reduce using rule 90 (func_body) |
| |
| |
| State 153 |
| |
| 93 func_info: func_fields . |
| |
| $default reduce using rule 93 (func_info) |
| |
| |
| State 154 |
| |
| 86 func_fields: func_body . |
| |
| $default reduce using rule 86 (func_fields) |
| |
| |
| State 155 |
| |
| 97 func: "(" FUNC bind_var_opt func_info . ")" |
| |
| ")" shift, and go to state 218 |
| |
| |
| State 156 |
| |
| 117 import: "(" FUNC bind_var_opt inline_import . type_use ")" |
| 118 | "(" FUNC bind_var_opt inline_import . func_sig ")" |
| |
| "(" shift, and go to state 219 |
| |
| $default reduce using rule 12 (func_sig) |
| |
| func_sig go to state 220 |
| type_use go to state 221 |
| |
| |
| State 157 |
| |
| 94 func: "(" FUNC bind_var_opt inline_export . type_use func_info ")" |
| 96 | "(" FUNC bind_var_opt inline_export . func_info ")" |
| |
| "(" shift, and go to state 222 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| type_use go to state 223 |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_fields go to state 153 |
| func_body go to state 154 |
| func_info go to state 224 |
| |
| |
| State 158 |
| |
| 133 start: "(" START var ")" . |
| |
| $default reduce using rule 133 (start) |
| |
| |
| State 159 |
| |
| 11 func_type: "(" FUNC . func_sig ")" |
| |
| "(" shift, and go to state 225 |
| |
| $default reduce using rule 12 (func_sig) |
| |
| func_sig go to state 226 |
| |
| |
| State 160 |
| |
| 131 type_def: "(" TYPE func_type ")" . |
| |
| $default reduce using rule 131 (type_def) |
| |
| |
| State 161 |
| |
| 132 type_def: "(" TYPE bind_var func_type . ")" |
| |
| ")" shift, and go to state 227 |
| |
| |
| State 162 |
| |
| 10 global_type: "(" . MUT VALUE_TYPE ")" |
| 122 inline_import: "(" . IMPORT quoted_text quoted_text ")" |
| 130 inline_export: "(" . EXPORT quoted_text ")" |
| |
| MUT shift, and go to state 228 |
| IMPORT shift, and go to state 194 |
| EXPORT shift, and go to state 195 |
| |
| |
| State 163 |
| |
| 9 global_type: VALUE_TYPE . |
| |
| $default reduce using rule 9 (global_type) |
| |
| |
| State 164 |
| |
| 110 global: "(" GLOBAL bind_var_opt global_type . const_expr ")" |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 229 |
| const_expr go to state 230 |
| |
| |
| State 165 |
| |
| 121 import: "(" GLOBAL bind_var_opt inline_import . global_type ")" |
| |
| "(" shift, and go to state 231 |
| VALUE_TYPE shift, and go to state 163 |
| |
| global_type go to state 232 |
| |
| |
| State 166 |
| |
| 109 global: "(" GLOBAL bind_var_opt inline_export . global_type const_expr ")" |
| |
| "(" shift, and go to state 231 |
| VALUE_TYPE shift, and go to state 163 |
| |
| global_type go to state 233 |
| |
| |
| State 167 |
| |
| 122 inline_import: "(" . IMPORT quoted_text quoted_text ")" |
| 130 inline_export: "(" . EXPORT quoted_text ")" |
| |
| IMPORT shift, and go to state 194 |
| EXPORT shift, and go to state 195 |
| |
| |
| State 168 |
| |
| 119 import: "(" TABLE bind_var_opt inline_import . table_sig ")" |
| |
| NAT shift, and go to state 97 |
| |
| table_sig go to state 234 |
| limits go to state 235 |
| nat go to state 236 |
| |
| |
| State 169 |
| |
| 102 table: "(" TABLE bind_var_opt inline_export_opt . table_sig ")" |
| 103 | "(" TABLE bind_var_opt inline_export_opt . elem_type "(" ELEM var_list ")" ")" |
| |
| NAT shift, and go to state 97 |
| ANYFUNC shift, and go to state 237 |
| |
| elem_type go to state 238 |
| table_sig go to state 239 |
| limits go to state 235 |
| nat go to state 236 |
| |
| |
| State 170 |
| |
| 129 inline_export_opt: inline_export . |
| |
| $default reduce using rule 129 (inline_export_opt) |
| |
| |
| State 171 |
| |
| 72 expr1: BLOCK . labeling_opt block |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 240 |
| |
| |
| State 172 |
| |
| 74 expr1: IF . labeling_opt value_type_list if_ |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 241 |
| |
| |
| State 173 |
| |
| 73 expr1: LOOP . labeling_opt block |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 242 |
| |
| |
| State 174 |
| |
| 98 offset: "(" OFFSET . const_expr ")" |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 229 |
| const_expr go to state 243 |
| |
| |
| State 175 |
| |
| 71 expr1: plain_instr . expr_list |
| |
| "(" shift, and go to state 216 |
| |
| $default reduce using rule 83 (expr_list) |
| |
| expr go to state 244 |
| expr_list go to state 245 |
| |
| |
| State 176 |
| |
| 70 expr: "(" expr1 . ")" |
| |
| ")" shift, and go to state 246 |
| |
| |
| State 177 |
| |
| 100 elem: "(" ELEM var offset . var_list ")" |
| |
| $default reduce using rule 27 (var_list) |
| |
| var_list go to state 247 |
| |
| |
| State 178 |
| |
| 28 var_list: var_list . var |
| 101 elem: "(" ELEM offset var_list . ")" |
| |
| ")" shift, and go to state 248 |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 249 |
| |
| |
| State 179 |
| |
| 108 memory: "(" MEMORY bind_var_opt "(" . DATA text_list ")" ")" |
| 122 inline_import: "(" . IMPORT quoted_text quoted_text ")" |
| 130 inline_export: "(" . EXPORT quoted_text ")" |
| |
| DATA shift, and go to state 250 |
| IMPORT shift, and go to state 194 |
| EXPORT shift, and go to state 195 |
| |
| |
| State 180 |
| |
| 120 import: "(" MEMORY bind_var_opt inline_import . memory_sig ")" |
| |
| NAT shift, and go to state 97 |
| |
| memory_sig go to state 251 |
| limits go to state 252 |
| nat go to state 236 |
| |
| |
| State 181 |
| |
| 106 memory: "(" MEMORY bind_var_opt inline_export_opt . memory_sig ")" |
| |
| NAT shift, and go to state 97 |
| |
| memory_sig go to state 253 |
| limits go to state 252 |
| nat go to state 236 |
| |
| |
| State 182 |
| |
| 107 memory: "(" MEMORY bind_var_opt inline_export . "(" DATA text_list ")" ")" |
| 129 inline_export_opt: inline_export . |
| |
| "(" shift, and go to state 254 |
| |
| $default reduce using rule 129 (inline_export_opt) |
| |
| |
| State 183 |
| |
| 104 data: "(" DATA var offset . text_list ")" |
| |
| TEXT shift, and go to state 43 |
| |
| $default reduce using rule 3 (text_list) |
| |
| non_empty_text_list go to state 184 |
| text_list go to state 255 |
| |
| |
| State 184 |
| |
| 2 non_empty_text_list: non_empty_text_list . TEXT |
| 4 text_list: non_empty_text_list . |
| |
| TEXT shift, and go to state 59 |
| |
| $default reduce using rule 4 (text_list) |
| |
| |
| State 185 |
| |
| 105 data: "(" DATA offset text_list . ")" |
| |
| ")" shift, and go to state 256 |
| |
| |
| State 186 |
| |
| 116 import: "(" IMPORT quoted_text quoted_text . import_kind ")" |
| |
| "(" shift, and go to state 257 |
| |
| import_kind go to state 258 |
| |
| |
| State 187 |
| |
| 123 export_kind: "(" . FUNC var ")" |
| 124 | "(" . TABLE var ")" |
| 125 | "(" . MEMORY var ")" |
| 126 | "(" . GLOBAL var ")" |
| |
| FUNC shift, and go to state 259 |
| GLOBAL shift, and go to state 260 |
| TABLE shift, and go to state 261 |
| MEMORY shift, and go to state 262 |
| |
| |
| State 188 |
| |
| 127 export: "(" EXPORT quoted_text export_kind . ")" |
| |
| ")" shift, and go to state 263 |
| |
| |
| State 189 |
| |
| 167 const: "(" CONST literal ")" . |
| |
| $default reduce using rule 167 (const) |
| |
| |
| State 190 |
| |
| 20 type_use: "(" TYPE . var ")" |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 264 |
| |
| |
| State 191 |
| |
| 88 func_fields: "(" PARAM . value_type_list ")" func_fields |
| 89 | "(" PARAM . bind_var VALUE_TYPE ")" func_fields |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 265 |
| bind_var go to state 266 |
| |
| |
| State 192 |
| |
| 87 func_fields: "(" RESULT . value_type_list ")" func_body |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 267 |
| |
| |
| State 193 |
| |
| 91 func_body: "(" LOCAL . value_type_list ")" func_body |
| 92 | "(" LOCAL . bind_var VALUE_TYPE ")" func_body |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 268 |
| bind_var go to state 269 |
| |
| |
| State 194 |
| |
| 122 inline_import: "(" IMPORT . quoted_text quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 270 |
| |
| |
| State 195 |
| |
| 130 inline_export: "(" EXPORT . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 271 |
| |
| |
| State 196 |
| |
| 33 labeling_opt: bind_var . |
| |
| $default reduce using rule 33 (labeling_opt) |
| |
| |
| State 197 |
| |
| 65 block_instr: BLOCK labeling_opt . block END labeling_opt |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 272 |
| block go to state 273 |
| |
| |
| State 198 |
| |
| 67 block_instr: IF labeling_opt . block END labeling_opt |
| 68 | IF labeling_opt . block ELSE labeling_opt instr_list END labeling_opt |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 272 |
| block go to state 274 |
| |
| |
| State 199 |
| |
| 66 block_instr: LOOP labeling_opt . block END labeling_opt |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 272 |
| block go to state 275 |
| |
| |
| State 200 |
| |
| 45 plain_instr: BR var . |
| |
| $default reduce using rule 45 (plain_instr) |
| |
| |
| State 201 |
| |
| 46 plain_instr: BR_IF var . |
| |
| $default reduce using rule 46 (plain_instr) |
| |
| |
| State 202 |
| |
| 28 var_list: var_list . var |
| 47 plain_instr: BR_TABLE var_list . var |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 276 |
| |
| |
| State 203 |
| |
| 49 plain_instr: CALL var . |
| |
| $default reduce using rule 49 (plain_instr) |
| |
| |
| State 204 |
| |
| 50 plain_instr: CALL_INDIRECT var . |
| |
| $default reduce using rule 50 (plain_instr) |
| |
| |
| State 205 |
| |
| 51 plain_instr: GET_LOCAL var . |
| |
| $default reduce using rule 51 (plain_instr) |
| |
| |
| State 206 |
| |
| 52 plain_instr: SET_LOCAL var . |
| |
| $default reduce using rule 52 (plain_instr) |
| |
| |
| State 207 |
| |
| 53 plain_instr: TEE_LOCAL var . |
| |
| $default reduce using rule 53 (plain_instr) |
| |
| |
| State 208 |
| |
| 54 plain_instr: GET_GLOBAL var . |
| |
| $default reduce using rule 54 (plain_instr) |
| |
| |
| State 209 |
| |
| 55 plain_instr: SET_GLOBAL var . |
| |
| $default reduce using rule 55 (plain_instr) |
| |
| |
| State 210 |
| |
| 35 offset_opt: OFFSET_EQ_NAT . |
| |
| $default reduce using rule 35 (offset_opt) |
| |
| |
| State 211 |
| |
| 56 plain_instr: LOAD offset_opt . align_opt |
| |
| ALIGN_EQ_NAT shift, and go to state 277 |
| |
| $default reduce using rule 36 (align_opt) |
| |
| align_opt go to state 278 |
| |
| |
| State 212 |
| |
| 57 plain_instr: STORE offset_opt . align_opt |
| |
| ALIGN_EQ_NAT shift, and go to state 277 |
| |
| $default reduce using rule 36 (align_opt) |
| |
| align_opt go to state 279 |
| |
| |
| State 213 |
| |
| 58 plain_instr: CONST literal . |
| |
| $default reduce using rule 58 (plain_instr) |
| |
| |
| State 214 |
| |
| 70 expr: "(" . expr1 ")" |
| 87 func_fields: "(" . RESULT value_type_list ")" func_body |
| 88 | "(" . PARAM value_type_list ")" func_fields |
| 89 | "(" . PARAM bind_var VALUE_TYPE ")" func_fields |
| 91 func_body: "(" . LOCAL value_type_list ")" func_body |
| 92 | "(" . LOCAL bind_var VALUE_TYPE ")" func_body |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| PARAM shift, and go to state 191 |
| RESULT shift, and go to state 192 |
| LOCAL shift, and go to state 193 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 215 |
| |
| 95 func: "(" FUNC bind_var_opt type_use func_info . ")" |
| |
| ")" shift, and go to state 280 |
| |
| |
| State 216 |
| |
| 70 expr: "(" . expr1 ")" |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 217 |
| |
| 82 instr_list: instr instr_list . |
| |
| $default reduce using rule 82 (instr_list) |
| |
| |
| State 218 |
| |
| 97 func: "(" FUNC bind_var_opt func_info ")" . |
| |
| $default reduce using rule 97 (func) |
| |
| |
| State 219 |
| |
| 13 func_sig: "(" . PARAM value_type_list ")" |
| 14 | "(" . PARAM value_type_list ")" "(" RESULT value_type_list ")" |
| 15 | "(" . RESULT value_type_list ")" |
| 20 type_use: "(" . TYPE var ")" |
| |
| TYPE shift, and go to state 190 |
| PARAM shift, and go to state 281 |
| RESULT shift, and go to state 282 |
| |
| |
| State 220 |
| |
| 118 import: "(" FUNC bind_var_opt inline_import func_sig . ")" |
| |
| ")" shift, and go to state 283 |
| |
| |
| State 221 |
| |
| 117 import: "(" FUNC bind_var_opt inline_import type_use . ")" |
| |
| ")" shift, and go to state 284 |
| |
| |
| State 222 |
| |
| 20 type_use: "(" . TYPE var ")" |
| 70 expr: "(" . expr1 ")" |
| 87 func_fields: "(" . RESULT value_type_list ")" func_body |
| 88 | "(" . PARAM value_type_list ")" func_fields |
| 89 | "(" . PARAM bind_var VALUE_TYPE ")" func_fields |
| 91 func_body: "(" . LOCAL value_type_list ")" func_body |
| 92 | "(" . LOCAL bind_var VALUE_TYPE ")" func_body |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| TYPE shift, and go to state 190 |
| PARAM shift, and go to state 191 |
| RESULT shift, and go to state 192 |
| LOCAL shift, and go to state 193 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 223 |
| |
| 94 func: "(" FUNC bind_var_opt inline_export type_use . func_info ")" |
| |
| "(" shift, and go to state 214 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_fields go to state 153 |
| func_body go to state 154 |
| func_info go to state 285 |
| |
| |
| State 224 |
| |
| 96 func: "(" FUNC bind_var_opt inline_export func_info . ")" |
| |
| ")" shift, and go to state 286 |
| |
| |
| State 225 |
| |
| 13 func_sig: "(" . PARAM value_type_list ")" |
| 14 | "(" . PARAM value_type_list ")" "(" RESULT value_type_list ")" |
| 15 | "(" . RESULT value_type_list ")" |
| |
| PARAM shift, and go to state 281 |
| RESULT shift, and go to state 282 |
| |
| |
| State 226 |
| |
| 11 func_type: "(" FUNC func_sig . ")" |
| |
| ")" shift, and go to state 287 |
| |
| |
| State 227 |
| |
| 132 type_def: "(" TYPE bind_var func_type ")" . |
| |
| $default reduce using rule 132 (type_def) |
| |
| |
| State 228 |
| |
| 10 global_type: "(" MUT . VALUE_TYPE ")" |
| |
| VALUE_TYPE shift, and go to state 288 |
| |
| |
| State 229 |
| |
| 85 const_expr: instr_list . |
| |
| $default reduce using rule 85 (const_expr) |
| |
| |
| State 230 |
| |
| 110 global: "(" GLOBAL bind_var_opt global_type const_expr . ")" |
| |
| ")" shift, and go to state 289 |
| |
| |
| State 231 |
| |
| 10 global_type: "(" . MUT VALUE_TYPE ")" |
| |
| MUT shift, and go to state 228 |
| |
| |
| State 232 |
| |
| 121 import: "(" GLOBAL bind_var_opt inline_import global_type . ")" |
| |
| ")" shift, and go to state 290 |
| |
| |
| State 233 |
| |
| 109 global: "(" GLOBAL bind_var_opt inline_export global_type . const_expr ")" |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 229 |
| const_expr go to state 291 |
| |
| |
| State 234 |
| |
| 119 import: "(" TABLE bind_var_opt inline_import table_sig . ")" |
| |
| ")" shift, and go to state 292 |
| |
| |
| State 235 |
| |
| 16 table_sig: limits . elem_type |
| |
| ANYFUNC shift, and go to state 237 |
| |
| elem_type go to state 293 |
| |
| |
| State 236 |
| |
| 18 limits: nat . |
| 19 | nat . nat |
| |
| NAT shift, and go to state 97 |
| |
| $default reduce using rule 18 (limits) |
| |
| nat go to state 294 |
| |
| |
| State 237 |
| |
| 8 elem_type: ANYFUNC . |
| |
| $default reduce using rule 8 (elem_type) |
| |
| |
| State 238 |
| |
| 103 table: "(" TABLE bind_var_opt inline_export_opt elem_type . "(" ELEM var_list ")" ")" |
| |
| "(" shift, and go to state 295 |
| |
| |
| State 239 |
| |
| 102 table: "(" TABLE bind_var_opt inline_export_opt table_sig . ")" |
| |
| ")" shift, and go to state 296 |
| |
| |
| State 240 |
| |
| 72 expr1: BLOCK labeling_opt . block |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 272 |
| block go to state 297 |
| |
| |
| State 241 |
| |
| 74 expr1: IF labeling_opt . value_type_list if_ |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 298 |
| |
| |
| State 242 |
| |
| 73 expr1: LOOP labeling_opt . block |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 272 |
| block go to state 299 |
| |
| |
| State 243 |
| |
| 98 offset: "(" OFFSET const_expr . ")" |
| |
| ")" shift, and go to state 300 |
| |
| |
| State 244 |
| |
| 84 expr_list: expr . expr_list |
| |
| "(" shift, and go to state 216 |
| |
| $default reduce using rule 83 (expr_list) |
| |
| expr go to state 244 |
| expr_list go to state 301 |
| |
| |
| State 245 |
| |
| 71 expr1: plain_instr expr_list . |
| |
| $default reduce using rule 71 (expr1) |
| |
| |
| State 246 |
| |
| 70 expr: "(" expr1 ")" . |
| |
| $default reduce using rule 70 (expr) |
| |
| |
| State 247 |
| |
| 28 var_list: var_list . var |
| 100 elem: "(" ELEM var offset var_list . ")" |
| |
| ")" shift, and go to state 302 |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 249 |
| |
| |
| State 248 |
| |
| 101 elem: "(" ELEM offset var_list ")" . |
| |
| $default reduce using rule 101 (elem) |
| |
| |
| State 249 |
| |
| 28 var_list: var_list var . |
| |
| $default reduce using rule 28 (var_list) |
| |
| |
| State 250 |
| |
| 108 memory: "(" MEMORY bind_var_opt "(" DATA . text_list ")" ")" |
| |
| TEXT shift, and go to state 43 |
| |
| $default reduce using rule 3 (text_list) |
| |
| non_empty_text_list go to state 184 |
| text_list go to state 303 |
| |
| |
| State 251 |
| |
| 120 import: "(" MEMORY bind_var_opt inline_import memory_sig . ")" |
| |
| ")" shift, and go to state 304 |
| |
| |
| State 252 |
| |
| 17 memory_sig: limits . |
| |
| $default reduce using rule 17 (memory_sig) |
| |
| |
| State 253 |
| |
| 106 memory: "(" MEMORY bind_var_opt inline_export_opt memory_sig . ")" |
| |
| ")" shift, and go to state 305 |
| |
| |
| State 254 |
| |
| 107 memory: "(" MEMORY bind_var_opt inline_export "(" . DATA text_list ")" ")" |
| |
| DATA shift, and go to state 306 |
| |
| |
| State 255 |
| |
| 104 data: "(" DATA var offset text_list . ")" |
| |
| ")" shift, and go to state 307 |
| |
| |
| State 256 |
| |
| 105 data: "(" DATA offset text_list ")" . |
| |
| $default reduce using rule 105 (data) |
| |
| |
| State 257 |
| |
| 111 import_kind: "(" . FUNC bind_var_opt type_use ")" |
| 112 | "(" . FUNC bind_var_opt func_sig ")" |
| 113 | "(" . TABLE bind_var_opt table_sig ")" |
| 114 | "(" . MEMORY bind_var_opt memory_sig ")" |
| 115 | "(" . GLOBAL bind_var_opt global_type ")" |
| |
| FUNC shift, and go to state 308 |
| GLOBAL shift, and go to state 309 |
| TABLE shift, and go to state 310 |
| MEMORY shift, and go to state 311 |
| |
| |
| State 258 |
| |
| 116 import: "(" IMPORT quoted_text quoted_text import_kind . ")" |
| |
| ")" shift, and go to state 312 |
| |
| |
| State 259 |
| |
| 123 export_kind: "(" FUNC . var ")" |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 313 |
| |
| |
| State 260 |
| |
| 126 export_kind: "(" GLOBAL . var ")" |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 314 |
| |
| |
| State 261 |
| |
| 124 export_kind: "(" TABLE . var ")" |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 315 |
| |
| |
| State 262 |
| |
| 125 export_kind: "(" MEMORY . var ")" |
| |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 316 |
| |
| |
| State 263 |
| |
| 127 export: "(" EXPORT quoted_text export_kind ")" . |
| |
| $default reduce using rule 127 (export) |
| |
| |
| State 264 |
| |
| 20 type_use: "(" TYPE var . ")" |
| |
| ")" shift, and go to state 317 |
| |
| |
| State 265 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 88 func_fields: "(" PARAM value_type_list . ")" func_fields |
| |
| ")" shift, and go to state 318 |
| VALUE_TYPE shift, and go to state 319 |
| |
| |
| State 266 |
| |
| 89 func_fields: "(" PARAM bind_var . VALUE_TYPE ")" func_fields |
| |
| VALUE_TYPE shift, and go to state 320 |
| |
| |
| State 267 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 87 func_fields: "(" RESULT value_type_list . ")" func_body |
| |
| ")" shift, and go to state 321 |
| VALUE_TYPE shift, and go to state 319 |
| |
| |
| State 268 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 91 func_body: "(" LOCAL value_type_list . ")" func_body |
| |
| ")" shift, and go to state 322 |
| VALUE_TYPE shift, and go to state 319 |
| |
| |
| State 269 |
| |
| 92 func_body: "(" LOCAL bind_var . VALUE_TYPE ")" func_body |
| |
| VALUE_TYPE shift, and go to state 323 |
| |
| |
| State 270 |
| |
| 122 inline_import: "(" IMPORT quoted_text . quoted_text ")" |
| |
| TEXT shift, and go to state 26 |
| |
| quoted_text go to state 324 |
| |
| |
| State 271 |
| |
| 130 inline_export: "(" EXPORT quoted_text . ")" |
| |
| ")" shift, and go to state 325 |
| |
| |
| State 272 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 69 block: value_type_list . instr_list |
| |
| "(" shift, and go to state 216 |
| VALUE_TYPE shift, and go to state 319 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 326 |
| |
| |
| State 273 |
| |
| 65 block_instr: BLOCK labeling_opt block . END labeling_opt |
| |
| END shift, and go to state 327 |
| |
| |
| State 274 |
| |
| 67 block_instr: IF labeling_opt block . END labeling_opt |
| 68 | IF labeling_opt block . ELSE labeling_opt instr_list END labeling_opt |
| |
| END shift, and go to state 328 |
| ELSE shift, and go to state 329 |
| |
| |
| State 275 |
| |
| 66 block_instr: LOOP labeling_opt block . END labeling_opt |
| |
| END shift, and go to state 330 |
| |
| |
| State 276 |
| |
| 28 var_list: var_list var . |
| 47 plain_instr: BR_TABLE var_list var . |
| |
| NAT reduce using rule 28 (var_list) |
| VAR reduce using rule 28 (var_list) |
| $default reduce using rule 47 (plain_instr) |
| |
| |
| State 277 |
| |
| 37 align_opt: ALIGN_EQ_NAT . |
| |
| $default reduce using rule 37 (align_opt) |
| |
| |
| State 278 |
| |
| 56 plain_instr: LOAD offset_opt align_opt . |
| |
| $default reduce using rule 56 (plain_instr) |
| |
| |
| State 279 |
| |
| 57 plain_instr: STORE offset_opt align_opt . |
| |
| $default reduce using rule 57 (plain_instr) |
| |
| |
| State 280 |
| |
| 95 func: "(" FUNC bind_var_opt type_use func_info ")" . |
| |
| $default reduce using rule 95 (func) |
| |
| |
| State 281 |
| |
| 13 func_sig: "(" PARAM . value_type_list ")" |
| 14 | "(" PARAM . value_type_list ")" "(" RESULT value_type_list ")" |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 331 |
| |
| |
| State 282 |
| |
| 15 func_sig: "(" RESULT . value_type_list ")" |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 332 |
| |
| |
| State 283 |
| |
| 118 import: "(" FUNC bind_var_opt inline_import func_sig ")" . |
| |
| $default reduce using rule 118 (import) |
| |
| |
| State 284 |
| |
| 117 import: "(" FUNC bind_var_opt inline_import type_use ")" . |
| |
| $default reduce using rule 117 (import) |
| |
| |
| State 285 |
| |
| 94 func: "(" FUNC bind_var_opt inline_export type_use func_info . ")" |
| |
| ")" shift, and go to state 333 |
| |
| |
| State 286 |
| |
| 96 func: "(" FUNC bind_var_opt inline_export func_info ")" . |
| |
| $default reduce using rule 96 (func) |
| |
| |
| State 287 |
| |
| 11 func_type: "(" FUNC func_sig ")" . |
| |
| $default reduce using rule 11 (func_type) |
| |
| |
| State 288 |
| |
| 10 global_type: "(" MUT VALUE_TYPE . ")" |
| |
| ")" shift, and go to state 334 |
| |
| |
| State 289 |
| |
| 110 global: "(" GLOBAL bind_var_opt global_type const_expr ")" . |
| |
| $default reduce using rule 110 (global) |
| |
| |
| State 290 |
| |
| 121 import: "(" GLOBAL bind_var_opt inline_import global_type ")" . |
| |
| $default reduce using rule 121 (import) |
| |
| |
| State 291 |
| |
| 109 global: "(" GLOBAL bind_var_opt inline_export global_type const_expr . ")" |
| |
| ")" shift, and go to state 335 |
| |
| |
| State 292 |
| |
| 119 import: "(" TABLE bind_var_opt inline_import table_sig ")" . |
| |
| $default reduce using rule 119 (import) |
| |
| |
| State 293 |
| |
| 16 table_sig: limits elem_type . |
| |
| $default reduce using rule 16 (table_sig) |
| |
| |
| State 294 |
| |
| 19 limits: nat nat . |
| |
| $default reduce using rule 19 (limits) |
| |
| |
| State 295 |
| |
| 103 table: "(" TABLE bind_var_opt inline_export_opt elem_type "(" . ELEM var_list ")" ")" |
| |
| ELEM shift, and go to state 336 |
| |
| |
| State 296 |
| |
| 102 table: "(" TABLE bind_var_opt inline_export_opt table_sig ")" . |
| |
| $default reduce using rule 102 (table) |
| |
| |
| State 297 |
| |
| 72 expr1: BLOCK labeling_opt block . |
| |
| $default reduce using rule 72 (expr1) |
| |
| |
| State 298 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 74 expr1: IF labeling_opt value_type_list . if_ |
| |
| "(" shift, and go to state 337 |
| VALUE_TYPE shift, and go to state 319 |
| |
| expr go to state 338 |
| if_ go to state 339 |
| |
| |
| State 299 |
| |
| 73 expr1: LOOP labeling_opt block . |
| |
| $default reduce using rule 73 (expr1) |
| |
| |
| State 300 |
| |
| 98 offset: "(" OFFSET const_expr ")" . |
| |
| $default reduce using rule 98 (offset) |
| |
| |
| State 301 |
| |
| 84 expr_list: expr expr_list . |
| |
| $default reduce using rule 84 (expr_list) |
| |
| |
| State 302 |
| |
| 100 elem: "(" ELEM var offset var_list ")" . |
| |
| $default reduce using rule 100 (elem) |
| |
| |
| State 303 |
| |
| 108 memory: "(" MEMORY bind_var_opt "(" DATA text_list . ")" ")" |
| |
| ")" shift, and go to state 340 |
| |
| |
| State 304 |
| |
| 120 import: "(" MEMORY bind_var_opt inline_import memory_sig ")" . |
| |
| $default reduce using rule 120 (import) |
| |
| |
| State 305 |
| |
| 106 memory: "(" MEMORY bind_var_opt inline_export_opt memory_sig ")" . |
| |
| $default reduce using rule 106 (memory) |
| |
| |
| State 306 |
| |
| 107 memory: "(" MEMORY bind_var_opt inline_export "(" DATA . text_list ")" ")" |
| |
| TEXT shift, and go to state 43 |
| |
| $default reduce using rule 3 (text_list) |
| |
| non_empty_text_list go to state 184 |
| text_list go to state 341 |
| |
| |
| State 307 |
| |
| 104 data: "(" DATA var offset text_list ")" . |
| |
| $default reduce using rule 104 (data) |
| |
| |
| State 308 |
| |
| 111 import_kind: "(" FUNC . bind_var_opt type_use ")" |
| 112 | "(" FUNC . bind_var_opt func_sig ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 342 |
| bind_var go to state 25 |
| |
| |
| State 309 |
| |
| 115 import_kind: "(" GLOBAL . bind_var_opt global_type ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 343 |
| bind_var go to state 25 |
| |
| |
| State 310 |
| |
| 113 import_kind: "(" TABLE . bind_var_opt table_sig ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 344 |
| bind_var go to state 25 |
| |
| |
| State 311 |
| |
| 114 import_kind: "(" MEMORY . bind_var_opt memory_sig ")" |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 29 (bind_var_opt) |
| |
| bind_var_opt go to state 345 |
| bind_var go to state 25 |
| |
| |
| State 312 |
| |
| 116 import: "(" IMPORT quoted_text quoted_text import_kind ")" . |
| |
| $default reduce using rule 116 (import) |
| |
| |
| State 313 |
| |
| 123 export_kind: "(" FUNC var . ")" |
| |
| ")" shift, and go to state 346 |
| |
| |
| State 314 |
| |
| 126 export_kind: "(" GLOBAL var . ")" |
| |
| ")" shift, and go to state 347 |
| |
| |
| State 315 |
| |
| 124 export_kind: "(" TABLE var . ")" |
| |
| ")" shift, and go to state 348 |
| |
| |
| State 316 |
| |
| 125 export_kind: "(" MEMORY var . ")" |
| |
| ")" shift, and go to state 349 |
| |
| |
| State 317 |
| |
| 20 type_use: "(" TYPE var ")" . |
| |
| $default reduce using rule 20 (type_use) |
| |
| |
| State 318 |
| |
| 88 func_fields: "(" PARAM value_type_list ")" . func_fields |
| |
| "(" shift, and go to state 214 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_fields go to state 350 |
| func_body go to state 154 |
| |
| |
| State 319 |
| |
| 7 value_type_list: value_type_list VALUE_TYPE . |
| |
| $default reduce using rule 7 (value_type_list) |
| |
| |
| State 320 |
| |
| 89 func_fields: "(" PARAM bind_var VALUE_TYPE . ")" func_fields |
| |
| ")" shift, and go to state 351 |
| |
| |
| State 321 |
| |
| 87 func_fields: "(" RESULT value_type_list ")" . func_body |
| |
| "(" shift, and go to state 352 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_body go to state 353 |
| |
| |
| State 322 |
| |
| 91 func_body: "(" LOCAL value_type_list ")" . func_body |
| |
| "(" shift, and go to state 352 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_body go to state 354 |
| |
| |
| State 323 |
| |
| 92 func_body: "(" LOCAL bind_var VALUE_TYPE . ")" func_body |
| |
| ")" shift, and go to state 355 |
| |
| |
| State 324 |
| |
| 122 inline_import: "(" IMPORT quoted_text quoted_text . ")" |
| |
| ")" shift, and go to state 356 |
| |
| |
| State 325 |
| |
| 130 inline_export: "(" EXPORT quoted_text ")" . |
| |
| $default reduce using rule 130 (inline_export) |
| |
| |
| State 326 |
| |
| 69 block: value_type_list instr_list . |
| |
| $default reduce using rule 69 (block) |
| |
| |
| State 327 |
| |
| 65 block_instr: BLOCK labeling_opt block END . labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 357 |
| |
| |
| State 328 |
| |
| 67 block_instr: IF labeling_opt block END . labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 358 |
| |
| |
| State 329 |
| |
| 68 block_instr: IF labeling_opt block ELSE . labeling_opt instr_list END labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 359 |
| |
| |
| State 330 |
| |
| 66 block_instr: LOOP labeling_opt block END . labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 360 |
| |
| |
| State 331 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 13 func_sig: "(" PARAM value_type_list . ")" |
| 14 | "(" PARAM value_type_list . ")" "(" RESULT value_type_list ")" |
| |
| ")" shift, and go to state 361 |
| VALUE_TYPE shift, and go to state 319 |
| |
| |
| State 332 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 15 func_sig: "(" RESULT value_type_list . ")" |
| |
| ")" shift, and go to state 362 |
| VALUE_TYPE shift, and go to state 319 |
| |
| |
| State 333 |
| |
| 94 func: "(" FUNC bind_var_opt inline_export type_use func_info ")" . |
| |
| $default reduce using rule 94 (func) |
| |
| |
| State 334 |
| |
| 10 global_type: "(" MUT VALUE_TYPE ")" . |
| |
| $default reduce using rule 10 (global_type) |
| |
| |
| State 335 |
| |
| 109 global: "(" GLOBAL bind_var_opt inline_export global_type const_expr ")" . |
| |
| $default reduce using rule 109 (global) |
| |
| |
| State 336 |
| |
| 103 table: "(" TABLE bind_var_opt inline_export_opt elem_type "(" ELEM . var_list ")" ")" |
| |
| $default reduce using rule 27 (var_list) |
| |
| var_list go to state 363 |
| |
| |
| State 337 |
| |
| 70 expr: "(" . expr1 ")" |
| 75 if_: "(" . THEN instr_list ")" "(" ELSE instr_list ")" |
| 76 | "(" . THEN instr_list ")" |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| THEN shift, and go to state 364 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 338 |
| |
| 77 if_: expr . "(" THEN instr_list ")" "(" ELSE instr_list ")" |
| 78 | expr . "(" THEN instr_list ")" |
| 79 | expr . expr expr |
| 80 | expr . expr |
| |
| "(" shift, and go to state 365 |
| |
| expr go to state 366 |
| |
| |
| State 339 |
| |
| 74 expr1: IF labeling_opt value_type_list if_ . |
| |
| $default reduce using rule 74 (expr1) |
| |
| |
| State 340 |
| |
| 108 memory: "(" MEMORY bind_var_opt "(" DATA text_list ")" . ")" |
| |
| ")" shift, and go to state 367 |
| |
| |
| State 341 |
| |
| 107 memory: "(" MEMORY bind_var_opt inline_export "(" DATA text_list . ")" ")" |
| |
| ")" shift, and go to state 368 |
| |
| |
| State 342 |
| |
| 111 import_kind: "(" FUNC bind_var_opt . type_use ")" |
| 112 | "(" FUNC bind_var_opt . func_sig ")" |
| |
| "(" shift, and go to state 219 |
| |
| $default reduce using rule 12 (func_sig) |
| |
| func_sig go to state 369 |
| type_use go to state 370 |
| |
| |
| State 343 |
| |
| 115 import_kind: "(" GLOBAL bind_var_opt . global_type ")" |
| |
| "(" shift, and go to state 231 |
| VALUE_TYPE shift, and go to state 163 |
| |
| global_type go to state 371 |
| |
| |
| State 344 |
| |
| 113 import_kind: "(" TABLE bind_var_opt . table_sig ")" |
| |
| NAT shift, and go to state 97 |
| |
| table_sig go to state 372 |
| limits go to state 235 |
| nat go to state 236 |
| |
| |
| State 345 |
| |
| 114 import_kind: "(" MEMORY bind_var_opt . memory_sig ")" |
| |
| NAT shift, and go to state 97 |
| |
| memory_sig go to state 373 |
| limits go to state 252 |
| nat go to state 236 |
| |
| |
| State 346 |
| |
| 123 export_kind: "(" FUNC var ")" . |
| |
| $default reduce using rule 123 (export_kind) |
| |
| |
| State 347 |
| |
| 126 export_kind: "(" GLOBAL var ")" . |
| |
| $default reduce using rule 126 (export_kind) |
| |
| |
| State 348 |
| |
| 124 export_kind: "(" TABLE var ")" . |
| |
| $default reduce using rule 124 (export_kind) |
| |
| |
| State 349 |
| |
| 125 export_kind: "(" MEMORY var ")" . |
| |
| $default reduce using rule 125 (export_kind) |
| |
| |
| State 350 |
| |
| 88 func_fields: "(" PARAM value_type_list ")" func_fields . |
| |
| $default reduce using rule 88 (func_fields) |
| |
| |
| State 351 |
| |
| 89 func_fields: "(" PARAM bind_var VALUE_TYPE ")" . func_fields |
| |
| "(" shift, and go to state 214 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_fields go to state 374 |
| func_body go to state 154 |
| |
| |
| State 352 |
| |
| 70 expr: "(" . expr1 ")" |
| 91 func_body: "(" . LOCAL value_type_list ")" func_body |
| 92 | "(" . LOCAL bind_var VALUE_TYPE ")" func_body |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| LOCAL shift, and go to state 193 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 353 |
| |
| 87 func_fields: "(" RESULT value_type_list ")" func_body . |
| |
| $default reduce using rule 87 (func_fields) |
| |
| |
| State 354 |
| |
| 91 func_body: "(" LOCAL value_type_list ")" func_body . |
| |
| $default reduce using rule 91 (func_body) |
| |
| |
| State 355 |
| |
| 92 func_body: "(" LOCAL bind_var VALUE_TYPE ")" . func_body |
| |
| "(" shift, and go to state 352 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 152 |
| func_body go to state 375 |
| |
| |
| State 356 |
| |
| 122 inline_import: "(" IMPORT quoted_text quoted_text ")" . |
| |
| $default reduce using rule 122 (inline_import) |
| |
| |
| State 357 |
| |
| 65 block_instr: BLOCK labeling_opt block END labeling_opt . |
| |
| $default reduce using rule 65 (block_instr) |
| |
| |
| State 358 |
| |
| 67 block_instr: IF labeling_opt block END labeling_opt . |
| |
| $default reduce using rule 67 (block_instr) |
| |
| |
| State 359 |
| |
| 68 block_instr: IF labeling_opt block ELSE labeling_opt . instr_list END labeling_opt |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 376 |
| |
| |
| State 360 |
| |
| 66 block_instr: LOOP labeling_opt block END labeling_opt . |
| |
| $default reduce using rule 66 (block_instr) |
| |
| |
| State 361 |
| |
| 13 func_sig: "(" PARAM value_type_list ")" . |
| 14 | "(" PARAM value_type_list ")" . "(" RESULT value_type_list ")" |
| |
| "(" shift, and go to state 377 |
| |
| $default reduce using rule 13 (func_sig) |
| |
| |
| State 362 |
| |
| 15 func_sig: "(" RESULT value_type_list ")" . |
| |
| $default reduce using rule 15 (func_sig) |
| |
| |
| State 363 |
| |
| 28 var_list: var_list . var |
| 103 table: "(" TABLE bind_var_opt inline_export_opt elem_type "(" ELEM var_list . ")" ")" |
| |
| ")" shift, and go to state 378 |
| NAT shift, and go to state 97 |
| VAR shift, and go to state 98 |
| |
| nat go to state 99 |
| var go to state 249 |
| |
| |
| State 364 |
| |
| 75 if_: "(" THEN . instr_list ")" "(" ELSE instr_list ")" |
| 76 | "(" THEN . instr_list ")" |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 379 |
| |
| |
| State 365 |
| |
| 70 expr: "(" . expr1 ")" |
| 77 if_: expr "(" . THEN instr_list ")" "(" ELSE instr_list ")" |
| 78 | expr "(" . THEN instr_list ")" |
| |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 171 |
| IF shift, and go to state 172 |
| THEN shift, and go to state 380 |
| LOOP shift, and go to state 173 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| plain_instr go to state 175 |
| expr1 go to state 176 |
| |
| |
| State 366 |
| |
| 79 if_: expr expr . expr |
| 80 | expr expr . |
| |
| "(" shift, and go to state 216 |
| |
| $default reduce using rule 80 (if_) |
| |
| expr go to state 381 |
| |
| |
| State 367 |
| |
| 108 memory: "(" MEMORY bind_var_opt "(" DATA text_list ")" ")" . |
| |
| $default reduce using rule 108 (memory) |
| |
| |
| State 368 |
| |
| 107 memory: "(" MEMORY bind_var_opt inline_export "(" DATA text_list ")" . ")" |
| |
| ")" shift, and go to state 382 |
| |
| |
| State 369 |
| |
| 112 import_kind: "(" FUNC bind_var_opt func_sig . ")" |
| |
| ")" shift, and go to state 383 |
| |
| |
| State 370 |
| |
| 111 import_kind: "(" FUNC bind_var_opt type_use . ")" |
| |
| ")" shift, and go to state 384 |
| |
| |
| State 371 |
| |
| 115 import_kind: "(" GLOBAL bind_var_opt global_type . ")" |
| |
| ")" shift, and go to state 385 |
| |
| |
| State 372 |
| |
| 113 import_kind: "(" TABLE bind_var_opt table_sig . ")" |
| |
| ")" shift, and go to state 386 |
| |
| |
| State 373 |
| |
| 114 import_kind: "(" MEMORY bind_var_opt memory_sig . ")" |
| |
| ")" shift, and go to state 387 |
| |
| |
| State 374 |
| |
| 89 func_fields: "(" PARAM bind_var VALUE_TYPE ")" func_fields . |
| |
| $default reduce using rule 89 (func_fields) |
| |
| |
| State 375 |
| |
| 92 func_body: "(" LOCAL bind_var VALUE_TYPE ")" func_body . |
| |
| $default reduce using rule 92 (func_body) |
| |
| |
| State 376 |
| |
| 68 block_instr: IF labeling_opt block ELSE labeling_opt instr_list . END labeling_opt |
| |
| END shift, and go to state 388 |
| |
| |
| State 377 |
| |
| 14 func_sig: "(" PARAM value_type_list ")" "(" . RESULT value_type_list ")" |
| |
| RESULT shift, and go to state 389 |
| |
| |
| State 378 |
| |
| 103 table: "(" TABLE bind_var_opt inline_export_opt elem_type "(" ELEM var_list ")" . ")" |
| |
| ")" shift, and go to state 390 |
| |
| |
| State 379 |
| |
| 75 if_: "(" THEN instr_list . ")" "(" ELSE instr_list ")" |
| 76 | "(" THEN instr_list . ")" |
| |
| ")" shift, and go to state 391 |
| |
| |
| State 380 |
| |
| 77 if_: expr "(" THEN . instr_list ")" "(" ELSE instr_list ")" |
| 78 | expr "(" THEN . instr_list ")" |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 392 |
| |
| |
| State 381 |
| |
| 79 if_: expr expr expr . |
| |
| $default reduce using rule 79 (if_) |
| |
| |
| State 382 |
| |
| 107 memory: "(" MEMORY bind_var_opt inline_export "(" DATA text_list ")" ")" . |
| |
| $default reduce using rule 107 (memory) |
| |
| |
| State 383 |
| |
| 112 import_kind: "(" FUNC bind_var_opt func_sig ")" . |
| |
| $default reduce using rule 112 (import_kind) |
| |
| |
| State 384 |
| |
| 111 import_kind: "(" FUNC bind_var_opt type_use ")" . |
| |
| $default reduce using rule 111 (import_kind) |
| |
| |
| State 385 |
| |
| 115 import_kind: "(" GLOBAL bind_var_opt global_type ")" . |
| |
| $default reduce using rule 115 (import_kind) |
| |
| |
| State 386 |
| |
| 113 import_kind: "(" TABLE bind_var_opt table_sig ")" . |
| |
| $default reduce using rule 113 (import_kind) |
| |
| |
| State 387 |
| |
| 114 import_kind: "(" MEMORY bind_var_opt memory_sig ")" . |
| |
| $default reduce using rule 114 (import_kind) |
| |
| |
| State 388 |
| |
| 68 block_instr: IF labeling_opt block ELSE labeling_opt instr_list END . labeling_opt |
| |
| VAR shift, and go to state 23 |
| |
| $default reduce using rule 32 (labeling_opt) |
| |
| bind_var go to state 196 |
| labeling_opt go to state 393 |
| |
| |
| State 389 |
| |
| 14 func_sig: "(" PARAM value_type_list ")" "(" RESULT . value_type_list ")" |
| |
| $default reduce using rule 6 (value_type_list) |
| |
| value_type_list go to state 394 |
| |
| |
| State 390 |
| |
| 103 table: "(" TABLE bind_var_opt inline_export_opt elem_type "(" ELEM var_list ")" ")" . |
| |
| $default reduce using rule 103 (table) |
| |
| |
| State 391 |
| |
| 75 if_: "(" THEN instr_list ")" . "(" ELSE instr_list ")" |
| 76 | "(" THEN instr_list ")" . |
| |
| "(" shift, and go to state 395 |
| |
| $default reduce using rule 76 (if_) |
| |
| |
| State 392 |
| |
| 77 if_: expr "(" THEN instr_list . ")" "(" ELSE instr_list ")" |
| 78 | expr "(" THEN instr_list . ")" |
| |
| ")" shift, and go to state 396 |
| |
| |
| State 393 |
| |
| 68 block_instr: IF labeling_opt block ELSE labeling_opt instr_list END labeling_opt . |
| |
| $default reduce using rule 68 (block_instr) |
| |
| |
| State 394 |
| |
| 7 value_type_list: value_type_list . VALUE_TYPE |
| 14 func_sig: "(" PARAM value_type_list ")" "(" RESULT value_type_list . ")" |
| |
| ")" shift, and go to state 397 |
| VALUE_TYPE shift, and go to state 319 |
| |
| |
| State 395 |
| |
| 75 if_: "(" THEN instr_list ")" "(" . ELSE instr_list ")" |
| |
| ELSE shift, and go to state 398 |
| |
| |
| State 396 |
| |
| 77 if_: expr "(" THEN instr_list ")" . "(" ELSE instr_list ")" |
| 78 | expr "(" THEN instr_list ")" . |
| |
| "(" shift, and go to state 399 |
| |
| $default reduce using rule 78 (if_) |
| |
| |
| State 397 |
| |
| 14 func_sig: "(" PARAM value_type_list ")" "(" RESULT value_type_list ")" . |
| |
| $default reduce using rule 14 (func_sig) |
| |
| |
| State 398 |
| |
| 75 if_: "(" THEN instr_list ")" "(" ELSE . instr_list ")" |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 400 |
| |
| |
| State 399 |
| |
| 77 if_: expr "(" THEN instr_list ")" "(" . ELSE instr_list ")" |
| |
| ELSE shift, and go to state 401 |
| |
| |
| State 400 |
| |
| 75 if_: "(" THEN instr_list ")" "(" ELSE instr_list . ")" |
| |
| ")" shift, and go to state 402 |
| |
| |
| State 401 |
| |
| 77 if_: expr "(" THEN instr_list ")" "(" ELSE . instr_list ")" |
| |
| "(" shift, and go to state 216 |
| NOP shift, and go to state 120 |
| DROP shift, and go to state 121 |
| BLOCK shift, and go to state 122 |
| IF shift, and go to state 123 |
| LOOP shift, and go to state 124 |
| BR shift, and go to state 125 |
| BR_IF shift, and go to state 126 |
| BR_TABLE shift, and go to state 127 |
| CALL shift, and go to state 128 |
| CALL_INDIRECT shift, and go to state 129 |
| RETURN shift, and go to state 130 |
| GET_LOCAL shift, and go to state 131 |
| SET_LOCAL shift, and go to state 132 |
| TEE_LOCAL shift, and go to state 133 |
| GET_GLOBAL shift, and go to state 134 |
| SET_GLOBAL shift, and go to state 135 |
| LOAD shift, and go to state 136 |
| STORE shift, and go to state 137 |
| CONST shift, and go to state 138 |
| UNARY shift, and go to state 139 |
| BINARY shift, and go to state 140 |
| COMPARE shift, and go to state 141 |
| CONVERT shift, and go to state 142 |
| SELECT shift, and go to state 143 |
| UNREACHABLE shift, and go to state 144 |
| CURRENT_MEMORY shift, and go to state 145 |
| GROW_MEMORY shift, and go to state 146 |
| |
| $default reduce using rule 81 (instr_list) |
| |
| instr go to state 148 |
| plain_instr go to state 149 |
| block_instr go to state 150 |
| expr go to state 151 |
| instr_list go to state 403 |
| |
| |
| State 402 |
| |
| 75 if_: "(" THEN instr_list ")" "(" ELSE instr_list ")" . |
| |
| $default reduce using rule 75 (if_) |
| |
| |
| State 403 |
| |
| 77 if_: expr "(" THEN instr_list ")" "(" ELSE instr_list . ")" |
| |
| ")" shift, and go to state 404 |
| |
| |
| State 404 |
| |
| 77 if_: expr "(" THEN instr_list ")" "(" ELSE instr_list ")" . |
| |
| $default reduce using rule 77 (if_) |