basic simd math function overrides

beginning the implementation of overriding the math functions with sse2 sse41 and avx2 functions
This commit is contained in:
marauder2k7 2026-02-24 20:19:34 +00:00
parent 2b375bfea4
commit a7d92c344d
5 changed files with 375 additions and 14 deletions

View file

@ -27,6 +27,9 @@
#include "math/mMath.h"
extern void mInstallLibrary_SSE2();
extern void mInstallLibrary_SSE41();
extern void mInstallLibrary_AVX2();
extern void mInstallLibrary_C();
extern void mInstallLibrary_ASM();
@ -98,22 +101,19 @@ void Math::init(U32 properties)
Con::printf(" Installing Standard C extensions");
mInstallLibrary_C();
Con::printf(" Installing Assembly extensions");
mInstallLibrary_ASM();
if (properties & CPU_PROP_FPU)
{
Con::printf(" Installing FPU extensions");
}
if (properties & CPU_PROP_MMX)
{
Con::printf(" Installing MMX extensions");
}
if (properties & CPU_PROP_SSE)
{
Con::printf(" Installing SSE extensions");
if (properties & CPU_PROP_SSE2)
mInstallLibrary_SSE2();
if(properties & CPU_PROP_SSE4_1)
mInstallLibrary_SSE41();
}
if (properties & CPU_PROP_AVX2)
{
Con::printf(" Installing AVX2 extensions");
mInstallLibrary_AVX2();
}
Con::printf(" ");