source_filename = "test"
target datalayout = "e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"

define i32 @function_0(i32 %arg1) local_unnamed_addr {
dec_label_pc_0:
  %eax.global-to-local = alloca i32, align 4
  %esi.global-to-local = alloca i32, align 4
  %st2.global-to-local = alloca x86_fp80, align 4
  %st3.global-to-local = alloca x86_fp80, align 4
  %st4.global-to-local = alloca x86_fp80, align 4
  %st5.global-to-local = alloca x86_fp80, align 4
  %st6.global-to-local = alloca x86_fp80, align 4
  %st7.global-to-local = alloca x86_fp80, align 4
  %v0_3 = load i32, i32* %esi.global-to-local, align 4
  store i32 %arg1, i32* %esi.global-to-local, align 4
  %v1_8 = add i32 %arg1, 48
  %v2_8 = inttoptr i32 %v1_8 to i32*
  %v3_8 = load i32, i32* %v2_8, align 4
  %v2_b = add i32 %v3_8, -16
  %v3_b = inttoptr i32 %v2_b to double*
  %v4_b = load double, double* %v3_b, align 4
  %v5_b = fpext double %v4_b to x86_fp80
  store x86_fp80 %v5_b, x86_fp80* %st7.global-to-local, align 4
  %v4_10 = fdiv x86_fp80 0xK3FFF8000000000000000, %v5_b
  store x86_fp80 %v4_10, x86_fp80* %st6.global-to-local, align 4
  %v2_12 = add i32 %arg1, 8
  %v3_12 = inttoptr i32 %v2_12 to double*
  %v4_12 = load double, double* %v3_12, align 4
  %v5_12 = fpext double %v4_12 to x86_fp80
  %v4_15 = fmul x86_fp80 %v4_10, %v5_12
  store x86_fp80 %v4_15, x86_fp80* %st5.global-to-local, align 4
  %v2_17 = inttoptr i32 %arg1 to double*
  %v3_17 = load double, double* %v2_17, align 4
  %v4_17 = fpext double %v3_17 to x86_fp80
  %v4_19 = fmul x86_fp80 %v4_10, %v4_17
  store x86_fp80 %v4_19, x86_fp80* %st4.global-to-local, align 4
  %v2_1b = add i32 %arg1, 16
  %v3_1b = inttoptr i32 %v2_1b to double*
  %v4_1b = load double, double* %v3_1b, align 4
  %v5_1b = fpext double %v4_1b to x86_fp80
  %v4_1e = fmul x86_fp80 %v4_10, %v5_1b
  %v2_22 = call x86_fp80 @llvm.round.f80(x86_fp80 %v4_19)
  store x86_fp80 %v2_22, x86_fp80* %st3.global-to-local, align 4
  %v2_26 = call x86_fp80 @llvm.round.f80(x86_fp80 %v4_15)
  store x86_fp80 %v2_26, x86_fp80* %st2.global-to-local, align 4
  %v2_2a = call x86_fp80 @llvm.round.f80(x86_fp80 %v4_1e)
  %v4_2c = fsub x86_fp80 %v4_1e, %v2_2a
  store x86_fp80 %v4_2c, x86_fp80* %st6.global-to-local, align 4
  %v3_2e = add i32 %v3_8, -24
  %v4_2e = inttoptr i32 %v3_2e to double*
  %v5_2e = load double, double* %v4_2e, align 4
  %v6_2e = fpext double %v5_2e to x86_fp80
  %v7_2e = fmul x86_fp80 %v2_2a, %v6_2e
  %v3_31 = add i32 %arg1, 40
  %v4_31 = fptrunc x86_fp80 %v7_2e to double
  %v5_31 = inttoptr i32 %v3_31 to double*
  store double %v4_31, double* %v5_31, align 4
  %v2_34 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v3_34 = load x86_fp80, x86_fp80* %st2.global-to-local, align 4
  %v4_34 = fsub x86_fp80 %v2_34, %v3_34
  store x86_fp80 %v4_34, x86_fp80* %st5.global-to-local, align 4
  %v5_36 = load double, double* %v4_2e, align 4
  %v6_36 = fpext double %v5_36 to x86_fp80
  %v7_36 = fmul x86_fp80 %v3_34, %v6_36
  store x86_fp80 %v7_36, x86_fp80* %st2.global-to-local, align 4
  %v3_39 = add i32 %arg1, 32
  %v4_39 = fptrunc x86_fp80 %v7_36 to double
  %v5_39 = inttoptr i32 %v3_39 to double*
  store double %v4_39, double* %v5_39, align 4
  %v2_3c = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v3_3c = load x86_fp80, x86_fp80* %st3.global-to-local, align 4
  %v4_3c = fsub x86_fp80 %v2_3c, %v3_3c
  store x86_fp80 %v4_3c, x86_fp80* %st4.global-to-local, align 4
  %v5_3e = load double, double* %v4_2e, align 4
  %v6_3e = fpext double %v5_3e to x86_fp80
  %v7_3e = fmul x86_fp80 %v3_3c, %v6_3e
  store x86_fp80 %v7_3e, x86_fp80* %st3.global-to-local, align 4
  %v3_41 = add i32 %arg1, 24
  %v4_41 = fptrunc x86_fp80 %v7_3e to double
  %v5_41 = inttoptr i32 %v3_41 to double*
  store double %v4_41, double* %v5_41, align 4
  %v2_44 = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v3_44 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v4_44 = fmul x86_fp80 %v2_44, %v3_44
  store x86_fp80 %v4_44, x86_fp80* %st4.global-to-local, align 4
  %v3_46 = add i32 %arg1, -32
  %v4_46 = fptrunc x86_fp80 %v4_44 to double
  %v5_46 = inttoptr i32 %v3_46 to double*
  store double %v4_46, double* %v5_46, align 4
  %v2_49 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v3_49 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v4_49 = fmul x86_fp80 %v2_49, %v3_49
  store x86_fp80 %v4_49, x86_fp80* %st5.global-to-local, align 4
  %v3_4b = add i32 %arg1, -24
  %v4_4b = fptrunc x86_fp80 %v4_49 to double
  %v5_4b = inttoptr i32 %v3_4b to double*
  store double %v4_4b, double* %v5_4b, align 4
  %v2_4e = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v3_4e = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v4_4e = fmul x86_fp80 %v2_4e, %v3_4e
  store x86_fp80 %v4_4e, x86_fp80* %st7.global-to-local, align 4
  %v3_50 = add i32 %arg1, -16
  %v4_50 = fptrunc x86_fp80 %v4_4e to double
  %v5_50 = inttoptr i32 %v3_50 to double*
  store double %v4_50, double* %v5_50, align 4
  store i32 %v0_3, i32* %esi.global-to-local, align 4
  %v0_56 = load i32, i32* %eax.global-to-local, align 4
  ret i32 %v0_56
}

; Function Attrs: nounwind readnone speculatable
declare x86_fp80 @llvm.round.f80(x86_fp80) #0

attributes #0 = { nounwind readnone speculatable }
