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
  %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
  %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_14 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_14 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_14 = fpext double %v3_14 to x86_fp80
  store x86_fp80 %v4_14, x86_fp80* %st7.global-to-local, align 4
  %v2_16 = load i32, i32* @ecx, align 8
  %v3_16 = add i32 %v2_16, 8
  %v4_16 = inttoptr i32 %v3_16 to double*
  %v5_16 = load double, double* %v4_16, align 4
  %v6_16 = fpext double %v5_16 to x86_fp80
  %v7_16 = fsub x86_fp80 %v4_14, %v6_16
  store x86_fp80 %v7_16, x86_fp80* %st7.global-to-local, align 4
  %v3_1a = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_1a = fpext double %v3_1a to x86_fp80
  %v4_1c = load double, double* bitcast (i32* @ecx to double*), align 8
  %v5_1c = fpext double %v4_1c to x86_fp80
  %v6_1c = fadd x86_fp80 %v4_1a, %v5_1c
  store x86_fp80 %v6_1c, x86_fp80* %st6.global-to-local, align 4
  store x86_fp80 %v4_14, x86_fp80* %st5.global-to-local, align 4
  %tmp251 = bitcast double %v4_1c to i64
  %tmp252 = trunc i64 %tmp251 to i32
  %v3_22 = add i32 %tmp252, 8
  %v4_22 = inttoptr i32 %v3_22 to double*
  %v5_22 = load double, double* %v4_22, align 4
  %v6_22 = fpext double %v5_22 to x86_fp80
  %v7_22 = fadd x86_fp80 %v4_14, %v6_22
  store x86_fp80 %v7_22, x86_fp80* %st5.global-to-local, align 4
  %v6_28 = fsub x86_fp80 %v4_1a, %v5_1c
  %v4_2c = fptrunc x86_fp80 %v6_28 to double
  store double %v4_2c, double* %v4_22, align 4
  %v1_2f = load x86_fp80, x86_fp80* %st5.global-to-local, align 4
  %v2_2f = load i32, i32* @ecx, align 8
  %v3_2f = fptrunc x86_fp80 %v1_2f to double
  %v4_2f = inttoptr i32 %v2_2f to double*
  store double %v3_2f, double* %v4_2f, align 4
  %v1_31 = load x86_fp80, x86_fp80* %st6.global-to-local, align 4
  %v2_31 = load i32, i32* @edx, align 8
  %v3_31 = fptrunc x86_fp80 %v1_31 to double
  %v4_31 = inttoptr i32 %v2_31 to double*
  store double %v3_31, double* %v4_31, align 4
  %v1_33 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v3_33 = fptrunc x86_fp80 %v1_33 to double
  %v4_33 = inttoptr i32 %v0_12 to double*
  store double %v3_33, double* %v4_33, align 4
  %v3_37 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_37 = fpext double %v3_37 to x86_fp80
  store x86_fp80 %v4_37, x86_fp80* %st7.global-to-local, align 4
  %v2_39 = add i32 %v3_f, -56
  %v3_39 = inttoptr i32 %v2_39 to double*
  %v4_39 = load double, double* %v3_39, align 4
  %v5_39 = fpext double %v4_39 to x86_fp80
  store x86_fp80 %v5_39, x86_fp80* %st6.global-to-local, align 4
  %v8_3c = add i3 %v0_14, add (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 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 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)))))))), i3 2)
  store i3 %v8_3c, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_3e = load i32, i32* %fpsw.global-to-local, align 4
  %v1_3e = call i16 @__asm_fnstsw(i32 %v0_3e)
  %v2_3e = sext i16 %v1_3e to i32
  %v3_3e = load i32, i32* @eax, align 8
  %v4_3e = and i32 %v3_3e, -65536
  %v1_40 = udiv i32 %v2_3e, 256
  %v2_40 = trunc i32 %v1_40 to i8
  %v3_40 = and i8 %v2_40, 65
  %v4_40 = icmp eq i8 %v3_40, 0
  %v9_40 = zext i8 %v3_40 to i32
  %v11_40 = mul i32 %v9_40, 256
  %v2_3e.masked = and i32 %v2_3e, -65281
  %v12_40 = or i32 %v4_3e, %v2_3e.masked
  %v13_40 = or i32 %v12_40, %v11_40
  store i32 %v13_40, i32* @eax, align 8
  %v0_49 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_49 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_49 = fpext double %v3_49 to x86_fp80
  br i1 %v4_40, label %dec_label_pc_45, label %dec_label_pc_59

