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
@global_var_41.2 = constant i8 -66

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
  %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_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
  %v0_10 = load i32, i32* @eax, align 8
  store i32 %v0_10, i32* %ebx.global-to-local, align 4
  %v1_12 = add i32 %arg1, 48
  %v2_12 = inttoptr i32 %v1_12 to i32*
  %v3_12 = load i32, i32* %v2_12, align 4
  store i32 %v3_12, i32* %edi.global-to-local, align 4
  %v1_17 = add i32 %v3_12, -12
  %v2_17 = inttoptr i32 %v1_17 to i32*
  %v3_17 = load i32, i32* %v2_17, align 4
  %v10_17 = icmp eq i32 %v3_17, 0
  %v1_1b = icmp eq i1 %v10_17, false
  %v0_30 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  br i1 %v1_1b, label %dec_label_pc_30, label %dec_label_pc_1d

dec_label_pc_1d:                                  ; preds = %dec_label_pc_0
  %v1_1d = sub i3 %v0_30, ptrtoint (i8* @global_var_1.1 to i3)
  store x86_fp80 0xK00000000000000000000, x86_fp80* %st7.global-to-local, align 4
  store i3 %v1_1d, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_124

dec_label_pc_30:                                  ; preds = %dec_label_pc_0
  %v2_30 = add i32 %v3_12, -20
  %v3_30 = inttoptr i32 %v2_30 to double*
  %v4_30 = load double, double* %v3_30, align 4
  %v5_30 = fpext double %v4_30 to x86_fp80
  store x86_fp80 %v5_30, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st6.global-to-local, align 4
  %v8_35 = add i3 %v0_30, 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_35, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_37 = load i32, i32* %fpsw.global-to-local, align 4
  %v1_37 = call i16 @__asm_fnstsw(i32 %v0_37)
  %v2_37 = sext i16 %v1_37 to i32
  %v3_37 = load i32, i32* @eax, align 8
  %v4_37 = and i32 %v3_37, -65536
  %v1_39 = udiv i32 %v2_37, 256
  %v2_39 = trunc i32 %v1_39 to i8
  %v3_39 = and i8 %v2_39, ptrtoint (i8* @global_var_41.2 to i8)
  %v2_37.masked = and i32 %v2_37, -65281
  %v12_39 = or i32 %v4_37, %v2_37.masked
  %v3_3c = xor i8 %v3_39, 64
  %v4_3c = icmp eq i8 %v3_3c, 0
  %v9_3c = zext i8 %v3_3c to i32
  %v11_3c = mul i32 %v9_3c, 256
  %v13_3c = or i32 %v12_39, %v11_3c
  store i32 %v13_3c, i32* @eax, align 8
  br i1 %v4_3c, label %dec_label_pc_103, label %dec_label_pc_45

dec_label_pc_45:                                  ; preds = %dec_label_pc_30
  %v1_45 = load i32, i32* %edi.global-to-local, align 4
  %v2_45 = add i32 %v1_45, -20
  %v3_45 = inttoptr i32 %v2_45 to double*
  %v4_45 = load double, double* %v3_45, align 4
  %v5_45 = fpext double %v4_45 to x86_fp80
  store x86_fp80 %v5_45, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 0xK00000000000000000000, x86_fp80* %st6.global-to-local, align 4
  %v0_4c = load i32, i32* %fpsw.global-to-local, align 4
  %v1_4c = call i16 @__asm_fnstsw(i32 %v0_4c)
  %v2_4c = sext i16 %v1_4c to i32
  %v3_4c = load i32, i32* @eax, align 8
  %v4_4c = and i32 %v3_4c, -65536
  %v1_4e = udiv i32 %v2_4c, 256
  %v2_4e = trunc i32 %v1_4e to i8
  %v3_4e = and i8 %v2_4e, ptrtoint (i8* @global_var_41.2 to i8)
  %v2_4c.masked = and i32 %v2_4c, -65281
  %v12_4e = or i32 %v4_4c, %v2_4c.masked
  %v3_51 = xor i8 %v3_4e, 64
  %v4_51 = icmp eq i8 %v3_51, 0
  %v9_51 = zext i8 %v3_51 to i32
  %v11_51 = mul i32 %v9_51, 256
  %v13_51 = or i32 %v12_4e, %v11_51
  store i32 %v13_51, i32* @eax, align 8
  br i1 %v4_51, label %dec_label_pc_103, label %dec_label_pc_5a

dec_label_pc_5a:                                  ; preds = %dec_label_pc_45
  %v0_5c = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_5c = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_5c = fpext double %v3_5c to x86_fp80
  %v3_5e = fmul x86_fp80 %v4_5c, %v4_5c
  %v3_60 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_60 = fpext double %v3_60 to x86_fp80
  %v3_62 = fmul x86_fp80 %v4_60, %v4_60
  %v3_64 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_64 = fpext double %v3_64 to x86_fp80
  %v3_66 = fmul x86_fp80 %v4_64, %v4_64
  store x86_fp80 %v3_66, x86_fp80* %st5.global-to-local, align 4
  %v4_68 = fadd x86_fp80 %v3_62, %v3_66
  store x86_fp80 %v4_68, x86_fp80* %st6.global-to-local, align 4
  %v4_6a = fadd x86_fp80 %v3_5e, %v4_68
  %v2_6c = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_6a)
  store x86_fp80 %v2_6c, x86_fp80* %st7.global-to-local, align 4
  %v1_71 = load i32, i32* %edi.global-to-local, align 4
  %v2_71 = add i32 %v1_71, -20
  %v3_71 = inttoptr i32 %v2_71 to double*
  %v4_71 = load double, double* %v3_71, align 4
  %v5_71 = fpext double %v4_71 to x86_fp80
  %v6_71 = add i3 %v0_5c, add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 -3)
  store i3 %v6_71, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v5_71, x86_fp80* %st7.global-to-local, align 4
  %v2_76 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v2_6c)
  store x86_fp80 %v2_76, x86_fp80* %st6.global-to-local, align 4
  %v2_78 = call i32 @__asm_fyl2x(x86_fp80 %v2_6c)
  store i32 %v2_78, i32* @eax, align 8
  %v0_7a = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st5.global-to-local, align 4
  %v2_7c = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v3_7c = add i3 %v0_7a, -2
  store i3 %v3_7c, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v2_7c, x86_fp80* %st4.global-to-local, align 4
  %v0_7e = call i32 @__asm_fprem()
  store i32 %v0_7e, i32* @eax, align 8
  %v0_80 = call i32 @__asm_f2xm1()
  store i32 %v0_80, i32* @eax, align 8
  %v0_82 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_82 = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v3_82 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v4_82 = fadd x86_fp80 %v2_82, %v3_82
  store x86_fp80 %v4_82, x86_fp80* %st5.global-to-local, align 4
  %v7_82 = add i3 %v0_82, 1
  store i3 %v7_82, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_84 = call i32 @__asm_fscale()
  store i32 %v0_84, i32* @eax, align 8
  %v2_86 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v0_88 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_8d = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_8d = fpext double %v3_8d to x86_fp80
  store x86_fp80 %v4_8d, x86_fp80* %st6.global-to-local, align 4
  %v3_8f = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_8f = fpext double %v3_8f to x86_fp80
  %v5_8f = add i3 %v0_88, 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 1)))
  store i3 %v5_8f, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_8f, x86_fp80* %st5.global-to-local, align 4
  %v0_91 = call i32 @__asm_fpatan()
  store i32 %v0_91, i32* @eax, align 8
  %v1_93 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v2_93 = load i32, i32* %edi.global-to-local, align 4
  %v3_93 = add i32 %v2_93, -20
  %v4_93 = inttoptr i32 %v3_93 to double*
  %v5_93 = load double, double* %v4_93, align 4
  %v6_93 = fpext double %v5_93 to x86_fp80
  %v7_93 = fmul x86_fp80 %v1_93, %v6_93
  store x86_fp80 %v7_93, x86_fp80* %st5.global-to-local, align 4
  %v0_99 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_99 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_99 = fpext double %v3_99 to x86_fp80
  %v7_9b = fdiv x86_fp80 %v4_99, %v2_6c
  %v2_9e = add i3 %v0_99, 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)))
  %v3_a0 = fmul x86_fp80 %v7_9b, %v7_9b
  %v4_a6 = fsub x86_fp80 0xK3FFF8000000000000000, %v3_a0
  %v2_a8 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_a6)
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st2.global-to-local, align 4
  %v4_ac = fadd x86_fp80 %v2_a8, 0xK3FFF8000000000000000
  store i3 %v2_9e, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_ac, x86_fp80* %st4.global-to-local, align 4
  %v0_b2 = call i32 @__asm_fpatan()
  store i32 %v0_b2, i32* @eax, align 8
  %v3_b4 = fadd x86_fp80 %v7_9b, %v7_9b
  %v2_b6 = load i32, i32* %edi.global-to-local, align 4
  %v3_b6 = add i32 %v2_b6, -20
  %v4_b6 = inttoptr i32 %v3_b6 to double*
  %v5_b6 = load double, double* %v4_b6, align 4
  %v6_b6 = fpext double %v5_b6 to x86_fp80
  %v7_b6 = fmul x86_fp80 %v3_b4, %v6_b6
  %v2_ba = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_b6)
  %v3_ba = fcmp olt x86_fp80 %v2_ba, 0xK403E8000000000000000
  %v0_ba = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  br i1 %v3_ba, label %bb, label %dec_label_pc_5a._crit_edge

