1;;! target = "x86_64" 2;;! test = "winch" 3 4(module 5 (func $dummy) 6 (func (export "multi") (result i32) 7 (loop (call $dummy) (call $dummy) (call $dummy) (call $dummy)) 8 (loop (result i32) (call $dummy) (call $dummy) (i32.const 8) (call $dummy)) 9 ) 10) 11;; wasm[0]::function[0]::dummy: 12;; pushq %rbp 13;; movq %rsp, %rbp 14;; movq 8(%rdi), %r11 15;; movq 0x18(%r11), %r11 16;; addq $0x10, %r11 17;; cmpq %rsp, %r11 18;; ja 0x38 19;; 1c: movq %rdi, %r14 20;; subq $0x10, %rsp 21;; movq %rdi, 8(%rsp) 22;; movq %rsi, (%rsp) 23;; addq $0x10, %rsp 24;; popq %rbp 25;; retq 26;; 38: ud2 27;; 28;; wasm[0]::function[1]: 29;; pushq %rbp 30;; movq %rsp, %rbp 31;; movq 8(%rdi), %r11 32;; movq 0x18(%r11), %r11 33;; addq $0x10, %r11 34;; cmpq %rsp, %r11 35;; ja 0xed 36;; 5c: movq %rdi, %r14 37;; subq $0x10, %rsp 38;; movq %rdi, 8(%rsp) 39;; movq %rsi, (%rsp) 40;; movq %r14, %rdi 41;; movq %r14, %rsi 42;; callq 0 43;; movq 8(%rsp), %r14 44;; movq %r14, %rdi 45;; movq %r14, %rsi 46;; callq 0 47;; movq 8(%rsp), %r14 48;; movq %r14, %rdi 49;; movq %r14, %rsi 50;; callq 0 51;; movq 8(%rsp), %r14 52;; movq %r14, %rdi 53;; movq %r14, %rsi 54;; callq 0 55;; movq 8(%rsp), %r14 56;; movq %r14, %rdi 57;; movq %r14, %rsi 58;; callq 0 59;; movq 8(%rsp), %r14 60;; movq %r14, %rdi 61;; movq %r14, %rsi 62;; callq 0 63;; movq 8(%rsp), %r14 64;; movq %r14, %rdi 65;; movq %r14, %rsi 66;; callq 0 67;; movq 8(%rsp), %r14 68;; movl $8, %eax 69;; addq $0x10, %rsp 70;; popq %rbp 71;; retq 72;; ed: ud2 73