dec_label_pc_45:                                  ; preds = %dec_label_pc_0
  %v5_49 = add i3 %v0_49, -1
  store x86_fp80 %v4_49, x86_fp80* %st7.global-to-local, align 4
  %v2_4b = load i32, i32* %edi.global-to-local, align 4
  %v3_4b = add i32 %v2_4b, -16
  %v4_4b = inttoptr i32 %v3_4b to double*
  %v5_4b = load double, double* %v4_4b, align 4
  %v6_4b = fpext double %v5_4b to x86_fp80
  %v7_4b = fadd x86_fp80 %v4_49, %v6_4b
  %v2_4e = load i32, i32* %ebx.global-to-local, align 4
  %v3_4e = fptrunc x86_fp80 %v7_4b to double
  %v4_4e = inttoptr i32 %v2_4e to double*
  store double %v3_4e, double* %v4_4e, align 4
  %v3_50 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_50 = fpext double %v3_50 to x86_fp80
  store i3 %v5_49, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_50, x86_fp80* %st7.global-to-local, align 4
  %v3_52 = add i32 %v2_4b, -24
  %v4_52 = inttoptr i32 %v3_52 to double*
  %v5_52 = load double, double* %v4_52, align 4
  %v6_52 = fpext double %v5_52 to x86_fp80
  %v7_52 = fadd x86_fp80 %v4_50, %v6_52
  store x86_fp80 %v7_52, x86_fp80* %st7.global-to-local, align 4
  %tmp253 = bitcast double %v3_50 to i64
  %tmp254 = trunc i64 %tmp253 to i32
  %v3_55 = fptrunc x86_fp80 %v7_52 to double
  %v4_55 = inttoptr i32 %tmp254 to double*
  store double %v3_55, double* %v4_55, align 4
  br label %dec_label_pc_67

dec_label_pc_59:                                  ; preds = %dec_label_pc_0
  %v5_59 = sub i3 %v0_49, ptrtoint (i8* @global_var_1.1 to i3)
  store x86_fp80 %v4_49, x86_fp80* %st7.global-to-local, align 4
  %v2_5b = load i32, i32* %edi.global-to-local, align 4
  %v3_5b = add i32 %v2_5b, -16
  %v4_5b = inttoptr i32 %v3_5b to double*
  %v5_5b = load double, double* %v4_5b, align 4
  %v6_5b = fpext double %v5_5b to x86_fp80
  %v7_5b = fsub x86_fp80 %v4_49, %v6_5b
  %v2_5e = load i32, i32* %ebx.global-to-local, align 4
  %v3_5e = fptrunc x86_fp80 %v7_5b to double
  %v4_5e = inttoptr i32 %v2_5e to double*
  store double %v3_5e, double* %v4_5e, align 4
  %v3_60 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_60 = fpext double %v3_60 to x86_fp80
  store i3 %v5_59, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_60, x86_fp80* %st7.global-to-local, align 4
  %v3_62 = add i32 %v2_5b, -24
  %v4_62 = inttoptr i32 %v3_62 to double*
  %v5_62 = load double, double* %v4_62, align 4
  %v6_62 = fpext double %v5_62 to x86_fp80
  %v7_62 = fsub x86_fp80 %v4_60, %v6_62
  store x86_fp80 %v7_62, x86_fp80* %st7.global-to-local, align 4
  %tmp255 = bitcast double %v3_60 to i64
  %tmp256 = trunc i64 %tmp255 to i32
  %v3_65 = fptrunc x86_fp80 %v7_62 to double
  %v4_65 = inttoptr i32 %tmp256 to double*
  store double %v3_65, double* %v4_65, align 4
  br label %dec_label_pc_67

