1;;! target = "x86_64" 2 3(module 4 (func (export "f") (param i64 i32) (result i64) 5 (local.get 0) 6 (local.get 1) 7 (local.get 1) 8 ;; If with else. More params than results. 9 (if (param i64 i32) (result i64) 10 (then 11 (drop) 12 (drop) 13 (i64.const -1)) 14 (else 15 (drop) 16 (drop) 17 (i64.const -2))))) 18 19;; function u0:0(i64 vmctx, i64, i64, i32) -> i64 tail { 20;; gv0 = vmctx 21;; gv1 = load.i64 notrap aligned readonly gv0+8 22;; gv2 = load.i64 notrap aligned gv1+24 23;; stack_limit = gv2 24;; 25;; block0(v0: i64, v1: i64, v2: i64, v3: i32): 26;; @0027 brif v3, block2, block4 27;; 28;; block2: 29;; @002b v8 = iconst.i64 -1 30;; @002d jump block3(v8) ; v8 = -1 31;; 32;; block4: 33;; @0030 v9 = iconst.i64 -2 34;; @0032 jump block3(v9) ; v9 = -2 35;; 36;; block3(v5: i64): 37;; @0033 jump block1(v5) 38;; 39;; block1(v4: i64): 40;; @0033 return v4 41;; } 42