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

define i32 @function_0(i32 %arg1) local_unnamed_addr {
dec_label_pc_0:
  %edx.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_3 = load i32, i32* %esi.global-to-local, align 4
  %v0_4 = load i32, i32* %edx.global-to-local, align 4
  %v0_5 = load i3, i3* %fpu_stat_TOP.global-to-local, align 1
  %v3_5 = load double, double* bitcast (i32* @eax to double*), align 8
  %v4_5 = fpext double %v3_5 to x86_fp80
  %v5_5 = add i3 %v0_5, -1
  store i3 %v5_5, i3* %fpu_stat_TOP.global-to-local, align 1
  store i32 %arg1, i32* %esi.global-to-local, align 4
  %tmp233 = bitcast double %v3_5 to i64
  %tmp234 = trunc i64 %tmp233 to i32
  %v1_a = add i32 %tmp234, 7
  %v2_a = inttoptr i32 %v1_a to i8*
  %v3_a = load i8, i8* %v2_a, align 1
  %v4_a = zext i8 %v3_a to i32
  %v6_a = and i32 %v0_4, -256
  %v7_a = or i32 %v6_a, %v4_a
  store i32 %v7_a, i32* %edx.global-to-local, align 4
  %v1_d = add i32 %arg1, 48
  %v2_d = inttoptr i32 %v1_d to i32*
  %v3_d = load i32, i32* %v2_d, align 4
  store i32 %v3_d, i32* %esi.global-to-local, align 4
  %v3_10 = add i32 %v3_d, -48
  %v4_10 = inttoptr i32 %v3_10 to double*
  %v5_10 = load double, double* %v4_10, align 4
  %v6_10 = fpext double %v5_10 to x86_fp80
  %v7_10 = fmul x86_fp80 %v4_5, %v6_10
  %v2_13 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_10)
  %v3_15 = add i32 %v3_d, -16
  %v4_15 = inttoptr i32 %v3_15 to double*
  %v5_15 = load double, double* %v4_15, align 4
  %v6_15 = fpext double %v5_15 to x86_fp80
  %v7_15 = fadd x86_fp80 %v2_13, %v6_15
  %v4_1a = fdiv x86_fp80 0xK3FFF8000000000000000, %v7_15
  %v3_1e = add i32 %v3_d, -24
  %v4_1e = inttoptr i32 %v3_1e to double*
  %v5_1e = load double, double* %v4_1e, align 4
  %v6_1e = fpext double %v5_1e to x86_fp80
  %v7_1e = fsub x86_fp80 %v6_1e, %v4_1a
  %v3_23 = fmul x86_fp80 %v4_5, %v4_5
  %v3_25 = add i32 %v3_d, -56
  %v4_25 = inttoptr i32 %v3_25 to double*
  %v5_25 = load double, double* %v4_25, align 4
  %v6_25 = fpext double %v5_25 to x86_fp80
  %v7_25 = fmul x86_fp80 %v3_23, %v6_25
  %v2_28 = call x86_fp80 @llvm.fabs.f80(x86_fp80 %v7_25)
  %v3_2a = add i32 %v3_d, -32
  %v4_2a = inttoptr i32 %v3_2a to double*
  %v5_2a = load double, double* %v4_2a, align 4
  %v6_2a = fpext double %v5_2a to x86_fp80
  %v7_2a = fadd x86_fp80 %v2_28, %v6_2a
  %v11_2d = and i32 %v7_a, -128
  store i32 %v11_2d, i32* %edx.global-to-local, align 4
  %v4_32 = fdiv x86_fp80 0xK3FFF8000000000000000, %v7_2a
  %v3_36 = add i32 %v3_d, -40
  %v4_36 = inttoptr i32 %v3_36 to double*
  %v5_36 = load double, double* %v4_36, align 4
  %v6_36 = fpext double %v5_36 to x86_fp80
  %v7_36 = fsub x86_fp80 %v6_36, %v4_32
  %v4_39 = fadd x86_fp80 %v7_1e, %v7_36
  %v3_3b = fptrunc x86_fp80 %v4_39 to double
  %v4_3b = inttoptr i32 %tmp234 to double*
  store double %v3_3b, double* %v4_3b, align 4
  store i3 %v0_5, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_3d = load i32, i32* @eax, align 8
  %v1_3d = add i32 %v0_3d, 7
  %v2_3d = inttoptr i32 %v1_3d to i8*
  %v3_3d = load i8, i8* %v2_3d, align 1
  %v5_3d = trunc i32 %v11_2d to i8
  %v6_3d = xor i8 %v3_3d, %v5_3d
  store i8 %v6_3d, i8* %v2_3d, align 1
  store i32 %v0_4, i32* %edx.global-to-local, align 4
  store i32 %v0_3, i32* %esi.global-to-local, align 4
  %v0_43 = load i32, i32* @eax, align 8
  ret i32 %v0_43
}

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

attributes #0 = { nounwind readnone speculatable }
