]>
Commit | Line | Data |
---|---|---|
abe05a73 XL |
1 | (module |
2 | (type $0 (func (param i32))) | |
3 | (type $1 (func)) | |
4 | (type $2 (func (result i32))) | |
5 | (global $global$0 (mut i32) (i32.const 1)) | |
6 | (memory $0 0) | |
7 | (func $basics (; 0 ;) (type $0) (param $x i32) | |
8 | (local $y i32) | |
9 | (local $z f32) | |
10 | (local $w i64) | |
11 | (local $t f64) | |
12 | (local $5 i32) | |
13 | (local $6 f64) | |
14 | (local $7 f64) | |
15 | (drop | |
16 | (get_local $x) | |
17 | ) | |
18 | (drop | |
19 | (i32.const 0) | |
20 | ) | |
21 | (drop | |
22 | (f32.const 0) | |
23 | ) | |
24 | (drop | |
25 | (i64.const 0) | |
26 | ) | |
27 | (drop | |
28 | (f64.const 0) | |
29 | ) | |
30 | (set_local $5 | |
31 | (i32.const 100) | |
32 | ) | |
33 | (drop | |
34 | (get_local $5) | |
35 | ) | |
36 | (set_local $6 | |
37 | (f64.const 2) | |
38 | ) | |
39 | (drop | |
40 | (get_local $6) | |
41 | ) | |
42 | (set_local $7 | |
43 | (f64.const 33) | |
44 | ) | |
45 | (drop | |
46 | (get_local $7) | |
47 | ) | |
48 | (drop | |
49 | (get_local $7) | |
50 | ) | |
51 | ) | |
52 | (func $if (; 1 ;) (type $0) (param $p i32) | |
53 | (local $x i32) | |
54 | (local $y i32) | |
55 | (local $3 i32) | |
56 | (local $4 i32) | |
57 | (local $5 i32) | |
58 | (local $6 i32) | |
59 | (local $7 i32) | |
60 | (local $8 i32) | |
61 | (local $9 i32) | |
62 | (local $10 i32) | |
63 | (local $11 i32) | |
64 | (local $12 i32) | |
65 | (local $13 i32) | |
66 | (local $14 i32) | |
67 | (local $15 i32) | |
68 | (local $16 i32) | |
69 | (local $17 i32) | |
70 | (set_local $13 | |
71 | (get_local $p) | |
72 | ) | |
73 | (block | |
74 | (drop | |
75 | (if (result i32) | |
76 | (i32.const 1) | |
77 | (i32.const 0) | |
78 | (i32.const 0) | |
79 | ) | |
80 | ) | |
81 | (if | |
82 | (i32.const 1) | |
83 | (set_local $3 | |
84 | (tee_local $15 | |
85 | (tee_local $14 | |
86 | (tee_local $12 | |
87 | (i32.const 1) | |
88 | ) | |
89 | ) | |
90 | ) | |
91 | ) | |
92 | ) | |
93 | (drop | |
94 | (get_local $12) | |
95 | ) | |
96 | (if | |
97 | (i32.const 1) | |
98 | (set_local $4 | |
99 | (tee_local $13 | |
100 | (i32.const 1) | |
101 | ) | |
102 | ) | |
103 | ) | |
104 | (drop | |
105 | (get_local $13) | |
106 | ) | |
107 | (if | |
108 | (i32.const 1) | |
109 | (set_local $5 | |
110 | (tee_local $15 | |
111 | (tee_local $14 | |
112 | (i32.const 2) | |
113 | ) | |
114 | ) | |
115 | ) | |
116 | (nop) | |
117 | ) | |
118 | (drop | |
119 | (get_local $14) | |
120 | ) | |
121 | (if | |
122 | (i32.const 1) | |
123 | (nop) | |
124 | (set_local $6 | |
125 | (tee_local $15 | |
126 | (i32.const 3) | |
127 | ) | |
128 | ) | |
129 | ) | |
130 | (drop | |
131 | (get_local $15) | |
132 | ) | |
133 | (if | |
134 | (i32.const 1) | |
135 | (set_local $7 | |
136 | (tee_local $16 | |
137 | (i32.const 4) | |
138 | ) | |
139 | ) | |
140 | (set_local $8 | |
141 | (tee_local $16 | |
142 | (i32.const 5) | |
143 | ) | |
144 | ) | |
145 | ) | |
146 | (drop | |
147 | (get_local $16) | |
148 | ) | |
149 | (if | |
150 | (i32.const 1) | |
151 | (set_local $9 | |
152 | (tee_local $17 | |
153 | (i32.const 6) | |
154 | ) | |
155 | ) | |
156 | (block $block | |
157 | (set_local $10 | |
158 | (i32.const 7) | |
159 | ) | |
160 | (set_local $11 | |
161 | (tee_local $17 | |
162 | (i32.const 8) | |
163 | ) | |
164 | ) | |
165 | ) | |
166 | ) | |
167 | (drop | |
168 | (get_local $17) | |
169 | ) | |
170 | ) | |
171 | ) | |
172 | (func $if2 (; 2 ;) (type $0) (param $x i32) | |
173 | (local $1 i32) | |
174 | (local $2 i32) | |
175 | (set_local $2 | |
176 | (get_local $x) | |
177 | ) | |
178 | (block | |
179 | (if | |
180 | (i32.const 1) | |
181 | (block $block | |
182 | (set_local $1 | |
183 | (tee_local $2 | |
184 | (i32.const 1) | |
185 | ) | |
186 | ) | |
187 | (drop | |
188 | (get_local $1) | |
189 | ) | |
190 | ) | |
191 | ) | |
192 | (drop | |
193 | (get_local $2) | |
194 | ) | |
195 | ) | |
196 | ) | |
197 | (func $block (; 3 ;) (type $0) (param $x i32) | |
198 | (local $1 i32) | |
199 | (local $2 i32) | |
200 | (set_local $2 | |
201 | (get_local $x) | |
202 | ) | |
203 | (block | |
204 | (block $out | |
205 | (br_if $out | |
206 | (i32.const 2) | |
207 | ) | |
208 | (set_local $1 | |
209 | (tee_local $2 | |
210 | (i32.const 1) | |
211 | ) | |
212 | ) | |
213 | ) | |
214 | (drop | |
215 | (get_local $2) | |
216 | ) | |
217 | ) | |
218 | ) | |
219 | (func $block2 (; 4 ;) (type $0) (param $x i32) | |
220 | (local $1 i32) | |
221 | (local $2 i32) | |
222 | (local $3 i32) | |
223 | (local $4 i32) | |
224 | (local $5 i32) | |
225 | (local $6 i32) | |
226 | (block $out | |
227 | (set_local $1 | |
228 | (tee_local $6 | |
229 | (i32.const 1) | |
230 | ) | |
231 | ) | |
232 | (drop | |
233 | (get_local $1) | |
234 | ) | |
235 | (br_if $out | |
236 | (i32.const 2) | |
237 | ) | |
238 | (drop | |
239 | (get_local $1) | |
240 | ) | |
241 | (if | |
242 | (i32.const 3) | |
243 | (block $block | |
244 | (set_local $2 | |
245 | (tee_local $6 | |
246 | (i32.const 1) | |
247 | ) | |
248 | ) | |
249 | (drop | |
250 | (get_local $2) | |
251 | ) | |
252 | (br $out) | |
253 | ) | |
254 | ) | |
255 | (drop | |
256 | (get_local $1) | |
257 | ) | |
258 | (set_local $3 | |
259 | (tee_local $6 | |
260 | (i32.const 4) | |
261 | ) | |
262 | ) | |
263 | (drop | |
264 | (get_local $3) | |
265 | ) | |
266 | (if | |
267 | (i32.const 5) | |
268 | (br $out) | |
269 | ) | |
270 | (drop | |
271 | (get_local $3) | |
272 | ) | |
273 | (if | |
274 | (i32.const 6) | |
275 | (nop) | |
276 | ) | |
277 | (if | |
278 | (i32.const 7) | |
279 | (nop) | |
280 | (nop) | |
281 | ) | |
282 | (block $in | |
283 | (set_local $4 | |
284 | (tee_local $6 | |
285 | (i32.const 8) | |
286 | ) | |
287 | ) | |
288 | (drop | |
289 | (get_local $4) | |
290 | ) | |
291 | (br_table $in $out | |
292 | (i32.const 9) | |
293 | ) | |
294 | ) | |
295 | (drop | |
296 | (get_local $4) | |
297 | ) | |
298 | (block $in2 | |
299 | (set_local $5 | |
300 | (tee_local $6 | |
301 | (i32.const 10) | |
302 | ) | |
303 | ) | |
304 | (drop | |
305 | (get_local $5) | |
306 | ) | |
307 | (br_table $out $in2 | |
308 | (i32.const 11) | |
309 | ) | |
310 | ) | |
311 | (drop | |
312 | (get_local $5) | |
313 | ) | |
314 | ) | |
315 | (drop | |
316 | (get_local $6) | |
317 | ) | |
318 | ) | |
319 | (func $loop (; 5 ;) (type $0) (param $x i32) | |
320 | (local $1 i32) | |
321 | (local $2 i32) | |
322 | (set_local $2 | |
323 | (get_local $x) | |
324 | ) | |
325 | (block | |
326 | (drop | |
327 | (get_local $x) | |
328 | ) | |
329 | (loop $moar | |
330 | (drop | |
331 | (get_local $2) | |
332 | ) | |
333 | (set_local $1 | |
334 | (tee_local $2 | |
335 | (i32.const 1) | |
336 | ) | |
337 | ) | |
338 | (br_if $moar | |
339 | (i32.const 2) | |
340 | ) | |
341 | ) | |
342 | (drop | |
343 | (get_local $1) | |
344 | ) | |
345 | ) | |
346 | ) | |
347 | (func $loop2 (; 6 ;) (type $0) (param $x i32) | |
348 | (local $1 i32) | |
349 | (local $2 i32) | |
350 | (local $3 i32) | |
351 | (local $4 i32) | |
352 | (set_local $4 | |
353 | (get_local $x) | |
354 | ) | |
355 | (block | |
356 | (drop | |
357 | (get_local $x) | |
358 | ) | |
359 | (loop $moar | |
360 | (drop | |
361 | (get_local $4) | |
362 | ) | |
363 | (set_local $1 | |
364 | (i32.const 1) | |
365 | ) | |
366 | (drop | |
367 | (get_local $1) | |
368 | ) | |
369 | (set_local $2 | |
370 | (tee_local $4 | |
371 | (i32.const 123) | |
372 | ) | |
373 | ) | |
374 | (drop | |
375 | (get_local $2) | |
376 | ) | |
377 | (br_if $moar | |
378 | (i32.const 2) | |
379 | ) | |
380 | (drop | |
381 | (get_local $2) | |
382 | ) | |
383 | (set_local $3 | |
384 | (i32.const 3) | |
385 | ) | |
386 | (drop | |
387 | (get_local $3) | |
388 | ) | |
389 | ) | |
390 | (drop | |
391 | (get_local $3) | |
392 | ) | |
393 | ) | |
394 | ) | |
395 | (func $loop2-zeroinit (; 7 ;) (type $1) | |
396 | (local $x i32) | |
397 | (local $1 i32) | |
398 | (local $2 i32) | |
399 | (local $3 i32) | |
400 | (local $4 i32) | |
401 | (drop | |
402 | (i32.const 0) | |
403 | ) | |
404 | (loop $moar | |
405 | (drop | |
406 | (get_local $4) | |
407 | ) | |
408 | (set_local $1 | |
409 | (i32.const 1) | |
410 | ) | |
411 | (drop | |
412 | (get_local $1) | |
413 | ) | |
414 | (set_local $2 | |
415 | (tee_local $4 | |
416 | (i32.const 123) | |
417 | ) | |
418 | ) | |
419 | (drop | |
420 | (get_local $2) | |
421 | ) | |
422 | (br_if $moar | |
423 | (i32.const 2) | |
424 | ) | |
425 | (drop | |
426 | (get_local $2) | |
427 | ) | |
428 | (set_local $3 | |
429 | (i32.const 3) | |
430 | ) | |
431 | (drop | |
432 | (get_local $3) | |
433 | ) | |
434 | ) | |
435 | (drop | |
436 | (get_local $3) | |
437 | ) | |
438 | ) | |
439 | (func $real-loop (; 8 ;) (type $0) (param $param i32) | |
440 | (local $loopvar i32) | |
441 | (local $inc i32) | |
442 | (local $3 i32) | |
443 | (local $4 i32) | |
444 | (local $5 i32) | |
445 | (local $6 i32) | |
446 | (set_local $3 | |
447 | (tee_local $6 | |
448 | (get_local $param) | |
449 | ) | |
450 | ) | |
451 | (loop $more | |
452 | (block $stop | |
453 | (if | |
454 | (i32.const 1) | |
455 | (br $stop) | |
456 | ) | |
457 | (set_local $4 | |
458 | (i32.add | |
459 | (get_local $6) | |
460 | (i32.const 1) | |
461 | ) | |
462 | ) | |
463 | (set_local $5 | |
464 | (tee_local $6 | |
465 | (get_local $4) | |
466 | ) | |
467 | ) | |
468 | (br $more) | |
469 | ) | |
470 | ) | |
471 | (drop | |
472 | (get_local $6) | |
473 | ) | |
474 | ) | |
475 | (func $real-loop-outblock (; 9 ;) (type $0) (param $param i32) | |
476 | (local $loopvar i32) | |
477 | (local $inc i32) | |
478 | (local $3 i32) | |
479 | (local $4 i32) | |
480 | (local $5 i32) | |
481 | (local $6 i32) | |
482 | (set_local $3 | |
483 | (tee_local $6 | |
484 | (get_local $param) | |
485 | ) | |
486 | ) | |
487 | (block $stop | |
488 | (loop $more | |
489 | (if | |
490 | (i32.const 1) | |
491 | (br $stop) | |
492 | ) | |
493 | (set_local $4 | |
494 | (i32.add | |
495 | (get_local $6) | |
496 | (i32.const 1) | |
497 | ) | |
498 | ) | |
499 | (set_local $5 | |
500 | (tee_local $6 | |
501 | (get_local $4) | |
502 | ) | |
503 | ) | |
504 | (br $more) | |
505 | ) | |
506 | ) | |
507 | (drop | |
508 | (get_local $6) | |
509 | ) | |
510 | ) | |
511 | (func $loop-loop-param (; 10 ;) (type $0) (param $param i32) | |
512 | (local $1 i32) | |
513 | (local $2 i32) | |
514 | (local $3 i32) | |
515 | (local $4 i32) | |
516 | (set_local $3 | |
517 | (get_local $param) | |
518 | ) | |
519 | (set_local $4 | |
520 | (get_local $param) | |
521 | ) | |
522 | (block | |
523 | (loop $loop1 | |
524 | (block $out1 | |
525 | (if | |
526 | (get_local $3) | |
527 | (br $out1) | |
528 | ) | |
529 | (set_local $1 | |
530 | (tee_local $4 | |
531 | (tee_local $3 | |
532 | (i32.const 1) | |
533 | ) | |
534 | ) | |
535 | ) | |
536 | (br $loop1) | |
537 | ) | |
538 | ) | |
539 | (loop $loop2 | |
540 | (block $out2 | |
541 | (if | |
542 | (get_local $4) | |
543 | (br $out2) | |
544 | ) | |
545 | (set_local $2 | |
546 | (tee_local $4 | |
547 | (i32.const 2) | |
548 | ) | |
549 | ) | |
550 | (br $loop2) | |
551 | ) | |
552 | ) | |
553 | ) | |
554 | ) | |
555 | (func $loop-loop-param-nomerge (; 11 ;) (type $0) (param $param i32) | |
556 | (local $1 i32) | |
557 | (local $2 i32) | |
558 | (local $3 i32) | |
559 | (loop $loop1 | |
560 | (block $out1 | |
561 | (set_local $1 | |
562 | (tee_local $3 | |
563 | (i32.const 1) | |
564 | ) | |
565 | ) | |
566 | (if | |
567 | (get_local $1) | |
568 | (br $out1) | |
569 | ) | |
570 | (br $loop1) | |
571 | ) | |
572 | ) | |
573 | (loop $loop2 | |
574 | (block $out2 | |
575 | (if | |
576 | (get_local $3) | |
577 | (br $out2) | |
578 | ) | |
579 | (set_local $2 | |
580 | (tee_local $3 | |
581 | (i32.const 2) | |
582 | ) | |
583 | ) | |
584 | (br $loop2) | |
585 | ) | |
586 | ) | |
587 | ) | |
588 | (func $loop-nesting (; 12 ;) (type $0) (param $x i32) | |
589 | (local $1 i32) | |
590 | (local $2 i32) | |
591 | (local $3 i32) | |
592 | (local $4 i32) | |
593 | (local $5 i32) | |
594 | (set_local $3 | |
595 | (get_local $x) | |
596 | ) | |
597 | (set_local $4 | |
598 | (get_local $x) | |
599 | ) | |
600 | (set_local $5 | |
601 | (get_local $x) | |
602 | ) | |
603 | (block | |
604 | (block $out | |
605 | (loop $loop1 | |
606 | (if | |
607 | (get_local $3) | |
608 | (br $out) | |
609 | ) | |
610 | (loop $loop2 | |
611 | (if | |
612 | (get_local $4) | |
613 | (br $out) | |
614 | ) | |
615 | (set_local $1 | |
616 | (tee_local $5 | |
617 | (tee_local $4 | |
618 | (i32.const 1) | |
619 | ) | |
620 | ) | |
621 | ) | |
622 | (br $loop2) | |
623 | ) | |
624 | (set_local $2 | |
625 | (tee_local $5 | |
626 | (tee_local $4 | |
627 | (tee_local $3 | |
628 | (i32.const 2) | |
629 | ) | |
630 | ) | |
631 | ) | |
632 | ) | |
633 | (br $loop1) | |
634 | ) | |
635 | ) | |
636 | (drop | |
637 | (get_local $5) | |
638 | ) | |
639 | ) | |
640 | ) | |
641 | (func $loop-nesting-2 (; 13 ;) (type $0) (param $x i32) | |
642 | (local $1 i32) | |
643 | (local $2 i32) | |
644 | (local $3 i32) | |
645 | (local $4 i32) | |
646 | (local $5 i32) | |
647 | (set_local $3 | |
648 | (get_local $x) | |
649 | ) | |
650 | (set_local $4 | |
651 | (get_local $x) | |
652 | ) | |
653 | (set_local $5 | |
654 | (get_local $x) | |
655 | ) | |
656 | (block | |
657 | (block $out | |
658 | (loop $loop1 | |
659 | (if | |
660 | (get_local $3) | |
661 | (br $out) | |
662 | ) | |
663 | (loop $loop2 | |
664 | (if | |
665 | (get_local $4) | |
666 | (br $out) | |
667 | ) | |
668 | (set_local $1 | |
669 | (tee_local $5 | |
670 | (tee_local $4 | |
671 | (i32.const 1) | |
672 | ) | |
673 | ) | |
674 | ) | |
675 | (br_if $loop2 | |
676 | (i32.const 3) | |
677 | ) | |
678 | ) | |
679 | (set_local $2 | |
680 | (tee_local $5 | |
681 | (tee_local $4 | |
682 | (tee_local $3 | |
683 | (i32.const 2) | |
684 | ) | |
685 | ) | |
686 | ) | |
687 | ) | |
688 | (br $loop1) | |
689 | ) | |
690 | ) | |
691 | (drop | |
692 | (get_local $5) | |
693 | ) | |
694 | ) | |
695 | ) | |
696 | (func $func_6 (; 14 ;) (type $2) (result i32) | |
697 | (local $result i32) | |
698 | (local $zero i32) | |
699 | (local $2 i32) | |
700 | (local $3 i32) | |
701 | (local $4 i32) | |
702 | (loop $label$1 | |
703 | (if | |
704 | (i32.eqz | |
705 | (get_global $global$0) | |
706 | ) | |
707 | (return | |
708 | (get_local $4) | |
709 | ) | |
710 | ) | |
711 | (set_global $global$0 | |
712 | (i32.const 0) | |
713 | ) | |
714 | (set_local $2 | |
715 | (tee_local $4 | |
716 | (i32.const 1) | |
717 | ) | |
718 | ) | |
719 | (br_if $label$1 | |
720 | (i32.const 0) | |
721 | ) | |
722 | (set_local $3 | |
723 | (tee_local $4 | |
724 | (i32.const 0) | |
725 | ) | |
726 | ) | |
727 | (br $label$1) | |
728 | ) | |
729 | ) | |
730 | ) |