[libc][NFC] Allow compilation of memcpy with -m32 (#93790)

Needed to support i386 (#93709).
This commit is contained in:
Guillaume Chatelet 2024-05-31 10:48:38 +02:00 committed by GitHub
parent b1be480b03
commit 48ba7da9c8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 3 deletions

View File

@ -14,7 +14,7 @@
#include "src/__support/macros/properties/architectures.h"
#if defined(LIBC_TARGET_ARCH_IS_X86_64)
#if defined(LIBC_TARGET_ARCH_IS_X86)
#include "src/__support/common.h"
#include "src/string/memory_utils/op_builtin.h"
@ -316,6 +316,6 @@ LIBC_INLINE MemcmpReturnType cmp_neq<__m512i>(CPtr p1, CPtr p2, size_t offset) {
} // namespace LIBC_NAMESPACE::generic
#endif // LIBC_TARGET_ARCH_IS_X86_64
#endif // LIBC_TARGET_ARCH_IS_X86
#endif // LLVM_LIBC_SRC_STRING_MEMORY_UTILS_OP_X86_H

View File

@ -170,7 +170,7 @@ LIBC_INLINE MemcmpReturnType cmp_uint32_t(uint32_t a, uint32_t b) {
// otherwise. This implements the semantic of 'memcmp' when we know that 'a' and
// 'b' differ.
LIBC_INLINE MemcmpReturnType cmp_neq_uint64_t(uint64_t a, uint64_t b) {
#if defined(LIBC_TARGET_ARCH_IS_X86_64)
#if defined(LIBC_TARGET_ARCH_IS_X86)
// On x86, the best strategy would be to use 'INT32_MAX' and 'INT32_MIN' for
// positive and negative value respectively as they are one value apart:
// xor eax, eax <- free