1;;! target = "aarch64" 2;;! test = "compile" 3;;! flags = ["-Wexceptions=yes", "-Wgc=yes", "-Dguest-debug=yes"] 4 5(module 6 (tag $t (param i32)) 7 (import "" "host" (func)) 8 (func (export "main") 9 (block $b (result i32) 10 (try_table (catch $t $b) 11 (drop (i32.const 42)) 12 (throw $t (i32.const 42))) 13 i32.const 0) 14 (call 0) 15 (drop))) 16;; wasm[0]::function[1]: 17;; stp x29, x30, [sp, #-0x10]! 18;; mov x29, sp 19;; ldur x16, [x2, #8] 20;; ldur x16, [x16, #0x10] 21;; add x16, x16, #0xc0 22;; cmp sp, x16 23;; b.lo #0x110 24;; 1c: stp x27, x28, [sp, #-0x10]! 25;; stp x25, x26, [sp, #-0x10]! 26;; stp x23, x24, [sp, #-0x10]! 27;; stp x21, x22, [sp, #-0x10]! 28;; stp x19, x20, [sp, #-0x10]! 29;; stp d14, d15, [sp, #-0x10]! 30;; stp d12, d13, [sp, #-0x10]! 31;; stp d10, d11, [sp, #-0x10]! 32;; stp d8, d9, [sp, #-0x10]! 33;; sub sp, sp, #0x20 34;; stur x2, [sp] 35;; stur x2, [sp, #0x10] 36;; mov w27, #0x2a 37;; ╰─╼ debug frame state (before next inst): func key DefinedWasmFunction(StaticModuleIndex(0), DefinedFuncIndex(0)), wasm PC 61, slot at FP-0xb0, locals , stack 38;; stur w27, [sp, #8] 39;; stur w27, [sp, #8] 40;; ╰─╼ debug frame state (before next inst): func key DefinedWasmFunction(StaticModuleIndex(0), DefinedFuncIndex(0)), wasm PC 64, slot at FP-0xb0, locals , stack 41;; ldur x2, [sp, #0x10] 42;; ╰─╼ debug frame state (before next inst): func key DefinedWasmFunction(StaticModuleIndex(0), DefinedFuncIndex(0)), wasm PC 66, slot at FP-0xb0, locals , stack I32 @ slot+0x8 43;; bl #0x31c 44;; 60: mov x21, x2 45;; mov w3, #0x4000000 46;; mov w4, #2 47;; mov w5, #0x28 48;; mov w6, #8 49;; ldur x2, [sp, #0x10] 50;; bl #0x2a8 51;; 7c: ldur x11, [sp, #0x10] 52;; ldr x0, [x11, #8] 53;; ldr x5, [x0, #0x18] 54;; add x0, x5, #0x20 55;; str w27, [x0, w2, uxtw] 56;; add x3, x5, #0x18 57;; mov x4, x21 58;; str w4, [x3, w2, uxtw] 59;; mov w3, #0 60;; add x4, x5, #0x1c 61;; stur x5, [sp, #0x18] 62;; str w3, [x4, w2, uxtw] 63;; mov x3, x2 64;; ldur x2, [sp, #0x10] 65;; bl #0x354 66;; ├─╼ exception frame offset: SP = FP - 0xb0 67;; ╰─╼ exception handler: tag=0, context at [SP+0x10], handler=0xbc 68;; b8: .byte 0x1f, 0xc1, 0x00, 0x00 69;; ldur x5, [sp, #0x18] 70;; add x4, x5, #0x20 71;; ldr w6, [x4, w0, uxtw] 72;; stur w6, [sp, #8] 73;; ldur x2, [sp, #0x10] 74;; ╰─╼ debug frame state (before next inst): func key DefinedWasmFunction(StaticModuleIndex(0), DefinedFuncIndex(0)), wasm PC 72, slot at FP-0xb0, locals , stack I32 @ slot+0x8 75;; ldr x8, [x2, #0x30] 76;; ldr x2, [x2, #0x40] 77;; ldur x3, [sp, #0x10] 78;; blr x8 79;; ╰─╼ debug frame state (after previous inst): func key DefinedWasmFunction(StaticModuleIndex(0), DefinedFuncIndex(0)), wasm PC 72, slot at FP-0xb0, locals , stack I32 @ slot+0x8 80;; e0: add sp, sp, #0x20 81;; ╰─╼ debug frame state (before next inst): func key DefinedWasmFunction(StaticModuleIndex(0), DefinedFuncIndex(0)), wasm PC 75, slot at FP-0xb0, locals , stack 82;; ldp d8, d9, [sp], #0x10 83;; ldp d10, d11, [sp], #0x10 84;; ldp d12, d13, [sp], #0x10 85;; ldp d14, d15, [sp], #0x10 86;; ldp x19, x20, [sp], #0x10 87;; ldp x21, x22, [sp], #0x10 88;; ldp x23, x24, [sp], #0x10 89;; ldp x25, x26, [sp], #0x10 90;; ldp x27, x28, [sp], #0x10 91;; ldp x29, x30, [sp], #0x10 92;; ret 93;; 110: .byte 0x1f, 0xc1, 0x00, 0x00 94