dec_label_pc_5a._crit_edge:                       ; preds = %dec_label_pc_5a
  %v1_bc.pre = load x86_fp80, x86_fp80* %st2.global-to-local, align 4
  br label %bb290

bb:                                               ; preds = %dec_label_pc_5a
  %v4_ba = call x86_fp80 @llvm.sin.f80(x86_fp80 %v7_b6)
  %v7_ba = call x86_fp80 @llvm.cos.f80(x86_fp80 %v7_b6)
  %v8_ba = add i3 %v0_ba, -1
  store i3 %v8_ba, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v7_ba, x86_fp80* %st2.global-to-local, align 4
  br label %bb290

bb290:                                            ; preds = %dec_label_pc_5a._crit_edge, %bb
  %v1_bf = phi x86_fp80 [ %v7_b6, %dec_label_pc_5a._crit_edge ], [ %v4_ba, %bb ]
  %v1_bc = phi x86_fp80 [ %v1_bc.pre, %dec_label_pc_5a._crit_edge ], [ %v7_ba, %bb ]
  %v0_bc = phi i3 [ %v0_ba, %dec_label_pc_5a._crit_edge ], [ %v8_ba, %bb ]
  %v9_bc = add i3 %v0_bc, 1
  %v6_bf = add i3 %v0_bc, 2
  store i3 %v6_bf, i3* %fpu_stat_TOP.global-to-local, align 1
  %v1_c2 = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v2_c2 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v1_c2)
  %v3_c2 = fcmp olt x86_fp80 %v2_c2, 0xK403E8000000000000000
  br i1 %v3_c2, label %bb292, label %bb293

bb292:                                            ; preds = %bb290
  %v4_c2 = call x86_fp80 @llvm.sin.f80(x86_fp80 %v1_c2)
  store x86_fp80 %v4_c2, x86_fp80* %st4.global-to-local, align 4
  %v7_c2 = call x86_fp80 @llvm.cos.f80(x86_fp80 %v1_c2)
  store i3 %v9_bc, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %bb293

bb293:                                            ; preds = %bb290, %bb292
  %v4_c4.pre-phi.in = phi x86_fp80 [ %v1_bf, %bb290 ], [ %v7_c2, %bb292 ]
  %v1_c7 = phi x86_fp80 [ %v1_c2, %bb290 ], [ %v4_c2, %bb292 ]
  %v0_c4 = phi i3 [ %v6_bf, %bb290 ], [ %v9_bc, %bb292 ]
  %v7_cd = fmul x86_fp80 %v2_86, %v4_c4.pre-phi.in
  %v11_d0 = fmul x86_fp80 %v7_cd, %v1_bc
  store x86_fp80 %v11_d0, x86_fp80* %st4.global-to-local, align 4
  %v3_d3 = add i32 %v2_b6, -12
  %v4_d3 = inttoptr i32 %v3_d3 to i32*
  %v5_d3 = load i32, i32* %v4_d3, align 4
  %v6_d3 = sitofp i32 %v5_d3 to x86_fp80
  %v7_d3 = fmul x86_fp80 %v11_d0, %v6_d3
  store x86_fp80 %v7_d3, x86_fp80* %st4.global-to-local, align 4
  %v3_d6 = inttoptr i32 %v2_b6 to double*
  %v4_d6 = load double, double* %v3_d6, align 4
  %v5_d6 = fpext double %v4_d6 to x86_fp80
  %v6_d6 = fmul x86_fp80 %v7_d3, %v5_d6
  %v4_d8 = fptrunc x86_fp80 %v6_d6 to double
  %v6_db = add i3 %v0_c4, add (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 1)), i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 -1))
  store i3 %v6_db, i3* %fpu_stat_TOP.global-to-local, align 1
  %v7_de = fmul x86_fp80 %v2_86, %v1_c7
  %v11_e1 = fmul x86_fp80 %v7_de, %v1_bc
  store x86_fp80 %v11_e1, x86_fp80* %st4.global-to-local, align 4
  %v5_e4 = load i32, i32* %v4_d3, align 4
  %v6_e4 = sitofp i32 %v5_e4 to x86_fp80
  %v7_e4 = fmul x86_fp80 %v11_e1, %v6_e4
  store x86_fp80 %v7_e4, x86_fp80* %st4.global-to-local, align 4
  %v4_e7 = load double, double* %v3_d6, align 4
  %v5_e7 = fpext double %v4_e7 to x86_fp80
  %v6_e7 = fmul x86_fp80 %v7_e4, %v5_e7
  %v4_e9 = fptrunc x86_fp80 %v6_e7 to double
  %v7_ef = fmul x86_fp80 %v2_86, %v1_bf
  store x86_fp80 %v7_ef, x86_fp80* %st4.global-to-local, align 4
  %v5_f5 = load i32, i32* %v4_d3, align 4
  %v6_f5 = sitofp i32 %v5_f5 to x86_fp80
  %v7_f5 = fmul x86_fp80 %v7_ef, %v6_f5
  store x86_fp80 %v7_f5, x86_fp80* %st4.global-to-local, align 4
  %v4_f8 = load double, double* %v3_d6, align 4
  %v5_f8 = fpext double %v4_f8 to x86_fp80
  %v6_f8 = fmul x86_fp80 %v7_f5, %v5_f8
  store x86_fp80 %v6_f8, x86_fp80* %st4.global-to-local, align 4
  %v4_fa = fptrunc x86_fp80 %v6_f8 to double
  %v6_fa = add i3 %v0_c4, add (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 1)), i3 ptrtoint (i8* @global_var_1.1 to i3))
  br label %dec_label_pc_124

