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

@eax = internal unnamed_addr global i32 0, align 8
@ecx = internal unnamed_addr global i32 0, align 8
@edx = internal unnamed_addr global i32 0, align 8
@global_var_1.1 = constant i8 -117

define i32 @function_0(i32 %arg1) local_unnamed_addr {
dec_label_pc_0:
  %ebx.global-to-local = alloca i32, align 4
  %edi.global-to-local = alloca i32, align 4
  %esi.global-to-local = alloca i32, align 4
  %fpsw.global-to-local = alloca i32, align 4
  %fpu_stat_TOP.global-to-local = alloca i3, align 1
  %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
  %v0_9 = load i32, i32* %ebx.global-to-local, align 4
  %v0_a = load i32, i32* %esi.global-to-local, align 4
  %v0_b = load i32, i32* %edi.global-to-local, align 4
  store i32 %arg1, i32* %esi.global-to-local, align 4
  %v1_f = add i32 %arg1, 48
  %v2_f = inttoptr i32 %v1_f to i32*
  %v3_f = load i32, i32* %v2_f, align 4
  store i32 %v3_f, i32* %edi.global-to-local, align 4
  %v0_12 = load i32, i32* @eax, align 8
  store i32 %v0_12, i32* %ebx.global-to-local, align 4
  %v0_16 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_16 = add i32 %v3_f, -32
  %v3_16 = inttoptr i32 %v2_16 to double*
  %v4_16 = load double, double* %v3_16, align 4
  %v5_16 = fpext double %v4_16 to x86_fp80
  %v2_1e = add i32 %v3_f, -16
  %v3_1e = inttoptr i32 %v2_1e to double*
  %v4_1e = load double, double* %v3_1e, align 4
  %v5_1e = fpext double %v4_1e to x86_fp80
  %v3_21 = add i32 %v3_f, -24
  %v4_21 = inttoptr i32 %v3_21 to double*
  %v5_21 = load double, double* %v4_21, align 4
  %v6_21 = fpext double %v5_21 to x86_fp80
  %v7_21 = fmul x86_fp80 %v5_1e, %v6_21
  %v3_29 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_29 = fpext double %v3_29 to x86_fp80
  %v3_2b = fmul x86_fp80 %v4_29, %v4_29
  %v3_2d = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_2d = fpext double %v3_2d to x86_fp80
  %v3_2f = fmul x86_fp80 %v4_2d, %v4_2d
  %v3_31 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_31 = fpext double %v3_31 to x86_fp80
  %v3_33 = fmul x86_fp80 %v4_31, %v4_31
  %v4_35 = fadd x86_fp80 %v3_2f, %v3_33
  %v4_37 = fadd x86_fp80 %v3_2b, %v4_35
  %v7_42 = fmul x86_fp80 %v3_2b, %v5_16
  %v11_45 = fadd x86_fp80 %v7_42, %v4_37
  %v2_48 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v11_45)
  %v4_4a = fptrunc x86_fp80 %v2_48 to double
  %v7_51 = fmul x86_fp80 %v3_2f, %v5_16
  %v11_54 = fadd x86_fp80 %v7_51, %v4_37
  %v2_57 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v11_54)
  %v4_59 = fptrunc x86_fp80 %v2_57 to double
  %v7_60 = fmul x86_fp80 %v3_33, %v5_16
  %v11_63 = fadd x86_fp80 %v7_60, %v4_37
  %v2_66 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v11_63)
  %v4_68 = fptrunc x86_fp80 %v2_66 to double
  %v6_70 = add i3 %v0_16, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 ptrtoint (i8* @global_var_1.1 to i3)))))))
  store i3 %v6_70, i3* %fpu_stat_TOP.global-to-local, align 1
  %tmp273 = call double @llvm.fabs.f64(double %v4_4a)
  %v2_73 = fpext double %tmp273 to x86_fp80
  store x86_fp80 %v2_73, x86_fp80* %st5.global-to-local, align 4
  %v1_75 = call i32 @__asm_fyl2x(i32 %v0_b)
  store i32 %v1_75, i32* @eax, align 8
  %v0_77 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st4.global-to-local, align 4
  %v3_79 = add i3 %v0_77, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)))
  store i3 %v3_79, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v2_73, x86_fp80* %st3.global-to-local, align 4
  %v0_7b = call i32 @__asm_fprem()
  store i32 %v0_7b, i32* @eax, align 8
  %v0_7d = call i32 @__asm_f2xm1()
  store i32 %v0_7d, i32* @eax, align 8
  %v0_7f = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_7f = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v4_7f = fadd x86_fp80 %v3_7f, %v2_73
  store x86_fp80 %v4_7f, x86_fp80* %st4.global-to-local, align 4
  %v7_7f = add i3 %v0_7f, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v7_7f, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_81 = call i32 @__asm_fscale()
  store i32 %v0_81, i32* @eax, align 8
  %v3_83 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  store x86_fp80 %v4_7f, x86_fp80* %st5.global-to-local, align 4
  %v0_85 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v3_83, x86_fp80* %st4.global-to-local, align 4
  %v4_87 = fptrunc x86_fp80 %v4_7f to double
  %v1_8c = load i32, i32* %edi.global-to-local, align 4
  %v2_8c = add i32 %v1_8c, -16
  %v3_8c = inttoptr i32 %v2_8c to double*
  %v4_8c = load double, double* %v3_8c, align 4
  %v5_8c = fpext double %v4_8c to x86_fp80
  store x86_fp80 %v5_8c, x86_fp80* %st5.global-to-local, align 4
  %v6_8f = add i3 %v0_85, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 ptrtoint (i8* @global_var_1.1 to i3))))
  store i3 %v6_8f, i3* %fpu_stat_TOP.global-to-local, align 1
  %tmp274 = call double @llvm.fabs.f64(double %v4_59)
  %v2_92 = fpext double %tmp274 to x86_fp80
  store x86_fp80 %v2_92, x86_fp80* %st4.global-to-local, align 4
  %tmp280 = fptrunc x86_fp80 %v4_7f to float
  %v2_94 = bitcast float %tmp280 to i32
  %v3_94 = call i32 @__asm_fyl2x(i32 %v2_94)
  store i32 %v3_94, i32* @eax, align 8
  %v0_96 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st3.global-to-local, align 4
  %v2_98 = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v3_98 = add i3 %v0_96, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)))
  store i3 %v3_98, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v2_98, x86_fp80* %st2.global-to-local, align 4
  %v0_9a = call i32 @__asm_fprem()
  store i32 %v0_9a, i32* @eax, align 8
  %v0_9c = call i32 @__asm_f2xm1()
  store i32 %v0_9c, i32* @eax, align 8
  %v0_9e = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_9e = load x86_fp80, x86_fp80* %st3.global-to-local, align 4
  %v4_9e = fadd x86_fp80 %v2_98, %v3_9e
  store x86_fp80 %v4_9e, x86_fp80* %st3.global-to-local, align 4
  %v7_9e = add i3 %v0_9e, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v7_9e, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_a0 = call i32 @__asm_fscale()
  store i32 %v0_a0, i32* @eax, align 8
  %v3_a2 = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  store x86_fp80 %v4_9e, x86_fp80* %st4.global-to-local, align 4
  %v0_a4 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v3_a2, x86_fp80* %st3.global-to-local, align 4
  %v4_a6 = fptrunc x86_fp80 %v4_9e to double
  %v1_ab = load i32, i32* %edi.global-to-local, align 4
  %v2_ab = add i32 %v1_ab, -16
  %v3_ab = inttoptr i32 %v2_ab to double*
  %v4_ab = load double, double* %v3_ab, align 4
  %v5_ab = fpext double %v4_ab to x86_fp80
  store x86_fp80 %v5_ab, x86_fp80* %st4.global-to-local, align 4
  %v6_ae = add i3 %v0_a4, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 ptrtoint (i8* @global_var_1.1 to i3))))
  store i3 %v6_ae, i3* %fpu_stat_TOP.global-to-local, align 1
  %tmp275 = call double @llvm.fabs.f64(double %v4_68)
  %v2_b1 = fpext double %tmp275 to x86_fp80
  store x86_fp80 %v2_b1, x86_fp80* %st3.global-to-local, align 4
  %tmp281 = fptrunc x86_fp80 %v4_9e to float
  %v2_b3 = bitcast float %tmp281 to i32
  %v3_b3 = call i32 @__asm_fyl2x(i32 %v2_b3)
  store i32 %v3_b3, i32* @eax, align 8
  %v0_b5 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st2.global-to-local, align 4
  %v2_b7 = load x86_fp80, x86_fp80* %st3.global-to-local, align 4
  %v3_b7 = add i3 %v0_b5, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)))
  store i3 %v3_b7, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_b9 = call i32 @__asm_fprem()
  store i32 %v0_b9, i32* @eax, align 8
  %v0_bb = call i32 @__asm_f2xm1()
  store i32 %v0_bb, i32* @eax, align 8
  %v0_bd = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_bd = load x86_fp80, x86_fp80* %st2.global-to-local, align 4
  %v4_bd = fadd x86_fp80 %v2_b7, %v3_bd
  store x86_fp80 %v4_bd, x86_fp80* %st2.global-to-local, align 4
  %v7_bd = add i3 %v0_bd, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v7_bd, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_bf = call i32 @__asm_fscale()
  store i32 %v0_bf, i32* @eax, align 8
  %v0_c3 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v4_c5 = fptrunc x86_fp80 %v4_bd to double
  %v3_cf = load double, double* bitcast (i32* @eax to double*), align 8
  %tmp276 = call double @llvm.fabs.f64(double %v3_cf)
  %v2_d1 = fpext double %tmp276 to x86_fp80
  %v7_d3 = fmul x86_fp80 %v7_21, %v2_d1
  %v2_d6 = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v3_d6 = add i3 %v0_c3, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 ptrtoint (i8* @global_var_1.1 to i3))))
  store i3 %v3_d6, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v7_d3, x86_fp80* %st2.global-to-local, align 4
  store x86_fp80 %v2_d6, x86_fp80* %st3.global-to-local, align 4
  %v2_da = call i32 @__asm_fpatan(x86_fp80 %v4_bd)
  store i32 %v2_da, i32* @eax, align 8
  %v0_dc = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_e1 = load double, double* bitcast (i32* @edx to double*), align 8
  %tmp277 = call double @llvm.fabs.f64(double %v3_e1)
  %v2_e3 = fpext double %tmp277 to x86_fp80
  %v7_e5 = fmul x86_fp80 %v7_21, %v2_e3
  %v2_e8 = load x86_fp80, x86_fp80* %st3.global-to-local, align 4
  %v3_e8 = sub i3 %v0_dc, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v3_e8, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v2_e8, x86_fp80* %st2.global-to-local, align 4
  %v2_ec = call i32 @__asm_fpatan(x86_fp80 %v7_d3)
  store i32 %v2_ec, i32* @eax, align 8
  %v0_ee = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_f3 = load double, double* bitcast (i32* @ecx to double*), align 8
  %tmp278 = call double @llvm.fabs.f64(double %v3_f3)
  %v2_f5 = fpext double %tmp278 to x86_fp80
  %v7_f7 = fmul x86_fp80 %v7_21, %v2_f5
  %v3_fa = sub i3 %v0_ee, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v3_fa, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_fe = call i32 @__asm_fpatan(x86_fp80 %v7_e5)
  store i32 %v2_fe, i32* @eax, align 8
  %v0_100 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v8_10a = add i3 %v0_100, add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 2)
  store i3 %v8_10a, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_10c = load i32, i32* %fpsw.global-to-local, align 4
  %v1_10c = call i16 @__asm_fnstsw(i32 %v0_10c)
  %v2_10c = sext i16 %v1_10c to i32
  %v3_10c = load i32, i32* @eax, align 8
  %v4_10c = and i32 %v3_10c, -65536
  %v1_10e = udiv i32 %v2_10c, 256
  %v2_10e = trunc i32 %v1_10e to i8
  %v3_10e = and i8 %v2_10e, 65
  %v4_10e = icmp eq i8 %v3_10e, 0
  %v9_10e = zext i8 %v3_10e to i32
  %v11_10e = mul i32 %v9_10e, 256
  %v2_10c.masked = and i32 %v2_10c, -65281
  %v12_10e = or i32 %v4_10c, %v2_10c.masked
  %v13_10e = or i32 %v12_10e, %v11_10e
  store i32 %v13_10e, i32* @eax, align 8
  br i1 %v4_10e, label %dec_label_pc_129, label %dec_label_pc_113

