diff --git a/libc/src/string/memory_utils/bcmp_implementations.h b/libc/src/string/memory_utils/bcmp_implementations.h --- a/libc/src/string/memory_utils/bcmp_implementations.h +++ b/libc/src/string/memory_utils/bcmp_implementations.h @@ -23,10 +23,11 @@ #elif defined(LIBC_TARGET_ARCH_IS_ANY_RISCV) #include "src/string/memory_utils/riscv/bcmp_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_BCMP inline_bcmp_riscv -#else -// We may want to error instead of defaulting to suboptimal implementation. +#elif defined(LIBC_TARGET_ARCH_IS_ARM) || defined(LIBC_TARGET_ARCH_IS_GPU) #include "src/string/memory_utils/generic/byte_per_byte.h" #define LIBC_SRC_STRING_MEMORY_UTILS_BCMP inline_bcmp_byte_per_byte +#else +#error "Unsupported architecture" #endif namespace __llvm_libc { diff --git a/libc/src/string/memory_utils/memcmp_implementations.h b/libc/src/string/memory_utils/memcmp_implementations.h --- a/libc/src/string/memory_utils/memcmp_implementations.h +++ b/libc/src/string/memory_utils/memcmp_implementations.h @@ -24,10 +24,11 @@ #elif defined(LIBC_TARGET_ARCH_IS_ANY_RISCV) #include "src/string/memory_utils/riscv/memcmp_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMCMP inline_memcmp_riscv -#else -// We may want to error instead of defaulting to suboptimal implementation. +#elif defined(LIBC_TARGET_ARCH_IS_ARM) || defined(LIBC_TARGET_ARCH_IS_GPU) #include "src/string/memory_utils/generic/byte_per_byte.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMCMP inline_memcmp_byte_per_byte +#else +#error "Unsupported architecture" #endif namespace __llvm_libc { diff --git a/libc/src/string/memory_utils/memcpy_implementations.h b/libc/src/string/memory_utils/memcpy_implementations.h --- a/libc/src/string/memory_utils/memcpy_implementations.h +++ b/libc/src/string/memory_utils/memcpy_implementations.h @@ -28,10 +28,11 @@ #elif defined(LIBC_TARGET_ARCH_IS_ANY_RISCV) #include "src/string/memory_utils/riscv/memcpy_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMCPY inline_memcpy_riscv -#else -// We may want to error instead of defaulting to suboptimal implementation. +#elif defined(LIBC_TARGET_ARCH_IS_ARM) || defined(LIBC_TARGET_ARCH_IS_GPU) #include "src/string/memory_utils/generic/byte_per_byte.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMCPY inline_memcpy_byte_per_byte +#else +#error "Unsupported architecture" #endif namespace __llvm_libc { diff --git a/libc/src/string/memory_utils/memmove_implementations.h b/libc/src/string/memory_utils/memmove_implementations.h --- a/libc/src/string/memory_utils/memmove_implementations.h +++ b/libc/src/string/memory_utils/memmove_implementations.h @@ -20,10 +20,11 @@ #elif defined(LIBC_TARGET_ARCH_IS_ANY_RISCV) #include "src/string/memory_utils/riscv/memmove_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMMOVE inline_memmove_riscv -#else -// We may want to error instead of defaulting to suboptimal implementation. +#elif defined(LIBC_TARGET_ARCH_IS_ARM) || defined(LIBC_TARGET_ARCH_IS_GPU) #include "src/string/memory_utils/generic/byte_per_byte.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMMOVE inline_memmove_byte_per_byte +#else +#error "Unsupported architecture" #endif namespace __llvm_libc { diff --git a/libc/src/string/memory_utils/memset_implementations.h b/libc/src/string/memory_utils/memset_implementations.h --- a/libc/src/string/memory_utils/memset_implementations.h +++ b/libc/src/string/memory_utils/memset_implementations.h @@ -24,10 +24,11 @@ #elif defined(LIBC_TARGET_ARCH_IS_ANY_RISCV) #include "src/string/memory_utils/riscv/memset_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMSET inline_memset_riscv -#else -// We may want to error instead of defaulting to suboptimal implementation. +#elif defined(LIBC_TARGET_ARCH_IS_ARM) || defined(LIBC_TARGET_ARCH_IS_GPU) #include "src/string/memory_utils/generic/byte_per_byte.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMSET inline_memset_byte_per_byte +#else +#error "Unsupported architecture" #endif namespace __llvm_libc {