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
  %st7.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
  store x86_fp80 %v5_16, x86_fp80* %st7.global-to-local, align 4
  %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
  store x86_fp80 %v5_1e, x86_fp80* %st7.global-to-local, align 4
  %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
  %v2_3c = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_37)
  store x86_fp80 %v2_3c, x86_fp80* %st7.global-to-local, align 4
  %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
  %tmp268 = call double @llvm.fabs.f64(double %v4_4a)
  %v2_73 = fpext double %tmp268 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
  %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
  %tmp269 = call double @llvm.fabs.f64(double %v4_59)
  %v2_92 = fpext double %tmp269 to x86_fp80
  store x86_fp80 %v2_92, x86_fp80* %st4.global-to-local, align 4
  %tmp274 = fptrunc x86_fp80 %v4_7f to float
  %v2_94 = bitcast float %tmp274 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
  %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
  %tmp270 = call double @llvm.fabs.f64(double %v4_68)
  %v2_b1 = fpext double %tmp270 to x86_fp80
  store x86_fp80 %v2_b1, x86_fp80* %st3.global-to-local, align 4
  %tmp275 = fptrunc x86_fp80 %v4_9e to float
  %v2_b3 = bitcast float %tmp275 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
  %v3_cf = load double, double* bitcast (i32* @eax to double*), align 8
  %tmp271 = call double @llvm.fabs.f64(double %v3_cf)
  %v2_d1 = fpext double %tmp271 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
  %tmp272 = call double @llvm.fabs.f64(double %v3_e1)
  %v2_e3 = fpext double %tmp272 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
  %tmp273 = call double @llvm.fabs.f64(double %v3_f3)
  %v2_f5 = fpext double %tmp273 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_113 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_113 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_113 = fpext double %v3_113 to x86_fp80
  store x86_fp80 %v4_113, x86_fp80* %st7.global-to-local, align 4
  %v8_117 = add i3 %v0_113, add (i3 add (i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 2), i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)))
  store i3 %v8_117, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_119 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_119 = call i16 @__asm_fnstsw(i32 %v0_119)
  %v2_119 = sext i16 %v1_119 to i32
  %v3_119 = load i32, i32* @eax, align 8
  %v4_119 = and i32 %v3_119, -65536
  %v1_11b = udiv i32 %v2_119, 256
  %v2_11b = trunc i32 %v1_11b to i8
  %v3_11b = and i8 %v2_11b, 65
  %v4_11b = icmp eq i8 %v3_11b, 0
  %v9_11b = zext i8 %v3_11b to i32
  %v11_11b = mul i32 %v9_11b, 256
  %v2_119.masked = and i32 %v2_119, -65281
  %v12_11b = or i32 %v4_119, %v2_119.masked
  %v13_11b = or i32 %v12_11b, %v11_11b
  store i32 %v13_11b, i32* @eax, align 8
  br i1 %v4_11b, label %dec_label_pc_122, label %dec_label_pc_120

dec_label_pc_120:                                 ; preds = %dec_label_pc_0
  %v1_120 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v2_120 = fsub x86_fp80 0xK80000000000000000000, %v1_120
  store x86_fp80 %v2_120, x86_fp80* %st7.global-to-local, align 4
  br label %dec_label_pc_122

