mirror of
https://github.com/godotengine/godot.git
synced 2025-03-07 23:32:58 +08:00
Merge pull request #38530 from akien-mga/jpgd-fix-msvc-sse2-detection
jpgd: Fix detection of SSE2 support with MSVC
This commit is contained in:
commit
621139138d
16
thirdparty/jpeg-compressor/jpgd.cpp
vendored
16
thirdparty/jpeg-compressor/jpgd.cpp
vendored
@ -37,16 +37,14 @@
|
||||
|
||||
#ifndef JPGD_USE_SSE2
|
||||
|
||||
#if defined(__GNUC__)
|
||||
|
||||
#if (defined(__x86_64__) || defined(_M_X64))
|
||||
#if defined(__SSE2__)
|
||||
#define JPGD_USE_SSE2 (1)
|
||||
#endif
|
||||
#if defined(__GNUC__)
|
||||
#if defined(__SSE2__)
|
||||
#define JPGD_USE_SSE2 (1)
|
||||
#endif
|
||||
#elif defined(_MSC_VER)
|
||||
#if defined(_M_X64)
|
||||
#define JPGD_USE_SSE2 (1)
|
||||
#endif
|
||||
|
||||
#else
|
||||
#define JPGD_USE_SSE2 (1)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
44
thirdparty/jpeg-compressor/patches/fix-msvc-sse2-detection.patch
vendored
Normal file
44
thirdparty/jpeg-compressor/patches/fix-msvc-sse2-detection.patch
vendored
Normal file
@ -0,0 +1,44 @@
|
||||
From ae74fa2fcdef8ec44b925a649f66e8cbefce8315 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= <rverschelde@gmail.com>
|
||||
Date: Thu, 7 May 2020 12:14:09 +0200
|
||||
Subject: [PATCH] Fix detection of SSE2 with Visual Studio
|
||||
|
||||
The previous code assumed that SSE2 is available when building with
|
||||
Visual Studio, but that's not accurate on ARM with UWP.
|
||||
|
||||
SSE2 could also be enabled on x86 if `_M_IX86_FP == 2`, but it requires
|
||||
checking first that it's not actually set to 2 for AVX, AVX2 or AVX512
|
||||
(see https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros?view=vs-2019),
|
||||
so I left it out for this quick fix.
|
||||
---
|
||||
jpgd.cpp | 16 +++++++---------
|
||||
1 file changed, 7 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/jpgd.cpp b/jpgd.cpp
|
||||
index 91e66ad..db1f3b4 100644
|
||||
--- a/jpgd.cpp
|
||||
+++ b/jpgd.cpp
|
||||
@@ -37,16 +37,14 @@
|
||||
|
||||
#ifndef JPGD_USE_SSE2
|
||||
|
||||
- #if defined(__GNUC__)
|
||||
-
|
||||
- #if (defined(__x86_64__) || defined(_M_X64))
|
||||
- #if defined(__SSE2__)
|
||||
- #define JPGD_USE_SSE2 (1)
|
||||
- #endif
|
||||
+ #if defined(__GNUC__)
|
||||
+ #if defined(__SSE2__)
|
||||
+ #define JPGD_USE_SSE2 (1)
|
||||
+ #endif
|
||||
+ #elif defined(_MSC_VER)
|
||||
+ #if defined(_M_X64)
|
||||
+ #define JPGD_USE_SSE2 (1)
|
||||
#endif
|
||||
-
|
||||
- #else
|
||||
- #define JPGD_USE_SSE2 (1)
|
||||
#endif
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user