dec_label_pc_67:                                  ; preds = %dec_label_pc_59, %dec_label_pc_45
  %v1_69 = phi i32 [ %v2_5b, %dec_label_pc_59 ], [ %v2_4b, %dec_label_pc_45 ]
  %storemerge2.in = phi i3 [ %v5_59, %dec_label_pc_59 ], [ %v5_49, %dec_label_pc_45 ]
  %storemerge2 = add i3 %storemerge2.in, 1
  %v3_67 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_67 = fpext double %v3_67 to x86_fp80
  store x86_fp80 %v4_67, x86_fp80* %st7.global-to-local, align 4
  %v2_69 = add i32 %v1_69, -64
  %v3_69 = inttoptr i32 %v2_69 to double*
  %v4_69 = load double, double* %v3_69, align 4
  %v5_69 = fpext double %v4_69 to x86_fp80
  store x86_fp80 %v5_69, x86_fp80* %st6.global-to-local, align 4
  store i3 %storemerge2, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_6e = load i32, i32* %fpsw.global-to-local, align 4
  %v1_6e = call i16 @__asm_fnstsw(i32 %v0_6e)
  %v2_6e = sext i16 %v1_6e to i32
  %v3_6e = load i32, i32* @eax, align 8
  %v4_6e = and i32 %v3_6e, -65536
  %v1_70 = udiv i32 %v2_6e, 256
  %v2_70 = trunc i32 %v1_70 to i8
  %v3_70 = and i8 %v2_70, 65
  %v4_70 = icmp eq i8 %v3_70, 0
  %v9_70 = zext i8 %v3_70 to i32
  %v11_70 = mul i32 %v9_70, 256
  %v2_6e.masked = and i32 %v2_6e, -65281
  %v12_70 = or i32 %v4_6e, %v2_6e.masked
  %v13_70 = or i32 %v12_70, %v11_70
  store i32 %v13_70, i32* @eax, align 8
  %v0_79 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_79 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_79 = fpext double %v3_79 to x86_fp80
  %tmp257 = bitcast double %v3_79 to i64
  %tmp258 = trunc i64 %tmp257 to i32
  br i1 %v4_70, label %dec_label_pc_75, label %dec_label_pc_8b

dec_label_pc_75:                                  ; preds = %dec_label_pc_67
  %v5_79 = add i3 %v0_79, -1
  store x86_fp80 %v4_79, x86_fp80* %st7.global-to-local, align 4
  %v2_7b = load i32, i32* %edi.global-to-local, align 4
  %v3_7b = add i32 %v2_7b, -32
  %v4_7b = inttoptr i32 %v3_7b to double*
  %v5_7b = load double, double* %v4_7b, align 4
  %v6_7b = fpext double %v5_7b to x86_fp80
  %v7_7b = fadd x86_fp80 %v4_79, %v6_7b
  store x86_fp80 %v7_7b, x86_fp80* %st7.global-to-local, align 4
  %v3_7e = fptrunc x86_fp80 %v7_7b to double
  %v4_7e = inttoptr i32 %tmp258 to double*
  store double %v3_7e, double* %v4_7e, align 4
  %v1_80 = load i32, i32* @ecx, align 8
  %v2_80 = add i32 %v1_80, 8
  %v3_80 = inttoptr i32 %v2_80 to double*
  %v4_80 = load double, double* %v3_80, align 4
  %v5_80 = fpext double %v4_80 to x86_fp80
  store i3 %v5_79, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v5_80, x86_fp80* %st7.global-to-local, align 4
  %v3_83 = add i32 %v2_7b, -40
  %v4_83 = inttoptr i32 %v3_83 to double*
  %v5_83 = load double, double* %v4_83, align 4
  %v6_83 = fpext double %v5_83 to x86_fp80
  %v7_83 = fadd x86_fp80 %v5_80, %v6_83
  store x86_fp80 %v7_83, x86_fp80* %st7.global-to-local, align 4
  %v4_86 = fptrunc x86_fp80 %v7_83 to double
  store double %v4_86, double* %v3_80, align 4
  %.pre = sub i3 %v0_79, ptrtoint (i8* @global_var_1.1 to i3)
  br label %dec_label_pc_9b

