diff --git a/mp/src/lib/public/mathlib.lib b/mp/src/lib/public/mathlib.lib index e603c8931..473e9d0ac 100644 Binary files a/mp/src/lib/public/mathlib.lib and b/mp/src/lib/public/mathlib.lib differ diff --git a/mp/src/public/mathlib/ssemath.h b/mp/src/public/mathlib/ssemath.h index b25fbd099..5206c5956 100644 --- a/mp/src/public/mathlib/ssemath.h +++ b/mp/src/public/mathlib/ssemath.h @@ -2355,10 +2355,10 @@ FORCEINLINE void StoreUnalignedIntSIMD( int32 * RESTRICT pSIMD, const fltx4 & a FORCEINLINE fltx4 UnsignedIntConvertToFltSIMD( const u32x4 &vSrcA ) { fltx4 retval; - SubFloat( retval, 0 ) = ( (float) SubInt( retval, 0 ) ); - SubFloat( retval, 1 ) = ( (float) SubInt( retval, 1 ) ); - SubFloat( retval, 2 ) = ( (float) SubInt( retval, 2 ) ); - SubFloat( retval, 3 ) = ( (float) SubInt( retval, 3 ) ); + SubFloat( retval, 0 ) = ( (float) (reinterpret_cast(&vSrcA)[0])); + SubFloat( retval, 1 ) = ( (float) (reinterpret_cast(&vSrcA)[1])); + SubFloat( retval, 2 ) = ( (float) (reinterpret_cast(&vSrcA)[2])); + SubFloat( retval, 3 ) = ( (float) (reinterpret_cast(&vSrcA)[3])); return retval; } diff --git a/sp/src/lib/public/mathlib.lib b/sp/src/lib/public/mathlib.lib index afcad3165..a6de06d2e 100644 Binary files a/sp/src/lib/public/mathlib.lib and b/sp/src/lib/public/mathlib.lib differ diff --git a/sp/src/public/mathlib/ssemath.h b/sp/src/public/mathlib/ssemath.h index b25fbd099..5206c5956 100644 --- a/sp/src/public/mathlib/ssemath.h +++ b/sp/src/public/mathlib/ssemath.h @@ -2355,10 +2355,10 @@ FORCEINLINE void StoreUnalignedIntSIMD( int32 * RESTRICT pSIMD, const fltx4 & a FORCEINLINE fltx4 UnsignedIntConvertToFltSIMD( const u32x4 &vSrcA ) { fltx4 retval; - SubFloat( retval, 0 ) = ( (float) SubInt( retval, 0 ) ); - SubFloat( retval, 1 ) = ( (float) SubInt( retval, 1 ) ); - SubFloat( retval, 2 ) = ( (float) SubInt( retval, 2 ) ); - SubFloat( retval, 3 ) = ( (float) SubInt( retval, 3 ) ); + SubFloat( retval, 0 ) = ( (float) (reinterpret_cast(&vSrcA)[0])); + SubFloat( retval, 1 ) = ( (float) (reinterpret_cast(&vSrcA)[1])); + SubFloat( retval, 2 ) = ( (float) (reinterpret_cast(&vSrcA)[2])); + SubFloat( retval, 3 ) = ( (float) (reinterpret_cast(&vSrcA)[3])); return retval; }