diff options
Added Initial Implementation of memory and allocation function
Signed-off-by: Marc Pervaz Boocha <mboocha@sudomsg.xyz>
On branch main
Your branch is up to date with 'origin/main'.
Changes to be committed:
new file: include/alloc.h
new file: include/calt.h
new file: include/mem.h
new file: include/meson.build
new file: meson.build
new file: meson_options.txt
new file: src/alloc/alloc.c
new file: src/alloc/calloc.c
new file: src/alloc/free.c
new file: src/alloc/malloc.c
new file: src/alloc/memdup.c
new file: src/alloc/meson.build
new file: src/alloc/realloc.c
new file: src/mem/memccpy.c
new file: src/mem/memchr.c
new file: src/mem/memcmp.c
new file: src/mem/memcpy.c
new file: src/mem/memhash.c
new file: src/mem/memlen.c
new file: src/mem/memmem.c
new file: src/mem/memmove.c
new file: src/mem/memrchr.c
new file: src/mem/memrev.c
new file: src/mem/memset.c
new file: src/mem/memswap.c
new file: src/mem/memzero.c
new file: src/mem/meson.build
new file: src/meson.build
new file: test/alloc/meson.build
new file: test/mem/memset.c
new file: test/mem/memzero.c
new file: test/mem/meson.build
new file: test/meson.build
Diffstat (limited to 'src/mem/memhash.c')
-rw-r--r-- | src/mem/memhash.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mem/memhash.c b/src/mem/memhash.c new file mode 100644 index 0000000..d752fed --- /dev/null +++ b/src/mem/memhash.c @@ -0,0 +1,13 @@ +#include <limits.h> +#include <stdint.h> +#include <mem.h> + +size_t calt_memhash(const void *ptr, size_t count) { + unsigned char const *p = ptr; + size_t hash = 0; + size_t const hash_bits = sizeof hash; + while (count-- > 0) { + hash ^= (size_t) * (p++) << count % hash_bits * CHAR_BIT; + } + return hash; +} |