From 7a84facec968df81b9fd7dda10cee60c9bd40beb Mon Sep 17 00:00:00 2001 From: johan0A <85748765+johan0A@users.noreply.github.com> Date: Thu, 6 Feb 2025 21:41:38 +0100 Subject: [PATCH] add CLAY_DISABLE_SIMD flag to conditionally disable SIMD includes (#251) --- clay.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/clay.h b/clay.h index 8ca24b6..c8fb851 100644 --- a/clay.h +++ b/clay.h @@ -15,9 +15,9 @@ #include // SIMD includes on supported platforms -#if defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64) +#if !defined(CLAY_DISABLE_SIMD) && (defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64)) #include -#elif __aarch64__ +#elif !defined(CLAY_DISABLE_SIMD) && defined(__aarch64__) #include #endif @@ -1384,7 +1384,7 @@ void Clay__CloseElement(void) { } bool Clay__MemCmp(const char *s1, const char *s2, int32_t length); -#if defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64) +#if !defined(CLAY_DISABLE_SIMD) && (defined(__x86_64__) || defined(_M_X64) || defined(_M_AMD64)) bool Clay__MemCmp(const char *s1, const char *s2, int32_t length) { while (length >= 16) { __m128i v1 = _mm_loadu_si128((const __m128i *)s1); @@ -1410,7 +1410,7 @@ bool Clay__MemCmp(const char *s1, const char *s2, int32_t length); return true; } -#elif defined(__aarch64__) +#elif !defined(CLAY_DISABLE_SIMD) && defined(__aarch64__) bool Clay__MemCmp(const char *s1, const char *s2, int32_t length) { while (length >= 16) { uint8x16_t v1 = vld1q_u8((const uint8_t *)s1);