dec_label_pc_113:                                 ; preds = %dec_label_pc_0
  %v0_11a = load i32, i32* %fpsw.global-to-local, align 4
  %v1_11a = call i16 @__asm_fnstsw(i32 %v0_11a)
  %v2_11a = sext i16 %v1_11a to i32
  %v3_11a = load i32, i32* @eax, align 8
  %v4_11a = and i32 %v3_11a, -65536
  %v1_11c = udiv i32 %v2_11a, 256
  %v2_11c = trunc i32 %v1_11c to i8
  %v3_11c = and i8 %v2_11c, 65
  %v4_11c = icmp eq i8 %v3_11c, 0
  %v9_11c = zext i8 %v3_11c to i32
  %v11_11c = mul i32 %v9_11c, 256
  %v2_11a.masked = and i32 %v2_11a, -65281
  %v12_11c = or i32 %v4_11a, %v2_11a.masked
  %v13_11c = or i32 %v12_11c, %v11_11c
  store i32 %v13_11c, i32* @eax, align 8
  %v4_126 = fsub double -0.000000e+00, %v4_87
  %spec.select = select i1 %v4_11c, double %v4_87, double %v4_126
  br label %dec_label_pc_129

dec_label_pc_129:                                 ; preds = %dec_label_pc_113, %dec_label_pc_0
  %stack_var_-52.0 = phi double [ %v4_87, %dec_label_pc_0 ], [ %spec.select, %dec_label_pc_113 ]
  %v0_132 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_132 = call i16 @__asm_fnstsw(i32 %v0_132)
  %v2_132 = sext i16 %v1_132 to i32
  %v3_132 = load i32, i32* @eax, align 8
  %v4_132 = and i32 %v3_132, -65536
  %v1_134 = udiv i32 %v2_132, 256
  %v2_134 = trunc i32 %v1_134 to i8
  %v3_134 = and i8 %v2_134, 65
  %v4_134 = icmp eq i8 %v3_134, 0
  %v9_134 = zext i8 %v3_134 to i32
  %v11_134 = mul i32 %v9_134, 256
  %v2_132.masked = and i32 %v2_132, -65281
  %v12_134 = or i32 %v4_132, %v2_132.masked
  %v13_134 = or i32 %v12_134, %v11_134
  store i32 %v13_134, i32* @eax, align 8
  br i1 %v4_134, label %dec_label_pc_14f, label %dec_label_pc_139

