1/*
2 * Copyright 2014, NICTA
3 *
4 * This software may be distributed and modified according to the terms of
5 * the BSD 2-Clause license. Note that NO WARRANTY is provided.
6 * See "LICENSE_BSD2.txt" for details.
7 *
8 * @TAG(NICTA_BSD)
9 */
10
11void *memcpy(void *dest, void *src, unsigned long size) {
12    unsigned long i;
13    char *d = (char*)dest, *s = (char*)src;
14    for (i = 0; i < size; i++) {
15        d[i] = s[i];
16    }
17    return dest;
18}
19
20int *memcpy_int(int *dest, int *src) {
21    return memcpy(dest, src, sizeof(*dest));
22}
23
24struct my_structure {
25    char a;
26    int i;
27    long j;
28};
29
30struct my_structure *memcpy_struct(struct my_structure *dest,
31        struct my_structure *src) {
32    return memcpy(dest, src, sizeof(*dest));
33}
34