From e3f623c019cf41977efcab2557eda8e1f305e6ad Mon Sep 17 00:00:00 2001 From: Steve Lhomme Date: Wed, 22 Feb 2023 05:50:50 -0800 Subject: [PATCH] vlc_fixups: turn MSVC CPU defines into GCC CPU defines For x64, x86, arm and arm64. See https://learn.microsoft.com/en-us/cpp/preprocessor/predefined-macros --- include/vlc_fixups.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h index 89647b67d2..799e89f7be 100644 --- a/include/vlc_fixups.h +++ b/include/vlc_fixups.h @@ -57,6 +57,26 @@ typedef unsigned short mode_t; #define _CRT_SUPPRESS_RESTRICT #define DECLSPEC_RESTRICT +// turn CPU MSVC-ism into more standard defines +#if defined(_M_X64) && !defined(__x86_64__) +# define __x86_64__ +#endif +#if defined(_M_IX86) && !defined(__i386__) +# define __i386__ +#endif +#if defined(_M_ARM64) && !defined(__aarch64__) +# define __aarch64__ +#endif +#if defined(_M_ARM) && !defined(__arm__) +# define __arm__ +#endif +#if defined(_M_IX86_FP) && _M_IX86_FP == 1 && !defined(__SSE__) +# define __SSE__ +#endif +#if defined(_M_IX86_FP) && _M_IX86_FP == 2 && !defined(__SSE2__) +# define __SSE2__ +#endif + #endif // _MSC_VER #ifdef _WIN32