dec_label_pc_139:                                 ; preds = %dec_label_pc_129
  %v0_140 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_140 = call i16 @__asm_fnstsw(i32 %v0_140)
  %v2_140 = sext i16 %v1_140 to i32
  %v3_140 = load i32, i32* @eax, align 8
  %v4_140 = and i32 %v3_140, -65536
  %v1_142 = udiv i32 %v2_140, 256
  %v2_142 = trunc i32 %v1_142 to i8
  %v3_142 = and i8 %v2_142, 65
  %v4_142 = icmp eq i8 %v3_142, 0
  %v9_142 = zext i8 %v3_142 to i32
  %v11_142 = mul i32 %v9_142, 256
  %v2_140.masked = and i32 %v2_140, -65281
  %v12_142 = or i32 %v4_140, %v2_140.masked
  %v13_142 = or i32 %v12_142, %v11_142
  store i32 %v13_142, i32* @eax, align 8
  %v4_14c = fsub double -0.000000e+00, %v4_a6
  %spec.select279 = select i1 %v4_142, double %v4_a6, double %v4_14c
  br label %dec_label_pc_14f

dec_label_pc_14f:                                 ; preds = %dec_label_pc_139, %dec_label_pc_129
  %stack_var_-60.0 = phi double [ %v4_a6, %dec_label_pc_129 ], [ %spec.select279, %dec_label_pc_139 ]
  %v0_158 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_158 = call i16 @__asm_fnstsw(i32 %v0_158)
  %v2_158 = sext i16 %v1_158 to i32
  %v3_158 = load i32, i32* @eax, align 8
  %v4_158 = and i32 %v3_158, -65536
  %v1_15a = udiv i32 %v2_158, 256
  %v2_15a = trunc i32 %v1_15a to i8
  %v3_15a = and i8 %v2_15a, 65
  %v4_15a = icmp eq i8 %v3_15a, 0
  %v9_15a = zext i8 %v3_15a to i32
  %v11_15a = mul i32 %v9_15a, 256
  %v2_158.masked = and i32 %v2_158, -65281
  %v12_15a = or i32 %v4_158, %v2_158.masked
  %v13_15a = or i32 %v12_15a, %v11_15a
  store i32 %v13_15a, i32* @eax, align 8
  br i1 %v4_15a, label %dec_label_pc_175, label %dec_label_pc_15f