dec_label_pc_103:                                 ; preds = %dec_label_pc_45, %dec_label_pc_30
  %v0_103 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_103 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_103 = fpext double %v3_103 to x86_fp80
  %v5_103 = sub i3 %v0_103, ptrtoint (i8* @global_var_1.1 to i3)
  store x86_fp80 %v4_103, x86_fp80* %st7.global-to-local, align 4
  %v2_105 = load i32, i32* %edi.global-to-local, align 4
  %v3_105 = add i32 %v2_105, -12
  %v4_105 = inttoptr i32 %v3_105 to i32*
  %v5_105 = load i32, i32* %v4_105, align 4
  %v6_105 = sitofp i32 %v5_105 to x86_fp80
  %v7_105 = fmul x86_fp80 %v4_103, %v6_105
  store x86_fp80 %v7_105, x86_fp80* %st7.global-to-local, align 4
  %v3_108 = inttoptr i32 %v2_105 to double*
  %v4_108 = load double, double* %v3_108, align 4
  %v5_108 = fpext double %v4_108 to x86_fp80
  %v6_108 = fmul x86_fp80 %v7_105, %v5_108
  %v4_10a = fptrunc x86_fp80 %v6_108 to double
  %v3_10d = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_10d = fpext double %v3_10d to x86_fp80
  store x86_fp80 %v4_10d, x86_fp80* %st7.global-to-local, align 4
  %v5_10f = load i32, i32* %v4_105, align 4
  %v6_10f = sitofp i32 %v5_10f to x86_fp80
  %v7_10f = fmul x86_fp80 %v4_10d, %v6_10f
  store x86_fp80 %v7_10f, x86_fp80* %st7.global-to-local, align 4
  %v4_112 = load double, double* %v3_108, align 4
  %v5_112 = fpext double %v4_112 to x86_fp80
  %v6_112 = fmul x86_fp80 %v7_10f, %v5_112
  %v4_114 = fptrunc x86_fp80 %v6_112 to double
  %v3_117 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_117 = fpext double %v3_117 to x86_fp80
  store i3 %v5_103, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_117, x86_fp80* %st7.global-to-local, align 4
  %v5_119 = load i32, i32* %v4_105, align 4
  %v6_119 = sitofp i32 %v5_119 to x86_fp80
  %v7_119 = fmul x86_fp80 %v4_117, %v6_119
  store x86_fp80 %v7_119, x86_fp80* %st7.global-to-local, align 4
  %v4_11c = load double, double* %v3_108, align 4
  %v5_11c = fpext double %v4_11c to x86_fp80
  %v6_11c = fmul x86_fp80 %v7_119, %v5_11c
  store x86_fp80 %v6_11c, x86_fp80* %st7.global-to-local, align 4
  %v4_11e = fptrunc x86_fp80 %v6_11c to double
  br label %dec_label_pc_124

dec_label_pc_124:                                 ; preds = %bb293, %dec_label_pc_103, %dec_label_pc_1d
  %v0_124 = phi i32 [ %v2_105, %dec_label_pc_103 ], [ %v2_b6, %bb293 ], [ %v3_12, %dec_label_pc_1d ]
  %stack_var_-12.0 = phi double [ %v4_10a, %dec_label_pc_103 ], [ %v4_d8, %bb293 ], [ 0.000000e+00, %dec_label_pc_1d ]
  %stack_var_-20.0 = phi double [ %v4_114, %dec_label_pc_103 ], [ %v4_e9, %bb293 ], [ 0.000000e+00, %dec_label_pc_1d ]
  %stack_var_-28.0 = phi double [ %v4_11e, %dec_label_pc_103 ], [ %v4_fa, %bb293 ], [ 0.000000e+00, %dec_label_pc_1d ]
  %v0_12e = phi i3 [ %v0_103, %dec_label_pc_103 ], [ %v6_fa, %bb293 ], [ %v0_30, %dec_label_pc_1d ]
  store i3 %v0_12e, i3* %fpu_stat_TOP.global-to-local, align 1
  %v1_124 = add i32 %v0_124, -24
  %v2_124 = inttoptr i32 %v1_124 to i32*
  %v3_124 = load i32, i32* %v2_124, align 4
  %v10_124 = icmp eq i32 %v3_124, 0
  br i1 %v10_124, label %dec_label_pc_156, label %dec_label_pc_12a

dec_label_pc_12a:                                 ; preds = %dec_label_pc_124
  %v3_12e = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_12e = fpext double %v3_12e to x86_fp80
  %v3_130 = fmul x86_fp80 %v4_12e, %v4_12e
  %v3_132 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_132 = fpext double %v3_132 to x86_fp80
  %v3_134 = fmul x86_fp80 %v4_132, %v4_132
  %v4_136 = fadd x86_fp80 %v3_130, %v3_134
  %v2_138 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_136)
  store x86_fp80 %v2_138, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 %v4_132, x86_fp80* %st6.global-to-local, align 4
  %v5_13c = add i3 %v0_12e, add (i3 xor (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 -1), i3 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3)))
  store i3 %v5_13c, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_12e, x86_fp80* %st5.global-to-local, align 4
  %v0_13e = call i32 @__asm_fpatan()
  store i32 %v0_13e, i32* @eax, align 8
  %v1_140 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v2_140 = load i32, i32* %edi.global-to-local, align 4
  %v3_140 = add i32 %v2_140, -24
  %v4_140 = inttoptr i32 %v3_140 to i32*
  %v5_140 = load i32, i32* %v4_140, align 4
  %v6_140 = sitofp i32 %v5_140 to x86_fp80
  %v7_140 = fmul x86_fp80 %v1_140, %v6_140
  store x86_fp80 %v7_140, x86_fp80* %st5.global-to-local, align 4
  %v3_143 = inttoptr i32 %v2_140 to double*
  %v4_143 = load double, double* %v3_143, align 4
  %v5_143 = fpext double %v4_143 to x86_fp80
  %v6_143 = fmul x86_fp80 %v7_140, %v5_143
  %v6_145 = fpext double %stack_var_-20.0 to x86_fp80
  %v7_145 = fadd x86_fp80 %v6_143, %v6_145
  store x86_fp80 %v7_145, x86_fp80* %st5.global-to-local, align 4
  %v0_148 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v4_148 = fptrunc x86_fp80 %v7_145 to double
  %v1_14b = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v5_14b = load i32, i32* %v4_140, align 4
  %v6_14b = sitofp i32 %v5_14b to x86_fp80
  %v7_14b = fmul x86_fp80 %v1_14b, %v6_14b
  store x86_fp80 %v7_14b, x86_fp80* %st6.global-to-local, align 4
  %v4_14e = load double, double* %v3_143, align 4
  %v5_14e = fpext double %v4_14e to x86_fp80
  %v6_14e = fmul x86_fp80 %v7_14b, %v5_14e
  %v6_150 = fpext double %stack_var_-12.0 to x86_fp80
  %v7_150 = fadd x86_fp80 %v6_14e, %v6_150
  store x86_fp80 %v7_150, x86_fp80* %st6.global-to-local, align 4
  %v4_153 = fptrunc x86_fp80 %v7_150 to double
  %v6_153 = add i3 %v0_148, 2
  store i3 %v6_153, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_156

