Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mumble-voip/speex.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--win32/config.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/win32/config.h b/win32/config.h
index e79c4c2..6366d7b 100644
--- a/win32/config.h
+++ b/win32/config.h
@@ -1,6 +1,17 @@
// Microsoft version of 'inline'
#define inline __inline
+// In Visual Studio, _M_IX86_FP=1 means /arch:SSE was used, likewise
+// _M_IX86_FP=2 means /arch:SSE2 was used.
+// Also, enable both _USE_SSE and _USE_SSE2 if we're compiling for x86-64
+#if _M_IX86_FP >= 1 || defined(_M_X64)
+#define _USE_SSE
+#endif
+
+#if _M_IX86_FP >= 2 || defined(_M_X64)
+#define _USE_SSE2
+#endif
+
// Visual Studio support alloca(), but it always align variables to 16-bit
// boundary, while SSE need 128-bit alignment. So we disable alloca() when
// SSE is enabled.