diff options
author | Maxim Kuvyrkov <maxim@codesourcery.com> | 2012-11-06 17:47:55 -0800 |
---|---|---|
committer | Maxim Kuvyrkov <maxim@codesourcery.com> | 2012-11-06 17:47:55 -0800 |
commit | 19218757e638bac1ff7193ff54fdee143833e2ac (patch) | |
tree | 775b394eb065fec013a2cac3fa733ba0859fca87 /string/memmove.c | |
parent | c5f457212413392210bb9c9cf610d0eb1d4e9c09 (diff) | |
download | glibc-19218757e638bac1ff7193ff54fdee143833e2ac.tar.gz glibc-19218757e638bac1ff7193ff54fdee143833e2ac.tar.xz glibc-19218757e638bac1ff7193ff54fdee143833e2ac.zip |
Use memcpy in memmove when possible
Diffstat (limited to 'string/memmove.c')
-rw-r--r-- | string/memmove.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/string/memmove.c b/string/memmove.c index ede27ffcf2..bf7dcc1627 100644 --- a/string/memmove.c +++ b/string/memmove.c @@ -1,6 +1,6 @@ /* Copy memory to memory until the specified number of bytes has been copied. Overlap is handled correctly. - Copyright (C) 1991, 1995, 1996, 1997, 2003 Free Software Foundation, Inc. + Copyright (C) 1991-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Torbjorn Granlund (tege@sics.se). @@ -55,6 +55,9 @@ MEMMOVE (a1, a2, len) { /* Copy from the beginning to the end. */ +#if MEMCPY_OK_FOR_FWD_MEMMOVE + dest = memcpy (dest, src, len); +#else /* If there not too few bytes to copy, use word copy. */ if (len >= OP_T_THRES) { @@ -79,6 +82,7 @@ MEMMOVE (a1, a2, len) /* There are just a few bytes to copy. Use byte memory operations. */ BYTE_COPY_FWD (dstp, srcp, len); +#endif /* MEMCPY_OK_FOR_FWD_MEMMOVE */ } else { |