Improve 64bit memcpy/memmove for Atom, Core 2 and Core i7
[glibc.git] / sysdeps / x86_64 / multiarch / memmove.c
blobbbe96273be9821b16f7d2643bcc8b13efda68daf
1 #ifndef NOT_IN_libc
2 #include "init-arch.h"
4 #define MEMMOVE __memmove_sse2
5 #ifdef SHARED
6 # undef libc_hidden_builtin_def
7 # define libc_hidden_builtin_def(name) \
8 __hidden_ver1 (__memmove_sse2, __GI_memmove, __memmove_sse2);
9 #endif
10 #endif
12 #include "string/memmove.c"
14 #ifndef NOT_IN_libc
15 extern __typeof (__memmove_sse2) __memmove_sse2 attribute_hidden;
16 extern __typeof (__memmove_sse2) __memmove_ssse3 attribute_hidden;
17 extern __typeof (__memmove_sse2) __memmove_ssse3_back attribute_hidden;
19 libc_ifunc (memmove,
20 HAS_SSSE3
21 ? (HAS_FAST_COPY_BACKWARD
22 ? __memmove_ssse3_back : __memmove_ssse3)
23 : __memmove_sse2);
24 #endif