dec_label_pc_15f:                                 ; preds = %dec_label_pc_14f
  %v0_166 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_166 = call i16 @__asm_fnstsw(i32 %v0_166)
  %v2_166 = sext i16 %v1_166 to i32
  %v3_166 = load i32, i32* @eax, align 8
  %v4_166 = and i32 %v3_166, -65536
  %v1_168 = udiv i32 %v2_166, 256
  %v2_168 = trunc i32 %v1_168 to i8
  %v3_168 = and i8 %v2_168, 65
  %v4_168 = icmp eq i8 %v3_168, 0
  %v9_168 = zext i8 %v3_168 to i32
  %v11_168 = mul i32 %v9_168, 256
  %v2_166.masked = and i32 %v2_166, -65281
  %v12_168 = or i32 %v4_166, %v2_166.masked
  %v13_168 = or i32 %v12_168, %v11_168
  store i32 %v13_168, i32* @eax, align 8
  br i1 %v4_168, label %dec_label_pc_175, label %dec_label_pc_16d

dec_label_pc_16d:                                 ; preds = %dec_label_pc_15f
  %v4_172 = fsub double -0.000000e+00, %v4_c5
  %.pre = fpext double %v4_172 to x86_fp80
  br label %dec_label_pc_175

dec_label_pc_175:                                 ; preds = %dec_label_pc_16d, %dec_label_pc_15f, %dec_label_pc_14f
  %v6_1bc.pre-phi = phi x86_fp80 [ %.pre, %dec_label_pc_16d ], [ %v4_bd, %dec_label_pc_15f ], [ %v4_bd, %dec_label_pc_14f ]
  %v0_177 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_17a = load i32, i32* %edi.global-to-local, align 4
  %v3_17a = add i32 %v2_17a, -16
  %v4_17a = inttoptr i32 %v3_17a to double*
  %v5_17a = load double, double* %v4_17a, align 4
  %v6_17a = fpext double %v5_17a to x86_fp80
  %v7_17a = fmul x86_fp80 %v7_d3, %v6_17a
  %v3_17d = add i32 %v2_17a, -40
  %v4_17d = inttoptr i32 %v3_17d to double*
  %v5_17d = load double, double* %v4_17d, align 4
  %v6_17d = fpext double %v5_17d to x86_fp80
  %v7_17d = fadd x86_fp80 %v7_17a, %v6_17d
  %v2_180 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_17d)
  %v3_180 = fcmp olt x86_fp80 %v2_180, 0xK403E8000000000000000
  %v4_180 = call x86_fp80 @llvm.cos.f80(x86_fp80 %v7_17d)
  %storemerge17 = select i1 %v3_180, x86_fp80 %v4_180, x86_fp80 %v7_17d
  %v6_182 = fpext double %stack_var_-52.0 to x86_fp80
  %v7_182 = fmul x86_fp80 %storemerge17, %v6_182
  %v1_185 = load i32, i32* %esi.global-to-local, align 4
  %v2_185 = add i32 %v1_185, 24
  %v3_185 = inttoptr i32 %v2_185 to double*
  %v4_185 = load double, double* %v3_185, align 4
  %v5_185 = fpext double %v4_185 to x86_fp80
  %v7_188 = fmul x86_fp80 %v6_17d, %v5_185
  %v4_18b = fadd x86_fp80 %v7_188, %v7_182
  %v2_18f = load i32, i32* %ebx.global-to-local, align 4
  %v3_18f = fptrunc x86_fp80 %v4_18b to double
  %v4_18f = inttoptr i32 %v2_18f to double*
  store double %v3_18f, double* %v4_18f, align 4
  %v5_197 = load double, double* %v4_17a, align 4
  %v6_197 = fpext double %v5_197 to x86_fp80
  %v7_197 = fmul x86_fp80 %v7_e5, %v6_197
  %v5_19a = load double, double* %v4_17d, align 4
  %v6_19a = fpext double %v5_19a to x86_fp80
  %v7_19a = fadd x86_fp80 %v7_197, %v6_19a
  %v2_19d = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_19a)
  %v3_19d = fcmp olt x86_fp80 %v2_19d, 0xK403E8000000000000000
  %v4_19d = call x86_fp80 @llvm.cos.f80(x86_fp80 %v7_19a)
  %storemerge16 = select i1 %v3_19d, x86_fp80 %v4_19d, x86_fp80 %v7_19a
  %v6_19f = fpext double %stack_var_-60.0 to x86_fp80
  %v7_19f = fmul x86_fp80 %storemerge16, %v6_19f
  %v2_1a2 = add i32 %v1_185, 32
  %v3_1a2 = inttoptr i32 %v2_1a2 to double*
  %v4_1a2 = load double, double* %v3_1a2, align 4
  %v5_1a2 = fpext double %v4_1a2 to x86_fp80
  %v3_1a5 = add i32 %v2_17a, -48
  %v4_1a5 = inttoptr i32 %v3_1a5 to double*
  %v5_1a5 = load double, double* %v4_1a5, align 4
  %v6_1a5 = fpext double %v5_1a5 to x86_fp80
  %v7_1a5 = fmul x86_fp80 %v5_1a2, %v6_1a5
  %v4_1a8 = fadd x86_fp80 %v7_1a5, %v7_19f
  %v2_1ac = load i32, i32* @edx, align 8
  %v3_1ac = fptrunc x86_fp80 %v4_1a8 to double
  %v4_1ac = inttoptr i32 %v2_1ac to double*
  store double %v3_1ac, double* %v4_1ac, align 4
  %v5_1b4 = load double, double* %v4_17a, align 4
  %v6_1b4 = fpext double %v5_1b4 to x86_fp80
  %v7_1b4 = fmul x86_fp80 %v7_f7, %v6_1b4
  %v5_1b7 = load double, double* %v4_17d, align 4
  %v6_1b7 = fpext double %v5_1b7 to x86_fp80
  %v7_1b7 = fadd x86_fp80 %v7_1b4, %v6_1b7
  %v2_1ba = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_1b7)
  %v3_1ba = fcmp olt x86_fp80 %v2_1ba, 0xK403E8000000000000000
  %v4_1ba = call x86_fp80 @llvm.cos.f80(x86_fp80 %v7_1b7)
  %storemerge = select i1 %v3_1ba, x86_fp80 %v4_1ba, x86_fp80 %v7_1b7
  %v7_1bc = fmul x86_fp80 %v6_1bc.pre-phi, %storemerge
  %v2_1bf = add i32 %v1_185, 40
  %v3_1bf = inttoptr i32 %v2_1bf to double*
  %v4_1bf = load double, double* %v3_1bf, align 4
  %v5_1bf = fpext double %v4_1bf to x86_fp80
  %v3_1c2 = add i32 %v2_17a, -56
  %v4_1c2 = inttoptr i32 %v3_1c2 to double*
  %v5_1c2 = load double, double* %v4_1c2, align 4
  %v6_1c2 = fpext double %v5_1c2 to x86_fp80
  %v7_1c2 = fmul x86_fp80 %v5_1bf, %v6_1c2
  %v4_1c5 = fadd x86_fp80 %v7_1c2, %v7_1bc
  %v2_1c9 = load i32, i32* @ecx, align 8
  %v3_1c9 = fptrunc x86_fp80 %v4_1c5 to double
  %v4_1c9 = inttoptr i32 %v2_1c9 to double*
  store double %v3_1c9, double* %v4_1c9, align 4
  %v4_1cf = add i3 %v0_177, 1
  store i3 %v4_1cf, i3* %fpu_stat_TOP.global-to-local, align 1
  store i32 %v2_18f, i32* @eax, align 8
  store i32 %v0_b, i32* %edi.global-to-local, align 4
  store i32 %v0_a, i32* %esi.global-to-local, align 4
  store i32 %v0_9, i32* %ebx.global-to-local, align 4
  ret i32 %v2_18f
}

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

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

declare i32 @__asm_fyl2x(i32) local_unnamed_addr

declare i32 @__asm_fprem() local_unnamed_addr

declare i32 @__asm_f2xm1() local_unnamed_addr

declare i32 @__asm_fscale() local_unnamed_addr

declare i32 @__asm_fpatan(x86_fp80) local_unnamed_addr

declare i16 @__asm_fnstsw(i32) local_unnamed_addr

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

; Function Attrs: nounwind readnone speculatable
declare double @llvm.fabs.f64(double) #0

attributes #0 = { nounwind readnone speculatable }
