• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #include <math.h>
2 
remainder(double x,double y)3 double remainder(double x, double 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 
12 weak_alias(remainder, drem);
13