diff options
author | Guillaume Chatelet <gchatelet@google.com> | 2023-07-18 13:30:01 +0000 |
---|---|---|
committer | Guillaume Chatelet <gchatelet@google.com> | 2023-07-18 13:53:03 +0000 |
commit | a39c951730aa92894e27da038e834229d4613db1 (patch) | |
tree | aaf4826452c6943970713e4a9f854f6548b5d17c /libc | |
parent | 7bde09cc24e36819639afa7f3d51ade6938d7584 (diff) | |
download | llvm-a39c951730aa92894e27da038e834229d4613db1.zip llvm-a39c951730aa92894e27da038e834229d4613db1.tar.gz llvm-a39c951730aa92894e27da038e834229d4613db1.tar.bz2 |
[libc][memfunctions] Explicit error when platform in not supported
Reviewed By: gchatelet
Differential Revision: https://reviews.llvm.org/D155597
Diffstat (limited to 'libc')
5 files changed, 20 insertions, 15 deletions
diff --git a/libc/src/string/memory_utils/bcmp_implementations.h b/libc/src/string/memory_utils/bcmp_implementations.h index bfd5201..69aae25 100644 --- a/libc/src/string/memory_utils/bcmp_implementations.h +++ b/libc/src/string/memory_utils/bcmp_implementations.h @@ -20,13 +20,14 @@ #elif defined(LIBC_TARGET_ARCH_IS_AARCH64) #include "src/string/memory_utils/aarch64/bcmp_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_BCMP inline_bcmp_aarch64 +#elif defined(LIBC_TARGET_ARCH_IS_ARM) +#include "src/string/memory_utils/generic/byte_per_byte.h" +#define LIBC_SRC_STRING_MEMORY_UTILS_BCMP inline_bcmp_byte_per_byte #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. -#include "src/string/memory_utils/generic/byte_per_byte.h" -#define LIBC_SRC_STRING_MEMORY_UTILS_BCMP inline_bcmp_byte_per_byte +#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 index e18e640..3262b28 100644 --- a/libc/src/string/memory_utils/memcmp_implementations.h +++ b/libc/src/string/memory_utils/memcmp_implementations.h @@ -21,13 +21,14 @@ #elif defined(LIBC_TARGET_ARCH_IS_AARCH64) #include "src/string/memory_utils/aarch64/memcmp_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMCMP inline_memcmp_aarch64 +#elif defined(LIBC_TARGET_ARCH_IS_ARM) +#include "src/string/memory_utils/generic/byte_per_byte.h" +#define LIBC_SRC_STRING_MEMORY_UTILS_MEMCMP inline_memcmp_byte_per_byte #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. -#include "src/string/memory_utils/generic/byte_per_byte.h" -#define LIBC_SRC_STRING_MEMORY_UTILS_MEMCMP inline_memcmp_byte_per_byte +#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 index 657fbac..16f4302 100644 --- a/libc/src/string/memory_utils/memcpy_implementations.h +++ b/libc/src/string/memory_utils/memcpy_implementations.h @@ -25,13 +25,14 @@ #elif defined(LIBC_TARGET_ARCH_IS_AARCH64) #include "src/string/memory_utils/aarch64/memcpy_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMCPY inline_memcpy_aarch64 +#elif defined(LIBC_TARGET_ARCH_IS_ARM) +#include "src/string/memory_utils/generic/byte_per_byte.h" +#define LIBC_SRC_STRING_MEMORY_UTILS_MEMCPY inline_memcpy_byte_per_byte #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. -#include "src/string/memory_utils/generic/byte_per_byte.h" -#define LIBC_SRC_STRING_MEMORY_UTILS_MEMCPY inline_memcpy_byte_per_byte +#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 index 78ae7a8..c62e235 100644 --- a/libc/src/string/memory_utils/memmove_implementations.h +++ b/libc/src/string/memory_utils/memmove_implementations.h @@ -17,13 +17,14 @@ #elif defined(LIBC_TARGET_ARCH_IS_AARCH64) #include "src/string/memory_utils/aarch64/memmove_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMMOVE inline_memmove_aarch64 +#elif defined(LIBC_TARGET_ARCH_IS_ARM) +#include "src/string/memory_utils/generic/byte_per_byte.h" +#define LIBC_SRC_STRING_MEMORY_UTILS_MEMMOVE inline_memmove_byte_per_byte #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. -#include "src/string/memory_utils/generic/byte_per_byte.h" -#define LIBC_SRC_STRING_MEMORY_UTILS_MEMMOVE inline_memmove_byte_per_byte +#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 index 37ceff9..1fb25a5 100644 --- a/libc/src/string/memory_utils/memset_implementations.h +++ b/libc/src/string/memory_utils/memset_implementations.h @@ -21,13 +21,14 @@ #elif defined(LIBC_TARGET_ARCH_IS_AARCH64) #include "src/string/memory_utils/aarch64/memset_implementations.h" #define LIBC_SRC_STRING_MEMORY_UTILS_MEMSET inline_memset_aarch64 +#elif defined(LIBC_TARGET_ARCH_IS_ARM) +#include "src/string/memory_utils/generic/byte_per_byte.h" +#define LIBC_SRC_STRING_MEMORY_UTILS_MEMSET inline_memset_byte_per_byte #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. -#include "src/string/memory_utils/generic/byte_per_byte.h" -#define LIBC_SRC_STRING_MEMORY_UTILS_MEMSET inline_memset_byte_per_byte +#error "Unsupported architecture" #endif namespace __llvm_libc { |