dec_label_pc_8b:                                  ; preds = %dec_label_pc_67
  %v5_8b = sub i3 %v0_79, ptrtoint (i8* @global_var_1.1 to i3)
  store x86_fp80 %v4_79, x86_fp80* %st7.global-to-local, align 4
  %v2_8d = load i32, i32* %edi.global-to-local, align 4
  %v3_8d = add i32 %v2_8d, -32
  %v4_8d = inttoptr i32 %v3_8d to double*
  %v5_8d = load double, double* %v4_8d, align 4
  %v6_8d = fpext double %v5_8d to x86_fp80
  %v7_8d = fsub x86_fp80 %v4_79, %v6_8d
  store x86_fp80 %v7_8d, x86_fp80* %st7.global-to-local, align 4
  %v3_90 = fptrunc x86_fp80 %v7_8d to double
  %v4_90 = inttoptr i32 %tmp258 to double*
  store double %v3_90, double* %v4_90, align 4
  %v1_92 = load i32, i32* @ecx, align 8
  %v2_92 = add i32 %v1_92, 8
  %v3_92 = inttoptr i32 %v2_92 to double*
  %v4_92 = load double, double* %v3_92, align 4
  %v5_92 = fpext double %v4_92 to x86_fp80
  store i3 %v5_8b, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v5_92, x86_fp80* %st7.global-to-local, align 4
  %v3_95 = add i32 %v2_8d, -40
  %v4_95 = inttoptr i32 %v3_95 to double*
  %v5_95 = load double, double* %v4_95, align 4
  %v6_95 = fpext double %v5_95 to x86_fp80
  %v7_95 = fsub x86_fp80 %v5_92, %v6_95
  store x86_fp80 %v7_95, x86_fp80* %st7.global-to-local, align 4
  %v4_98 = fptrunc x86_fp80 %v7_95 to double
  store double %v4_98, double* %v3_92, align 4
  br label %dec_label_pc_9b

dec_label_pc_9b:                                  ; preds = %dec_label_pc_8b, %dec_label_pc_75
  %v6_9d.pre-phi = phi i3 [ %v5_8b, %dec_label_pc_8b ], [ %.pre, %dec_label_pc_75 ]
  %v2_16e = phi i32 [ %v2_8d, %dec_label_pc_8b ], [ %v2_7b, %dec_label_pc_75 ]
  %v1_9d = load i32, i32* %esi.global-to-local, align 4
  %v2_9d = add i32 %v1_9d, 24
  %v3_9d = inttoptr i32 %v2_9d to double*
  %v4_9d = load double, double* %v3_9d, align 4
  %v5_9d = fpext double %v4_9d to x86_fp80
  store x86_fp80 %v5_9d, x86_fp80* %st7.global-to-local, align 4
  %v2_a3 = add i32 %v1_9d, 32
  %v3_a3 = inttoptr i32 %v2_a3 to double*
  %v4_a3 = load double, double* %v3_a3, align 4
  %v5_a3 = fpext double %v4_a3 to x86_fp80
  store x86_fp80 %v5_a3, x86_fp80* %st7.global-to-local, align 4
  store i3 %v0_79, i3* %fpu_stat_TOP.global-to-local, align 1
  %v1_a9 = add i32 %v2_16e, -68
  %v2_a9 = inttoptr i32 %v1_a9 to i32*
  %v3_a9 = load i32, i32* %v2_a9, align 4
  %v10_a9 = icmp eq i32 %v3_a9, 0
  br i1 %v10_a9, label %dec_label_pc_bb, label %dec_label_pc_af

dec_label_pc_af:                                  ; preds = %dec_label_pc_9b
  %v2_b6 = fsub x86_fp80 0xK80000000000000000000, %v5_a3
  store x86_fp80 %v2_b6, x86_fp80* %st7.global-to-local, align 4
  %v4_b8 = fptrunc x86_fp80 %v2_b6 to double
  %v6_b8 = add i3 %v6_9d.pre-phi, 1
  store i3 %v6_b8, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_bb

dec_label_pc_bb:                                  ; preds = %dec_label_pc_af, %dec_label_pc_9b
  %v0_c5 = phi i3 [ %v0_79, %dec_label_pc_9b ], [ %v6_b8, %dec_label_pc_af ]
  %stack_var_-44.0 = phi double [ %v4_a3, %dec_label_pc_9b ], [ %v4_b8, %dec_label_pc_af ]
  %v1_bb = add i32 %v2_16e, -72
  %v2_bb = inttoptr i32 %v1_bb to i32*
  %v3_bb = load i32, i32* %v2_bb, align 4
  %v10_bb = icmp eq i32 %v3_bb, 0
  br i1 %v10_bb, label %dec_label_pc_bb.dec_label_pc_d1_crit_edge, label %dec_label_pc_c1

