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

define i32 @function_0(i32 %arg1) local_unnamed_addr {
dec_label_pc_0:
  %esi.global-to-local = alloca i32, align 4
  %fpu_stat_TOP.global-to-local = alloca i3, align 1
  %st3.global-to-local = alloca x86_fp80, align 4
  %st4.global-to-local = alloca x86_fp80, align 4
  %v0_3 = load i32, i32* %esi.global-to-local, align 4
  store i32 %arg1, i32* %esi.global-to-local, align 4
  %v1_7 = add i32 %arg1, 48
  %v2_7 = inttoptr i32 %v1_7 to i32*
  %v3_7 = load i32, i32* %v2_7, align 4
  store i32 %v3_7, i32* %esi.global-to-local, align 4
  %v0_a = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_1e = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_1e = fpext double %v3_1e to x86_fp80
  %v5_29 = xor i3 %v0_a, -4
  store i3 %v5_29, i3* %fpu_stat_TOP.global-to-local, align 1
  store x86_fp80 %v4_1e, x86_fp80* %st4.global-to-local, align 4
  %v0_2b = call i32 @__asm_fpatan()
  store i32 %v0_2b, i32* @eax, align 8
  %v2_2d = load i32, i32* %esi.global-to-local, align 4
  %v3_2d = add i32 %v2_2d, -24
  %v4_2d = inttoptr i32 %v3_2d to double*
  %v5_2d = load double, double* %v4_2d, align 4
  %v6_2d = fpext double %v5_2d to x86_fp80
  %v7_2d = fsub x86_fp80 %v4_1e, %v6_2d
  store x86_fp80 %v7_2d, x86_fp80* %st4.global-to-local, align 4
  %v3_30 = inttoptr i32 %v2_2d to double*
  %v4_30 = load double, double* %v3_30, align 4
  %v5_30 = fpext double %v4_30 to x86_fp80
  %v6_30 = fsub x86_fp80 %v7_2d, %v5_30
  store x86_fp80 %v6_30, x86_fp80* %st4.global-to-local, align 4
  %v0_34 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_34 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_34 = fpext double %v3_34 to x86_fp80
  store x86_fp80 %v4_34, x86_fp80* %st3.global-to-local, align 4
  %v3_36 = load double, double* bitcast (i32* @eax to double*), align 8
  %v5_36 = add i3 %v0_34, -2
  store i3 %v5_36, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_38 = call i32 @__asm_fpatan()
  store i32 %v0_38, i32* @eax, align 8
  %v2_3b = load i32, i32* @ecx, align 8
  %v4_3b = inttoptr i32 %v2_3b to double*
  store double %v3_36, double* %v4_3b, align 4
  %v1_3d = load x86_fp80, x86_fp80* %st3.global-to-local, align 4
  %v2_3d = load i32, i32* @edx, align 8
  %v3_3d = fptrunc x86_fp80 %v1_3d to double
  %v4_3d = inttoptr i32 %v2_3d to double*
  store double %v3_3d, double* %v4_3d, align 4
  %v1_3f = load x86_fp80, x86_fp80* %st4.global-to-local, align 4
  %v2_3f = load i32, i32* @eax, align 8
  %v3_3f = fptrunc x86_fp80 %v1_3f to double
  %v4_3f = inttoptr i32 %v2_3f to double*
  store double %v3_3f, double* %v4_3f, align 4
  %v4_41 = add i3 %v0_34, 2
  store i3 %v4_41, i3* %fpu_stat_TOP.global-to-local, align 1
  store i32 %v0_3, i32* %esi.global-to-local, align 4
  %v0_45 = load i32, i32* @eax, align 8
  ret i32 %v0_45
}

declare i32 @__asm_fpatan() local_unnamed_addr