dec_label_pc_122:                                 ; preds = %dec_label_pc_120, %dec_label_pc_0
  %v0_122 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v1_122 = load i32, i32* %esi.global-to-local, align 4
  %v2_122 = add i32 %v1_122, 24
  %v3_122 = inttoptr i32 %v2_122 to double*
  %v4_122 = load double, double* %v3_122, align 4
  %v5_122 = fpext double %v4_122 to x86_fp80
  store x86_fp80 %v5_122, x86_fp80* %st7.global-to-local, align 4
  %v2_125 = load i32, i32* %edi.global-to-local, align 4
  %v3_125 = add i32 %v2_125, -40
  %v4_125 = inttoptr i32 %v3_125 to double*
  %v5_125 = load double, double* %v4_125, align 4
  %v6_125 = fpext double %v5_125 to x86_fp80
  %v7_125 = fmul x86_fp80 %v5_122, %v6_125
  %v4_128 = fadd x86_fp80 %v7_125, %v7_125
  %v2_12c = load i32, i32* %ebx.global-to-local, align 4
  %v3_12c = fptrunc x86_fp80 %v4_128 to double
  %v4_12c = inttoptr i32 %v2_12c to double*
  store double %v3_12c, double* %v4_12c, align 4
  %v6_131 = add i3 %v0_122, add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 -1)
  store x86_fp80 %v7_e5, x86_fp80* %st7.global-to-local, align 4
  %v3_134 = add i32 %v2_125, -16
  %v4_134 = inttoptr i32 %v3_134 to double*
  %v5_134 = load double, double* %v4_134, align 4
  %v6_134 = fpext double %v5_134 to x86_fp80
  %v7_134 = fmul x86_fp80 %v7_e5, %v6_134
  store x86_fp80 %v7_134, x86_fp80* %st7.global-to-local, align 4
  %v5_137 = load double, double* %v4_125, align 4
  %v6_137 = fpext double %v5_137 to x86_fp80
  %v7_137 = fadd x86_fp80 %v7_134, %v6_137
  %v2_13a = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_137)
  %v3_13a = fcmp olt x86_fp80 %v2_13a, 0xK403E8000000000000000
  %v4_13a = call x86_fp80 @llvm.cos.f80(x86_fp80 %v7_137)
  %storemerge9 = select i1 %v3_13a, x86_fp80 %v4_13a, x86_fp80 %v7_137
  %v7_13c = fmul x86_fp80 %storemerge9, %v4_9e
  store x86_fp80 %v7_13c, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 0xK00000000000000000000, x86_fp80* %st5.global-to-local, align 4
  store i3 %v6_131, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_145 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_145 = call i16 @__asm_fnstsw(i32 %v0_145)
  %v2_145 = sext i16 %v1_145 to i32
  %v3_145 = load i32, i32* @eax, align 8
  %v4_145 = and i32 %v3_145, -65536
  %v1_147 = udiv i32 %v2_145, 256
  %v2_147 = trunc i32 %v1_147 to i8
  %v3_147 = and i8 %v2_147, 65
  %v4_147 = icmp eq i8 %v3_147, 0
  %v9_147 = zext i8 %v3_147 to i32
  %v11_147 = mul i32 %v9_147, 256
  %v2_145.masked = and i32 %v2_145, -65281
  %v12_147 = or i32 %v4_145, %v2_145.masked
  %v13_147 = or i32 %v12_147, %v11_147
  store i32 %v13_147, i32* @eax, align 8
  %v3_154.pre = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  br i1 %v4_147, label %dec_label_pc_14e, label %dec_label_pc_14c

dec_label_pc_14c:                                 ; preds = %dec_label_pc_122
  %v2_14c = fsub x86_fp80 0xK80000000000000000000, %v3_154.pre
  store x86_fp80 %v2_14c, x86_fp80* %st7.global-to-local, align 4
  br label %dec_label_pc_14e

