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:
  %ebp.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_0 = load i32, i32* %ebp.global-to-local, align 4
  %v0_a = load i32, i32* %esi.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
  %v0_12 = load i32, i32* @eax, align 8
  %v0_16 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_16 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_16 = fpext double %v3_16 to x86_fp80
  %v3_18 = inttoptr i32 %v3_f to double*
  %v4_18 = load double, double* %v3_18, align 4
  %v5_18 = fpext double %v4_18 to x86_fp80
  %v6_18 = fmul x86_fp80 %v4_16, %v5_18
  %v3_1a = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_1a = fpext double %v3_1a to x86_fp80
  %v3_1c = add i32 %v3_f, 8
  %v4_1c = inttoptr i32 %v3_1c to double*
  %v5_1c = load double, double* %v4_1c, align 4
  %v6_1c = fpext double %v5_1c to x86_fp80
  %v7_1c = fmul x86_fp80 %v4_1a, %v6_1c
  %v4_21 = fsub x86_fp80 %v6_18, %v7_1c
  %v3_23 = add i32 %v3_f, 16
  %v4_23 = inttoptr i32 %v3_23 to double*
  %v5_23 = load double, double* %v4_23, align 4
  %v6_23 = fpext double %v5_23 to x86_fp80
  %v7_23 = fmul x86_fp80 %v4_21, %v6_23
  %v3_29 = load double, double* bitcast (i32* @edx to double*), align 8
  %v4_29 = fpext double %v3_29 to x86_fp80
  %v7_2b = fmul x86_fp80 %v6_23, %v4_29
  %tmp234 = bitcast double %v3_29 to i64
  %tmp235 = trunc i64 %tmp234 to i32
  %v3_2e = fptrunc x86_fp80 %v7_2b to double
  %v4_2e = inttoptr i32 %tmp235 to double*
  store double %v3_2e, double* %v4_2e, align 4
  %v3_31 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_31 = fpext double %v3_31 to x86_fp80
  %v5_33 = load double, double* %v4_1c, align 4
  %v6_33 = fpext double %v5_33 to x86_fp80
  %v7_33 = fmul x86_fp80 %v4_31, %v6_33
  %v3_36 = load double, double* bitcast (i32* @ecx to double*), align 8
  %v4_36 = fpext double %v3_36 to x86_fp80
  %v4_38 = load double, double* %v3_18, align 4
  %v5_38 = fpext double %v4_38 to x86_fp80
  %v6_38 = fmul x86_fp80 %v4_36, %v5_38
  %v4_3a = fadd x86_fp80 %v7_33, %v6_38
  %tmp236 = bitcast double %v3_36 to i64
  %tmp237 = trunc i64 %tmp236 to i32
  %v3_3c = fptrunc x86_fp80 %v4_3a to double
  %v4_3c = inttoptr i32 %tmp237 to double*
  store double %v3_3c, double* %v4_3c, align 4
  %v5_3c = add i3 %v0_16, add (i3 add (i3 ptrtoint (i8* @global_var_1.1 to i3), 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))))
  %v4_42 = load double, double* bitcast (i32* @edx to double*), align 8
  %v5_42 = fpext double %v4_42 to x86_fp80
  %v6_42 = fsub x86_fp80 %v7_23, %v5_42
  %v3_44 = fptrunc x86_fp80 %v6_42 to double
  %v4_44 = inttoptr i32 %v0_12 to double*
  store double %v3_44, double* %v4_44, align 4
  %v4_4a = load double, double* bitcast (i32* @edx to double*), align 8
  %v5_4a = fpext double %v4_4a to x86_fp80
  %v6_4a = fadd x86_fp80 %v7_23, %v5_4a
  %tmp238 = bitcast double %v4_4a to i64
  %tmp239 = trunc i64 %tmp238 to i32
  %v3_4c = fptrunc x86_fp80 %v6_4a to double
  %v4_4c = inttoptr i32 %tmp239 to double*
  store double %v3_4c, double* %v4_4c, align 4
  store i3 %v5_3c, i3* %fpu_stat_TOP.global-to-local, align 1
  store i32 %v0_12, i32* @eax, align 8
  store i32 %v0_a, i32* %esi.global-to-local, align 4
  store i32 %v0_0, i32* %ebp.global-to-local, align 4
  ret i32 %v0_12
}
