; ModuleID = 'lib/printf-frexpl.c' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: nounwind uwtable define x86_fp80 @printf_frexpl(x86_fp80 %x, i32* nocapture %expptr) #0 { %exponent = alloca i32, align 4 %_cw = alloca i16, align 2 %_ncw = alloca i16, align 2 %_ncw1 = alloca i16, align 2 call void asm sideeffect "fnstcw $0", "=*m,~{dirflag},~{fpsr},~{flags}"(i16* %_cw) #2, !srcloc !1 %1 = load i16* %_cw, align 2, !tbaa !2 %2 = or i16 %1, 768 store i16 %2, i16* %_ncw, align 2, !tbaa !2 call void asm sideeffect "fldcw $0", "*m,~{dirflag},~{fpsr},~{flags}"(i16* %_ncw) #2, !srcloc !6 %3 = call x86_fp80 @frexpl(x86_fp80 %x, i32* %exponent) #2 %4 = fadd x86_fp80 %3, %3 %5 = load i32* %exponent, align 4, !tbaa !7 %6 = add nsw i32 %5, -1 store i32 %6, i32* %exponent, align 4, !tbaa !7 %7 = icmp slt i32 %5, -16381 br i1 %7, label %8, label %11 ;