Make the kernel's memset do a "rep stosb" because.

This commit is contained in:
Andreas Kling 2019-01-12 02:19:02 +01:00
parent 9bc7b128b2
commit fa6029eed0

View file

@ -18,12 +18,17 @@ void strcpy(char* dest, const char *src)
while ((*dest++ = *src++) != '\0');
}
void* memset(void* dest, byte c, dword n)
void* memset(void* dest_ptr, byte c, dword n)
{
byte *bdest = (byte *)dest;
for (; n; --n)
*(bdest++) = c;
return dest;
dword dest = (dword)dest_ptr;
asm volatile(
"cld\n"
"rep stosb\n"
: "=D" (dest), "=c" (n)
: "0" (dest), "1" (n), "a" (c)
: "cc", "memory"
);
return dest_ptr;
}
char* strrchr(const char* str, int ch)