From 6ac0fb80a6eab6ba28838e8e577dc8ae8cba06a7 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Wed, 27 May 2020 12:32:11 +0100 Subject: Minor tokenizer performance improvements --- src/common.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/common.cpp') diff --git a/src/common.cpp b/src/common.cpp index a0d69b308..7068eb333 100644 --- a/src/common.cpp +++ b/src/common.cpp @@ -158,7 +158,15 @@ GB_ALLOCATOR_PROC(heap_allocator_proc) { #include "range_cache.cpp" - +u32 fnv32a(void const *data, isize len) { + u8 const *bytes = cast(u8 const *)data; + u32 h = 0x811c9dc5; + for (isize i = 0; i < len; i++) { + u32 b = cast(u32)bytes[i]; + h = (h ^ b) * 0x01000193; + } + return h; +} u64 fnv64a(void const *data, isize len) { u8 const *bytes = cast(u8 const *)data; -- cgit v1.2.3