msvcrt: Don't compile msvcr120 math functions in older versions.
Signed-off-by: Piotr Caban <piotr@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
b908ec2294
commit
d5fb715536
|
@ -4143,6 +4143,38 @@ void __cdecl __libm_sse2_sqrt_precise(void)
|
||||||
}
|
}
|
||||||
#endif /* __i386__ */
|
#endif /* __i386__ */
|
||||||
|
|
||||||
|
/*********************************************************************
|
||||||
|
* _fdclass (MSVCR120.@)
|
||||||
|
*
|
||||||
|
* Copied from musl: src/math/__fpclassifyf.c
|
||||||
|
*/
|
||||||
|
short CDECL _fdclass(float x)
|
||||||
|
{
|
||||||
|
union { float f; UINT32 i; } u = { x };
|
||||||
|
int e = u.i >> 23 & 0xff;
|
||||||
|
|
||||||
|
if (!e) return u.i << 1 ? FP_SUBNORMAL : FP_ZERO;
|
||||||
|
if (e == 0xff) return u.i << 9 ? FP_NAN : FP_INFINITE;
|
||||||
|
return FP_NORMAL;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*********************************************************************
|
||||||
|
* _dclass (MSVCR120.@)
|
||||||
|
*
|
||||||
|
* Copied from musl: src/math/__fpclassify.c
|
||||||
|
*/
|
||||||
|
short CDECL _dclass(double x)
|
||||||
|
{
|
||||||
|
union { double f; UINT64 i; } u = { x };
|
||||||
|
int e = u.i >> 52 & 0x7ff;
|
||||||
|
|
||||||
|
if (!e) return u.i << 1 ? FP_SUBNORMAL : FP_ZERO;
|
||||||
|
if (e == 0x7ff) return (u.i << 12) ? FP_NAN : FP_INFINITE;
|
||||||
|
return FP_NORMAL;
|
||||||
|
}
|
||||||
|
|
||||||
|
#if _MSVCR_VER>=120
|
||||||
|
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
* cbrt (MSVCR120.@)
|
* cbrt (MSVCR120.@)
|
||||||
*/
|
*/
|
||||||
|
@ -4287,38 +4319,6 @@ __int64 CDECL llrintf(float x)
|
||||||
return unix_funcs->llrintf( x );
|
return unix_funcs->llrintf( x );
|
||||||
}
|
}
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* _fdclass (MSVCR120.@)
|
|
||||||
*
|
|
||||||
* Copied from musl: src/math/__fpclassifyf.c
|
|
||||||
*/
|
|
||||||
short CDECL _fdclass(float x)
|
|
||||||
{
|
|
||||||
union { float f; UINT32 i; } u = { x };
|
|
||||||
int e = u.i >> 23 & 0xff;
|
|
||||||
|
|
||||||
if (!e) return u.i << 1 ? FP_SUBNORMAL : FP_ZERO;
|
|
||||||
if (e == 0xff) return u.i << 9 ? FP_NAN : FP_INFINITE;
|
|
||||||
return FP_NORMAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* _dclass (MSVCR120.@)
|
|
||||||
*
|
|
||||||
* Copied from musl: src/math/__fpclassify.c
|
|
||||||
*/
|
|
||||||
short CDECL _dclass(double x)
|
|
||||||
{
|
|
||||||
union { double f; UINT64 i; } u = { x };
|
|
||||||
int e = u.i >> 52 & 0x7ff;
|
|
||||||
|
|
||||||
if (!e) return u.i << 1 ? FP_SUBNORMAL : FP_ZERO;
|
|
||||||
if (e == 0x7ff) return (u.i << 12) ? FP_NAN : FP_INFINITE;
|
|
||||||
return FP_NORMAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if _MSVCR_VER>=120
|
|
||||||
|
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
* round (MSVCR120.@)
|
* round (MSVCR120.@)
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue