|
10 | 10 | (global $~lib/shared/runtime/Runtime.Minimal i32 (i32.const 1))
|
11 | 11 | (global $~lib/shared/runtime/Runtime.Incremental i32 (i32.const 2))
|
12 | 12 | (global $~lib/native/ASC_SHRINK_LEVEL i32 (i32.const 0))
|
| 13 | + (global $~argumentsLength (mut i32) (i32.const 0)) |
13 | 14 | (global $~lib/memory/__data_end i32 (i32.const 284))
|
14 | 15 | (global $~lib/memory/__stack_pointer (mut i32) (i32.const 33052))
|
15 | 16 | (global $~lib/memory/__heap_base i32 (i32.const 33052))
|
|
26 | 27 | (export "stringArrayMethodCall" (func $export:std/array-access/stringArrayMethodCall))
|
27 | 28 | (export "stringArrayArrayPropertyAccess" (func $export:std/array-access/stringArrayArrayPropertyAccess))
|
28 | 29 | (export "stringArrayArrayMethodCall" (func $export:std/array-access/stringArrayArrayMethodCall))
|
| 30 | + (export "functionArrayElementCall" (func $export:std/array-access/functionArrayElementCall)) |
29 | 31 | (func $~lib/array/Array<~lib/array/Array<i32>>#get:length_ (type $i32_=>_i32) (param $this i32) (result i32)
|
30 | 32 | local.get $this
|
31 | 33 | i32.load $0 offset=12
|
|
249 | 251 | local.get $this
|
250 | 252 | i32.load $0 offset=4
|
251 | 253 | )
|
| 254 | + (func $~lib/array/Array<%28i32%29=>i32>#get:length_ (type $i32_=>_i32) (param $this i32) (result i32) |
| 255 | + local.get $this |
| 256 | + i32.load $0 offset=12 |
| 257 | + ) |
| 258 | + (func $~lib/array/Array<%28i32%29=>i32>#get:dataStart (type $i32_=>_i32) (param $this i32) (result i32) |
| 259 | + local.get $this |
| 260 | + i32.load $0 offset=4 |
| 261 | + ) |
| 262 | + (func $std/array-access/functionArrayElementCall (type $i32_=>_i32) (param $a i32) (result i32) |
| 263 | + i32.const 123 |
| 264 | + i32.const 1 |
| 265 | + global.set $~argumentsLength |
| 266 | + local.get $a |
| 267 | + i32.const 0 |
| 268 | + call $~lib/array/Array<%28i32%29=>i32>#__get |
| 269 | + i32.load $0 |
| 270 | + call_indirect $0 (type $i32_=>_i32) |
| 271 | + ) |
252 | 272 | (func $~stack_check (type $none_=>_none)
|
253 | 273 | global.get $~lib/memory/__stack_pointer
|
254 | 274 | global.get $~lib/memory/__data_end
|
|
592 | 612 | global.set $~lib/memory/__stack_pointer
|
593 | 613 | local.get $3
|
594 | 614 | )
|
| 615 | + (func $~lib/array/Array<%28i32%29=>i32>#__get (type $i32_i32_=>_i32) (param $this i32) (param $index i32) (result i32) |
| 616 | + (local $value i32) |
| 617 | + (local $3 i32) |
| 618 | + global.get $~lib/memory/__stack_pointer |
| 619 | + i32.const 4 |
| 620 | + i32.sub |
| 621 | + global.set $~lib/memory/__stack_pointer |
| 622 | + call $~stack_check |
| 623 | + global.get $~lib/memory/__stack_pointer |
| 624 | + i32.const 0 |
| 625 | + i32.store $0 |
| 626 | + local.get $index |
| 627 | + local.get $this |
| 628 | + call $~lib/array/Array<%28i32%29=>i32>#get:length_ |
| 629 | + i32.ge_u |
| 630 | + if |
| 631 | + i32.const 32 |
| 632 | + i32.const 96 |
| 633 | + i32.const 114 |
| 634 | + i32.const 42 |
| 635 | + call $~lib/builtins/abort |
| 636 | + unreachable |
| 637 | + end |
| 638 | + global.get $~lib/memory/__stack_pointer |
| 639 | + local.get $this |
| 640 | + call $~lib/array/Array<%28i32%29=>i32>#get:dataStart |
| 641 | + local.get $index |
| 642 | + i32.const 2 |
| 643 | + i32.shl |
| 644 | + i32.add |
| 645 | + i32.load $0 |
| 646 | + local.tee $value |
| 647 | + i32.store $0 |
| 648 | + i32.const 1 |
| 649 | + drop |
| 650 | + i32.const 0 |
| 651 | + i32.eqz |
| 652 | + drop |
| 653 | + local.get $value |
| 654 | + i32.eqz |
| 655 | + if |
| 656 | + i32.const 144 |
| 657 | + i32.const 96 |
| 658 | + i32.const 118 |
| 659 | + i32.const 40 |
| 660 | + call $~lib/builtins/abort |
| 661 | + unreachable |
| 662 | + end |
| 663 | + local.get $value |
| 664 | + local.set $3 |
| 665 | + global.get $~lib/memory/__stack_pointer |
| 666 | + i32.const 4 |
| 667 | + i32.add |
| 668 | + global.set $~lib/memory/__stack_pointer |
| 669 | + local.get $3 |
| 670 | + ) |
595 | 671 | (func $export:std/array-access/i32ArrayArrayElementAccess (type $i32_=>_i32) (param $0 i32) (result i32)
|
596 | 672 | (local $1 i32)
|
597 | 673 | global.get $~lib/memory/__stack_pointer
|
|
687 | 763 | global.set $~lib/memory/__stack_pointer
|
688 | 764 | local.get $1
|
689 | 765 | )
|
| 766 | + (func $export:std/array-access/functionArrayElementCall (type $i32_=>_i32) (param $0 i32) (result i32) |
| 767 | + (local $1 i32) |
| 768 | + global.get $~lib/memory/__stack_pointer |
| 769 | + i32.const 4 |
| 770 | + i32.sub |
| 771 | + global.set $~lib/memory/__stack_pointer |
| 772 | + call $~stack_check |
| 773 | + global.get $~lib/memory/__stack_pointer |
| 774 | + local.get $0 |
| 775 | + i32.store $0 |
| 776 | + local.get $0 |
| 777 | + call $std/array-access/functionArrayElementCall |
| 778 | + local.set $1 |
| 779 | + global.get $~lib/memory/__stack_pointer |
| 780 | + i32.const 4 |
| 781 | + i32.add |
| 782 | + global.set $~lib/memory/__stack_pointer |
| 783 | + local.get $1 |
| 784 | + ) |
690 | 785 | )
|
0 commit comments