dec_label_pc_156:                                 ; preds = %dec_label_pc_12a, %dec_label_pc_124
  %v0_160 = phi i3 [ %v0_12e, %dec_label_pc_124 ], [ %v6_153, %dec_label_pc_12a ]
  %v0_156 = phi i32 [ %v0_124, %dec_label_pc_124 ], [ %v2_140, %dec_label_pc_12a ]
  %stack_var_-12.1 = phi double [ %stack_var_-12.0, %dec_label_pc_124 ], [ %v4_153, %dec_label_pc_12a ]
  %stack_var_-20.1 = phi double [ %stack_var_-20.0, %dec_label_pc_124 ], [ %v4_148, %dec_label_pc_12a ]
  %v1_156 = add i32 %v0_156, -28
  %v2_156 = inttoptr i32 %v1_156 to i32*
  %v3_156 = load i32, i32* %v2_156, align 4
  %v10_156 = icmp eq i32 %v3_156, 0
  br i1 %v10_156, label %dec_label_pc_1a1, label %dec_label_pc_15c

dec_label_pc_15c:                                 ; preds = %dec_label_pc_156
  %v3_160 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_160 = fpext double %v3_160 to x86_fp80
  %v3_162 = fmul x86_fp80 %v4_160, %v4_160
  %v3_164 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_164 = fpext double %v3_164 to x86_fp80
  %v3_166 = fmul x86_fp80 %v4_164, %v4_164
  %v4_168 = fadd x86_fp80 %v3_162, %v3_166
  %v3_16a = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_16a = fpext double %v3_16a to x86_fp80
  %v3_16c = fmul x86_fp80 %v4_16a, %v4_16a
  %v4_16e = fadd x86_fp80 %v3_16c, %v4_168
  %v2_170 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_16e)
  store x86_fp80 %v2_170, x86_fp80* %st7.global-to-local, align 4
  %v2_174 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_168)
  store x86_fp80 %v2_174, x86_fp80* %st6.global-to-local, align 4
  %v5_176 = add i3 %v0_160, 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 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3))))
  store i3 %v5_176, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_16a, x86_fp80* %st5.global-to-local, align 4
  %v0_178 = call i32 @__asm_fpatan()
  store i32 %v0_178, i32* @eax, align 8
  %v0_17a = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_17a = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_17a = fpext double %v3_17a to x86_fp80
  store x86_fp80 %v4_17a, x86_fp80* %st4.global-to-local, align 4
  %v3_17c = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_17c = fpext double %v3_17c to x86_fp80
  %v5_17c = add i3 %v0_17a, 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 %v5_17c, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_17e = call i32 @__asm_fpatan()
  store i32 %v0_17e, i32* @eax, align 8
  %v2_180 = load i32, i32* %edi.global-to-local, align 4
  %v3_180 = add i32 %v2_180, -28
  %v4_180 = inttoptr i32 %v3_180 to i32*
  %v5_180 = load i32, i32* %v4_180, align 4
  %v6_180 = sitofp i32 %v5_180 to x86_fp80
  %v7_180 = fmul x86_fp80 %v4_17c, %v6_180
  %v3_183 = inttoptr i32 %v2_180 to double*
  %v4_183 = load double, double* %v3_183, align 4
  %v5_183 = fpext double %v4_183 to x86_fp80
  %v6_183 = fmul x86_fp80 %v7_180, %v5_183
  %v6_185 = fpext double %stack_var_-28.0 to x86_fp80
  %v7_185 = fadd x86_fp80 %v6_183, %v6_185
  %v0_188 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v4_188 = fptrunc x86_fp80 %v7_185 to double
  %v1_18b = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v5_18b = load i32, i32* %v4_180, align 4
  %v6_18b = sitofp i32 %v5_18b to x86_fp80
  %v7_18b = fmul x86_fp80 %v1_18b, %v6_18b
  store x86_fp80 %v7_18b, x86_fp80* %st4.global-to-local, align 4
  %v4_18e = load double, double* %v3_183, align 4
  %v5_18e = fpext double %v4_18e to x86_fp80
  %v6_18e = fmul x86_fp80 %v7_18b, %v5_18e
  %v6_190 = fpext double %stack_var_-20.1 to x86_fp80
  %v7_190 = fadd x86_fp80 %v6_18e, %v6_190
  store x86_fp80 %v7_190, x86_fp80* %st4.global-to-local, align 4
  %v4_193 = fptrunc x86_fp80 %v7_190 to double
  %v1_196 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v5_196 = load i32, i32* %v4_180, align 4
  %v6_196 = sitofp i32 %v5_196 to x86_fp80
  %v7_196 = fmul x86_fp80 %v1_196, %v6_196
  store x86_fp80 %v7_196, x86_fp80* %st5.global-to-local, align 4
  %v4_199 = load double, double* %v3_183, align 4
  %v5_199 = fpext double %v4_199 to x86_fp80
  %v6_199 = fmul x86_fp80 %v7_196, %v5_199
  %v6_19b = fpext double %stack_var_-12.1 to x86_fp80
  %v7_19b = fadd x86_fp80 %v6_199, %v6_19b
  store x86_fp80 %v7_19b, x86_fp80* %st5.global-to-local, align 4
  %v4_19e = fptrunc x86_fp80 %v7_19b to double
  %v6_19e = add i3 %v0_188, add (i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 ptrtoint (i8* @global_var_1.1 to i3))
  store i3 %v6_19e, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_1a1

dec_label_pc_1a1:                                 ; preds = %dec_label_pc_15c, %dec_label_pc_156
  %v0_1ac = phi i3 [ %v0_160, %dec_label_pc_156 ], [ %v6_19e, %dec_label_pc_15c ]
  %v0_21b = phi i32 [ %v0_156, %dec_label_pc_156 ], [ %v2_180, %dec_label_pc_15c ]
  %stack_var_-12.2 = phi double [ %stack_var_-12.1, %dec_label_pc_156 ], [ %v4_19e, %dec_label_pc_15c ]
  %stack_var_-20.2 = phi double [ %stack_var_-20.1, %dec_label_pc_156 ], [ %v4_193, %dec_label_pc_15c ]
  %stack_var_-28.1 = phi double [ %stack_var_-28.0, %dec_label_pc_156 ], [ %v4_188, %dec_label_pc_15c ]
  %v1_1a2 = add i32 %v0_21b, -32
  %v2_1a2 = inttoptr i32 %v1_1a2 to i32*
  %v3_1a2 = load i32, i32* %v2_1a2, align 4
  %v10_1a2 = icmp eq i32 %v3_1a2, 0
  br i1 %v10_1a2, label %dec_label_pc_1d2, label %dec_label_pc_1a8

dec_label_pc_1a8:                                 ; preds = %dec_label_pc_1a1
  %v3_1ac = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_1ac = fpext double %v3_1ac to x86_fp80
  %v3_1ae = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_1ae = fpext double %v3_1ae to x86_fp80
  %v2_1b0 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_1ae)
  %v3_1b0 = fcmp olt x86_fp80 %v2_1b0, 0xK403E8000000000000000
  %v4_1b0 = call x86_fp80 @llvm.cos.f80(x86_fp80 %v4_1ae)
  %storemerge9 = select i1 %v3_1b0, x86_fp80 %v4_1b0, x86_fp80 %v4_1ae
  %v4_1b2 = fmul x86_fp80 %storemerge9, %v4_1ac
  store x86_fp80 %v4_1ac, x86_fp80* %st6.global-to-local, align 4
  %v4_1b8 = call x86_fp80 @llvm.sin.f80(x86_fp80 %v4_1ae)
  %storemerge8 = select i1 %v3_1b0, x86_fp80 %v4_1b8, x86_fp80 %v4_1ae
  store x86_fp80 %storemerge8, x86_fp80* %st5.global-to-local, align 4
  %v4_1ba = fmul x86_fp80 %v4_1b2, %v4_1b2
  store x86_fp80 %v4_1ba, x86_fp80* %st7.global-to-local, align 4
  %v5_1bc = load i32, i32* %v2_1a2, align 4
  %v6_1bc = sitofp i32 %v5_1bc to x86_fp80
  %v7_1bc = fmul x86_fp80 %v4_1ba, %v6_1bc
  store x86_fp80 %v7_1bc, x86_fp80* %st7.global-to-local, align 4
  %v3_1bf = inttoptr i32 %v0_21b to double*
  %v4_1bf = load double, double* %v3_1bf, align 4
  %v5_1bf = fpext double %v4_1bf to x86_fp80
  %v6_1bf = fmul x86_fp80 %v7_1bc, %v5_1bf
  %v6_1c1 = fpext double %stack_var_-20.2 to x86_fp80
  %v7_1c1 = fadd x86_fp80 %v6_1bf, %v6_1c1
  store x86_fp80 %v7_1c1, x86_fp80* %st7.global-to-local, align 4
  %v4_1c4 = fptrunc x86_fp80 %v7_1c1 to double
  %v5_1c7 = load i32, i32* %v2_1a2, align 4
  %v6_1c7 = sitofp i32 %v5_1c7 to x86_fp80
  %v7_1c7 = fmul x86_fp80 %v7_1c1, %v6_1c7
  store x86_fp80 %v7_1c7, x86_fp80* %st7.global-to-local, align 4
  %v4_1ca = load double, double* %v3_1bf, align 4
  %v5_1ca = fpext double %v4_1ca to x86_fp80
  %v6_1ca = fmul x86_fp80 %v7_1c7, %v5_1ca
  %v6_1cc = fpext double %stack_var_-12.2 to x86_fp80
  %v7_1cc = fadd x86_fp80 %v6_1ca, %v6_1cc
  store x86_fp80 %v7_1cc, x86_fp80* %st7.global-to-local, align 4
  %v4_1cf = fptrunc x86_fp80 %v7_1cc to double
  store i3 %v0_1ac, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_1d2

dec_label_pc_1d2:                                 ; preds = %dec_label_pc_1a8, %dec_label_pc_1a1
  %stack_var_-12.3 = phi double [ %stack_var_-12.2, %dec_label_pc_1a1 ], [ %v4_1cf, %dec_label_pc_1a8 ]
  %stack_var_-20.3 = phi double [ %stack_var_-20.2, %dec_label_pc_1a1 ], [ %v4_1c4, %dec_label_pc_1a8 ]
  %v1_1d3 = add i32 %v0_21b, -36
  %v2_1d3 = inttoptr i32 %v1_1d3 to i32*
  %v3_1d3 = load i32, i32* %v2_1d3, align 4
  %v10_1d3 = icmp eq i32 %v3_1d3, 0
  br i1 %v10_1d3, label %dec_label_pc_21a, label %dec_label_pc_1d9

dec_label_pc_1d9:                                 ; preds = %dec_label_pc_1d2
  %v3_1dd = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_1dd = fpext double %v3_1dd to x86_fp80
  %v5_1dd = sub i3 %v0_1ac, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v5_1dd, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_1dd, x86_fp80* %st7.global-to-local, align 4
  %v2_1df = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_1dd)
  %v3_1df = fcmp olt x86_fp80 %v2_1df, 0xK403E8000000000000000
  br i1 %v3_1df, label %bb294, label %bb295

bb294:                                            ; preds = %dec_label_pc_1d9
  %v4_1df = call x86_fp80 @llvm.sin.f80(x86_fp80 %v4_1dd)
  store x86_fp80 %v4_1df, x86_fp80* %st7.global-to-local, align 4
  %v7_1df = call x86_fp80 @llvm.cos.f80(x86_fp80 %v4_1dd)
  %v8_1df = sub i3 %v5_1dd, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v8_1df, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v7_1df, x86_fp80* %st6.global-to-local, align 4
  br label %bb295

bb295:                                            ; preds = %dec_label_pc_1d9, %bb294
  %v3_1f4 = phi x86_fp80 [ %v4_1dd, %dec_label_pc_1d9 ], [ %v4_1df, %bb294 ]
  %v0_1e1 = phi i3 [ %v5_1dd, %dec_label_pc_1d9 ], [ %v8_1df, %bb294 ]
  %v3_1e1 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_1e1 = fpext double %v3_1e1 to x86_fp80
  %v5_1e1 = sub i3 %v0_1e1, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v5_1e1, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_1e1, x86_fp80* %st5.global-to-local, align 4
  %v2_1e3 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_1e1)
  %v3_1e3 = fcmp olt x86_fp80 %v2_1e3, 0xK403E8000000000000000
  br i1 %v3_1e3, label %bb296, label %._crit_edge

._crit_edge:                                      ; preds = %bb295
  %v2_1e5.pre = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  br label %bb297

bb296:                                            ; preds = %bb295
  %v4_1e3 = call x86_fp80 @llvm.sin.f80(x86_fp80 %v4_1e1)
  store x86_fp80 %v4_1e3, x86_fp80* %st5.global-to-local, align 4
  %v7_1e3 = call x86_fp80 @llvm.cos.f80(x86_fp80 %v4_1e1)
  %v8_1e3 = sub i3 %v5_1e1, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v8_1e3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v7_1e3, x86_fp80* %st4.global-to-local, align 4
  br label %bb297

