| 1 | #include <math.h> |
| 2 | |
| 3 | long double remainderl(long double x, long double y) |
| 4 | { |
| 5 | 	unsigned short fpsr; |
| 6 | 	do __asm__ ("fprem1; fnstsw %%ax" : "+t"(x), "=a"(fpsr) : "u"(y)); |
| 7 | 	while (fpsr & 0x400); |
| 8 | 	return x; |
| 9 | } |