aboutsummaryrefslogtreecommitdiff
path: root/src/common/hash.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2015-08-15 18:26:12 -0400
committerbunnei <bunneidev@gmail.com>2015-08-15 18:26:12 -0400
commitd852c4ecc71f800b552978362947a5eb5a524694 (patch)
tree9ea9a86da4027126914e69b12c24d2849fdb2c2d /src/common/hash.h
parentcebf245504b75469f19d3cc0a6f2f66aefa66947 (diff)
parentdb97090cad236eeeb0909eb1d35cbece15e1f0a5 (diff)
Merge pull request #1002 from bunnei/shader-jit
Vertex Shader JIT for X86-64
Diffstat (limited to 'src/common/hash.h')
-rw-r--r--src/common/hash.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/common/hash.h b/src/common/hash.h
new file mode 100644
index 000000000..a3850be68
--- /dev/null
+++ b/src/common/hash.h
@@ -0,0 +1,25 @@
+// Copyright 2015 Citra Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include "common/common_types.h"
+
+namespace Common {
+
+void MurmurHash3_128(const void* key, int len, u32 seed, void* out);
+
+/**
+ * Computes a 64-bit hash over the specified block of data
+ * @param data Block of data to compute hash over
+ * @param len Length of data (in bytes) to compute hash over
+ * @returns 64-bit hash value that was computed over the data block
+ */
+static inline u64 ComputeHash64(const void* data, int len) {
+ u64 res[2];
+ MurmurHash3_128(data, len, 0, res);
+ return res[0];
+}
+
+} // namespace Common