bb297:                                            ; preds = %._crit_edge, %bb296
  %v2_1f4 = phi x86_fp80 [ %v4_1e1, %._crit_edge ], [ %v4_1e3, %bb296 ]
  %v0_1f1 = phi i3 [ %v5_1e1, %._crit_edge ], [ %v8_1e3, %bb296 ]
  %v2_1e5 = phi x86_fp80 [ %v2_1e5.pre, %._crit_edge ], [ %v7_1e3, %bb296 ]
  %v3_1e5 = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  store x86_fp80 %v2_1e5, x86_fp80* %st6.global-to-local, align 4
  %v4_1e7 = load double, double* bitcast (i32* @eax to double*), align 8
  %v5_1e7 = fpext double %v4_1e7 to x86_fp80
  %v6_1e7 = fmul x86_fp80 %v3_1e5, %v5_1e7
  store x86_fp80 %v6_1e7, x86_fp80* %st4.global-to-local, align 4
  %v5_1e9 = load i32, i32* %v2_1d3, align 4
  %v6_1e9 = sitofp i32 %v5_1e9 to x86_fp80
  %v7_1e9 = fmul x86_fp80 %v6_1e7, %v6_1e9
  store x86_fp80 %v7_1e9, x86_fp80* %st4.global-to-local, align 4
  %v3_1ec = inttoptr i32 %v0_21b to double*
  %v4_1ec = load double, double* %v3_1ec, align 4
  %v5_1ec = fpext double %v4_1ec to x86_fp80
  %v6_1ec = fmul x86_fp80 %v7_1e9, %v5_1ec
  %v6_1ee = fpext double %stack_var_-28.1 to x86_fp80
  %v7_1ee = fadd x86_fp80 %v6_1ec, %v6_1ee
  store x86_fp80 %v7_1ee, x86_fp80* %st4.global-to-local, align 4
  %v4_1f1 = fptrunc x86_fp80 %v7_1ee to double
  %v4_1f6 = fmul x86_fp80 %v3_1f4, %v2_1e5
  %v6_1fa = fmul x86_fp80 %v4_1f6, %v5_1e7
  store x86_fp80 %v6_1fa, x86_fp80* %st7.global-to-local, align 4
  %v6_200 = fmul x86_fp80 %v3_1f4, %v5_1e7
  store x86_fp80 %v6_200, x86_fp80* %st5.global-to-local, align 4
  %v4_202 = fmul x86_fp80 %v2_1f4, %v6_200
  store x86_fp80 %v4_202, x86_fp80* %st6.global-to-local, align 4
  %v5_204 = load i32, i32* %v2_1d3, align 4
  %v6_204 = sitofp i32 %v5_204 to x86_fp80
  %v7_204 = fmul x86_fp80 %v4_202, %v6_204
  store x86_fp80 %v7_204, x86_fp80* %st6.global-to-local, align 4
  %v4_207 = load double, double* %v3_1ec, align 4
  %v5_207 = fpext double %v4_207 to x86_fp80
  %v6_207 = fmul x86_fp80 %v7_204, %v5_207
  %v6_209 = fpext double %stack_var_-20.3 to x86_fp80
  %v7_209 = fadd x86_fp80 %v6_207, %v6_209
  store x86_fp80 %v7_209, x86_fp80* %st6.global-to-local, align 4
  %v4_20c = fptrunc x86_fp80 %v7_209 to double
  %v5_20f = load i32, i32* %v2_1d3, align 4
  %v6_20f = sitofp i32 %v5_20f to x86_fp80
  %v7_20f = fmul x86_fp80 %v6_1fa, %v6_20f
  store x86_fp80 %v7_20f, x86_fp80* %st7.global-to-local, align 4
  %v4_212 = load double, double* %v3_1ec, align 4
  %v5_212 = fpext double %v4_212 to x86_fp80
  %v6_212 = fmul x86_fp80 %v7_20f, %v5_212
  %v6_214 = fpext double %stack_var_-12.3 to x86_fp80
  %v7_214 = fadd x86_fp80 %v6_212, %v6_214
  store x86_fp80 %v7_214, x86_fp80* %st7.global-to-local, align 4
  %v4_217 = fptrunc x86_fp80 %v7_214 to double
  %v6_217 = add i3 %v0_1f1, add (i3 add (i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 ptrtoint (i8* @global_var_1.1 to i3)), i3 ptrtoint (i8* @global_var_1.1 to i3))
  store i3 %v6_217, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_21a

dec_label_pc_21a:                                 ; preds = %bb297, %dec_label_pc_1d2
  %v0_225 = phi i3 [ %v0_1ac, %dec_label_pc_1d2 ], [ %v6_217, %bb297 ]
  %stack_var_-12.4 = phi double [ %stack_var_-12.3, %dec_label_pc_1d2 ], [ %v4_217, %bb297 ]
  %stack_var_-20.4 = phi double [ %stack_var_-20.3, %dec_label_pc_1d2 ], [ %v4_20c, %bb297 ]
  %stack_var_-28.2 = phi double [ %stack_var_-28.1, %dec_label_pc_1d2 ], [ %v4_1f1, %bb297 ]
  %v1_21b = add i32 %v0_21b, -40
  %v2_21b = inttoptr i32 %v1_21b to i32*
  %v3_21b = load i32, i32* %v2_21b, align 4
  %v10_21b = icmp eq i32 %v3_21b, 0
  br i1 %v10_21b, label %dec_label_pc_21a.dec_label_pc_2fb_crit_edge, label %dec_label_pc_225

dec_label_pc_21a.dec_label_pc_2fb_crit_edge:      ; preds = %dec_label_pc_21a
  %v2_2ff.pre = load i32, i32* @ecx, align 8
  br label %dec_label_pc_2fb

