⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 libm_lgamma.s

📁 glibc 2.9,最新版的C语言库函数
💻 S
📖 第 1 页 / 共 5 页
字号:
{ .mfi      ldfe          FR_C71 = [GR_ad_Ce],32(p14) fma.s1        FR_Xp1 = f1,f1,FR_NormX // x+1      cmp.eq        p6,p7 = GR_ExpOf2,GR_SignExp};;.pred.rel "mutex",p6,p7{ .mfi      ldfe          FR_C81 = [GR_ad_Co],32(p6)  fma.s1        FR_x = f0,f0,FR_NormX      shladd        GR_Offs7 = GR_Ind,2,GR_Ind // (ind*16)*5}{ .mfi      ldfe          FR_C91 = [GR_ad_Ce],32(p7)  fms.s1        FR_x = FR_x,f1,f1      add           GR_ad_Co7 = 0x800,GR_ad_Data};;{ .mfi      ldfe          FR_CA1 = [GR_ad_Co],32(p14) fma.s1        FR_3 = f1,f1,FR_2      shladd        GR_Offs7 = GR_Ind,1,GR_Offs7 // (ind*16)*7}{ .mfi      ldfe          FR_C00 = [GR_ad_Ce],32(p14) fma.s1        FR_Xp4 = FR_2,FR_2,FR_NormX      add           GR_ad_Ce7 = 0x810,GR_ad_Data};;{ .mfi      ldfe          FR_C10 = [GR_ad_Co],32(p6)  fms.s1        FR_Xm2 = FR_w,f1,f1      add           GR_ad_Co7 = GR_ad_Co7,GR_Offs7}{ .mfi      ldfe          FR_C20 = [GR_ad_Ce],32(p14) fma.s1        FR_r2 = FR_r,FR_r,f0 // log(x)      add           GR_ad_Ce7 = GR_ad_Ce7,GR_Offs7};;{ .mfi      ldfe          FR_C30 = [GR_ad_Co],32(p14) fms.s1        FR_Xf = FR_NormX,f1,FR_N  // xf = x - [x](p14) mov           GR_Arg17 = 0xC031 // -17}{ .mfi      ldfe          FR_C40 = [GR_ad_Ce],32(p14) fma.s1        FR_Xp5 = FR_5,f1,FR_NormX(p14) sub           GR_Exp = GR_Exp,GR_ExpBias};;{ .mfi      ldfe          FR_C50 = [GR_ad_Co7],32(p14) fms.s1        FR_Xfr = FR_Xp1,f1,FR_Ntrunc // xfr = (x+1) - [x](p14) cmp.lt.unc    p13,p0 = GR_Arg,GR_Arg17}{ .mfb      ldfe          FR_C60 = [GR_ad_Ce7],32(p14) fma.s1        FR_Xp10 = FR_5,FR_2,FR_NormX      // jump if the input argument is negative and great than -17.0(p13) br.cond.spnt  lgamma_negrecursion};;{ .mfi      ldfe          FR_C70 = [GR_ad_Co7],32      fma.s1        FR_C01 = FR_x,f1,FR_C01(p14) add           GR_ad_Ce = 0x1310,GR_ad_2}{ .mfi      ldfe          FR_C80 = [GR_ad_Ce7],32      fma.s1        FR_C11 = FR_x,f1,FR_C11(p14) add           GR_ad_Co = 0x12C0,GR_ad_2};;{ .mfi      ldfe          FR_C90 = [GR_ad_Co7],32      fma.s1        FR_C21 = FR_x,f1,FR_C21      nop.i         0}{ .mfi      ldfe          FR_CA0 = [GR_ad_Ce7],32      fma.s1        FR_C31 = FR_x,f1,FR_C31      nop.i         0};;{ .mfi      ldfe          FR_CN = [GR_ad_Co7],32      fma.s1        FR_C41 = FR_x,f1,FR_C41      nop.i         0}{ .mfi(p14) ldfpd         FR_P5,FR_P4 = [GR_ad_1],16      fma.s1        FR_C51 = FR_x,f1,FR_C51      nop.i         0};;{ .mfi(p14) ldfpd         FR_P3,FR_P2 = [GR_ad_2],16      fma.s1        FR_C61 = FR_x,f1,FR_C61      nop.i         0}{ .mfi(p14) ldfe          FR_Ln2 = [GR_ad_1]      fma.s1        FR_C71 = FR_x,f1,FR_C71      nop.i         0};;{ .mfi(p14) ldfpd         FR_S28,FR_S26 = [GR_ad_Co],16      fma.s1        FR_C81 = FR_x,f1,FR_C81      add           GR_ad_2 = 0x60,GR_ad_2}{ .mfi(p14) ldfpd         FR_S24,FR_S22 = [GR_ad_Ce],16      fma.s1        FR_C91 = FR_x,f1,FR_C91      nop.i         0};;{ .mfi(p14) ldfpd         FR_S20,FR_S18 = [GR_ad_Co],16      fma.s1        FR_CA1 = FR_x,f1,FR_CA1      nop.i         0}{ .mfi(p14) ldfpd         FR_S16,FR_S14 = [GR_ad_Ce],16      fma.s1        FR_C01 = FR_C01,FR_x,FR_C00      nop.i         0};;{ .mfi(p14) getf.exp      GR_SignExp = FR_Xf      fma.s1        FR_C11 = FR_C11,FR_x,FR_C10      nop.i         0}{ .mfi(p14) ldfe          FR_S12 = [GR_ad_Co],16      fma.s1        FR_C21 = FR_C21,FR_x,FR_C20      nop.i         0};;{ .mfi(p14) getf.sig      GR_Sig = FR_Xf(p14) frcpa.s1      FR_InvXf,p0 = f1,FR_Xf      nop.i         0}{ .mfi(p14) ldfe          FR_S10 = [GR_ad_Ce],16      fma.s1        FR_C41 = FR_C41,FR_x,FR_C40      nop.i         0};;{ .mfi(p14) ldfe          FR_S8 = [GR_ad_Co],16      fma.s1        FR_C51 = FR_C51,FR_x,FR_C50      nop.i         0}{ .mfi(p14) ldfe          FR_S6 = [GR_ad_Ce],16      fma.s1        FR_C61 = FR_C61,FR_x,FR_C60(p14) and           GR_Expf = GR_SignExp,GR_ExpMask};;{ .mfi(p14) sub           GR_Expf = GR_Expf,GR_ExpBias      fma.s1        FR_C71 = FR_C71,FR_x,FR_C70(p14) shl           GR_Ind = GR_Sig,1}{ .mfi(p14) ldfe          FR_S4 = [GR_ad_Co],16      fma.s1        FR_C81 = FR_C81,FR_x,FR_C80(p14) cmp.eq.unc    p8,p0 = 0,GR_Sig};;{ .mfi(p14) setf.sig      FR_int_Nf = GR_Expf      fma.s1        FR_C91 = FR_C91,FR_x,FR_C90(p14) shr.u         GR_Ind = GR_Ind,56}{ .mfb(p14) ldfe          FR_S2 = [GR_ad_Ce],16      fma.s1        FR_CA1 = FR_CA1,FR_x,FR_CA0      // jump if the input argument is integer number from range (-512.0;-17.0](p8)  br.cond.spnt  lgamma_singularity};;{ .mfi(p14) getf.sig      GR_Sig = FR_int_Ntrunc      fma.s1        FR_C01 = FR_C01,FR_C11,f0      nop.i         0}{ .mfi(p14) shladd        GR_ad_T = GR_Ind,4,GR_ad_2      fma.s1        FR_C31 = FR_C31,FR_x,FR_C30      nop.i         0};;{ .mfi(p14) ldfe          FR_Tf = [GR_ad_T](p14) fms.s1        FR_rf = FR_InvXf,FR_Xf,f1 // reduced arg for log({x})(p14) extr.u        GR_Ind = GR_ArgAsIs,44,8}{ .mfi      // set p9  if signgum is 32-bit int      // set p10 if signgum is 64-bit int      cmp.eq        p10,p9 = 8,r34      fma.s1        FR_C21 = FR_C21,FR_C41,f0      mov           GR_SignOfGamma = 1};;{ .mfi      nop.m         0      fma.s1        FR_C51 = FR_C51,FR_C61,f0(p14) tbit.z.unc    p8,p0 = GR_Sig,0}{ .mfi(p14) shladd        GR_ad_T = GR_Ind,4,GR_ad_2(p6)  fma.s1        FR_CN = FR_CN,FR_Xm2,f0      nop.i         0};;{ .mfi(p14) setf.sig      FR_int_N = GR_Exp      fma.s1        FR_C71 = FR_C71,FR_C81,f0(p8)  sub           GR_SignOfGamma = r0,GR_SignOfGamma}{ .mfi      nop.m         0(p14) fma.s1        FR_Xf2 = FR_Xf,FR_Xf,f0      nop.i         0};;{ .mfi(p14) ldfe          FR_T = [GR_ad_T]      fma.s1        FR_C91 = FR_C91,FR_CA1,f0      nop.i         0}{ .mfi      nop.m         0(p14) fma.s1        FR_r2 = FR_r,FR_r,f0      nop.i         0};;.pred.rel "mutex",p9,p10{ .mfi      // store sign of gamma(x) as 32-bit int(p9)  st4           [r33] = GR_SignOfGamma      fma.s1        FR_C01 = FR_C01,FR_C31,f0      nop.i         0}{ .mfi      // store sign of gamma(x) as 64-bit int(p10) st8           [r33] = GR_SignOfGamma(p14) fma.s1        FR_P54 = FR_P5,FR_r,FR_P4      nop.i         0};;{ .mfi      nop.m         0(p14) fma.s1        FR_P32 = FR_P3,FR_r,FR_P2      nop.i         0}{ .mfb      nop.m         0(p14) fma.s1        FR_P54f = FR_P5,FR_rf,FR_P4      // jump if the input argument is non-integer from range (-512.0;-17.0](p14) br.cond.spnt  lgamma_negpoly};;{ .mfi      nop.m         0      fma.s1        FR_C21 = FR_C21,FR_C51,f0      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_C71 = FR_C71,FR_C91,f0      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_CN  = FR_C01,FR_CN,f0      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_C21 = FR_C21,FR_C71,f0      nop.i         0};;{ .mfb      nop.m         0      fma.d.s0      f8 = FR_C21,FR_CN,f0      br.ret.sptk   b0 // exit for arguments from range [2.25; 512.0)};;// branch for calculating of ln(GAMMA(x)) for -512 < x < -17//---------------------------------------------------------------------.align 32lgamma_negpoly:{ .mfi      nop.m         0      fma.s1        FR_Xf4 = FR_Xf2,FR_Xf2,f0      nop.i         0}{ .mfi      nop.m         0      fma.s1        FR_S28 = FR_S28,FR_Xf2,FR_S26      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_S24 = FR_S24,FR_Xf2,FR_S22      nop.i         0}{ .mfi      nop.m         0      fma.s1        FR_S20 = FR_S20,FR_Xf2,FR_S18      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_S16 = FR_S16,FR_Xf2,FR_S14      nop.i         0}{ .mfi      nop.m         0      fma.s1        FR_S12 = FR_S12,FR_Xf2,FR_S10      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_S8 = FR_S8,FR_Xf2,FR_S6      nop.i         0}{ .mfi      nop.m         0      fma.s1        FR_S4 = FR_S4,FR_Xf2,FR_S2      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_rf2 = FR_rf,FR_rf,f0      nop.i         0}{ .mfi      nop.m         0      fma.s1        FR_P32f = FR_P3,FR_rf,FR_P2 // log(x)      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_r3 = FR_r2,FR_r,f0 // log(x)      nop.i         0}{ .mfi      nop.m         0      fcvt.xf       FR_Nf = FR_int_Nf // log({x})      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_S28 = FR_S28,FR_Xf4,FR_S24      nop.i         0}{ .mfi      nop.m         0      fma.s1        FR_Xf8 = FR_Xf4,FR_Xf4,f0      nop.i         0};;{ .mfi      nop.m         0      fma.s1        FR_S20 = FR_S20,FR_Xf4,FR_S16      nop.i         0}{ .mfi      nop.m         0      fma.s1        FR_C21 = FR_C21

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -