Sign in
fuchsia
/
fuchsia
/
refs/heads/releases/canary
/
.
/
zircon
/
third_party
/
ulib
/
musl
/
src
/
math
/
logb.c
blob: bff51015f424589af88a217f8d76d17fb28469fd [
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
);
}