diff options
author | Wojtek Kosior <kwojtus@protonmail.com> | 2019-12-31 11:09:57 +0100 |
---|---|---|
committer | Wojtek Kosior <kwojtus@protonmail.com> | 2019-12-31 11:09:57 +0100 |
commit | fa42eccf0b9c6161be0ad9e3c1b7f6489add2b2c (patch) | |
tree | c2431f932a98e315aaf14c9104764091cbe8c319 /strings.c | |
parent | 455408524009bf6f62867b00bd5d6580bf79f3f0 (diff) | |
download | rpi-MMU-example-fa42eccf0b9c6161be0ad9e3c1b7f6489add2b2c.tar.gz rpi-MMU-example-fa42eccf0b9c6161be0ad9e3c1b7f6489add2b2c.zip |
move memset() implementation to strings.c
Diffstat (limited to 'strings.c')
-rw-r--r-- | strings.c | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -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; +} + |