summaryrefslogtreecommitdiffstats
path: root/thirdparty/squish/patches/config_sse.patch
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/squish/patches/config_sse.patch')
-rw-r--r--thirdparty/squish/patches/config_sse.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/thirdparty/squish/patches/config_sse.patch b/thirdparty/squish/patches/config_sse.patch
new file mode 100644
index 0000000000..047701ee32
--- /dev/null
+++ b/thirdparty/squish/patches/config_sse.patch
@@ -0,0 +1,31 @@
+diff --git a/thirdparty/squish/config.h b/thirdparty/squish/config.h
+index 92edefe966..05f8d72598 100644
+--- a/thirdparty/squish/config.h
++++ b/thirdparty/squish/config.h
+@@ -32,6 +32,26 @@
+ #endif
+
+ // Set to 1 or 2 when building squish to use SSE or SSE2 instructions.
++// -- GODOT start --
++#ifdef _MSC_VER
++ #if defined(_M_IX86_FP)
++ #if _M_IX86_FP >= 2
++ #define SQUISH_USE_SSE 2
++ #elif _M_IX86_FP >= 1
++ #define SQUISH_USE_SSE 1
++ #endif
++ #elif defined(_M_X64)
++ #define SQUISH_USE_SSE 2
++ #endif
++#else
++ #if defined(__SSE2__)
++ #define SQUISH_USE_SSE 2
++ #elif defined(__SSE__)
++ #define SQUISH_USE_SSE 1
++ #endif
++#endif
++// -- GODOT end --
++
+ #ifndef SQUISH_USE_SSE
+ #define SQUISH_USE_SSE 0
+ #endif