Commit 3b1e2a7b authored by Alexandre Julliard's avatar Alexandre Julliard

msvcrt: Use the remainder()/remainderf() implementation from the bundled musl library.

parent 64eed89a
......@@ -2325,9 +2325,9 @@
@ cdecl rand()
@ cdecl rand_s(ptr)
@ cdecl realloc(ptr long)
@ cdecl remainder(double double)
@ cdecl remainderf(float float)
@ cdecl remainderl(double double) remainder
@ cdecl remainder(double double) MSVCRT_remainder
@ cdecl remainderf(float float) MSVCRT_remainderf
@ cdecl remainderl(double double) MSVCRT_remainder
@ cdecl remove(str)
@ cdecl remquo(double double ptr)
@ cdecl remquof(float float ptr)
......
......@@ -3350,36 +3350,34 @@ float CDECL _scalbf(float num, __msvcrt_long power)
return ldexp(num, power);
}
#if _MSVCR_VER>=120
#if _MSVCR_VER == 120 /* other versions call remainder() directly */
/*********************************************************************
* remainder (MSVCR120.@)
*
* Copied from musl: src/math/remainder.c
*/
double CDECL remainder(double x, double y)
double CDECL MSVCRT_remainder(double x, double y)
{
int q;
#if _MSVCR_VER == 120 && defined(__x86_64__)
#ifdef __x86_64__
if (isnan(x) || isnan(y)) *_errno() = EDOM;
#endif
return remquo(x, y, &q);
return remainder(x, y);
}
/*********************************************************************
* remainderf (MSVCR120.@)
*
* Copied from musl: src/math/remainderf.c
*/
float CDECL remainderf(float x, float y)
float CDECL MSVCRT_remainderf(float x, float y)
{
int q;
#if _MSVCR_VER == 120 && defined(__x86_64__)
#ifdef __x86_64__
if (isnan(x) || isnan(y)) *_errno() = EDOM;
#endif
return remquof(x, y, &q);
return remainderf(x, y);
}
#endif /* _MSVCR_VER == 120 */
#if _MSVCR_VER>=120
/*********************************************************************
* _except1 (MSVCR120.@)
* TODO:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment