LCOV - code coverage report
Current view: top level - src - k_logf.h (source / functions) Coverage Total Hit
Test: app.info Lines: 100.0 % 9 9
Test Date: 2024-01-11 15:52:50 Functions: 100.0 % 1 1
Branches: - 0 0

             Branch data     Line data    Source code
       1                 :             : /*
       2                 :             :  * ====================================================
       3                 :             :  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
       4                 :             :  *
       5                 :             :  * Developed at SunPro, a Sun Microsystems, Inc. business.
       6                 :             :  * Permission to use, copy, modify, and distribute this
       7                 :             :  * software is freely granted, provided that this notice
       8                 :             :  * is preserved.
       9                 :             :  * ====================================================
      10                 :             :  */
      11                 :             : 
      12                 :             : #include "cdefs-compat.h"
      13                 :             : //__FBSDID("$FreeBSD: src/lib/msun/src/k_logf.h,v 1.3 2011/10/15 05:23:28 das Exp $");
      14                 :             : 
      15                 :             : /*
      16                 :             :  * Float version of k_log.h.  See the latter for most comments.
      17                 :             :  */
      18                 :             : 
      19                 :             : static const float
      20                 :             : /* |(log(1+s)-log(1-s))/s - Lg(s)| < 2**-34.24 (~[-4.95e-11, 4.97e-11]). */
      21                 :             : Lg1 =      0xaaaaaa.0p-24,      /* 0.66666662693 */
      22                 :             : Lg2 =      0xccce13.0p-25,      /* 0.40000972152 */
      23                 :             : Lg3 =      0x91e9ee.0p-25,      /* 0.28498786688 */
      24                 :             : Lg4 =      0xf89e26.0p-26;      /* 0.24279078841 */
      25                 :             : 
      26                 :             : static inline float
      27                 :          11 : k_log1pf(float f)
      28                 :             : {
      29                 :             :         float hfsq,s,z,R,w,t1,t2;
      30                 :             : 
      31                 :          11 :         s = f/((float)2.0+f);
      32                 :          11 :         z = s*s;
      33                 :          11 :         w = z*z;
      34                 :          11 :         t1= w*(Lg2+w*Lg4);
      35                 :          11 :         t2= z*(Lg1+w*Lg3);
      36                 :          11 :         R = t2+t1;
      37                 :          11 :         hfsq=(float)0.5*f*f;
      38                 :          11 :         return s*(hfsq+R);
      39                 :             : }
        

Generated by: LCOV version 2.0-115.g950771e