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
  %fpu_stat_TOP.global-to-local = alloca i3, align 1
  %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_15 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_15 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_15 = fpext double %v3_15 to x86_fp80
  %v3_17 = fmul x86_fp80 %v4_15, %v4_15
  %v3_19 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_19 = fpext double %v3_19 to x86_fp80
  %v3_1b = fmul x86_fp80 %v4_19, %v4_19
  %v3_1d = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_1d = fpext double %v3_1d to x86_fp80
  %v3_1f = fmul x86_fp80 %v4_1d, %v4_1d
  %v4_21 = fadd x86_fp80 %v3_1b, %v3_1f
  %v4_23 = fadd x86_fp80 %v3_17, %v4_21
  %v2_29 = add i32 %v3_f, -16
  %v3_29 = inttoptr i32 %v2_29 to double*
  %v4_29 = load double, double* %v3_29, align 4
  %v5_29 = fpext double %v4_29 to x86_fp80
  %v3_2c = fmul x86_fp80 %v5_29, %v5_29
  %v4_2e = fadd x86_fp80 %v4_23, %v3_2c
  %v3_30 = fmul x86_fp80 %v4_2e, %v4_2e
  %v5_32 = fpext double %v4_29 to x86_fp80
  %v6_35 = fmul x86_fp80 %v4_1d, %v5_32
  %v3_37 = fadd x86_fp80 %v6_35, %v6_35
  %v3_39 = fmul x86_fp80 %v3_37, %v3_37
  %v4_3d = fsub x86_fp80 %v3_30, %v3_39
  %v2_3f = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_3d)
  %v2_41 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v2_3f)
  %v4_4a = load double, double* %v3_29, align 4
  %v5_4a = fpext double %v4_4a to x86_fp80
  %v3_4d = fmul x86_fp80 %v5_4a, %v5_4a
  %v4_51 = fsub x86_fp80 %v4_23, %v3_4d
  %v5_53 = fpext double %v4_4a to x86_fp80
  %v6_56 = fmul x86_fp80 %v4_1d, %v5_53
  %v3_58 = fadd x86_fp80 %v6_56, %v6_56
  %v5_63 = add i3 %v0_15, 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 ptrtoint (i8* @global_var_1.1 to i3), 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 %v5_63, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_65 = call i32 @__asm_fpatan()
  store i32 %v0_65, i32* @eax, align 8
  %v2_67 = load i32, i32* @ecx, align 8
  %v4_67 = inttoptr i32 %v2_67 to double*
  store double %v3_15, double* %v4_67, align 4
  %v6_6f = sub i3 %v5_63, ptrtoint (i8* @global_var_1.1 to i3)
  store i3 %v6_6f, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_7b = call i32 @__asm_fpatan()
  store i32 %v0_7b, i32* @eax, align 8
  %v2_7d = load i32, i32* %edi.global-to-local, align 4
  %v3_7d = inttoptr i32 %v2_7d to double*
  %v4_7d = load double, double* %v3_7d, align 4
  %v5_7d = fpext double %v4_7d to x86_fp80
  %v6_7d = fsub x86_fp80 %v5_7d, %v4_51
  %v0_7f = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v2_7f = load i32, i32* %ebx.global-to-local, align 4
  %v3_7f = fptrunc x86_fp80 %v6_7d to double
  %v4_7f = inttoptr i32 %v2_7f to double*
  store double %v3_7f, double* %v4_7f, align 4
  %v7_85 = fdiv x86_fp80 %v3_58, %v2_41
  %v2_88 = sub i3 %v0_7f, ptrtoint (i8* @global_var_1.1 to i3)
  %v3_8a = fmul x86_fp80 %v7_85, %v7_85
  %v4_8e = fadd x86_fp80 %v3_8a, 0xK3FFF8000000000000000
  %v2_90 = call x86_fp80 @llvm.sqrt.f80(x86_fp80 %v4_8e)
  %v4_92 = fadd x86_fp80 %v7_85, %v2_90
  store i3 %v2_88, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_98 = call i32 @__asm_fyl2x()
  %v2_9a = load i32, i32* @edx, align 8
  %v3_9a = fptrunc x86_fp80 %v4_92 to double
  %v4_9a = inttoptr i32 %v2_9a to double*
  store double %v3_9a, double* %v4_9a, align 4
  store i3 %v0_7f, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_9d = load i32, i32* %ebx.global-to-local, align 4
  store i32 %v0_9d, 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_9d
}

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

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

declare i32 @__asm_fpatan() local_unnamed_addr

declare i32 @__asm_fyl2x() local_unnamed_addr

attributes #0 = { nounwind readnone speculatable }
