/* * Written by J.T. Conklin . * Public domain. * * Adapted for `long double' by Ulrich Drepper . */ #include long double fmodl (long double x, long double y) { long double res; asm ("1:\tfprem\n\t" "fstsw %%ax\n\t" "sahf\n\t" "jp 1b\n\t" "fstp %%st(1)" : "=t" (res) : "0" (x), "u" (y) : "ax", "st(1)"); return res; }