/* Normally compiler builtins are used, but sometimes the compiler calls out | |
of line code. Based on asm-i386/string.h. | |
*/ | |
#define _STRING_C | |
#include <linux/string.h> | |
#include <linux/module.h> | |
#undef memmove | |
void *memmove(void * dest,const void *src,size_t count) | |
{ | |
if (dest < src) { | |
return memcpy(dest,src,count); | |
} else { | |
char *p = (char *) dest + count; | |
char *s = (char *) src + count; | |
while (count--) | |
*--p = *--s; | |
} | |
return dest; | |
} | |
EXPORT_SYMBOL(memmove); |