1;;! target = "x86_64" 2 3(module 4 (memory 1) 5 (func $main (local i32 i32 i32 i32) 6 (local.set 0 (i32.const 0)) 7 (local.set 1 (i32.const 1)) 8 (local.set 2 (i32.const 1)) 9 (local.set 3 (i32.const 0)) 10 (block 11 (loop 12 (br_if 1 (i32.gt_s (local.get 0) (i32.const 5))) 13 (local.set 3 (local.get 2)) 14 (local.set 2 (i32.add (local.get 2) (local.get 1))) 15 (local.set 1 (local.get 3)) 16 (local.set 0 (i32.add (local.get 0) (i32.const 1))) 17 (br 0) 18 ) 19 ) 20 (i32.store (i32.const 0) (local.get 2)) 21 ) 22 (start $main) 23 (data (i32.const 0) "0000") 24) 25 26;; function u0:0(i64 vmctx, i64) tail { 27;; gv0 = vmctx 28;; gv1 = load.i64 notrap aligned readonly gv0+8 29;; gv2 = load.i64 notrap aligned gv1+24 30;; gv3 = vmctx 31;; gv4 = load.i64 notrap aligned gv3+64 32;; gv5 = load.i64 notrap aligned readonly can_move gv3+56 33;; stack_limit = gv2 34;; 35;; block0(v0: i64, v1: i64): 36;; @001f v2 = iconst.i32 0 37;; @0021 v3 = iconst.i32 0 38;; @0025 v4 = iconst.i32 1 39;; @0029 v5 = iconst.i32 1 40;; @002d v6 = iconst.i32 0 41;; @0033 jump block3(v3, v5, v4) ; v3 = 0, v5 = 1, v4 = 1 42;; 43;; block3(v7: i32, v11: i32, v12: i32): 44;; @0037 v8 = iconst.i32 5 45;; @0039 v9 = icmp sgt v7, v8 ; v8 = 5 46;; @0039 v10 = uextend.i32 v9 47;; @003a brif v10, block2, block5 48;; 49;; block5: 50;; @0044 v13 = iadd.i32 v11, v12 51;; @004d v14 = iconst.i32 1 52;; @004f v15 = iadd.i32 v7, v14 ; v14 = 1 53;; @0052 jump block3(v15, v13, v11) 54;; 55;; block2: 56;; @0056 v16 = iconst.i32 0 57;; @005a v17 = uextend.i64 v16 ; v16 = 0 58;; @005a v18 = load.i64 notrap aligned readonly can_move v0+56 59;; @005a v19 = iadd v18, v17 60;; @005a store.i32 little heap v11, v19 61;; @005d jump block1 62;; 63;; block1: 64;; @005d return 65;; } 66