/* * Written by J.T. Conklin . * Changes for long double by Ulrich Drepper * Public domain. */ #include double logb (double x) { double res; asm ("fxtract\n\t" "fstp %%st" : "=t" (res) : "0" (x)); return res; }