diff options
| author | Jonathan "Geenz" Goodman <geenz@lindenlab.com> | 2025-10-17 16:56:48 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-17 16:56:48 -0400 |
| commit | aec7bf19ebffd9d6b60c68e31de723eabd6aa98a (patch) | |
| tree | 9ee0b36fa08a99444260baaf5ea9b019758bb125 /indra/llmath/llsimdmath.h | |
| parent | e81b1de01e2b28f83cd2c85691428211bb9105e9 (diff) | |
| parent | 57a9e51360aebf142bbbdc2663f68ebacfb7d8f5 (diff) | |
Merge pull request #4714 from secondlife/release/2025.07
Release/2025.07
Diffstat (limited to 'indra/llmath/llsimdmath.h')
| -rw-r--r-- | indra/llmath/llsimdmath.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/indra/llmath/llsimdmath.h b/indra/llmath/llsimdmath.h index 40953dc2e8..b27b034cf3 100644 --- a/indra/llmath/llsimdmath.h +++ b/indra/llmath/llsimdmath.h @@ -31,16 +31,26 @@ #error "Please include llmath.h before this file." #endif -#if ( ( LL_DARWIN || LL_LINUX ) && !(__SSE2__) ) || ( LL_WINDOWS && ( _M_IX86_FP < 2 && ADDRESS_SIZE == 32 ) ) -#error SSE2 not enabled. LLVector4a and related class will not compile. +// the check for this error case must be split into multiple parts +// because some versions of VS complain about '__SSE2__' +#if ( ( LL_DARWIN || LL_LINUX ) ) + #if !(__SSE2__) && !(__arm64__) && !(__aarch64__) + #error SSE2 not enabled. LLVector4a and related class will not compile. + #endif +#elif ( LL_WINDOWS && ( _M_IX86_FP < 2 && ADDRESS_SIZE == 32 ) ) + #error SSE2 not enabled. LLVector4a and related class will not compile. #endif #if !LL_WINDOWS #include <stdint.h> #endif +#if defined(__arm64__) || defined(__aarch64__) +#include "sse2neon.h" +#else #include <xmmintrin.h> #include <emmintrin.h> +#endif #include "llmemory.h" #include "llsimdtypes.h" |
