github.com/afumu/libc@v0.0.6/musl/src/math/logb.c (about)

     1  #include <math.h>
     2  
     3  /*
     4  special cases:
     5  	logb(+-0) = -inf, and raise divbyzero
     6  	logb(+-inf) = +inf
     7  	logb(nan) = nan
     8  */
     9  
    10  double logb(double x)
    11  {
    12  	if (!isfinite(x))
    13  		return x * x;
    14  	if (x == 0)
    15  		return -1/(x*x);
    16  	return ilogb(x);
    17  }