chiark / gitweb /
eglibc (2.11.3-4+deb6u3) squeeze-lts; urgency=medium
[eglibc.git] / sysdeps / i386 / fpu / e_fmodl.c
1 /*
2  * Written by J.T. Conklin <jtc@netbsd.org>.
3  * Public domain.
4  *
5  * Adapted for `long double' by Ulrich Drepper <drepper@cygnus.com>.
6  */
7
8 #include <math_private.h>
9
10 long double
11 __ieee754_fmodl (long double x, long double y)
12 {
13   long double res;
14
15   asm ("1:\tfprem\n"
16        "fstsw   %%ax\n"
17        "sahf\n"
18        "jp      1b\n"
19        "fstp    %%st(1)"
20        : "=t" (res) : "0" (x), "u" (y) : "ax", "st(1)");
21   return res;
22 }