msvcrt: Reimplement _dsign().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alexandre Julliard 2020-11-16 12:21:16 +01:00
parent d6476e0097
commit 4619140b1c
1 changed files with 4 additions and 2 deletions

View File

@ -3873,7 +3873,8 @@ double CDECL MSVCR120_fdim(double x, double y)
*/ */
int CDECL MSVCR120__fdsign(float x) int CDECL MSVCR120__fdsign(float x)
{ {
return signbit(x) ? 0x8000 : 0; union { float f; UINT32 i; } u = { x };
return (u.i >> 16) & 0x8000;
} }
/********************************************************************* /*********************************************************************
@ -3881,7 +3882,8 @@ int CDECL MSVCR120__fdsign(float x)
*/ */
int CDECL MSVCR120__dsign(double x) int CDECL MSVCR120__dsign(double x)
{ {
return signbit(x) ? 0x8000 : 0; union { double f; UINT64 i; } u = { x };
return (u.i >> 48) & 0x8000;
} }