diff options
author | stefan <stefan@s00.xyz> | 2023-04-21 19:53:04 -0400 |
---|---|---|
committer | stefan <stefan@s00.xyz> | 2023-04-21 19:53:04 -0400 |
commit | eff82c45c589b42061344039d5f2efc8ad7c52df (patch) | |
tree | 4c5d89eea3fa74caba5d3dbfb8567643f3747e6d /lib/libc/string/memmove.c | |
parent | 821706a3fea34c18a6171cf5169d5d6d852966de (diff) | |
download | sv-eff82c45c589b42061344039d5f2efc8ad7c52df.tar.gz |
libfdt port and the required libc functions
Diffstat (limited to 'lib/libc/string/memmove.c')
-rw-r--r-- | lib/libc/string/memmove.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/lib/libc/string/memmove.c b/lib/libc/string/memmove.c new file mode 100644 index 0000000..16be329 --- /dev/null +++ b/lib/libc/string/memmove.c @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * linux/lib/string.c + * + * Copyright (C) 1991, 1992 Linus Torvalds + */ +#include <string.h> + +void *memmove(void *dest, const void *src, size_t count) +{ + char *tmp; + const char *s; + + if (dest <= src) { + tmp = dest; + s = src; + while (count--) + *tmp++ = *s++; + } else { + tmp = dest; + tmp += count; + s = src; + s += count; + while (count--) + *--tmp = *--s; + } + return dest; +} |