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