diff --git a/include/libyuv/cpu_support.h b/include/libyuv/cpu_support.h index 9304ab2ac..79c6fb943 100644 --- a/include/libyuv/cpu_support.h +++ b/include/libyuv/cpu_support.h @@ -28,13 +28,21 @@ extern "C" { // MemorySanitizer does not support assembly code yet. http://crbug.com/344505 #if defined(__has_feature) -#if __has_feature(memory_sanitizer) && !defined(LIBYUV_DISABLE_NEON) +#if __has_feature(memory_sanitizer) +#if !defined(LIBYUV_DISABLE_NEON) #define LIBYUV_DISABLE_NEON #endif -#if __has_feature(memory_sanitizer) && !defined(LIBYUV_DISABLE_X86) +#if !defined(LIBYUV_DISABLE_SME) +#define LIBYUV_DISABLE_SME +#endif +#if !defined(LIBYUV_DISABLE_SVE) +#define LIBYUV_DISABLE_SVE +#endif +#if !defined(LIBYUV_DISABLE_X86) #define LIBYUV_DISABLE_X86 #endif -#endif +#endif // __has_feature(memory_sanitizer) +#endif // defined(__has_feature) // clang >= 3.5.0 required for Arm64. #if defined(__clang__) && defined(__aarch64__) && !defined(LIBYUV_DISABLE_NEON) diff --git a/include/libyuv/planar_functions.h b/include/libyuv/planar_functions.h index dbf51de52..b9878d22b 100644 --- a/include/libyuv/planar_functions.h +++ b/include/libyuv/planar_functions.h @@ -30,13 +30,21 @@ extern "C" { #endif // MemorySanitizer does not support assembly code yet. http://crbug.com/344505 #if defined(__has_feature) -#if __has_feature(memory_sanitizer) && !defined(LIBYUV_DISABLE_NEON) +#if __has_feature(memory_sanitizer) +#if !defined(LIBYUV_DISABLE_NEON) #define LIBYUV_DISABLE_NEON #endif -#if __has_feature(memory_sanitizer) && !defined(LIBYUV_DISABLE_X86) +#if !defined(LIBYUV_DISABLE_SME) +#define LIBYUV_DISABLE_SME +#endif +#if !defined(LIBYUV_DISABLE_SVE) +#define LIBYUV_DISABLE_SVE +#endif +#if !defined(LIBYUV_DISABLE_X86) #define LIBYUV_DISABLE_X86 #endif -#endif +#endif // __has_feature(memory_sanitizer) +#endif // defined(__has_feature) // The following are available on all x86 platforms: #if !defined(LIBYUV_DISABLE_X86) && \ (defined(_M_IX86) || \