ref: 42afe9c1c3c65fe1e1be697f4dd8f512a0b2b8b5
dir: /libnpe/log2.c/
#include <math.h>
#define ln2o1 1.4426950408889634073599
#define huge 1.79769313486231e+308
double
log2(double x)
{
if(x == 0)
return -huge;
if(x < 0 || isNaN(x))
return NaN();
return log(x)*ln2o1;
}