From 4074acf873ce25495e148acff03e0d6bdfc52678 Mon Sep 17 00:00:00 2001 From: James Zern Date: Wed, 19 Jan 2022 21:49:59 -0800 Subject: [PATCH] dsp.h: bump msvc arm64 version requirement to 16.6 there was a bug in 16.4 causing compile failures with vtbl4_u8(): src\dsp\lossless_neon.c(105): error C2143: syntax error: missing ')' before '{' src\dsp\lossless_neon.c(105): error C2168: 'neon_tbl2_q8': too few actual parameters for intrinsic function https://developercommunity.visualstudio.com/t/cannot-compile-arm64-neon-vtbl4-u8-function-in-c-f/859331 Change-Id: I87c21850b3c597aa5cb41a8105b81e2135a9f890 --- src/dsp/dsp.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/dsp/dsp.h b/src/dsp/dsp.h index c4f57e4d..73a66be2 100644 --- a/src/dsp/dsp.h +++ b/src/dsp/dsp.h @@ -121,10 +121,11 @@ extern "C" { // Note: ARM64 is supported in Visual Studio 2017, but requires the direct // inclusion of arm64_neon.h; Visual Studio 2019 includes this file in -// arm_neon.h. +// arm_neon.h. Compile errors were seen with Visual Studio 2019 16.4 with +// vtbl4_u8(); a fix was made in 16.6. #if defined(_MSC_VER) && \ ((_MSC_VER >= 1700 && defined(_M_ARM)) || \ - (_MSC_VER >= 1920 && defined(_M_ARM64))) + (_MSC_VER >= 1926 && defined(_M_ARM64))) #define WEBP_USE_NEON #define WEBP_USE_INTRINSICS #endif