ref: c72d3e3d80352a947f7e2aecfb8768ba4b84c87d
dir: npe/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; }