dec_label_pc_225:                                 ; preds = %dec_label_pc_21a
  %v3_225 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_225 = fpext double %v3_225 to x86_fp80
  %v3_227 = fmul x86_fp80 %v4_225, %v4_225
  %v3_229 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_229 = fpext double %v3_229 to x86_fp80
  %v3_22b = fmul x86_fp80 %v4_229, %v4_229
  %v4_22d = fadd x86_fp80 %v3_227, %v3_22b
  %v2_22f = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_22d)
  %v3_231 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_231 = fpext double %v3_231 to x86_fp80
  %v4_233 = fdiv x86_fp80 %v4_231, %v2_22f
  %v6_239 = fmul x86_fp80 %v4_233, %v4_229
  %v6_23d = fsub x86_fp80 %v4_225, %v6_239
  %v4_241 = fmul x86_fp80 %v6_23d, 0xK3FFFB8AA3B295C17F000
  store x86_fp80 %v4_241, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st6.global-to-local, align 4
  %v3_245 = add i3 %v0_225, 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 sub (i3 0, i3 ptrtoint (i8* @global_var_1.1 to i3))))
  store i3 %v3_245, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_241, x86_fp80* %st5.global-to-local, align 4
  %v0_247 = call i32 @__asm_fprem()
  store i32 %v0_247, i32* @eax, align 8
  %v0_249 = call i32 @__asm_f2xm1()
  store i32 %v0_249, i32* @eax, align 8
  %v0_24b = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_24b = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v3_24b = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v4_24b = fadd x86_fp80 %v2_24b, %v3_24b
  store x86_fp80 %v4_24b, x86_fp80* %st6.global-to-local, align 4
  %v7_24b = add i3 %v0_24b, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v7_24b, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_24d = call i32 @__asm_fscale()
  store i32 %v0_24d, i32* @eax, align 8
  %v2_24f = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v3_24f = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 %v2_24f, x86_fp80* %st7.global-to-local, align 4
  %v0_251 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v3_24f, x86_fp80* %st6.global-to-local, align 4
  %v4_251 = add i3 %v0_251, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v4_251, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_253 = load i32, i32* %edi.global-to-local, align 4
  %v3_253 = add i32 %v2_253, 8
  %v4_253 = inttoptr i32 %v3_253 to double*
  %v5_253 = load double, double* %v4_253, align 4
  %v6_253 = fpext double %v5_253 to x86_fp80
  %v7_253 = fmul x86_fp80 %v2_24f, %v6_253
  %v4_25d = load double, double* bitcast (i32* @eax to double*), align 8
  %v5_25d = fpext double %v4_25d to x86_fp80
  %v6_25d = fmul x86_fp80 %v4_233, %v5_25d
  %v4_25f = load double, double* bitcast (i32* @edx to double*), align 8
  %v5_25f = fpext double %v4_25f to x86_fp80
  %v6_25f = fadd x86_fp80 %v6_25d, %v5_25f
  store x86_fp80 %v6_25f, x86_fp80* %st7.global-to-local, align 4
  %v2_261 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v6_25f)
  %v3_261 = fcmp olt x86_fp80 %v2_261, 0xK403E8000000000000000
  br i1 %v3_261, label %bb298, label %bb299

bb298:                                            ; preds = %dec_label_pc_225
  %v4_261 = call x86_fp80 @llvm.sin.f80(x86_fp80 %v6_25f)
  store x86_fp80 %v4_261, x86_fp80* %st7.global-to-local, align 4
  %v7_261 = call x86_fp80 @llvm.cos.f80(x86_fp80 %v6_25f)
  store i3 %v0_251, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v7_261, x86_fp80* %st6.global-to-local, align 4
  br label %bb299

bb299:                                            ; preds = %dec_label_pc_225, %bb298
  %v1_27232 = phi x86_fp80 [ %v3_24f, %dec_label_pc_225 ], [ %v7_261, %bb298 ]
  %v1_263 = phi x86_fp80 [ %v6_25f, %dec_label_pc_225 ], [ %v4_261, %bb298 ]
  %v0_263 = phi i3 [ %v4_251, %dec_label_pc_225 ], [ %v0_251, %bb298 ]
  %v6_269 = add i3 %v0_263, 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_269, i3* %fpu_stat_TOP.global-to-local, align 1
  %v6_26e = fsub x86_fp80 %v6_25d, %v5_25f
  store x86_fp80 %v6_26e, x86_fp80* %st7.global-to-local, align 4
  %v2_270 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v6_26e)
  %v3_270 = fcmp olt x86_fp80 %v2_270, 0xK403E8000000000000000
  br i1 %v3_270, label %bb300, label %bb301

bb300:                                            ; preds = %bb299
  %v4_270 = call x86_fp80 @llvm.sin.f80(x86_fp80 %v6_26e)
  store x86_fp80 %v4_270, x86_fp80* %st7.global-to-local, align 4
  %v7_270 = call x86_fp80 @llvm.cos.f80(x86_fp80 %v6_26e)
  %v8_270 = sub i3 %v6_269, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v8_270, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v7_270, x86_fp80* %st6.global-to-local, align 4
  br label %bb301

