[CRT:MATH] Move some math functions from ucrt to crt

This commit is contained in:
Timo Kreuzer 2025-05-11 12:02:39 +03:00
parent a9ee20cb9a
commit b734e3ba63
8 changed files with 64 additions and 68 deletions

View file

@ -1,17 +1,15 @@
//
// _dclass.c
//
// Copyright (c) 2024 Timo Kreuzer
//
// Implementation of _dclass.
//
// SPDX-License-Identifier: MIT
//
/*
* PROJECT: ReactOS CRT
* LICENSE: MIT (https://spdx.org/licenses/MIT)
* PURPOSE: Implementation of _dclass.
* COPYRIGHT: Copyright 2025 Timo Kreuzer <timo.kreuzer@reactos.org>
*/
#include <math.h>
#include <stdint.h>
#if defined(_MSC_VER) && (_MSC_VER >= 1922)
_Check_return_ short __cdecl _dclass(_In_ double _X);
#pragma function(_dclass)
#endif

23
sdk/lib/crt/math/_dtest.c Normal file
View file

@ -0,0 +1,23 @@
/*
* PROJECT: ReactOS CRT
* LICENSE: MIT (https://spdx.org/licenses/MIT)
* PURPOSE: Implementation of _dtest.
* COPYRIGHT: Copyright 2025 Timo Kreuzer <timo.kreuzer@reactos.org>
*/
#include <math.h>
_Check_return_ short __cdecl _dclass(_In_ double _X);
#if defined(_MSC_VER) && (_MSC_VER >= 1922)
_Check_return_ short __cdecl _dtest(_In_ double* _Px);
#pragma function(_dtest)
#endif
_Check_return_
short
__cdecl
_dtest(_In_ double* _Px)
{
return _dclass(*_Px);
}

View file

@ -1,17 +1,15 @@
//
// _fdclass.c
//
// Copyright (c) 2024 Timo Kreuzer
//
// Implementation of _fdclass.
//
// SPDX-License-Identifier: MIT
//
/*
* PROJECT: ReactOS CRT
* LICENSE: MIT (https://spdx.org/licenses/MIT)
* PURPOSE: Implementation of _fdclass.
* COPYRIGHT: Copyright 2025 Timo Kreuzer <timo.kreuzer@reactos.org>
*/
#include <math.h>
#include <stdint.h>
#if defined(_MSC_VER) && (_MSC_VER >= 1922)
_Check_return_ short __cdecl _fdclass(_In_ float _X);
#pragma function(_fdclass)
#endif

View file

@ -0,0 +1,23 @@
/*
* PROJECT: ReactOS CRT
* LICENSE: MIT (https://spdx.org/licenses/MIT)
* PURPOSE: Implementation of _fdtest.
* COPYRIGHT: Copyright 2025 Timo Kreuzer <timo.kreuzer@reactos.org>
*/
#include <math.h>
_Check_return_ short __cdecl _fdclass(_In_ float _X);
#if defined(_MSC_VER) && (_MSC_VER >= 1922)
_Check_return_ short __cdecl _fdtest(_In_ float* _Px);
#pragma function(_fdtest)
#endif
_Check_return_
short
__cdecl
_fdtest(_In_ float* _Px)
{
return _fdclass(*_Px);
}

View file

@ -3,8 +3,12 @@ include_directories(libm_sse2)
list(APPEND LIBCNTPR_MATH_SOURCE
math/_chgsignf.c
math/_dclass.c
math/_dsign.c
math/_dtest.c
math/_fdclass.c
math/_fdsign.c
math/_fdtest.c
math/_finite.c
math/_finitef.c
math/_isnan.c

View file

@ -1,23 +0,0 @@
//
// _dtest.c
//
// Copyright (c) 2024 Timo Kreuzer
//
// Implementation of _dtest.
//
// SPDX-License-Identifier: MIT
//
#include <math.h>
#if defined(_MSC_VER) && (_MSC_VER >= 1922)
#pragma function(_dtest)
#endif
_Check_return_
short
__cdecl
_dtest(_In_ double* _Px)
{
return _dclass(*_Px);
}

View file

@ -1,23 +0,0 @@
//
// _fdtest.c
//
// Copyright (c) 2024 Timo Kreuzer
//
// Implementation of _fdtest.
//
// SPDX-License-Identifier: MIT
//
#include <math.h>
#if defined(_MSC_VER) && (_MSC_VER >= 1922)
#pragma function(_fdtest)
#endif
_Check_return_
short
__cdecl
_fdtest(_In_ float* _Px)
{
return _fdclass(*_Px);
}

View file

@ -1,8 +1,4 @@
list(APPEND UCRT_MATH_SOURCES
math/_dclass.c
math/_dtest.c
math/_fdclass.c
math/_fdtest.c
math/matherr.cpp
)