dec_label_pc_bb.dec_label_pc_d1_crit_edge:        ; preds = %dec_label_pc_bb
  %.pre13 = fpext double %stack_var_-44.0 to x86_fp80
  br label %dec_label_pc_d1

dec_label_pc_c1:                                  ; preds = %dec_label_pc_bb
  store x86_fp80 %v5_9d, x86_fp80* %st7.global-to-local, align 4
  %v5_c8 = fpext double %stack_var_-44.0 to x86_fp80
  store x86_fp80 %v5_c8, x86_fp80* %st6.global-to-local, align 4
  %v6_ce = add i3 %v0_c5, add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 -1)
  store i3 %v6_ce, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_d1

dec_label_pc_d1:                                  ; preds = %dec_label_pc_bb.dec_label_pc_d1_crit_edge, %dec_label_pc_c1
  %v6_db.pre-phi = phi x86_fp80 [ %.pre13, %dec_label_pc_bb.dec_label_pc_d1_crit_edge ], [ %v5_9d, %dec_label_pc_c1 ]
  %v6_d5.pre-phi = phi x86_fp80 [ %v5_9d, %dec_label_pc_bb.dec_label_pc_d1_crit_edge ], [ %v5_c8, %dec_label_pc_c1 ]
  %v0_d3 = phi i3 [ %v0_c5, %dec_label_pc_bb.dec_label_pc_d1_crit_edge ], [ %v6_ce, %dec_label_pc_c1 ]
  %v3_d3 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_d3 = fpext double %v3_d3 to x86_fp80
  %v7_d5 = fmul x86_fp80 %v6_d5.pre-phi, %v4_d3
  %v3_d9 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_d9 = fpext double %v3_d9 to x86_fp80
  %v7_db = fmul x86_fp80 %v6_db.pre-phi, %v4_d9
  %v4_e0 = fsub x86_fp80 %v7_d5, %v7_db
  store x86_fp80 %v4_e0, x86_fp80* %st7.global-to-local, align 4
  %v7_e4 = fmul x86_fp80 %v6_db.pre-phi, %v4_d3
  %v7_ea = fmul x86_fp80 %v6_d5.pre-phi, %v4_d9
  store x86_fp80 %v7_ea, x86_fp80* %st5.global-to-local, align 4
  %v4_ef = fadd x86_fp80 %v7_e4, %v7_ea
  store x86_fp80 %v4_ef, x86_fp80* %st6.global-to-local, align 4
  %tmp259 = bitcast double %v3_d9 to i64
  %tmp260 = trunc i64 %tmp259 to i32
  %v3_f1 = fptrunc x86_fp80 %v4_ef to double
  %v4_f1 = inttoptr i32 %tmp260 to double*
  store double %v3_f1, double* %v4_f1, align 4
  %v1_f3 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v2_f3 = load i32, i32* %ebx.global-to-local, align 4
  %v3_f3 = fptrunc x86_fp80 %v1_f3 to double
  %v4_f3 = inttoptr i32 %v2_f3 to double*
  store double %v3_f3, double* %v4_f3, align 4
  %v5_f3 = add i3 %v0_d3, add (i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 1), 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))))
  %v2_f7 = add i32 %v1_9d, 40
  %v3_f7 = inttoptr i32 %v2_f7 to double*
  %v4_f7 = load double, double* %v3_f7, align 4
  %v5_f7 = fpext double %v4_f7 to x86_fp80
  store x86_fp80 %v5_f7, x86_fp80* %st7.global-to-local, align 4
  %v2_fd = add i32 %v1_9d, -56
  %v3_fd = inttoptr i32 %v2_fd to double*
  %v4_fd = load double, double* %v3_fd, align 4
  %v5_fd = fpext double %v4_fd to x86_fp80
  store x86_fp80 %v5_fd, x86_fp80* %st7.global-to-local, align 4
  store i3 %v5_f3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_103 = load i32, i32* %v2_a9, align 4
  %v10_103 = icmp eq i32 %v3_103, 0
  br i1 %v10_103, label %dec_label_pc_115, label %dec_label_pc_109

dec_label_pc_109:                                 ; preds = %dec_label_pc_d1
  %v6_f7 = sub i3 %v5_f3, ptrtoint (i8* @global_var_1.1 to i3)
  %v2_110 = fsub x86_fp80 0xK80000000000000000000, %v5_fd
  store x86_fp80 %v2_110, x86_fp80* %st7.global-to-local, align 4
  %v4_112 = fptrunc x86_fp80 %v2_110 to double
  %v6_112 = add i3 %v6_f7, 1
  store i3 %v6_112, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_115

dec_label_pc_115:                                 ; preds = %dec_label_pc_109, %dec_label_pc_d1
  %v0_11f = phi i3 [ %v5_f3, %dec_label_pc_d1 ], [ %v6_112, %dec_label_pc_109 ]
  %stack_var_-44.2 = phi double [ %v4_fd, %dec_label_pc_d1 ], [ %v4_112, %dec_label_pc_109 ]
  %v3_115 = load i32, i32* %v2_bb, align 4
  %v10_115 = icmp eq i32 %v3_115, 0
  br i1 %v10_115, label %dec_label_pc_115.dec_label_pc_12b_crit_edge, label %dec_label_pc_11b

dec_label_pc_115.dec_label_pc_12b_crit_edge:      ; preds = %dec_label_pc_115
  %.pre14 = fpext double %stack_var_-44.2 to x86_fp80
  br label %dec_label_pc_12b

dec_label_pc_11b:                                 ; preds = %dec_label_pc_115
  store x86_fp80 %v5_f7, x86_fp80* %st7.global-to-local, align 4
  %v5_122 = fpext double %stack_var_-44.2 to x86_fp80
  store x86_fp80 %v5_122, x86_fp80* %st6.global-to-local, align 4
  %v6_128 = add i3 %v0_11f, add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 -1)
  store i3 %v6_128, i3* %fpu_stat_TOP.global-to-local, align 1
  br label %dec_label_pc_12b

