fn add(a: u32, b: u32) u32 {
    const x: u32 = blk: {
        const c = a + b; // 7
        const d = a + c; // 10
        const e = d + b; // 14
        const f = d + e; // 24
        const g = e + f; // 38
        const h = f + g; // 62
        const i = g + h; // 100
        const j = i + d; // 110
        break :blk j;
    };
    const y = x + a; // 113
    const z = y + a; // 116
    return z;
}

Module.Function(name=add) 
@unnamed$0 = primitive(u32)
@unnamed$1 = single_mut_ptr_type(@unnamed$0)
@unnamed$2 = fntype([@unnamed$0, @unnamed$0], @unnamed$0, cc=Unspecified)
@unnamed$3 = fn(@unnamed$2, {
  %0 = arg("a") ; deaths=0b0
  %1 = arg("b") ; deaths=0b0
  %2 = dbg_stmt() ; deaths=0b1000000000000000
  %3 = alloc(@unnamed$1) ; deaths=0b0
  %4 = block({
    %5 = dbg_stmt() ; deaths=0b1000000000000000
    %6 = add(%0, %1) ; deaths=0b0
    %7 = dbg_stmt() ; deaths=0b1000000000000000
    %8 = add(%0, %6) ; deaths=0b10
    %9 = dbg_stmt() ; deaths=0b1000000000000000
    %10 = add(%8, %1) ; deaths=0b10
    %11 = dbg_stmt() ; deaths=0b1000000000000000
    %12 = add(%8, %10) ; deaths=0b0
    %13 = dbg_stmt() ; deaths=0b1000000000000000
    %14 = add(%10, %12) ; deaths=0b1
    %15 = dbg_stmt() ; deaths=0b1000000000000000
    %16 = add(%12, %14) ; deaths=0b1
    %17 = dbg_stmt() ; deaths=0b1000000000000000
    %18 = add(%14, %16) ; deaths=0b11
    %19 = dbg_stmt() ; deaths=0b1000000000000000
    %20 = add(%18, %8) ; deaths=0b11
    %21 = dbg_stmt() ; deaths=0b1000000000000000
    %22 = store(%3, %20) ; deaths=0b1000000000000001
    %23 = break("label_4", %20) ; deaths=0b1000000000000001
  }) ; deaths=0b0
  %24 = dbg_stmt() ; deaths=0b1000000000000000
  %25 = add(%4, %0) ; deaths=0b1
  %26 = dbg_stmt() ; deaths=0b1000000000000000
  %27 = add(%25, %0) ; deaths=0b11
  %28 = dbg_stmt() ; deaths=0b1000000000000000
  %29 = return(%27) ; deaths=0b1000000000000001
})