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
  %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
  %tmp232 = bitcast double %v3_5 to i64
  %tmp233 = trunc i64 %tmp232 to i32
  %v1_a = add i32 %tmp233, 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
  %tmp234 = call double @llvm.fabs.f64(double %v3_5)
  %v2_10 = fpext double %tmp234 to x86_fp80
  %v3_12 = add i32 %v3_d, -16
  %v4_12 = inttoptr i32 %v3_12 to double*
  %v5_12 = load double, double* %v4_12, align 4
  %v6_12 = fpext double %v5_12 to x86_fp80
  %v7_12 = fadd x86_fp80 %v2_10, %v6_12
  %v11_15 = and i32 %v7_a, -128
  store i32 %v11_15, i32* %edx.global-to-local, align 4
  %v4_1a = fdiv x86_fp80 0xK3FFF8000000000000000, %v7_12
  %v3_1c = fptrunc x86_fp80 %v4_1a to double
  %v4_1c = inttoptr i32 %tmp233 to double*
  store double %v3_1c, double* %v4_1c, align 4
  store i3 %v0_5, i3* %fpu_stat_TOP.global-to-local, align 1
  %v0_1e = load i32, i32* @eax, align 8
  %v1_1e = add i32 %v0_1e, 7
  %v2_1e = inttoptr i32 %v1_1e to i8*
  %v3_1e = load i8, i8* %v2_1e, align 1
  %v5_1e = trunc i32 %v11_15 to i8
  %v6_1e = xor i8 %v3_1e, %v5_1e
  store i8 %v6_1e, i8* %v2_1e, 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_24 = load i32, i32* @eax, align 8
  ret i32 %v0_24
}

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

attributes #0 = { nounwind readnone speculatable }
