From fa42eccf0b9c6161be0ad9e3c1b7f6489add2b2c Mon Sep 17 00:00:00 2001 From: Wojtek Kosior Date: Tue, 31 Dec 2019 11:09:57 +0100 Subject: move memset() implementation to strings.c --- strings.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'strings.c') diff --git a/strings.c b/strings.c index 94cb6ac..b518388 100644 --- a/strings.c +++ b/strings.c @@ -91,3 +91,18 @@ void memcpy(void *dst, void *src, size_t nbytes) for (iter *= 4; iter < nbytes; iter++) ((volatile uint8_t*) dst)[iter] = ((uint8_t*) src)[iter]; } + +// keep in mind memset is also needed for array initialization, like +// uint32_t buf[16] = {0}; +// gcc compiles this to memset call + +void *memset(void *s, int c, size_t n) +{ + volatile char *mem = s; + + for (size_t i = 0; i < n; i++) + mem[i] = c; + + return s; +} + -- cgit v1.2.3