This implementation relies on storing data in registers for sizes up to 128B. Then depending on whether `dst` is less (resp. greater) than `src` we move data forward (resp. backward) by chunks of 32B. We first make sure one of the pointers is aligned to increase performance on large move sizes. Differential Revision: https://reviews.llvm.org/D114637
48 lines
1.2 KiB
CMake
48 lines
1.2 KiB
CMake
add_library(
|
|
LibcUnitTest
|
|
Test.h
|
|
LibcTest.cpp
|
|
LibcTest.h
|
|
)
|
|
target_include_directories(LibcUnitTest PUBLIC ${LIBC_SOURCE_DIR})
|
|
add_dependencies(LibcUnitTest libc.src.__support.CPP.standalone_cpp)
|
|
target_link_libraries(LibcUnitTest PUBLIC libc_test_utils)
|
|
|
|
add_library(
|
|
LibcUnitTestMain
|
|
LibcTestMain.cpp
|
|
)
|
|
|
|
target_include_directories(LibcUnitTestMain PUBLIC ${LIBC_SOURCE_DIR})
|
|
add_dependencies(LibcUnitTestMain LibcUnitTest libc.src.__support.CPP.standalone_cpp)
|
|
target_link_libraries(LibcUnitTestMain PUBLIC LibcUnitTest libc_test_utils)
|
|
|
|
add_library(
|
|
LibcFPTestHelpers
|
|
FPExceptMatcher.cpp
|
|
FPExceptMatcher.h
|
|
FPMatcher.cpp
|
|
FPMatcher.h
|
|
)
|
|
target_include_directories(LibcFPTestHelpers PUBLIC ${LIBC_SOURCE_DIR})
|
|
target_link_libraries(LibcFPTestHelpers LibcUnitTest)
|
|
add_dependencies(
|
|
LibcFPTestHelpers
|
|
LibcUnitTest
|
|
libc.src.__support.CPP.standalone_cpp
|
|
libc.src.__support.FPUtil.fputil
|
|
)
|
|
|
|
add_library(
|
|
LibcMemoryHelpers
|
|
MemoryMatcher.h
|
|
MemoryMatcher.cpp
|
|
)
|
|
target_include_directories(LibcMemoryHelpers PUBLIC ${LIBC_SOURCE_DIR})
|
|
target_link_libraries(LibcMemoryHelpers LibcUnitTest)
|
|
add_dependencies(
|
|
LibcMemoryHelpers
|
|
LibcUnitTest
|
|
libc.src.__support.CPP.standalone_cpp
|
|
)
|