aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/memops.c
blob: 12fae8bef3b587a675b3385ad7c80ea810d6734b (plain) (blame)
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
#include "memops.h"

void kmemset(void* dst, uint8_t value)
{

}

void kmemcpy(void* src, void* dst, uint64_t size)
{
    uint64_t counter = 0;

    uint8_t* c_src = src;
    uint8_t* c_dst = dst;

    while(counter < size)
    {
        c_dst[counter] = c_src[counter];
        counter++;
    }
}

bool kmemcmp(void* lhs, void* rhs, uint64_t size)
{
    uint8_t* clhs = (uint8_t*)lhs;
    uint8_t* crhs = (uint8_t*)rhs;

    for(int i = 0; i < size; i++)
    {
        if(clhs[i] != crhs[i])
        {
            return false;
        }
    }

    return true;
}