Implement memmove()

This commit is contained in:
avdgrinten 2015-12-06 22:09:49 +01:00
parent 36210c1784
commit 62720625ae

View file

@ -11,8 +11,16 @@ void *memcpy(void *__restrict dest, const void *__restrict src, size_t size) {
return dest; return dest;
} }
void *memmove(void *dest, const void *src, size_t size) { void *memmove(void *dest, const void *src, size_t size) {
__ensure(!"Not implemented"); char *dest_bytes = (char *)dest;
__builtin_unreachable(); char *src_bytes = (char *)src;
if(dest_bytes < src_bytes) {
for(size_t i = 0; i < size; i++)
dest_bytes[i] = src_bytes[i];
}else{
for(size_t i = 0; i < size; i++)
dest_bytes[size - i - 1] = src_bytes[size - i - 1];
}
return dest;
} }
char *strcpy(char *__restrict dest, const char *src) { char *strcpy(char *__restrict dest, const char *src) {
__ensure(!"Not implemented"); __ensure(!"Not implemented");