summaryrefslogtreecommitdiff
path: root/thirdparty/etcpak/patches/windows-mingw-bswap.patch
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/etcpak/patches/windows-mingw-bswap.patch')
-rw-r--r--thirdparty/etcpak/patches/windows-mingw-bswap.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/thirdparty/etcpak/patches/windows-mingw-bswap.patch b/thirdparty/etcpak/patches/windows-mingw-bswap.patch
new file mode 100644
index 0000000000..c09192f573
--- /dev/null
+++ b/thirdparty/etcpak/patches/windows-mingw-bswap.patch
@@ -0,0 +1,50 @@
+diff --git a/thirdparty/etcpak/BlockData.cpp b/thirdparty/etcpak/BlockData.cpp
+index a2cd032c5b..bd738085f3 100644
+--- a/thirdparty/etcpak/BlockData.cpp
++++ b/thirdparty/etcpak/BlockData.cpp
+@@ -15,7 +15,7 @@
+ # include <arm_neon.h>
+ #endif
+
+-#ifdef __SSE4_1__
++#if defined __SSE4_1__ || defined __AVX2__ || defined _MSC_VER
+ # ifdef _MSC_VER
+ # include <intrin.h>
+ # include <Windows.h>
+@@ -24,12 +24,6 @@
+ # else
+ # include <x86intrin.h>
+ # endif
+-#else
+-# ifndef _MSC_VER
+-# include <byteswap.h>
+-# define _bswap(x) bswap_32(x)
+-# define _bswap64(x) bswap_64(x)
+-# endif
+ #endif
+
+ #ifndef _bswap
+diff --git a/thirdparty/etcpak/ProcessRGB.cpp b/thirdparty/etcpak/ProcessRGB.cpp
+index 220d5c55e2..9dc5a78b67 100644
+--- a/thirdparty/etcpak/ProcessRGB.cpp
++++ b/thirdparty/etcpak/ProcessRGB.cpp
+@@ -1,5 +1,6 @@
+ #include <array>
+ #include <string.h>
++#include <limits>
+
+ #ifdef __ARM_NEON
+ # include <arm_neon.h>
+@@ -21,12 +22,6 @@
+ # else
+ # include <x86intrin.h>
+ # endif
+-#else
+-# ifndef _MSC_VER
+-# include <byteswap.h>
+-# define _bswap(x) bswap_32(x)
+-# define _bswap64(x) bswap_64(x)
+-# endif
+ #endif
+
+ #ifndef _bswap