From f802b18cdc05c7936f92fc3aa1eb2a11f53b8084 Mon Sep 17 00:00:00 2001 From: zilmar Date: Mon, 30 Jan 2023 10:07:51 +1030 Subject: [PATCH] Core: Change to using fenv.h instead of including the code directly --- Source/Common/Platform.cpp | 29 +------------------ Source/Common/Platform.h | 14 --------- .../N64System/Interpreter/InterpreterOps.cpp | 1 + .../N64System/Mips/Register.cpp | 1 + .../Recompiler/x86/x86RecompilerOps.cpp | 1 + 5 files changed, 4 insertions(+), 42 deletions(-) diff --git a/Source/Common/Platform.cpp b/Source/Common/Platform.cpp index f35e85ec3..5cb1d5dae 100644 --- a/Source/Common/Platform.cpp +++ b/Source/Common/Platform.cpp @@ -13,31 +13,4 @@ int _vscprintf(const char * format, va_list pargs) va_end(argcopy); return retval; } -#endif - -#ifdef _MSC_VER -#include - -int fesetround(int RoundType) -{ - static const unsigned int msRound[4] = {_RC_NEAR, _RC_CHOP, _RC_UP, _RC_DOWN}; - int32_t res = _controlfp(msRound[RoundType], _MCW_RC); - if (res == _RC_NEAR) - { - return FE_TONEAREST; - } - if (res == _RC_CHOP) - { - return FE_TOWARDZERO; - } - if (res == _RC_UP) - { - return FE_UPWARD; - } - if (res == _RC_DOWN) - { - return FE_DOWNWARD; - } - return FE_TONEAREST; -} -#endif +#endif \ No newline at end of file diff --git a/Source/Common/Platform.h b/Source/Common/Platform.h index f5676c57c..7bc0f9a5a 100644 --- a/Source/Common/Platform.h +++ b/Source/Common/Platform.h @@ -13,17 +13,3 @@ int _vscprintf(const char * format, va_list pargs); #endif - -// FPU rounding code -#ifdef _WIN32 -typedef enum -{ - FE_TONEAREST = 0, - FE_TOWARDZERO, - FE_UPWARD, - FE_DOWNWARD, -} eRoundType; -int fesetround(int RoundType); -#else -#include -#endif diff --git a/Source/Project64-core/N64System/Interpreter/InterpreterOps.cpp b/Source/Project64-core/N64System/Interpreter/InterpreterOps.cpp index 49e92ed63..6e1446ac2 100644 --- a/Source/Project64-core/N64System/Interpreter/InterpreterOps.cpp +++ b/Source/Project64-core/N64System/Interpreter/InterpreterOps.cpp @@ -10,6 +10,7 @@ #include #include #include +#include #include #include diff --git a/Source/Project64-core/N64System/Mips/Register.cpp b/Source/Project64-core/N64System/Mips/Register.cpp index 37507e62f..2318ccb86 100644 --- a/Source/Project64-core/N64System/Mips/Register.cpp +++ b/Source/Project64-core/N64System/Mips/Register.cpp @@ -4,6 +4,7 @@ #include #include #include +#include const char * CRegName::GPR[32] = { "R0", diff --git a/Source/Project64-core/N64System/Recompiler/x86/x86RecompilerOps.cpp b/Source/Project64-core/N64System/Recompiler/x86/x86RecompilerOps.cpp index 24a9d108f..a309d928d 100644 --- a/Source/Project64-core/N64System/Recompiler/x86/x86RecompilerOps.cpp +++ b/Source/Project64-core/N64System/Recompiler/x86/x86RecompilerOps.cpp @@ -17,6 +17,7 @@ #include #include #include +#include #include uint32_t CX86RecompilerOps::m_TempValue32 = 0;