Mercurial
comparison .cms/lib/codemirror/mode/wast/test.js @ 0:78edf6b517a0 draft
24.10
author | Coffee CMS <info@coffee-cms.ru> |
---|---|
date | Fri, 11 Oct 2024 22:40:23 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:78edf6b517a0 |
---|---|
1 // CodeMirror, copyright (c) by Marijn Haverbeke and others | |
2 // Distributed under an MIT license: https://codemirror.net/5/LICENSE | |
3 | |
4 (function() { | |
5 var mode = CodeMirror.getMode({indentUnit: 4}, "wast"); | |
6 function MT(name) {test.mode(name, mode, Array.prototype.slice.call(arguments, 1));} | |
7 | |
8 MT('number-test', | |
9 '[number 0]', | |
10 '[number 123]', | |
11 '[number nan]', | |
12 '[number inf]', | |
13 '[number infinity]', | |
14 '[number 0.1]', | |
15 '[number 123.0]', | |
16 '[number 12E+99]'); | |
17 | |
18 MT('string-literals-test', | |
19 '[string "foo"]', | |
20 '[string "\\"foo\\""]', | |
21 '[string "foo #\\"# bar"]'); | |
22 | |
23 MT('atom-test', | |
24 '[atom funcref]', | |
25 '[atom externref]', | |
26 '[atom i32]', | |
27 '[atom i64]', | |
28 '[atom f32]', | |
29 '[atom f64]'); | |
30 | |
31 MT('keyword-test', | |
32 '[keyword br]', | |
33 '[keyword if]', | |
34 '[keyword loop]', | |
35 '[keyword i32.add]', | |
36 '[keyword local.get]'); | |
37 | |
38 MT('control-instructions', | |
39 '[keyword unreachable]', | |
40 '[keyword nop]', | |
41 '[keyword br] [variable-2 $label0]', | |
42 '[keyword br_if] [variable-2 $label0]', | |
43 '[keyword br_table] [variable-2 $label0] [variable-2 $label1] [variable-2 $label3]', | |
44 '[keyword return]', | |
45 '[keyword call] [variable-2 $func0]', | |
46 '[keyword call_indirect] [variable-2 $table] ([keyword param] [atom f32] [atom f64]) ([keyword result] [atom i32] [atom i64])', | |
47 '[keyword return_call] [variable-2 $func0]', | |
48 '[keyword return_call_indirect] ([keyword param] [atom f32] [atom f64]) ([keyword result] [atom i32] [atom i64])', | |
49 '[keyword select] ([keyword local.get] [number 1]) ([keyword local.get] [number 2]) ([keyword local.get] [number 3])', | |
50 '[keyword try] ([keyword result] [atom i32])', | |
51 '[keyword throw] [number 0]', | |
52 '[keyword rethrow] [number 0]', | |
53 '[keyword catch] [number 0]', | |
54 '[keyword catch_all]', | |
55 '[keyword delegate] [number 0]', | |
56 '[keyword unwind]'); | |
57 | |
58 | |
59 MT('memory-instructions', | |
60 '[keyword i32.load] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
61 '[keyword i32.load8_s] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
62 '[keyword i32.load8_u] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
63 '[keyword i32.load16_s] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
64 '[keyword i32.load16_u] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
65 '[keyword i32.store] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
66 '[keyword i32.store8] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
67 '[keyword i32.store16] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
68 '[keyword i64.store] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
69 '[keyword i64.load] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
70 '[keyword i64.load8_s] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
71 '[keyword i64.load8_u] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
72 '[keyword i64.load16_s] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
73 '[keyword i64.load16_u] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
74 '[keyword i64.load32_s] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
75 '[keyword i64.load32_u] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
76 '[keyword i64.store8] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
77 '[keyword i64.store16] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
78 '[keyword i64.store32] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
79 '[keyword f32.load] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
80 '[keyword f32.store] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
81 '[keyword f64.load] [keyword offset]=[number 4] [keyword align]=[number 4]', | |
82 '[keyword f64.store] [keyword offset]=[number 4] [keyword align]=[number 4]'); | |
83 | |
84 MT('atomic-memory-instructions', | |
85 '[keyword memory.atomic.notify] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
86 '[keyword memory.atomic.wait32] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
87 '[keyword memory.atomic.wait64] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
88 '[keyword i32.atomic.load] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
89 '[keyword i32.atomic.load8_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
90 '[keyword i32.atomic.load16_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
91 '[keyword i32.atomic.store] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
92 '[keyword i32.atomic.store8] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
93 '[keyword i32.atomic.store16] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
94 '[keyword i64.atomic.load] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
95 '[keyword i64.atomic.load8_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
96 '[keyword i64.atomic.load16_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
97 '[keyword i64.atomic.load32_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
98 '[keyword i64.atomic.store] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
99 '[keyword i64.atomic.store8] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
100 '[keyword i64.atomic.store16] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
101 '[keyword i64.atomic.store32] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
102 '[keyword i32.atomic.rmw.add] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
103 '[keyword i32.atomic.rmw8.add_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
104 '[keyword i32.atomic.rmw16.add_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
105 '[keyword i64.atomic.rmw.add] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
106 '[keyword i64.atomic.rmw8.add_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
107 '[keyword i64.atomic.rmw16.add_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
108 '[keyword i64.atomic.rmw32.add_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
109 '[keyword i32.atomic.rmw.sub] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
110 '[keyword i32.atomic.rmw8.sub_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
111 '[keyword i32.atomic.rmw16.sub_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
112 '[keyword i64.atomic.rmw.sub] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
113 '[keyword i64.atomic.rmw8.sub_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
114 '[keyword i64.atomic.rmw16.sub_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
115 '[keyword i64.atomic.rmw32.sub_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
116 '[keyword i32.atomic.rmw.and] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
117 '[keyword i32.atomic.rmw8.and_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
118 '[keyword i32.atomic.rmw16.and_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
119 '[keyword i64.atomic.rmw.and] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
120 '[keyword i64.atomic.rmw8.and_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
121 '[keyword i64.atomic.rmw16.and_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
122 '[keyword i64.atomic.rmw32.and_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
123 '[keyword i32.atomic.rmw.or] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
124 '[keyword i32.atomic.rmw8.or_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
125 '[keyword i32.atomic.rmw16.or_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
126 '[keyword i64.atomic.rmw.or] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
127 '[keyword i64.atomic.rmw8.or_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
128 '[keyword i64.atomic.rmw16.or_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
129 '[keyword i64.atomic.rmw32.or_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
130 '[keyword i32.atomic.rmw.xor] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
131 '[keyword i32.atomic.rmw8.xor_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
132 '[keyword i32.atomic.rmw16.xor_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
133 '[keyword i64.atomic.rmw.xor] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
134 '[keyword i64.atomic.rmw8.xor_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
135 '[keyword i64.atomic.rmw16.xor_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
136 '[keyword i64.atomic.rmw32.xor_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
137 '[keyword i32.atomic.rmw.xchg] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
138 '[keyword i32.atomic.rmw8.xchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
139 '[keyword i32.atomic.rmw16.xchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
140 '[keyword i64.atomic.rmw.xchg] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
141 '[keyword i64.atomic.rmw8.xchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
142 '[keyword i64.atomic.rmw16.xchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
143 '[keyword i64.atomic.rmw32.xchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
144 '[keyword i32.atomic.rmw.cmpxchg] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
145 '[keyword i32.atomic.rmw8.cmpxchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
146 '[keyword i32.atomic.rmw16.cmpxchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
147 '[keyword i64.atomic.rmw.cmpxchg] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
148 '[keyword i64.atomic.rmw8.cmpxchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
149 '[keyword i64.atomic.rmw16.cmpxchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
150 '[keyword i64.atomic.rmw32.cmpxchg_u] [keyword offset]=[number 32] [keyword align]=[number 4]'); | |
151 | |
152 MT('simd-instructions', | |
153 '[keyword v128.load] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
154 '[keyword v128.load8x8_s] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
155 '[keyword v128.load8x8_u] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
156 '[keyword v128.load16x4_s] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
157 '[keyword v128.load16x4_u] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
158 '[keyword v128.load32x2_s] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
159 '[keyword v128.load32x2_u] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
160 '[keyword v128.load8_splat] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
161 '[keyword v128.load16_splat] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
162 '[keyword v128.load32_splat] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
163 '[keyword v128.load64_splat] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
164 '[keyword v128.store] [keyword offset]=[number 32] [keyword align]=[number 4]', | |
165 '[keyword v128.const] [number 0] [number 1] [number 2] [number 3] [number 4] [number 5] [number 6] [number 7] [number 8] [number 9] [number 10] [number 11] [number 12] [number 13] [number 14] [number 15]', | |
166 '[keyword i8x16.shuffle] [number 0] [number 1] [number 2] [number 3] [number 4] [number 5] [number 6] [number 7] [number 8] [number 9] [number 10] [number 11] [number 12] [number 13] [number 14] [number 15]', | |
167 '[keyword i8x16.swizzle]', | |
168 '[keyword i8x16.splat]', | |
169 '[keyword i16x8.splat]', | |
170 '[keyword i32x4.splat]', | |
171 '[keyword i64x2.splat]', | |
172 '[keyword f32x4.splat]', | |
173 '[keyword f64x2.splat]', | |
174 '[keyword i8x16.extract_lane_s] [number 1]', | |
175 '[keyword i8x16.extract_lane_u] [number 1]', | |
176 '[keyword i8x16.replace_lane] [number 1]', | |
177 '[keyword i16x8.extract_lane_s] [number 1]', | |
178 '[keyword i16x8.extract_lane_u] [number 1]', | |
179 '[keyword i16x8.replace_lane] [number 1]', | |
180 '[keyword i32x4.extract_lane] [number 1]', | |
181 '[keyword i32x4.replace_lane] [number 1]', | |
182 '[keyword i64x2.extract_lane] [number 1]', | |
183 '[keyword i64x2.replace_lane] [number 1]', | |
184 '[keyword f32x4.extract_lane] [number 1]', | |
185 '[keyword f32x4.replace_lane] [number 1]', | |
186 '[keyword f64x2.extract_lane] [number 1]', | |
187 '[keyword f64x2.replace_lane] [number 1]', | |
188 '[keyword i8x16.eq]', | |
189 '[keyword i8x16.ne]', | |
190 '[keyword i8x16.lt_s]', | |
191 '[keyword i8x16.lt_u]', | |
192 '[keyword i8x16.gt_s]', | |
193 '[keyword i8x16.gt_u]', | |
194 '[keyword i8x16.le_s]', | |
195 '[keyword i8x16.le_u]', | |
196 '[keyword i8x16.ge_s]', | |
197 '[keyword i8x16.ge_u]', | |
198 '[keyword i16x8.eq]', | |
199 '[keyword i16x8.ne]', | |
200 '[keyword i16x8.lt_s]', | |
201 '[keyword i16x8.lt_u]', | |
202 '[keyword i16x8.gt_s]', | |
203 '[keyword i16x8.gt_u]', | |
204 '[keyword i16x8.le_s]', | |
205 '[keyword i16x8.le_u]', | |
206 '[keyword i16x8.ge_s]', | |
207 '[keyword i16x8.ge_u]', | |
208 '[keyword i32x4.eq]', | |
209 '[keyword i32x4.ne]', | |
210 '[keyword i32x4.lt_s]', | |
211 '[keyword i32x4.lt_u]', | |
212 '[keyword i32x4.gt_s]', | |
213 '[keyword i32x4.gt_u]', | |
214 '[keyword i32x4.le_s]', | |
215 '[keyword i32x4.le_u]', | |
216 '[keyword i32x4.ge_s]', | |
217 '[keyword i32x4.ge_u]', | |
218 '[keyword f32x4.eq]', | |
219 '[keyword f32x4.ne]', | |
220 '[keyword f32x4.lt]', | |
221 '[keyword f32x4.gt]', | |
222 '[keyword f32x4.le]', | |
223 '[keyword f32x4.ge]', | |
224 '[keyword f64x2.eq]', | |
225 '[keyword f64x2.ne]', | |
226 '[keyword f64x2.lt]', | |
227 '[keyword f64x2.gt]', | |
228 '[keyword f64x2.le]', | |
229 '[keyword f64x2.ge]', | |
230 '[keyword v128.not]', | |
231 '[keyword v128.and]', | |
232 '[keyword v128.andnot]', | |
233 '[keyword v128.or]', | |
234 '[keyword v128.xor]', | |
235 '[keyword v128.bitselect]', | |
236 '[keyword v128.any_true]', | |
237 '[keyword v128.load8_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
238 '[keyword v128.load16_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
239 '[keyword v128.load32_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
240 '[keyword v128.load64_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
241 '[keyword v128.store8_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
242 '[keyword v128.store16_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
243 '[keyword v128.store32_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
244 '[keyword v128.store64_lane] [keyword offset]=[number 64] [keyword align]=[number 0] [number 1]', | |
245 '[keyword v128.load32_zero] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
246 '[keyword v128.load64_zero] [keyword offset]=[number 64] [keyword align]=[number 0]', | |
247 '[keyword f32x4.demote_f64x2_zero]', | |
248 '[keyword f64x2.promote_low_f32x4]', | |
249 '[keyword i8x16.abs]', | |
250 '[keyword i8x16.neg]', | |
251 '[keyword i8x16.popcnt]', | |
252 '[keyword i8x16.all_true]', | |
253 '[keyword i8x16.bitmask]', | |
254 '[keyword i8x16.narrow_i16x8_s]', | |
255 '[keyword i8x16.narrow_i16x8_u]', | |
256 '[keyword f32x4.ceil]', | |
257 '[keyword f32x4.floor]', | |
258 '[keyword f32x4.trunc]', | |
259 '[keyword f32x4.nearest]', | |
260 '[keyword i8x16.shl]', | |
261 '[keyword i8x16.shr_s]', | |
262 '[keyword i8x16.shr_u]', | |
263 '[keyword i8x16.add]', | |
264 '[keyword i8x16.add_sat_s]', | |
265 '[keyword i8x16.add_sat_u]', | |
266 '[keyword i8x16.sub]', | |
267 '[keyword i8x16.sub_sat_s]', | |
268 '[keyword i8x16.sub_sat_u]', | |
269 '[keyword f64x2.ceil]', | |
270 '[keyword f64x2.floor]', | |
271 '[keyword i8x16.min_s]', | |
272 '[keyword i8x16.min_u]', | |
273 '[keyword i8x16.max_s]', | |
274 '[keyword i8x16.max_u]', | |
275 '[keyword f64x2.trunc]', | |
276 '[keyword i8x16.avgr_u]', | |
277 '[keyword i16x8.extadd_pairwise_i8x16_s]', | |
278 '[keyword i16x8.extadd_pairwise_i8x16_u]', | |
279 '[keyword i32x4.extadd_pairwise_i16x8_s]', | |
280 '[keyword i32x4.extadd_pairwise_i16x8_u]', | |
281 '[keyword i16x8.abs]', | |
282 '[keyword i16x8.neg]', | |
283 '[keyword i16x8.q15mulr_sat_s]', | |
284 '[keyword i16x8.all_true]', | |
285 '[keyword i16x8.bitmask]', | |
286 '[keyword i16x8.narrow_i32x4_s]', | |
287 '[keyword i16x8.narrow_i32x4_u]', | |
288 '[keyword i16x8.extend_low_i8x16_s]', | |
289 '[keyword i16x8.extend_high_i8x16_s]', | |
290 '[keyword i16x8.extend_low_i8x16_u]', | |
291 '[keyword i16x8.extend_high_i8x16_u]', | |
292 '[keyword i16x8.shl]', | |
293 '[keyword i16x8.shr_s]', | |
294 '[keyword i16x8.shr_u]', | |
295 '[keyword i16x8.add]', | |
296 '[keyword i16x8.add_sat_s]', | |
297 '[keyword i16x8.add_sat_u]', | |
298 '[keyword i16x8.sub]', | |
299 '[keyword i16x8.sub_sat_s]', | |
300 '[keyword i16x8.sub_sat_u]', | |
301 '[keyword f64x2.nearest]', | |
302 '[keyword i16x8.mul]', | |
303 '[keyword i16x8.min_s]', | |
304 '[keyword i16x8.min_u]', | |
305 '[keyword i16x8.max_s]', | |
306 '[keyword i16x8.max_u]', | |
307 '[keyword i16x8.avgr_u]', | |
308 '[keyword i16x8.extmul_low_i8x16_s]', | |
309 '[keyword i16x8.extmul_high_i8x16_s]', | |
310 '[keyword i16x8.extmul_low_i8x16_u]', | |
311 '[keyword i16x8.extmul_high_i8x16_u]', | |
312 '[keyword i32x4.abs]', | |
313 '[keyword i32x4.neg]', | |
314 '[keyword i32x4.all_true]', | |
315 '[keyword i32x4.bitmask]', | |
316 '[keyword i32x4.extend_low_i16x8_s]', | |
317 '[keyword i32x4.extend_high_i16x8_s]', | |
318 '[keyword i32x4.extend_low_i16x8_u]', | |
319 '[keyword i32x4.extend_high_i16x8_u]', | |
320 '[keyword i32x4.shl]', | |
321 '[keyword i32x4.shr_s]', | |
322 '[keyword i32x4.shr_u]', | |
323 '[keyword i32x4.add]', | |
324 '[keyword i32x4.sub]', | |
325 '[keyword i32x4.mul]', | |
326 '[keyword i32x4.min_s]', | |
327 '[keyword i32x4.min_u]', | |
328 '[keyword i32x4.max_s]', | |
329 '[keyword i32x4.max_u]', | |
330 '[keyword i32x4.dot_i16x8_s]', | |
331 '[keyword i32x4.extmul_low_i16x8_s]', | |
332 '[keyword i32x4.extmul_high_i16x8_s]', | |
333 '[keyword i32x4.extmul_low_i16x8_u]', | |
334 '[keyword i32x4.extmul_high_i16x8_u]', | |
335 '[keyword i64x2.abs]', | |
336 '[keyword i64x2.neg]', | |
337 '[keyword i64x2.all_true]', | |
338 '[keyword i64x2.bitmask]', | |
339 '[keyword i64x2.extend_low_i32x4_s]', | |
340 '[keyword i64x2.extend_high_i32x4_s]', | |
341 '[keyword i64x2.extend_low_i32x4_u]', | |
342 '[keyword i64x2.extend_high_i32x4_u]', | |
343 '[keyword i64x2.shl]', | |
344 '[keyword i64x2.shr_s]', | |
345 '[keyword i64x2.shr_u]', | |
346 '[keyword i64x2.add]', | |
347 '[keyword i64x2.sub]', | |
348 '[keyword i64x2.mul]', | |
349 '[keyword i64x2.eq]', | |
350 '[keyword i64x2.ne]', | |
351 '[keyword i64x2.lt_s]', | |
352 '[keyword i64x2.gt_s]', | |
353 '[keyword i64x2.le_s]', | |
354 '[keyword i64x2.ge_s]', | |
355 '[keyword i64x2.extmul_low_i32x4_s]', | |
356 '[keyword i64x2.extmul_high_i32x4_s]', | |
357 '[keyword i64x2.extmul_low_i32x4_u]', | |
358 '[keyword i64x2.extmul_high_i32x4_u]', | |
359 '[keyword f32x4.abs]', | |
360 '[keyword f32x4.neg]', | |
361 '[keyword f32x4.sqrt]', | |
362 '[keyword f32x4.add]', | |
363 '[keyword f32x4.sub]', | |
364 '[keyword f32x4.mul]', | |
365 '[keyword f32x4.div]', | |
366 '[keyword f32x4.min]', | |
367 '[keyword f32x4.max]', | |
368 '[keyword f64x2.abs]', | |
369 '[keyword f64x2.neg]', | |
370 '[keyword f64x2.sqrt]', | |
371 '[keyword f64x2.add]', | |
372 '[keyword f64x2.sub]', | |
373 '[keyword f64x2.mul]', | |
374 '[keyword f64x2.div]', | |
375 '[keyword f64x2.min]', | |
376 '[keyword f64x2.max]', | |
377 '[keyword i32x4.trunc_sat_f32x4_s]', | |
378 '[keyword i32x4.trunc_sat_f32x4_u]', | |
379 '[keyword f32x4.convert_i32x4_s]', | |
380 '[keyword f32x4.convert_i32x4_u]', | |
381 '[keyword i32x4.trunc_sat_f64x2_s_zero]', | |
382 '[keyword i32x4.trunc_sat_f64x2_u_zero]', | |
383 '[keyword f64x2.convert_low_i32x4_s]', | |
384 '[keyword f64x2.convert_low_i32x4_u]'); | |
385 | |
386 MT('reference-type-instructions', | |
387 '[keyword ref.null] [keyword extern]', | |
388 '[keyword ref.null] [keyword func]', | |
389 '[keyword ref.is_null] ([keyword ref.func] [variable-2 $f])', | |
390 '[keyword ref.func] [variable-2 $f]'); | |
391 | |
392 MT('table-instructions', | |
393 '[keyword table.get] [variable-2 $t] ([keyword i32.const] [number 5])', | |
394 '[keyword table.set] [variable-2 $t] ([keyword i32.const] [number 5]) ([keyword ref.func] [variable-2 $f])', | |
395 '[keyword table.size] [variable-2 $t]', | |
396 '[keyword table.grow] [variable-2 $t] ([keyword ref.null] [keyword extern]) ([keyword i32.const] [number 5])', | |
397 '[keyword table.fill] [variable-2 $t] ([keyword i32.const] [number 5]) ([keyword param] [variable-2 $r] [atom externref]) ([keyword i32.const] [number 5])', | |
398 '[keyword table.init] [variable-2 $t] [number 1] ([keyword i32.const] [number 5]) ([keyword i32.const] [number 10]) ([keyword i32.const] [number 15])', | |
399 '[keyword table.copy] [variable-2 $t] [variable-2 $t2] ([keyword i32.const] [number 5]) ([keyword i32.const] [number 10]) ([keyword i32.const] [number 15])' | |
400 ); | |
401 MT('gc-proposal', | |
402 '[keyword call_ref] [keyword return_call_ref]', | |
403 '[keyword ref.as_non_null] [keyword br_on_null] [keyword ref.eq]'); | |
404 MT('gc-proposal-structs', | |
405 '[keyword struct.new_with_rtt] [keyword struct.new_default_with_rtt]', | |
406 '[keyword struct.get] [keyword struct.get_s] [keyword struct.get_u]', | |
407 '[keyword struct.set]'); | |
408 MT('gc-proposal-arrays', | |
409 '[keyword array.new_with_rtt] [keyword array.new_default_with_rtt]', | |
410 '[keyword array.get] [keyword array.get_s] [keyword array.get_u]', | |
411 '[keyword array.len] [keyword array.set]'); | |
412 MT('gc-proposal-i31', | |
413 '[keyword i31.new] [keyword i31.get_s] [keyword i31.get_u]'); | |
414 MT('gc-proposal-rtt', | |
415 '[keyword rtt.canon] [keyword rtt.sub]'); | |
416 MT('gc-proposal-typechecks', | |
417 '[keyword ref.test] [keyword ref.cast] [keyword br_on_cast]', | |
418 '[keyword ref.is_func] [keyword ref.is_data] [keyword ref.is_i31]', | |
419 '[keyword ref.as_func] [keyword ref.as_data] [keyword ref.as_i31]', | |
420 '[keyword br_on_func] [keyword br_on_data] [keyword br_on_i31]'); | |
421 MT('gc-proposal-types', | |
422 '[atom i8] [atom i16]', | |
423 '[atom anyref] [atom dataref] [atom eqref] [atom i31ref]'); | |
424 })(); |