diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2010-06-30 08:26:11 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2010-06-30 08:26:11 -0700 |
commit | 6fb8cbcb58a29fff73eb2101b34caa19a7f88eba (patch) | |
tree | 3a39ddec3a6cf66f8541c6591dbe4017136580f0 /sysdeps/x86_64/multiarch/init-arch.c | |
parent | d85f8ff66711fd3b1c5753330499c7403fa46d81 (diff) | |
download | glibc-6fb8cbcb58a29fff73eb2101b34caa19a7f88eba.tar.gz glibc-6fb8cbcb58a29fff73eb2101b34caa19a7f88eba.tar.xz glibc-6fb8cbcb58a29fff73eb2101b34caa19a7f88eba.zip |
Improve 64bit memcpy/memmove for Atom, Core 2 and Core i7
This patch includes optimized 64bit memcpy/memmove for Atom, Core 2 and Core i7. It improves memcpy by up to 3X on Atom, up to 4X on Core 2 and up to 1X on Core i7. It also improves memmove by up to 3X on Atom, up to 4X on Core 2 and up to 2X on Core i7.
Diffstat (limited to 'sysdeps/x86_64/multiarch/init-arch.c')
-rw-r--r-- | sysdeps/x86_64/multiarch/init-arch.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sysdeps/x86_64/multiarch/init-arch.c b/sysdeps/x86_64/multiarch/init-arch.c index f13a9f4b79..55c9f54f96 100644 --- a/sysdeps/x86_64/multiarch/init-arch.c +++ b/sysdeps/x86_64/multiarch/init-arch.c @@ -78,10 +78,13 @@ __init_cpu_features (void) case 0x25: case 0x2e: case 0x2f: - /* Rep string instructions are fast on Intel Core i3, i5 - and i7. */ + /* Rep string instructions and copy backward are fast on + Intel Core i3, i5 and i7. */ +#if index_Fast_Rep_String != index_Fast_Copy_Backward +# error index_Fast_Rep_String != index_Fast_Copy_Backward +#endif __cpu_features.feature[index_Fast_Rep_String] - |= bit_Fast_Rep_String; + |= bit_Fast_Rep_String | bit_Fast_Copy_Backward; break; } } |