1;;! target = "x86_64" 2;;! flags = "-W function-references,gc -C collector=drc" 3;;! test = "optimize" 4 5(module 6 (type $ty (array (mut i64))) 7 8 (func (param i64 i64 i64) (result (ref $ty)) 9 (array.new_fixed $ty 3 (local.get 0) (local.get 1) (local.get 2)) 10 ) 11) 12;; function u0:0(i64 vmctx, i64, i64, i64, i64) -> i32 tail { 13;; gv0 = vmctx 14;; gv1 = load.i64 notrap aligned readonly gv0+8 15;; gv2 = load.i64 notrap aligned gv1+24 16;; gv3 = vmctx 17;; gv4 = load.i64 notrap aligned readonly can_move gv3+8 18;; gv5 = load.i64 notrap aligned readonly can_move gv4+32 19;; sig0 = (i64 vmctx, i32, i32, i32, i32) -> i32 tail 20;; fn0 = colocated u805306368:27 sig0 21;; stack_limit = gv2 22;; 23;; block0(v0: i64, v1: i64, v2: i64, v3: i64, v4: i64): 24;; @0025 v14 = iconst.i32 -1476395008 25;; @0025 v15 = iconst.i32 0 26;; v45 = iconst.i32 56 27;; @0025 v16 = iconst.i32 8 28;; @0025 v17 = call fn0(v0, v14, v15, v45, v16) ; v14 = -1476395008, v15 = 0, v45 = 56, v16 = 8 29;; @0025 v6 = iconst.i32 3 30;; @0025 v30 = load.i64 notrap aligned readonly can_move v0+8 31;; @0025 v18 = load.i64 notrap aligned readonly can_move v30+32 32;; @0025 v19 = uextend.i64 v17 33;; @0025 v20 = iadd v18, v19 34;; v35 = iconst.i64 24 35;; @0025 v21 = iadd v20, v35 ; v35 = 24 36;; @0025 store notrap aligned v6, v21 ; v6 = 3 37;; v32 = iconst.i64 32 38;; v52 = iadd v20, v32 ; v32 = 32 39;; @0025 store notrap aligned little v2, v52 40;; v55 = iconst.i64 40 41;; v61 = iadd v20, v55 ; v55 = 40 42;; @0025 store notrap aligned little v3, v61 43;; v79 = iconst.i64 48 44;; v85 = iadd v20, v79 ; v79 = 48 45;; @0025 store notrap aligned little v4, v85 46;; @0029 jump block1 47;; 48;; block1: 49;; @0029 return v17 50;; } 51