From 37cc2fe9770ad7850fe4e1f947f3b35653cf8f3c Mon Sep 17 00:00:00 2001 From: Alexey Milovidov Date: Sat, 13 Mar 2021 22:39:10 +0300 Subject: [PATCH] Use custom memcpy only for AArch64 --- base/glibc-compatibility/CMakeLists.txt | 7 +++++-- base/glibc-compatibility/memcpy/CMakeLists.txt | 10 ++++++---- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/base/glibc-compatibility/CMakeLists.txt b/base/glibc-compatibility/CMakeLists.txt index cdd5ec61833..e785e2ab2ce 100644 --- a/base/glibc-compatibility/CMakeLists.txt +++ b/base/glibc-compatibility/CMakeLists.txt @@ -1,5 +1,8 @@ if (GLIBC_COMPATIBILITY) add_subdirectory(memcpy) + if(TARGET memcpy) + set(MEMCPY_LIBRARY memcpy) + endif() enable_language(ASM) include(CheckIncludeFile) @@ -44,10 +47,10 @@ if (GLIBC_COMPATIBILITY) target_compile_options(glibc-compatibility PRIVATE -fPIC) endif () - target_link_libraries(global-libs INTERFACE glibc-compatibility memcpy) + target_link_libraries(global-libs INTERFACE glibc-compatibility ${MEMCPY_LIBRARY}) install( - TARGETS glibc-compatibility memcpy + TARGETS glibc-compatibility ${MEMCPY_LIBRARY} EXPORT global ARCHIVE DESTINATION lib ) diff --git a/base/glibc-compatibility/memcpy/CMakeLists.txt b/base/glibc-compatibility/memcpy/CMakeLists.txt index e8de76151bc..133995d9b96 100644 --- a/base/glibc-compatibility/memcpy/CMakeLists.txt +++ b/base/glibc-compatibility/memcpy/CMakeLists.txt @@ -1,6 +1,8 @@ -add_library(memcpy STATIC memcpy.cpp) +if (ARCH_AMD64) + add_library(memcpy STATIC memcpy.cpp) -# We allow to include memcpy.h from user code for better inlining. -target_include_directories(memcpy PUBLIC $) + # We allow to include memcpy.h from user code for better inlining. + target_include_directories(memcpy PUBLIC $) -target_compile_options(memcpy PRIVATE -fno-builtin-memcpy) + target_compile_options(memcpy PRIVATE -fno-builtin-memcpy) +endif ()