blob: e8393822782e135015f62f005e79eba3b43e0b4b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
/**
** @file memclr.c
**
** @author Numerous CSCI-452 classes
**
** @brief C implementations of common library functions
*/
#ifndef MEMCLR_SRC_INC
#define MEMCLR_SRC_INC
#include <common.h>
#include <lib.h>
/**
** memclr(buf,len)
**
** Initialize all bytes of a block of memory to zero
**
** @param buf The buffer to initialize
** @param len Buffer size (in bytes)
*/
void memclr(void *buf, register uint32_t len)
{
register uint8_t *dest = buf;
/*
** We could speed this up by unrolling it and clearing
** words at a time (instead of bytes).
*/
while (len--) {
*dest++ = 0;
}
}
#endif
|