32 #ifdef POK_NEEDS_LIBMATH
34 #include "math_private.h"
37 two25 = 3.3554432000e+07,
38 ivln10 = 4.3429449201e-01,
39 log10_2hi = 3.0102920532e-01,
40 log10_2lo = 7.9034151668e-07;
42 static const float zero = 0.0;
45 __ieee754_log10f(
float x)
53 if (hx < 0x00800000) {
54 if ((hx&0x7fffffff)==0)
56 if (hx<0)
return (x-x)/zero;
60 if (hx >= 0x7f800000)
return x+x;
62 i = ((uint32_t)k&0x80000000)>>31;
63 hx = (hx&0x007fffff)|((0x7f-i)<<23);
66 z = y*log10_2lo + ivln10*__ieee754_logf(x);