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 x86_fp80 @function_0(i32 %arg1) local_unnamed_addr {
dec_label_pc_0:
  %ebp.global-to-local = alloca i32, align 4
  %esi.global-to-local = alloca i32, align 4
  %st7.global-to-local = alloca x86_fp80, align 4
  %v0_0 = load i32, i32* %ebp.global-to-local, 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
  %v2_a = add i32 %v3_7, -16
  %v3_a = inttoptr i32 %v2_a to double*
  %v4_a = load double, double* %v3_a, align 4
  %v5_a = fpext double %v4_a to x86_fp80
  store x86_fp80 %v5_a, x86_fp80* %st7.global-to-local, align 4
  %v3_d = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_d = fpext double %v3_d to x86_fp80
  %v4_11 = fsub x86_fp80 %v4_d, %v5_a
  %v2_13 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_11)
  %v4_17 = fadd x86_fp80 %v5_a, %v4_d
  %v2_19 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_17)
  %v4_1b = fsub x86_fp80 %v2_19, %v2_13
  %v6_1d = fsub x86_fp80 %v4_1b, %v4_d
  %tmp236 = bitcast double %v3_d to i64
  %tmp237 = trunc i64 %tmp236 to i32
  %v3_1f = fptrunc x86_fp80 %v6_1d to double
  %v4_1f = inttoptr i32 %tmp237 to double*
  store double %v3_1f, double* %v4_1f, align 4
  %v3_21 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_21 = fpext double %v3_21 to x86_fp80
  %v3_25 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v4_25 = fsub x86_fp80 %v4_21, %v3_25
  %v2_27 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_25)
  %v4_2b = fadd x86_fp80 %v3_25, %v4_21
  %v2_2d = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_2b)
  %v4_2f = fsub x86_fp80 %v2_2d, %v2_27
  %v6_31 = fsub x86_fp80 %v4_2f, %v4_21
  %tmp238 = bitcast double %v3_21 to i64
  %tmp239 = trunc i64 %tmp238 to i32
  %v3_33 = fptrunc x86_fp80 %v6_31 to double
  %v4_33 = inttoptr i32 %tmp239 to double*
  store double %v3_33, double* %v4_33, align 4
  %v3_35 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_35 = fpext double %v3_35 to x86_fp80
  %v3_39 = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  %v4_39 = fsub x86_fp80 %v4_35, %v3_39
  %v2_3b = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_39)
  %v4_3f = fadd x86_fp80 %v3_39, %v4_35
  %v2_41 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v4_3f)
  %v4_43 = fsub x86_fp80 %v2_41, %v2_3b
  %v6_45 = fsub x86_fp80 %v4_43, %v4_35
  %tmp240 = bitcast double %v3_35 to i64
  %tmp241 = trunc i64 %tmp240 to i32
  %v3_47 = fptrunc x86_fp80 %v6_45 to double
  %v4_47 = inttoptr i32 %tmp241 to double*
  store double %v3_47, double* %v4_47, align 4
  store i32 %v0_3, i32* %esi.global-to-local, align 4
  store i32 %v0_0, i32* %ebp.global-to-local, align 4
  %v0_4d = load x86_fp80, x86_fp80* %st7.global-to-local, align 4
  ret x86_fp80 %v0_4d
}

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

attributes #0 = { nounwind readnone speculatable }
