ref: ea4e9e55d8fd27607c4204416d4c3a36370ff359
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; }