summaryrefslogtreecommitdiffstats
path: root/benchmark
diff options
context:
space:
mode:
Diffstat (limited to 'benchmark')
-rw-r--r--benchmark/dict_bench.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/benchmark/dict_bench.c b/benchmark/dict_bench.c
index 5d849d6..6d6b8d4 100644
--- a/benchmark/dict_bench.c
+++ b/benchmark/dict_bench.c
@@ -17,8 +17,8 @@
#include "bench.h"
#include "warnings.h"
-#include "zix/chunk.h"
#include "zix/common.h"
+#include "zix/digest.h"
#include "zix/hash.h"
ZIX_DISABLE_GLIB_WARNINGS
@@ -27,11 +27,29 @@ ZIX_RESTORE_WARNINGS
#include <ctype.h>
#include <stdarg.h>
+#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
+typedef struct {
+ void* buf;
+ size_t len;
+} ZixChunk;
+
+static uint32_t
+zix_chunk_hash(const ZixChunk* const chunk)
+{
+ return zix_digest_add(zix_digest_start(), chunk->buf, chunk->len);
+}
+
+static bool
+zix_chunk_equal(const ZixChunk* a, const ZixChunk* b)
+{
+ return a->len == b->len && !memcmp(a->buf, b->buf, a->len);
+}
+
static const unsigned seed = 1;
ZIX_LOG_FUNC(1, 2)