dec_label_pc_14e:                                 ; preds = %dec_label_pc_122, %dec_label_pc_14c
  %v3_154 = phi x86_fp80 [ %v2_14c, %dec_label_pc_14c ], [ %v3_154.pre, %dec_label_pc_122 ]
  %v0_14e = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v1_14e = load i32, i32* %esi.global-to-local, align 4
  %v2_14e = add i32 %v1_14e, 32
  %v3_14e = inttoptr i32 %v2_14e to double*
  %v4_14e = load double, double* %v3_14e, align 4
  %v5_14e = fpext double %v4_14e to x86_fp80
  %v2_151 = load i32, i32* %edi.global-to-local, align 4
  %v3_151 = add i32 %v2_151, -48
  %v4_151 = inttoptr i32 %v3_151 to double*
  %v5_151 = load double, double* %v4_151, align 4
  %v6_151 = fpext double %v5_151 to x86_fp80
  %v7_151 = fmul x86_fp80 %v5_14e, %v6_151
  %v4_154 = fadd x86_fp80 %v3_154, %v7_151
  %v2_158 = load i32, i32* @edx, align 8
  %v3_158 = fptrunc x86_fp80 %v4_154 to double
  %v4_158 = inttoptr i32 %v2_158 to double*
  store double %v3_158, double* %v4_158, align 4
  %v6_15d = add i3 %v0_14e, add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 -1)
  store x86_fp80 %v7_f7, x86_fp80* %st7.global-to-local, align 4
  %v3_160 = add i32 %v2_151, -16
  %v4_160 = inttoptr i32 %v3_160 to double*
  %v5_160 = load double, double* %v4_160, align 4
  %v6_160 = fpext double %v5_160 to x86_fp80
  %v7_160 = fmul x86_fp80 %v7_f7, %v6_160
  store x86_fp80 %v7_160, x86_fp80* %st7.global-to-local, align 4
  %v3_163 = add i32 %v2_151, -40
  %v4_163 = inttoptr i32 %v3_163 to double*
  %v5_163 = load double, double* %v4_163, align 4
  %v6_163 = fpext double %v5_163 to x86_fp80
  %v7_163 = fadd x86_fp80 %v7_160, %v6_163
  %v2_166 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_163)
  %v3_166 = fcmp olt x86_fp80 %v2_166, 0xK403E8000000000000000
  %v4_166 = call x86_fp80 @llvm.cos.f80(x86_fp80 %v7_163)
  %storemerge = select i1 %v3_166, x86_fp80 %v4_166, x86_fp80 %v7_163
  %v7_168 = fmul x86_fp80 %storemerge, %v4_bd
  store x86_fp80 %v7_168, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 0xK00000000000000000000, x86_fp80* %st5.global-to-local, align 4
  store i3 %v6_15d, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_171 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_171 = call i16 @__asm_fnstsw(i32 %v0_171)
  %v2_171 = sext i16 %v1_171 to i32
  %v3_171 = load i32, i32* @eax, align 8
  %v4_171 = and i32 %v3_171, -65536
  %v1_173 = udiv i32 %v2_171, 256
  %v2_173 = trunc i32 %v1_173 to i8
  %v3_173 = and i8 %v2_173, 65
  %v4_173 = icmp eq i8 %v3_173, 0
  %v9_173 = zext i8 %v3_173 to i32
  %v11_173 = mul i32 %v9_173, 256
  %v2_171.masked = and i32 %v2_171, -65281
  %v12_173 = or i32 %v4_171, %v2_171.masked
  %v13_173 = or i32 %v12_173, %v11_173
  store i32 %v13_173, i32* @eax, align 8
  %v3_180.pre = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  br i1 %v4_173, label %dec_label_pc_17a, label %dec_label_pc_178

dec_label_pc_178:                                 ; preds = %dec_label_pc_14e
  %v2_178 = fsub x86_fp80 0xK80000000000000000000, %v3_180.pre
  store x86_fp80 %v2_178, x86_fp80* %st7.global-to-local, align 4
  br label %dec_label_pc_17a

dec_label_pc_17a:                                 ; preds = %dec_label_pc_14e, %dec_label_pc_178
  %v3_180 = phi x86_fp80 [ %v2_178, %dec_label_pc_178 ], [ %v3_180.pre, %dec_label_pc_14e ]
  %v0_17a = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v1_17a = load i32, i32* %esi.global-to-local, align 4
  %v2_17a = add i32 %v1_17a, 40
  %v3_17a = inttoptr i32 %v2_17a to double*
  %v4_17a = load double, double* %v3_17a, align 4
  %v5_17a = fpext double %v4_17a to x86_fp80
  %v2_17d = load i32, i32* %edi.global-to-local, align 4
  %v3_17d = add i32 %v2_17d, -56
  %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 = fmul x86_fp80 %v5_17a, %v6_17d
  %v4_180 = fadd x86_fp80 %v3_180, %v7_17d
  store x86_fp80 %v4_180, x86_fp80* %st7.global-to-local, align 4
  %v2_184 = load i32, i32* @ecx, align 8
  %v3_184 = fptrunc x86_fp80 %v4_180 to double
  %v4_184 = inttoptr i32 %v2_184 to double*
  store double %v3_184, double* %v4_184, align 4
  %v4_18a = add i3 %v0_17a, 2
  store i3 %v4_18a, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_18c = load i32, i32* %ebx.global-to-local, align 4
  store i32 %v0_18c, 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 %v0_18c
}

; 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

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

declare i16 @__asm_fnstsw(i32) local_unnamed_addr

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

attributes #0 = { nounwind readnone speculatable }
