1 /* Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved.
3 * Permission to use, copy, modify, and distribute this software
4 * is freely granted, provided that this notice is preserved.
8 #include "math_private.h"
11 double remquo(double x
, double y
, int *quo
) /* wrapper remquo */
13 double remquo(x
,y
,quo
) /* wrapper remquo */
18 int signx
, signy
, signres
;
23 GET_HIGH_WORD(mswx
, x
);
24 GET_HIGH_WORD(mswy
, y
);
26 signx
= (mswx
& 0x80000000) >> 31;
27 signy
= (mswy
& 0x80000000) >> 31;
29 signres
= (signx
^ signy
) ? -1 : 1;
31 x_over_y
= fabs(x
/ y
);
33 *quo
= signres
* (lrint(x_over_y
) & 0x7f);
35 return remainder(x
,y
);
37 libm_hidden_def(remquo
)