master
1#include <math.h>
2
3float remainderf(float x, float y)
4{
5 unsigned short fpsr;
6 // fprem1 does not introduce excess precision into x
7 do __asm__ ("fprem1; fnstsw %%ax" : "+t"(x), "=a"(fpsr) : "u"(y));
8 while (fpsr & 0x400);
9 return x;
10}
11
12weak_alias(remainderf, dremf);