Sign in
cobalt
/
cobalt
/
07081467c3d00b04a6a1162e0566a5a8b9cfe2d5
/
.
/
third_party
/
musl
/
src
/
math
/
logb.c
blob: 7f8bdfae19f8ca0a85b611d38a73695ccf588e43 [
file
] [
log
] [
blame
]
#include
<math.h>
/*
special cases:
logb(+-0) = -inf, and raise divbyzero
logb(+-inf) = +inf
logb(nan) = nan
*/
double
logb
(
double
x
)
{
if
(!
isfinite
(
x
))
return
x
*
x
;
if
(
x
==
0
)
return
-
1
/(
x
*
x
);
return
ilogb
(
x
);
}