dec_label_pc_12b:                                 ; preds = %dec_label_pc_115.dec_label_pc_12b_crit_edge, %dec_label_pc_11b
  %v6_135.pre-phi = phi x86_fp80 [ %.pre14, %dec_label_pc_115.dec_label_pc_12b_crit_edge ], [ %v5_f7, %dec_label_pc_11b ]
  %v6_12f.pre-phi = phi x86_fp80 [ %v5_f7, %dec_label_pc_115.dec_label_pc_12b_crit_edge ], [ %v5_122, %dec_label_pc_11b ]
  %v0_12d = phi i3 [ %v0_11f, %dec_label_pc_115.dec_label_pc_12b_crit_edge ], [ %v6_128, %dec_label_pc_11b ]
  %v3_12d = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_12d = fpext double %v3_12d to x86_fp80
  %v7_12f = fmul x86_fp80 %v6_12f.pre-phi, %v4_12d
  store x86_fp80 %v7_12f, x86_fp80* %st7.global-to-local, align 4
  %tmp261 = bitcast double %v3_12d to i64
  %tmp262 = trunc i64 %tmp261 to i32
  %v2_132 = add i32 %tmp262, 8
  %v3_132 = inttoptr i32 %v2_132 to double*
  %v4_132 = load double, double* %v3_132, align 4
  %v5_132 = fpext double %v4_132 to x86_fp80
  %v7_135 = fmul x86_fp80 %v6_135.pre-phi, %v5_132
  %v4_13a = fsub x86_fp80 %v7_12f, %v7_135
  store x86_fp80 %v4_13a, x86_fp80* %st7.global-to-local, align 4
  %v3_13c = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_13c = fpext double %v3_13c to x86_fp80
  %v7_13e = fmul x86_fp80 %v6_135.pre-phi, %v4_13c
  store x86_fp80 %v7_13e, x86_fp80* %st6.global-to-local, align 4
  %v4_141 = load double, double* %v3_132, align 4
  %v5_141 = fpext double %v4_141 to x86_fp80
  %v7_144 = fmul x86_fp80 %v6_12f.pre-phi, %v5_141
  store x86_fp80 %v7_144, x86_fp80* %st5.global-to-local, align 4
  %v4_149 = fadd x86_fp80 %v7_13e, %v7_144
  store x86_fp80 %v4_149, x86_fp80* %st6.global-to-local, align 4
  %v3_14b = add i32 %v2_16e, -48
  %v4_14b = inttoptr i32 %v3_14b to double*
  %v5_14b = load double, double* %v4_14b, align 4
  %v6_14b = fpext double %v5_14b to x86_fp80
  %v7_14b = fadd x86_fp80 %v4_149, %v6_14b
  store x86_fp80 %v7_14b, x86_fp80* %st6.global-to-local, align 4
  %v4_14e = fptrunc x86_fp80 %v7_14b to double
  store double %v4_14e, double* %v3_132, align 4
  %v1_151 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v2_151 = load i32, i32* @ecx, align 8
  %v3_151 = fptrunc x86_fp80 %v1_151 to double
  %v4_151 = inttoptr i32 %v2_151 to double*
  store double %v3_151, double* %v4_151, align 4
  %v5_151 = add i3 %v0_12d, add (i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), i3 1), 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))))
  %v3_156 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_156 = fpext double %v3_156 to x86_fp80
  %v4_158 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v5_158 = fpext double %v4_158 to x86_fp80
  %v6_158 = fadd x86_fp80 %v4_156, %v5_158
  store x86_fp80 %v6_158, x86_fp80* %st7.global-to-local, align 4
  %v3_15a = inttoptr i32 %v2_16e to double*
  %v4_15a = load double, double* %v3_15a, align 4
  %v5_15a = fpext double %v4_15a to x86_fp80
  %v6_15a = fmul x86_fp80 %v6_158, %v5_15a
  %v4_15c = fptrunc x86_fp80 %v6_15a to double
  %v3_15f = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_15f = fpext double %v3_15f to x86_fp80
  store x86_fp80 %v4_15f, x86_fp80* %st7.global-to-local, align 4
  %tmp263 = bitcast double %v4_158 to i64
  %tmp264 = trunc i64 %tmp263 to i32
  %v3_161 = add i32 %tmp264, 8
  %v4_161 = inttoptr i32 %v3_161 to double*
  %v5_161 = load double, double* %v4_161, align 4
  %v6_161 = fpext double %v5_161 to x86_fp80
  %v7_161 = fadd x86_fp80 %v4_15f, %v6_161
  store x86_fp80 %v7_161, x86_fp80* %st7.global-to-local, align 4
  %v4_164 = load double, double* %v3_15a, align 4
  %v5_164 = fpext double %v4_164 to x86_fp80
  %v6_164 = fmul x86_fp80 %v7_161, %v5_164
  %v4_166 = fptrunc x86_fp80 %v6_164 to double
  store x86_fp80 %v4_15f, x86_fp80* %st7.global-to-local, align 4
  %v5_16b = load double, double* %v4_161, align 4
  %v6_16b = fpext double %v5_16b to x86_fp80
  %v7_16b = fsub x86_fp80 %v4_15f, %v6_16b
  store x86_fp80 %v7_16b, x86_fp80* %st7.global-to-local, align 4
  %v4_16e = load double, double* %v3_15a, align 4
  %v5_16e = fpext double %v4_16e to x86_fp80
  %v6_16e = fmul x86_fp80 %v7_16b, %v5_16e
  %v4_170 = fptrunc x86_fp80 %v6_16e to double
  %v6_179 = fsub x86_fp80 %v5_158, %v4_156
  store x86_fp80 %v6_179, x86_fp80* %st7.global-to-local, align 4
  %v4_17c = load double, double* %v3_15a, align 4
  %v5_17c = fpext double %v4_17c to x86_fp80
  %v6_17c = fmul x86_fp80 %v6_179, %v5_17c
  %v4_17e = fptrunc x86_fp80 %v6_17c to double
  store double %v4_17e, double* %v4_161, align 4
  %v2_18b = load i32, i32* @ecx, align 8
  %v4_18b = inttoptr i32 %v2_18b to double*
  store double %v4_170, double* %v4_18b, align 4
  %v2_190 = load i32, i32* @edx, align 8
  %v4_190 = inttoptr i32 %v2_190 to double*
  store double %v4_166, double* %v4_190, align 4
  store x86_fp80 %v6_15a, x86_fp80* %st7.global-to-local, align 4
  store double %v4_15c, double* %v4_f3, align 4
  store i3 %v5_151, i3* %fpu_stat_TOP.global-to-local, align 1
  store i32 %v2_f3, 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_f3
}

declare i16 @__asm_fnstsw(i32) local_unnamed_addr
