diff options
Diffstat (limited to 'src/mem/memset.c')
-rw-r--r-- | src/mem/memset.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/mem/memset.c b/src/mem/memset.c index 48fee61..c14cda8 100644 --- a/src/mem/memset.c +++ b/src/mem/memset.c @@ -6,6 +6,18 @@ #include <mem.h> -extern inline void *calt_memset(void *dest, unsigned char value, size_t count); -extern inline void *calt_memset_null(void *dest, unsigned char value, size_t count); +void *calt_memset(void *restrict dest, unsigned char value, size_t count) { + unsigned char *p = dest; + + while (count-- > 0) { + *p++ = value; + } + + return dest; +} + +void *calt_memset_null(void *dest, unsigned char value, size_t count) { + return dest ? calt_memset(dest, value, count) : NULL; +} + |