bb301:                                            ; preds = %bb299, %bb300
  %v1_275 = phi x86_fp80 [ %v6_26e, %bb299 ], [ %v4_270, %bb300 ]
  %v1_272 = phi x86_fp80 [ %v1_27232, %bb299 ], [ %v7_270, %bb300 ]
  %v0_272 = phi i3 [ %v6_269, %bb299 ], [ %v8_270, %bb300 ]
  %v6_27c = fmul x86_fp80 %v4_233, %v5_25f
  %v3_27e = fadd x86_fp80 %v6_27c, %v6_27c
  %v4_282 = fmul x86_fp80 %v3_27e, 0xK3FFFB8AA3B295C17F000
  store x86_fp80 %v4_282, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st6.global-to-local, align 4
  %v3_286 = add i3 %v0_272, 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 %v3_286, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_282, x86_fp80* %st5.global-to-local, align 4
  %v0_288 = call i32 @__asm_fprem()
  store i32 %v0_288, i32* @eax, align 8
  %v0_28a = call i32 @__asm_f2xm1()
  store i32 %v0_28a, i32* @eax, align 8
  %v0_28c = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_28c = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v3_28c = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v4_28c = fadd x86_fp80 %v2_28c, %v3_28c
  store x86_fp80 %v4_28c, x86_fp80* %st6.global-to-local, align 4
  %v7_28c = add i3 %v0_28c, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v7_28c, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_28e = call i32 @__asm_fscale()
  store i32 %v0_28e, i32* @eax, align 8
  %v2_290 = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v3_290 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v0_292 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v3_290, x86_fp80* %st6.global-to-local, align 4
  %v11_29b = fmul x86_fp80 %v1_272, %v2_290
  %v7_29e = fadd x86_fp80 %v11_29b, %v1_263
  %v7_2a1 = fmul x86_fp80 %v7_29e, %v7_253
  store x86_fp80 %v7_2a1, x86_fp80* %st7.global-to-local, align 4
  %v2_2a4 = load i32, i32* %edi.global-to-local, align 4
  %v3_2a4 = add i32 %v2_2a4, -40
  %v4_2a4 = inttoptr i32 %v3_2a4 to i32*
  %v5_2a4 = load i32, i32* %v4_2a4, align 4
  %v6_2a4 = sitofp i32 %v5_2a4 to x86_fp80
  %v7_2a4 = fmul x86_fp80 %v7_2a1, %v6_2a4
  store x86_fp80 %v7_2a4, x86_fp80* %st7.global-to-local, align 4
  %v3_2a7 = inttoptr i32 %v2_2a4 to double*
  %v4_2a7 = load double, double* %v3_2a7, align 4
  %v5_2a7 = fpext double %v4_2a7 to x86_fp80
  %v6_2a7 = fmul x86_fp80 %v7_2a4, %v5_2a7
  %v6_2a9 = fpext double %stack_var_-12.4 to x86_fp80
  %v7_2a9 = fadd x86_fp80 %v6_2a7, %v6_2a9
  %v4_2ac = fptrunc x86_fp80 %v7_2a9 to double
  %v7_2b3 = fmul x86_fp80 %v1_275, %v2_290
  %v7_2b8 = fsub x86_fp80 %v1_263, %v7_2b3
  %v7_2bb = fmul x86_fp80 %v7_2b8, %v7_253
  store x86_fp80 %v7_2bb, x86_fp80* %st7.global-to-local, align 4
  %v5_2be = load i32, i32* %v4_2a4, align 4
  %v6_2be = sitofp i32 %v5_2be to x86_fp80
  %v7_2be = fmul x86_fp80 %v7_2bb, %v6_2be
  store x86_fp80 %v7_2be, x86_fp80* %st7.global-to-local, align 4
  %v4_2c1 = load double, double* %v3_2a7, align 4
  %v5_2c1 = fpext double %v4_2c1 to x86_fp80
  %v6_2c1 = fmul x86_fp80 %v7_2be, %v5_2c1
  %v6_2c3 = fpext double %stack_var_-20.4 to x86_fp80
  %v7_2c3 = fadd x86_fp80 %v6_2c1, %v6_2c3
  %v4_2c6 = fptrunc x86_fp80 %v7_2c3 to double
  %v3_2ca = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_2ca = fpext double %v3_2ca to x86_fp80
  %v3_2cc = fmul x86_fp80 %v4_2ca, %v4_2ca
  %v3_2ce = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_2ce = fpext double %v3_2ce to x86_fp80
  %v3_2d0 = fmul x86_fp80 %v4_2ce, %v4_2ce
  %v4_2d2 = fadd x86_fp80 %v3_2cc, %v3_2d0
  %v2_2d4 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_2d2)
  %v4_2d8 = fmul x86_fp80 %v2_2d4, 0xK3FFFB8AA3B295C17F000
  store x86_fp80 %v4_2d8, x86_fp80* %st7.global-to-local, align 4
  store x86_fp80 0xK3FFF8000000000000000, x86_fp80* %st6.global-to-local, align 4
  %v3_2dc = add i3 %v0_292, 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 %v3_2dc, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_2d8, x86_fp80* %st5.global-to-local, align 4
  %v0_2de = call i32 @__asm_fprem()
  store i32 %v0_2de, i32* @eax, align 8
  %v0_2e0 = call i32 @__asm_f2xm1()
  store i32 %v0_2e0, i32* @eax, align 8
  %v0_2e2 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_2e2 = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v3_2e2 = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v4_2e2 = fadd x86_fp80 %v2_2e2, %v3_2e2
  store x86_fp80 %v4_2e2, x86_fp80* %st6.global-to-local, align 4
  %v7_2e2 = add i3 %v0_2e2, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v7_2e2, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_2e4 = call i32 @__asm_fscale()
  store i32 %v0_2e4, i32* @eax, align 8
  %v2_2e6 = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v0_2e8 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_2ea = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_2ea = fpext double %v3_2ea to x86_fp80
  %v2_2ec = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_2ea)
  %v3_2ec = fcmp olt x86_fp80 %v2_2ec, 0xK403E8000000000000000
  %v4_2ec = call x86_fp80 @llvm.sin.f80(x86_fp80 %v4_2ea)
  %storemerge = select i1 %v3_2ec, x86_fp80 %v4_2ec, x86_fp80 %v4_2ea
  store x86_fp80 %storemerge, x86_fp80* %st6.global-to-local, align 4
  %v4_2ee = fmul x86_fp80 %v2_2e6, %v2_2e6
  store x86_fp80 %v4_2ee, x86_fp80* %st7.global-to-local, align 4
  %v2_2f0 = load i32, i32* %edi.global-to-local, align 4
  %v3_2f0 = add i32 %v2_2f0, -40
  %v4_2f0 = inttoptr i32 %v3_2f0 to i32*
  %v5_2f0 = load i32, i32* %v4_2f0, align 4
  %v6_2f0 = sitofp i32 %v5_2f0 to x86_fp80
  %v7_2f0 = fmul x86_fp80 %v4_2ee, %v6_2f0
  store x86_fp80 %v7_2f0, x86_fp80* %st7.global-to-local, align 4
  %v3_2f3 = inttoptr i32 %v2_2f0 to double*
  %v4_2f3 = load double, double* %v3_2f3, align 4
  %v5_2f3 = fpext double %v4_2f3 to x86_fp80
  %v6_2f3 = fmul x86_fp80 %v7_2f0, %v5_2f3
  %v6_2f5 = fpext double %stack_var_-28.2 to x86_fp80
  %v7_2f5 = fadd x86_fp80 %v6_2f3, %v6_2f5
  store x86_fp80 %v7_2f5, x86_fp80* %st7.global-to-local, align 4
  %v4_2f8 = fptrunc x86_fp80 %v7_2f5 to double
  %v6_2f8 = add i3 %v0_2e8, add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 ptrtoint (i8* @global_var_1.1 to i3))
  store i3 %v6_2f8, i3* %fpu_stat_TOP.global-to-local, align 1
  %tmp303 = bitcast double %v3_2ea to i64
  %tmp304 = trunc i64 %tmp303 to i32
  br label %dec_label_pc_2fb

dec_label_pc_2fb:                                 ; preds = %dec_label_pc_21a.dec_label_pc_2fb_crit_edge, %bb301
  %v2_2ff = phi i32 [ %v2_2ff.pre, %dec_label_pc_21a.dec_label_pc_2fb_crit_edge ], [ %tmp304, %bb301 ]
  %v0_2fc = phi i3 [ %v0_225, %dec_label_pc_21a.dec_label_pc_2fb_crit_edge ], [ %v6_2f8, %bb301 ]
  %stack_var_-12.5 = phi double [ %stack_var_-12.4, %dec_label_pc_21a.dec_label_pc_2fb_crit_edge ], [ %v4_2ac, %bb301 ]
  %stack_var_-20.5 = phi double [ %stack_var_-20.4, %dec_label_pc_21a.dec_label_pc_2fb_crit_edge ], [ %v4_2c6, %bb301 ]
  %stack_var_-28.3 = phi double [ %stack_var_-28.2, %dec_label_pc_21a.dec_label_pc_2fb_crit_edge ], [ %v4_2f8, %bb301 ]
  %v4_2ff = inttoptr i32 %v2_2ff to double*
  store double %stack_var_-28.3, double* %v4_2ff, align 4
  %v2_304 = load i32, i32* @edx, align 8
  %v4_304 = inttoptr i32 %v2_304 to double*
  store double %stack_var_-20.5, double* %v4_304, align 4
  %v5_306 = fpext double %stack_var_-12.5 to x86_fp80
  store x86_fp80 %v5_306, x86_fp80* %st7.global-to-local, align 4
  %v2_309 = load i32, i32* %ebx.global-to-local, align 4
  %v4_309 = inttoptr i32 %v2_309 to double*
  store double %stack_var_-12.5, double* %v4_309, align 4
  store i3 %v0_2fc, i3* %fpu_stat_TOP.global-to-local, align 1
  store i32 %v2_309, 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_309
}

declare i16 @__asm_fnstsw(i32) local_unnamed_addr

; 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(x86_fp80) 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() local_unnamed_addr

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

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

attributes #0 = { nounwind readnone speculatable }
