Backed out 2 changesets (bug 903746) for causing non-unified build bustages on nsIPri...
[gecko.git] / third_party / wasm2c / src / lexer-keywords.txt
blob9690279297bf4b94c68a60e7bed6f00d1627ed38
1 struct TokenInfo {
2   TokenInfo(const char* name) : name(name) {}
3   TokenInfo(const char* name, TokenType token_type)
4       : name(name), token_type(token_type) {}
5   TokenInfo(const char* name, Type value_type)
6       : name(name), token_type(TokenType::ValueType), value_type(value_type) {}
7   TokenInfo(const char* name, Type value_type, TokenType token_type)
8       : name(name), token_type(token_type), value_type(value_type) {}
9   TokenInfo(const char* name, TokenType token_type, Opcode opcode)
10       : name(name), token_type(token_type), opcode(opcode) {}
12   const char* name;
13   TokenType token_type;
14   union {
15     Type value_type;
16     Opcode opcode;
17   };
20 array, Type::Array, TokenType::Array
21 assert_exception, TokenType::AssertException
22 assert_exhaustion, TokenType::AssertExhaustion
23 assert_invalid, TokenType::AssertInvalid
24 assert_malformed, TokenType::AssertMalformed
25 assert_return, TokenType::AssertReturn
26 assert_trap, TokenType::AssertTrap
27 assert_unlinkable, TokenType::AssertUnlinkable
28 atomic.fence, TokenType::AtomicFence, Opcode::AtomicFence
29 binary, TokenType::Bin
30 block, TokenType::Block, Opcode::Block
31 br_if, TokenType::BrIf, Opcode::BrIf
32 br_table, TokenType::BrTable, Opcode::BrTable
33 br, TokenType::Br, Opcode::Br
34 call_indirect, TokenType::CallIndirect, Opcode::CallIndirect
35 call_ref, TokenType::CallRef, Opcode::CallRef
36 call, TokenType::Call, Opcode::Call
37 catch, TokenType::Catch, Opcode::Catch
38 catch_all, TokenType::CatchAll, Opcode::CatchAll
39 data.drop, TokenType::DataDrop, Opcode::DataDrop
40 data, TokenType::Data
41 declare, TokenType::Declare
42 delegate, TokenType::Delegate
43 do, TokenType::Do
44 drop, TokenType::Drop, Opcode::Drop
45 either, TokenType::Either
46 elem.drop, TokenType::ElemDrop, Opcode::ElemDrop
47 elem, TokenType::Elem
48 else, TokenType::Else, Opcode::Else
49 end, TokenType::End, Opcode::End
50 tag, TokenType::Tag
51 extern, Type::ExternRef, TokenType::Extern
52 externref, Type::ExternRef
53 export, TokenType::Export
54 f32.abs, TokenType::Unary, Opcode::F32Abs
55 f32.add, TokenType::Binary, Opcode::F32Add
56 f32.ceil, TokenType::Unary, Opcode::F32Ceil
57 f32.const, TokenType::Const, Opcode::F32Const
58 f32.convert_i32_s, TokenType::Convert, Opcode::F32ConvertI32S
59 f32.convert_i32_u, TokenType::Convert, Opcode::F32ConvertI32U
60 f32.convert_i64_s, TokenType::Convert, Opcode::F32ConvertI64S
61 f32.convert_i64_u, TokenType::Convert, Opcode::F32ConvertI64U
62 f32.copysign, TokenType::Binary, Opcode::F32Copysign
63 f32.demote_f64, TokenType::Convert, Opcode::F32DemoteF64
64 f32.div, TokenType::Binary, Opcode::F32Div
65 f32.eq, TokenType::Compare, Opcode::F32Eq
66 f32.floor, TokenType::Unary, Opcode::F32Floor
67 f32.ge, TokenType::Compare, Opcode::F32Ge
68 f32.gt, TokenType::Compare, Opcode::F32Gt
69 f32.le, TokenType::Compare, Opcode::F32Le
70 f32.load, TokenType::Load, Opcode::F32Load
71 f32.lt, TokenType::Compare, Opcode::F32Lt
72 f32.max, TokenType::Binary, Opcode::F32Max
73 f32.min, TokenType::Binary, Opcode::F32Min
74 f32.mul, TokenType::Binary, Opcode::F32Mul
75 f32.nearest, TokenType::Unary, Opcode::F32Nearest
76 f32.neg, TokenType::Unary, Opcode::F32Neg
77 f32.ne, TokenType::Compare, Opcode::F32Ne
78 f32.reinterpret_i32, TokenType::Convert, Opcode::F32ReinterpretI32
79 f32.sqrt, TokenType::Unary, Opcode::F32Sqrt
80 f32.store, TokenType::Store, Opcode::F32Store
81 f32.sub, TokenType::Binary, Opcode::F32Sub
82 f32.trunc, TokenType::Unary, Opcode::F32Trunc
83 f32, Type::F32
84 f32x4.abs, TokenType::Unary, Opcode::F32X4Abs
85 f32x4.add, TokenType::Binary, Opcode::F32X4Add
86 f32x4.ceil, TokenType::Unary, Opcode::F32X4Ceil
87 f32x4.convert_i32x4_s, TokenType::Unary, Opcode::F32X4ConvertI32X4S
88 f32x4.convert_i32x4_u, TokenType::Unary, Opcode::F32X4ConvertI32X4U
89 f32x4.div, TokenType::Binary, Opcode::F32X4Div
90 f32x4.eq, TokenType::Compare, Opcode::F32X4Eq
91 f32x4.extract_lane, TokenType::SimdLaneOp, Opcode::F32X4ExtractLane
92 f32x4.floor, TokenType::Unary, Opcode::F32X4Floor
93 f32x4.ge, TokenType::Compare, Opcode::F32X4Ge
94 f32x4.gt, TokenType::Compare, Opcode::F32X4Gt
95 f32x4.le, TokenType::Compare, Opcode::F32X4Le
96 f32x4.lt, TokenType::Compare, Opcode::F32X4Lt
97 f32x4.max, TokenType::Binary, Opcode::F32X4Max
98 f32x4.min, TokenType::Binary, Opcode::F32X4Min
99 f32x4.mul, TokenType::Binary, Opcode::F32X4Mul
100 f32x4.nearest, TokenType::Unary, Opcode::F32X4Nearest
101 f32x4.neg, TokenType::Unary, Opcode::F32X4Neg
102 f32x4.ne, TokenType::Compare, Opcode::F32X4Ne
103 f32x4.pmax, TokenType::Binary, Opcode::F32X4PMax
104 f32x4.pmin, TokenType::Binary, Opcode::F32X4PMin
105 f32x4.relaxed_madd, TokenType::Ternary, Opcode::F32X4RelaxedMadd
106 f32x4.relaxed_max, TokenType::Binary, Opcode::F32X4RelaxedMax
107 f32x4.relaxed_min, TokenType::Binary, Opcode::F32X4RelaxedMin
108 f32x4.relaxed_nmadd, TokenType::Ternary, Opcode::F32X4RelaxedNmadd
109 f32x4.replace_lane, TokenType::SimdLaneOp, Opcode::F32X4ReplaceLane
110 f32x4.splat, TokenType::Unary, Opcode::F32X4Splat
111 f32x4.sqrt, TokenType::Unary, Opcode::F32X4Sqrt
112 f32x4.sub, TokenType::Binary, Opcode::F32X4Sub
113 f32x4.trunc, TokenType::Unary, Opcode::F32X4Trunc
114 f32x4.demote_f64x2_zero, TokenType::Unary, Opcode::F32X4DemoteF64X2Zero
115 f32x4, TokenType::F32X4
116 f64.abs, TokenType::Unary, Opcode::F64Abs
117 f64.add, TokenType::Binary, Opcode::F64Add
118 f64.ceil, TokenType::Unary, Opcode::F64Ceil
119 f64.const, TokenType::Const, Opcode::F64Const
120 f64.convert_i32_s, TokenType::Convert, Opcode::F64ConvertI32S
121 f64.convert_i32_u, TokenType::Convert, Opcode::F64ConvertI32U
122 f64.convert_i64_s, TokenType::Convert, Opcode::F64ConvertI64S
123 f64.convert_i64_u, TokenType::Convert, Opcode::F64ConvertI64U
124 f64.copysign, TokenType::Binary, Opcode::F64Copysign
125 f64.div, TokenType::Binary, Opcode::F64Div
126 f64.eq, TokenType::Compare, Opcode::F64Eq
127 f64.floor, TokenType::Unary, Opcode::F64Floor
128 f64.ge, TokenType::Compare, Opcode::F64Ge
129 f64.gt, TokenType::Compare, Opcode::F64Gt
130 f64.le, TokenType::Compare, Opcode::F64Le
131 f64.load, TokenType::Load, Opcode::F64Load
132 f64.lt, TokenType::Compare, Opcode::F64Lt
133 f64.max, TokenType::Binary, Opcode::F64Max
134 f64.min, TokenType::Binary, Opcode::F64Min
135 f64.mul, TokenType::Binary, Opcode::F64Mul
136 f64.nearest, TokenType::Unary, Opcode::F64Nearest
137 f64.neg, TokenType::Unary, Opcode::F64Neg
138 f64.ne, TokenType::Compare, Opcode::F64Ne
139 f64.promote_f32, TokenType::Convert, Opcode::F64PromoteF32
140 f64.reinterpret_i64, TokenType::Convert, Opcode::F64ReinterpretI64
141 f64.sqrt, TokenType::Unary, Opcode::F64Sqrt
142 f64.store, TokenType::Store, Opcode::F64Store
143 f64.sub, TokenType::Binary, Opcode::F64Sub
144 f64.trunc, TokenType::Unary, Opcode::F64Trunc
145 f64, Type::F64
146 f64x2.abs, TokenType::Unary, Opcode::F64X2Abs
147 f64x2.add, TokenType::Binary, Opcode::F64X2Add
148 f64x2.ceil, TokenType::Unary, Opcode::F64X2Ceil
149 f64x2.div, TokenType::Binary, Opcode::F64X2Div
150 f64x2.eq, TokenType::Compare, Opcode::F64X2Eq
151 f64x2.extract_lane, TokenType::SimdLaneOp, Opcode::F64X2ExtractLane
152 f64x2.floor, TokenType::Unary, Opcode::F64X2Floor
153 f64x2.ge, TokenType::Compare, Opcode::F64X2Ge
154 f64x2.gt, TokenType::Compare, Opcode::F64X2Gt
155 f64x2.le, TokenType::Compare, Opcode::F64X2Le
156 f64x2.lt, TokenType::Compare, Opcode::F64X2Lt
157 f64x2.max, TokenType::Binary, Opcode::F64X2Max
158 f64x2.min, TokenType::Binary, Opcode::F64X2Min
159 f64x2.mul, TokenType::Binary, Opcode::F64X2Mul
160 f64x2.nearest, TokenType::Unary, Opcode::F64X2Nearest
161 f64x2.neg, TokenType::Unary, Opcode::F64X2Neg
162 f64x2.ne, TokenType::Compare, Opcode::F64X2Ne
163 f64x2.pmax, TokenType::Binary, Opcode::F64X2PMax
164 f64x2.pmin, TokenType::Binary, Opcode::F64X2PMin
165 f64x2.relaxed_madd, TokenType::Ternary, Opcode::F64X2RelaxedMadd
166 f64x2.relaxed_max, TokenType::Binary, Opcode::F64X2RelaxedMax
167 f64x2.relaxed_min, TokenType::Binary, Opcode::F64X2RelaxedMin
168 f64x2.relaxed_nmadd, TokenType::Ternary, Opcode::F64X2RelaxedNmadd
169 f64x2.replace_lane, TokenType::SimdLaneOp, Opcode::F64X2ReplaceLane
170 f64x2.splat, TokenType::Unary, Opcode::F64X2Splat
171 f64x2.sqrt, TokenType::Unary, Opcode::F64X2Sqrt
172 f64x2.sub, TokenType::Binary, Opcode::F64X2Sub
173 f64x2.trunc, TokenType::Unary, Opcode::F64X2Trunc
174 f64x2.convert_low_i32x4_s, TokenType::Unary, Opcode::F64X2ConvertLowI32X4S
175 f64x2.convert_low_i32x4_u, TokenType::Unary, Opcode::F64X2ConvertLowI32X4U
176 f64x2.promote_low_f32x4, TokenType::Unary, Opcode::F64X2PromoteLowF32X4
177 f64x2, TokenType::F64X2
178 field, TokenType::Field
179 funcref, Type::FuncRef
180 func, Type::FuncRef, TokenType::Func
181 get, TokenType::Get
182 global.get, TokenType::GlobalGet, Opcode::GlobalGet
183 global.set, TokenType::GlobalSet, Opcode::GlobalSet
184 global, TokenType::Global
185 i16x8.abs, TokenType::Unary, Opcode::I16X8Abs
186 i16x8.add_sat_s, TokenType::Binary, Opcode::I16X8AddSatS
187 i16x8.add_sat_u, TokenType::Binary, Opcode::I16X8AddSatU
188 i16x8.add, TokenType::Binary, Opcode::I16X8Add
189 i16x8.all_true, TokenType::Unary, Opcode::I16X8AllTrue
190 i16x8.avgr_u, TokenType::Binary, Opcode::I16X8AvgrU
191 i16x8.bitmask, TokenType::Unary, Opcode::I16X8Bitmask
192 i16x8.dot_i8x16_i7x16_s, TokenType::Binary, Opcode::I16X8DotI8X16I7X16S
193 i16x8.eq, TokenType::Compare, Opcode::I16X8Eq
194 i16x8.extract_lane_s, TokenType::SimdLaneOp, Opcode::I16X8ExtractLaneS
195 i16x8.extract_lane_u, TokenType::SimdLaneOp, Opcode::I16X8ExtractLaneU
196 i16x8.ge_s, TokenType::Compare, Opcode::I16X8GeS
197 i16x8.ge_u, TokenType::Compare, Opcode::I16X8GeU
198 i16x8.gt_s, TokenType::Compare, Opcode::I16X8GtS
199 i16x8.gt_u, TokenType::Compare, Opcode::I16X8GtU
200 i16x8.le_s, TokenType::Compare, Opcode::I16X8LeS
201 i16x8.le_u, TokenType::Compare, Opcode::I16X8LeU
202 v128.load8x8_s, TokenType::Load, Opcode::V128Load8X8S
203 v128.load8x8_u, TokenType::Load, Opcode::V128Load8X8U
204 i16x8.lt_s, TokenType::Compare, Opcode::I16X8LtS
205 i16x8.lt_u, TokenType::Compare, Opcode::I16X8LtU
206 i16x8.max_s, TokenType::Binary, Opcode::I16X8MaxS
207 i16x8.max_u, TokenType::Binary, Opcode::I16X8MaxU
208 i16x8.min_s, TokenType::Binary, Opcode::I16X8MinS
209 i16x8.min_u, TokenType::Binary, Opcode::I16X8MinU
210 i16x8.mul, TokenType::Binary, Opcode::I16X8Mul
211 i16x8.narrow_i32x4_s, TokenType::Binary, Opcode::I16X8NarrowI32X4S
212 i16x8.narrow_i32x4_u, TokenType::Binary, Opcode::I16X8NarrowI32X4U
213 i16x8.neg, TokenType::Unary, Opcode::I16X8Neg
214 i16x8.q15mulr_sat_s, TokenType::Binary, Opcode::I16X8Q15mulrSatS
215 i16x8.ne, TokenType::Compare, Opcode::I16X8Ne
216 i16x8.relaxed_laneselect, TokenType::Ternary, Opcode::I16X8RelaxedLaneSelect
217 i16x8.relaxed_q15mulr_s, TokenType::Binary, Opcode::I16X8RelaxedQ15mulrS
218 i16x8.replace_lane, TokenType::SimdLaneOp, Opcode::I16X8ReplaceLane
219 i16x8.shl, TokenType::Binary, Opcode::I16X8Shl
220 i16x8.shr_s, TokenType::Binary, Opcode::I16X8ShrS
221 i16x8.shr_u, TokenType::Binary, Opcode::I16X8ShrU
222 i16x8.splat, TokenType::Unary, Opcode::I16X8Splat
223 i16x8.sub_sat_s, TokenType::Binary, Opcode::I16X8SubSatS
224 i16x8.sub_sat_u, TokenType::Binary, Opcode::I16X8SubSatU
225 i16x8.sub, TokenType::Binary, Opcode::I16X8Sub
226 i16x8.extadd_pairwise_i8x16_s, TokenType::Unary, Opcode::I16X8ExtaddPairwiseI8X16S
227 i16x8.extadd_pairwise_i8x16_u, TokenType::Unary, Opcode::I16X8ExtaddPairwiseI8X16U
228 i16x8.extmul_low_i8x16_s, TokenType::Binary, Opcode::I16X8ExtmulLowI8X16S
229 i16x8.extmul_high_i8x16_s, TokenType::Binary, Opcode::I16X8ExtmulHighI8X16S
230 i16x8.extmul_low_i8x16_u, TokenType::Binary, Opcode::I16X8ExtmulLowI8X16U
231 i16x8.extmul_high_i8x16_u, TokenType::Binary, Opcode::I16X8ExtmulHighI8X16U
232 i16x8, TokenType::I16X8
233 i16x8.extend_high_i8x16_s, TokenType::Unary, Opcode::I16X8ExtendHighI8X16S
234 i16x8.extend_high_i8x16_u, TokenType::Unary, Opcode::I16X8ExtendHighI8X16U
235 i16x8.extend_low_i8x16_s, TokenType::Unary, Opcode::I16X8ExtendLowI8X16S
236 i16x8.extend_low_i8x16_u, TokenType::Unary, Opcode::I16X8ExtendLowI8X16U
237 i32.add, TokenType::Binary, Opcode::I32Add
238 i32.and, TokenType::Binary, Opcode::I32And
239 i32.atomic.load16_u, TokenType::AtomicLoad, Opcode::I32AtomicLoad16U
240 i32.atomic.load8_u, TokenType::AtomicLoad, Opcode::I32AtomicLoad8U
241 i32.atomic.load, TokenType::AtomicLoad, Opcode::I32AtomicLoad
242 i32.atomic.rmw16.add_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw16AddU
243 i32.atomic.rmw16.and_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw16AndU
244 i32.atomic.rmw16.cmpxchg_u, TokenType::AtomicRmwCmpxchg, Opcode::I32AtomicRmw16CmpxchgU
245 i32.atomic.rmw16.or_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw16OrU
246 i32.atomic.rmw16.sub_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw16SubU
247 i32.atomic.rmw16.xchg_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw16XchgU
248 i32.atomic.rmw16.xor_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw16XorU
249 i32.atomic.rmw8.add_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw8AddU
250 i32.atomic.rmw8.and_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw8AndU
251 i32.atomic.rmw8.cmpxchg_u, TokenType::AtomicRmwCmpxchg, Opcode::I32AtomicRmw8CmpxchgU
252 i32.atomic.rmw8.or_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw8OrU
253 i32.atomic.rmw8.sub_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw8SubU
254 i32.atomic.rmw8.xchg_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw8XchgU
255 i32.atomic.rmw8.xor_u, TokenType::AtomicRmw, Opcode::I32AtomicRmw8XorU
256 i32.atomic.rmw.add, TokenType::AtomicRmw, Opcode::I32AtomicRmwAdd
257 i32.atomic.rmw.and, TokenType::AtomicRmw, Opcode::I32AtomicRmwAnd
258 i32.atomic.rmw.cmpxchg, TokenType::AtomicRmwCmpxchg, Opcode::I32AtomicRmwCmpxchg
259 i32.atomic.rmw.or, TokenType::AtomicRmw, Opcode::I32AtomicRmwOr
260 i32.atomic.rmw.sub, TokenType::AtomicRmw, Opcode::I32AtomicRmwSub
261 i32.atomic.rmw.xchg, TokenType::AtomicRmw, Opcode::I32AtomicRmwXchg
262 i32.atomic.rmw.xor, TokenType::AtomicRmw, Opcode::I32AtomicRmwXor
263 i32.atomic.store16, TokenType::AtomicStore, Opcode::I32AtomicStore16
264 i32.atomic.store8, TokenType::AtomicStore, Opcode::I32AtomicStore8
265 i32.atomic.store, TokenType::AtomicStore, Opcode::I32AtomicStore
266 i32.clz, TokenType::Unary, Opcode::I32Clz
267 i32.const, TokenType::Const, Opcode::I32Const
268 i32.ctz, TokenType::Unary, Opcode::I32Ctz
269 i32.div_s, TokenType::Binary, Opcode::I32DivS
270 i32.div_u, TokenType::Binary, Opcode::I32DivU
271 i32.eq, TokenType::Compare, Opcode::I32Eq
272 i32.eqz, TokenType::Convert, Opcode::I32Eqz
273 i32.extend16_s, TokenType::Unary, Opcode::I32Extend16S
274 i32.extend8_s, TokenType::Unary, Opcode::I32Extend8S
275 i32.ge_s, TokenType::Compare, Opcode::I32GeS
276 i32.ge_u, TokenType::Compare, Opcode::I32GeU
277 i32.gt_s, TokenType::Compare, Opcode::I32GtS
278 i32.gt_u, TokenType::Compare, Opcode::I32GtU
279 i32.le_s, TokenType::Compare, Opcode::I32LeS
280 i32.le_u, TokenType::Compare, Opcode::I32LeU
281 i32.load16_s, TokenType::Load, Opcode::I32Load16S
282 i32.load16_u, TokenType::Load, Opcode::I32Load16U
283 i32.load8_s, TokenType::Load, Opcode::I32Load8S
284 i32.load8_u, TokenType::Load, Opcode::I32Load8U
285 i32.load, TokenType::Load, Opcode::I32Load
286 i32.lt_s, TokenType::Compare, Opcode::I32LtS
287 i32.lt_u, TokenType::Compare, Opcode::I32LtU
288 i32.mul, TokenType::Binary, Opcode::I32Mul
289 i32.ne, TokenType::Compare, Opcode::I32Ne
290 i32.or, TokenType::Binary, Opcode::I32Or
291 i32.popcnt, TokenType::Unary, Opcode::I32Popcnt
292 i32.reinterpret_f32, TokenType::Convert, Opcode::I32ReinterpretF32
293 i32.rem_s, TokenType::Binary, Opcode::I32RemS
294 i32.rem_u, TokenType::Binary, Opcode::I32RemU
295 i32.rotl, TokenType::Binary, Opcode::I32Rotl
296 i32.rotr, TokenType::Binary, Opcode::I32Rotr
297 i32.shl, TokenType::Binary, Opcode::I32Shl
298 i32.shr_s, TokenType::Binary, Opcode::I32ShrS
299 i32.shr_u, TokenType::Binary, Opcode::I32ShrU
300 i32.store16, TokenType::Store, Opcode::I32Store16
301 i32.store8, TokenType::Store, Opcode::I32Store8
302 i32.store, TokenType::Store, Opcode::I32Store
303 i32.sub, TokenType::Binary, Opcode::I32Sub
304 i32.trunc_f32_s, TokenType::Convert, Opcode::I32TruncF32S
305 i32.trunc_f32_u, TokenType::Convert, Opcode::I32TruncF32U
306 i32.trunc_f64_s, TokenType::Convert, Opcode::I32TruncF64S
307 i32.trunc_f64_u, TokenType::Convert, Opcode::I32TruncF64U
308 i32.trunc_sat_f32_s, TokenType::Convert, Opcode::I32TruncSatF32S
309 i32.trunc_sat_f32_u, TokenType::Convert, Opcode::I32TruncSatF32U
310 i32.trunc_sat_f64_s, TokenType::Convert, Opcode::I32TruncSatF64S
311 i32.trunc_sat_f64_u, TokenType::Convert, Opcode::I32TruncSatF64U
312 i32, Type::I32
313 i32.wrap_i64, TokenType::Convert, Opcode::I32WrapI64
314 i32x4.abs, TokenType::Unary, Opcode::I32X4Abs
315 i32x4.add, TokenType::Binary, Opcode::I32X4Add
316 i32x4.all_true, TokenType::Unary, Opcode::I32X4AllTrue
317 i32x4.bitmask, TokenType::Unary, Opcode::I32X4Bitmask
318 i32x4.dot_i8x16_i7x16_add_s, TokenType::Ternary, Opcode::I32X4DotI8X16I7X16AddS
319 i32x4.eq, TokenType::Compare, Opcode::I32X4Eq
320 i32x4.extract_lane, TokenType::SimdLaneOp, Opcode::I32X4ExtractLane
321 i32x4.ge_s, TokenType::Compare, Opcode::I32X4GeS
322 i32x4.ge_u, TokenType::Compare, Opcode::I32X4GeU
323 i32x4.gt_s, TokenType::Compare, Opcode::I32X4GtS
324 i32x4.gt_u, TokenType::Compare, Opcode::I32X4GtU
325 i32x4.le_s, TokenType::Compare, Opcode::I32X4LeS
326 i32x4.le_u, TokenType::Compare, Opcode::I32X4LeU
327 i32x4.relaxed_trunc_f32x4_s, TokenType::Unary, Opcode::I32X4RelaxedTruncF32X4S
328 i32x4.relaxed_trunc_f32x4_u, TokenType::Unary, Opcode::I32X4RelaxedTruncF32X4U
329 i32x4.relaxed_trunc_f64x2_s_zero, TokenType::Unary, Opcode::I32X4RelaxedTruncF64X2SZero
330 i32x4.relaxed_trunc_f64x2_u_zero, TokenType::Unary, Opcode::I32X4RelaxedTruncF64X2UZero
331 v128.load16x4_s, TokenType::Load, Opcode::V128Load16X4S
332 v128.load16x4_u, TokenType::Load, Opcode::V128Load16X4U
333 i32x4.lt_s, TokenType::Compare, Opcode::I32X4LtS
334 i32x4.lt_u, TokenType::Compare, Opcode::I32X4LtU
335 i32x4.max_s, TokenType::Binary, Opcode::I32X4MaxS
336 i32x4.max_u, TokenType::Binary, Opcode::I32X4MaxU
337 i32x4.min_s, TokenType::Binary, Opcode::I32X4MinS
338 i32x4.min_u, TokenType::Binary, Opcode::I32X4MinU
339 i32x4.dot_i16x8_s, TokenType::Binary, Opcode::I32X4DotI16X8S
340 i32x4.mul, TokenType::Binary, Opcode::I32X4Mul
341 i32x4.neg, TokenType::Unary, Opcode::I32X4Neg
342 i32x4.ne, TokenType::Compare, Opcode::I32X4Ne
343 i32x4.relaxed_laneselect, TokenType::Ternary, Opcode::I32X4RelaxedLaneSelect
344 i32x4.replace_lane, TokenType::SimdLaneOp, Opcode::I32X4ReplaceLane
345 i32x4.shl, TokenType::Binary, Opcode::I32X4Shl
346 i32x4.shr_s, TokenType::Binary, Opcode::I32X4ShrS
347 i32x4.shr_u, TokenType::Binary, Opcode::I32X4ShrU
348 i32x4.splat, TokenType::Unary, Opcode::I32X4Splat
349 i32x4.sub, TokenType::Binary, Opcode::I32X4Sub
350 i32x4.extadd_pairwise_i16x8_s, TokenType::Unary, Opcode::I32X4ExtaddPairwiseI16X8S
351 i32x4.extadd_pairwise_i16x8_u, TokenType::Unary, Opcode::I32X4ExtaddPairwiseI16X8U
352 i32x4.extmul_low_i16x8_s, TokenType::Binary, Opcode::I32X4ExtmulLowI16X8S
353 i32x4.extmul_high_i16x8_s, TokenType::Binary, Opcode::I32X4ExtmulHighI16X8S
354 i32x4.extmul_low_i16x8_u, TokenType::Binary, Opcode::I32X4ExtmulLowI16X8U
355 i32x4.extmul_high_i16x8_u, TokenType::Binary, Opcode::I32X4ExtmulHighI16X8U
356 i32x4, TokenType::I32X4
357 i32x4.trunc_sat_f32x4_s, TokenType::Unary, Opcode::I32X4TruncSatF32X4S
358 i32x4.trunc_sat_f32x4_u, TokenType::Unary, Opcode::I32X4TruncSatF32X4U
359 i32x4.extend_high_i16x8_s, TokenType::Unary, Opcode::I32X4ExtendHighI16X8S
360 i32x4.extend_high_i16x8_u, TokenType::Unary, Opcode::I32X4ExtendHighI16X8U
361 i32x4.extend_low_i16x8_s, TokenType::Unary, Opcode::I32X4ExtendLowI16X8S
362 i32x4.extend_low_i16x8_u, TokenType::Unary, Opcode::I32X4ExtendLowI16X8U
363 i32x4.trunc_sat_f64x2_s_zero, TokenType::Unary, Opcode::I32X4TruncSatF64X2SZero
364 i32x4.trunc_sat_f64x2_u_zero, TokenType::Unary, Opcode::I32X4TruncSatF64X2UZero
365 i32.xor, TokenType::Binary, Opcode::I32Xor
366 i64.add, TokenType::Binary, Opcode::I64Add
367 i64.and, TokenType::Binary, Opcode::I64And
368 i64.atomic.load16_u, TokenType::AtomicLoad, Opcode::I64AtomicLoad16U
369 i64.atomic.load32_u, TokenType::AtomicLoad, Opcode::I64AtomicLoad32U
370 i64.atomic.load8_u, TokenType::AtomicLoad, Opcode::I64AtomicLoad8U
371 i64.atomic.load, TokenType::AtomicLoad, Opcode::I64AtomicLoad
372 i64.atomic.rmw16.add_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw16AddU
373 i64.atomic.rmw16.and_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw16AndU
374 i64.atomic.rmw16.cmpxchg_u, TokenType::AtomicRmwCmpxchg, Opcode::I64AtomicRmw16CmpxchgU
375 i64.atomic.rmw16.or_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw16OrU
376 i64.atomic.rmw16.sub_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw16SubU
377 i64.atomic.rmw16.xchg_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw16XchgU
378 i64.atomic.rmw16.xor_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw16XorU
379 i64.atomic.rmw32.add_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw32AddU
380 i64.atomic.rmw32.and_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw32AndU
381 i64.atomic.rmw32.cmpxchg_u, TokenType::AtomicRmwCmpxchg, Opcode::I64AtomicRmw32CmpxchgU
382 i64.atomic.rmw32.or_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw32OrU
383 i64.atomic.rmw32.sub_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw32SubU
384 i64.atomic.rmw32.xchg_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw32XchgU
385 i64.atomic.rmw32.xor_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw32XorU
386 i64.atomic.rmw8.add_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw8AddU
387 i64.atomic.rmw8.and_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw8AndU
388 i64.atomic.rmw8.cmpxchg_u, TokenType::AtomicRmwCmpxchg, Opcode::I64AtomicRmw8CmpxchgU
389 i64.atomic.rmw8.or_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw8OrU
390 i64.atomic.rmw8.sub_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw8SubU
391 i64.atomic.rmw8.xchg_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw8XchgU
392 i64.atomic.rmw8.xor_u, TokenType::AtomicRmw, Opcode::I64AtomicRmw8XorU
393 i64.atomic.rmw.add, TokenType::AtomicRmw, Opcode::I64AtomicRmwAdd
394 i64.atomic.rmw.and, TokenType::AtomicRmw, Opcode::I64AtomicRmwAnd
395 i64.atomic.rmw.cmpxchg, TokenType::AtomicRmwCmpxchg, Opcode::I64AtomicRmwCmpxchg
396 i64.atomic.rmw.or, TokenType::AtomicRmw, Opcode::I64AtomicRmwOr
397 i64.atomic.rmw.sub, TokenType::AtomicRmw, Opcode::I64AtomicRmwSub
398 i64.atomic.rmw.xchg, TokenType::AtomicRmw, Opcode::I64AtomicRmwXchg
399 i64.atomic.rmw.xor, TokenType::AtomicRmw, Opcode::I64AtomicRmwXor
400 i64.atomic.store16, TokenType::AtomicStore, Opcode::I64AtomicStore16
401 i64.atomic.store32, TokenType::AtomicStore, Opcode::I64AtomicStore32
402 i64.atomic.store8, TokenType::AtomicStore, Opcode::I64AtomicStore8
403 i64.atomic.store, TokenType::AtomicStore, Opcode::I64AtomicStore
404 i64.clz, TokenType::Unary, Opcode::I64Clz
405 i64.const, TokenType::Const, Opcode::I64Const
406 i64.ctz, TokenType::Unary, Opcode::I64Ctz
407 i64.div_s, TokenType::Binary, Opcode::I64DivS
408 i64.div_u, TokenType::Binary, Opcode::I64DivU
409 i64.eq, TokenType::Compare, Opcode::I64Eq
410 i64.eqz, TokenType::Convert, Opcode::I64Eqz
411 i64.extend16_s, TokenType::Unary, Opcode::I64Extend16S
412 i64.extend32_s, TokenType::Unary, Opcode::I64Extend32S
413 i64.extend8_s, TokenType::Unary, Opcode::I64Extend8S
414 i64.extend_i32_s, TokenType::Convert, Opcode::I64ExtendI32S
415 i64.extend_i32_u, TokenType::Convert, Opcode::I64ExtendI32U
416 i64.ge_s, TokenType::Compare, Opcode::I64GeS
417 i64.ge_u, TokenType::Compare, Opcode::I64GeU
418 i64.gt_s, TokenType::Compare, Opcode::I64GtS
419 i64.gt_u, TokenType::Compare, Opcode::I64GtU
420 i64.le_s, TokenType::Compare, Opcode::I64LeS
421 i64.le_u, TokenType::Compare, Opcode::I64LeU
422 i64.load16_s, TokenType::Load, Opcode::I64Load16S
423 i64.load16_u, TokenType::Load, Opcode::I64Load16U
424 i64.load32_s, TokenType::Load, Opcode::I64Load32S
425 i64.load32_u, TokenType::Load, Opcode::I64Load32U
426 i64.load8_s, TokenType::Load, Opcode::I64Load8S
427 i64.load8_u, TokenType::Load, Opcode::I64Load8U
428 i64.load, TokenType::Load, Opcode::I64Load
429 i64.lt_s, TokenType::Compare, Opcode::I64LtS
430 i64.lt_u, TokenType::Compare, Opcode::I64LtU
431 i64.mul, TokenType::Binary, Opcode::I64Mul
432 i64.ne, TokenType::Compare, Opcode::I64Ne
433 i64.or, TokenType::Binary, Opcode::I64Or
434 i64.popcnt, TokenType::Unary, Opcode::I64Popcnt
435 i64.reinterpret_f64, TokenType::Convert, Opcode::I64ReinterpretF64
436 i64.rem_s, TokenType::Binary, Opcode::I64RemS
437 i64.rem_u, TokenType::Binary, Opcode::I64RemU
438 i64.rotl, TokenType::Binary, Opcode::I64Rotl
439 i64.rotr, TokenType::Binary, Opcode::I64Rotr
440 i64.shl, TokenType::Binary, Opcode::I64Shl
441 i64.shr_s, TokenType::Binary, Opcode::I64ShrS
442 i64.shr_u, TokenType::Binary, Opcode::I64ShrU
443 i64.store16, TokenType::Store, Opcode::I64Store16
444 i64.store32, TokenType::Store, Opcode::I64Store32
445 i64.store8, TokenType::Store, Opcode::I64Store8
446 i64.store, TokenType::Store, Opcode::I64Store
447 i64.sub, TokenType::Binary, Opcode::I64Sub
448 i64.trunc_f32_s, TokenType::Convert, Opcode::I64TruncF32S
449 i64.trunc_f32_u, TokenType::Convert, Opcode::I64TruncF32U
450 i64.trunc_f64_s, TokenType::Convert, Opcode::I64TruncF64S
451 i64.trunc_f64_u, TokenType::Convert, Opcode::I64TruncF64U
452 i64.trunc_sat_f32_s, TokenType::Convert, Opcode::I64TruncSatF32S
453 i64.trunc_sat_f32_u, TokenType::Convert, Opcode::I64TruncSatF32U
454 i64.trunc_sat_f64_s, TokenType::Convert, Opcode::I64TruncSatF64S
455 i64.trunc_sat_f64_u, TokenType::Convert, Opcode::I64TruncSatF64U
456 i64, Type::I64
457 i64x2.add, TokenType::Binary, Opcode::I64X2Add
458 i64x2.extract_lane, TokenType::SimdLaneOp, Opcode::I64X2ExtractLane
459 v128.load32x2_s, TokenType::Load, Opcode::V128Load32X2S
460 v128.load32x2_u, TokenType::Load, Opcode::V128Load32X2U
461 i64x2.mul, TokenType::Binary, Opcode::I64X2Mul
462 i64x2.eq, TokenType::Binary, Opcode::I64X2Eq
463 i64x2.ne, TokenType::Binary, Opcode::I64X2Ne
464 i64x2.lt_s, TokenType::Binary, Opcode::I64X2LtS
465 i64x2.gt_s, TokenType::Binary, Opcode::I64X2GtS
466 i64x2.le_s, TokenType::Binary, Opcode::I64X2LeS
467 i64x2.ge_s, TokenType::Binary, Opcode::I64X2GeS
468 i64x2.abs, TokenType::Unary, Opcode::I64X2Abs
469 i64x2.neg, TokenType::Unary, Opcode::I64X2Neg
470 i64x2.all_true, TokenType::Unary, Opcode::I64X2AllTrue
471 i64x2.bitmask, TokenType::Unary, Opcode::I64X2Bitmask
472 i64x2.extend_low_i32x4_s, TokenType::Unary, Opcode::I64X2ExtendLowI32X4S
473 i64x2.extend_high_i32x4_s, TokenType::Unary, Opcode::I64X2ExtendHighI32X4S
474 i64x2.extend_low_i32x4_u, TokenType::Unary, Opcode::I64X2ExtendLowI32X4U
475 i64x2.extend_high_i32x4_u, TokenType::Unary, Opcode::I64X2ExtendHighI32X4U
476 i64x2.relaxed_laneselect, TokenType::Ternary, Opcode::I64X2RelaxedLaneSelect
477 i64x2.replace_lane, TokenType::SimdLaneOp, Opcode::I64X2ReplaceLane
478 i64x2.shl, TokenType::Binary, Opcode::I64X2Shl
479 i64x2.shr_s, TokenType::Binary, Opcode::I64X2ShrS
480 i64x2.shr_u, TokenType::Binary, Opcode::I64X2ShrU
481 i64x2.splat, TokenType::Unary, Opcode::I64X2Splat
482 i64x2.sub, TokenType::Binary, Opcode::I64X2Sub
483 i64x2.extmul_low_i32x4_s, TokenType::Binary, Opcode::I64X2ExtmulLowI32X4S
484 i64x2.extmul_high_i32x4_s, TokenType::Binary, Opcode::I64X2ExtmulHighI32X4S
485 i64x2.extmul_low_i32x4_u, TokenType::Binary, Opcode::I64X2ExtmulLowI32X4U
486 i64x2.extmul_high_i32x4_u, TokenType::Binary, Opcode::I64X2ExtmulHighI32X4U
487 i64x2, TokenType::I64X2
488 i64.xor, TokenType::Binary, Opcode::I64Xor
489 i8x16.abs, TokenType::Unary, Opcode::I8X16Abs
490 i8x16.add_sat_s, TokenType::Binary, Opcode::I8X16AddSatS
491 i8x16.add_sat_u, TokenType::Binary, Opcode::I8X16AddSatU
492 i8x16.add, TokenType::Binary, Opcode::I8X16Add
493 i8x16.all_true, TokenType::Unary, Opcode::I8X16AllTrue
494 i8x16.avgr_u, TokenType::Binary, Opcode::I8X16AvgrU
495 i8x16.bitmask, TokenType::Unary, Opcode::I8X16Bitmask
496 i8x16.eq, TokenType::Compare, Opcode::I8X16Eq
497 i8x16.extract_lane_s, TokenType::SimdLaneOp, Opcode::I8X16ExtractLaneS
498 i8x16.extract_lane_u, TokenType::SimdLaneOp, Opcode::I8X16ExtractLaneU
499 i8x16.ge_s, TokenType::Compare, Opcode::I8X16GeS
500 i8x16.ge_u, TokenType::Compare, Opcode::I8X16GeU
501 i8x16.gt_s, TokenType::Compare, Opcode::I8X16GtS
502 i8x16.gt_u, TokenType::Compare, Opcode::I8X16GtU
503 i8x16.le_s, TokenType::Compare, Opcode::I8X16LeS
504 i8x16.le_u, TokenType::Compare, Opcode::I8X16LeU
505 i8x16.lt_s, TokenType::Compare, Opcode::I8X16LtS
506 i8x16.lt_u, TokenType::Compare, Opcode::I8X16LtU
507 i8x16.max_s, TokenType::Binary, Opcode::I8X16MaxS
508 i8x16.max_u, TokenType::Binary, Opcode::I8X16MaxU
509 i8x16.min_s, TokenType::Binary, Opcode::I8X16MinS
510 i8x16.min_u, TokenType::Binary, Opcode::I8X16MinU
511 i8x16.narrow_i16x8_s, TokenType::Binary, Opcode::I8X16NarrowI16X8S
512 i8x16.narrow_i16x8_u, TokenType::Binary, Opcode::I8X16NarrowI16X8U
513 i8x16.neg, TokenType::Unary, Opcode::I8X16Neg
514 i8x16.popcnt, TokenType::Unary, Opcode::I8X16Popcnt
515 i8x16.ne, TokenType::Compare, Opcode::I8X16Ne
516 i8x16.relaxed_swizzle, TokenType::Binary, Opcode::I8X16RelaxedSwizzle
517 i8x16.relaxed_laneselect, TokenType::Ternary, Opcode::I8X16RelaxedLaneSelect
518 i8x16.replace_lane, TokenType::SimdLaneOp, Opcode::I8X16ReplaceLane
519 i8x16.shl, TokenType::Binary, Opcode::I8X16Shl
520 i8x16.shr_s, TokenType::Binary, Opcode::I8X16ShrS
521 i8x16.shr_u, TokenType::Binary, Opcode::I8X16ShrU
522 i8x16.splat, TokenType::Unary, Opcode::I8X16Splat
523 i8x16.sub_sat_s, TokenType::Binary, Opcode::I8X16SubSatS
524 i8x16.sub_sat_u, TokenType::Binary, Opcode::I8X16SubSatU
525 i8x16.sub, TokenType::Binary, Opcode::I8X16Sub
526 i8x16, TokenType::I8X16
527 if, TokenType::If, Opcode::If
528 import, TokenType::Import
529 input, TokenType::Input
530 invoke, TokenType::Invoke
531 item, TokenType::Item
532 local.get, TokenType::LocalGet, Opcode::LocalGet
533 local.set, TokenType::LocalSet, Opcode::LocalSet
534 local.tee, TokenType::LocalTee, Opcode::LocalTee
535 local, TokenType::Local
536 loop, TokenType::Loop, Opcode::Loop
537 memory.atomic.notify, TokenType::AtomicNotify, Opcode::MemoryAtomicNotify
538 memory.atomic.wait32, TokenType::AtomicWait, Opcode::MemoryAtomicWait32
539 memory.atomic.wait64, TokenType::AtomicWait, Opcode::MemoryAtomicWait64
540 memory.copy, TokenType::MemoryCopy, Opcode::MemoryCopy
541 memory.fill, TokenType::MemoryFill, Opcode::MemoryFill
542 memory.grow, TokenType::MemoryGrow, Opcode::MemoryGrow
543 memory.init, TokenType::MemoryInit, Opcode::MemoryInit
544 memory.size, TokenType::MemorySize, Opcode::MemorySize
545 memory, TokenType::Memory
546 module, TokenType::Module
547 mut, TokenType::Mut
548 nan:arithmetic, TokenType::NanArithmetic
549 nan:canonical, TokenType::NanCanonical
550 nop, TokenType::Nop, Opcode::Nop
551 offset, TokenType::Offset
552 output, TokenType::Output
553 param, TokenType::Param
554 ref, TokenType::Ref
555 quote, TokenType::Quote
556 ref.extern, TokenType::RefExtern
557 ref.func, TokenType::RefFunc, Opcode::RefFunc
558 ref.is_null, TokenType::RefIsNull, Opcode::RefIsNull
559 ref.null, TokenType::RefNull, Opcode::RefNull
560 register, TokenType::Register
561 result, TokenType::Result
562 rethrow, TokenType::Rethrow, Opcode::Rethrow
563 return_call_indirect, TokenType::ReturnCallIndirect, Opcode::ReturnCallIndirect
564 return_call, TokenType::ReturnCall, Opcode::ReturnCall
565 return, TokenType::Return, Opcode::Return
566 select, TokenType::Select, Opcode::Select
567 shared, TokenType::Shared
568 start, TokenType::Start
569 struct, Type::Struct, TokenType::Struct
570 table.copy, TokenType::TableCopy, Opcode::TableCopy
571 table.fill, TokenType::TableFill, Opcode::TableFill
572 table.get, TokenType::TableGet, Opcode::TableGet
573 table.grow, TokenType::TableGrow, Opcode::TableGrow
574 table.init, TokenType::TableInit, Opcode::TableInit
575 table.set, TokenType::TableSet, Opcode::TableSet
576 table.size, TokenType::TableSize, Opcode::TableSize
577 table, TokenType::Table
578 then, TokenType::Then
579 throw, TokenType::Throw, Opcode::Throw
580 try, TokenType::Try, Opcode::Try
581 type, TokenType::Type
582 unreachable, TokenType::Unreachable, Opcode::Unreachable
583 v128.andnot, TokenType::Binary, Opcode::V128Andnot
584 v128.and, TokenType::Binary, Opcode::V128And
585 v128.bitselect, TokenType::Ternary, Opcode::V128BitSelect
586 v128.const, TokenType::Const, Opcode::V128Const
587 v128.load, TokenType::Load, Opcode::V128Load
588 v128.not, TokenType::Unary, Opcode::V128Not
589 v128.or, TokenType::Binary, Opcode::V128Or
590 v128.any_true, TokenType::Unary, Opcode::V128AnyTrue
591 v128.load32_zero, TokenType::Load, Opcode::V128Load32Zero
592 v128.load64_zero, TokenType::Load, Opcode::V128Load64Zero
593 v128.store, TokenType::Store, Opcode::V128Store
594 v128, Type::V128
595 v128.xor, TokenType::Binary, Opcode::V128Xor
596 v128.load16_splat, TokenType::Load, Opcode::V128Load16Splat
597 v128.load32_splat, TokenType::Load, Opcode::V128Load32Splat
598 v128.load64_splat, TokenType::Load, Opcode::V128Load64Splat
599 v128.load8_splat, TokenType::Load, Opcode::V128Load8Splat
600 v128.load8_lane, TokenType::SimdLoadLane, Opcode::V128Load8Lane
601 v128.load16_lane, TokenType::SimdLoadLane, Opcode::V128Load16Lane
602 v128.load32_lane, TokenType::SimdLoadLane, Opcode::V128Load32Lane
603 v128.load64_lane, TokenType::SimdLoadLane, Opcode::V128Load64Lane
604 v128.store8_lane, TokenType::SimdStoreLane, Opcode::V128Store8Lane
605 v128.store16_lane, TokenType::SimdStoreLane, Opcode::V128Store16Lane
606 v128.store32_lane, TokenType::SimdStoreLane, Opcode::V128Store32Lane
607 v128.store64_lane, TokenType::SimdStoreLane, Opcode::V128Store64Lane
608 i8x16.shuffle, TokenType::SimdShuffleOp, Opcode::I8X16Shuffle
609 i8x16.swizzle, TokenType::Binary, Opcode::I8X16Swizzle