Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/kernel/gen_system/GEN_HashedPtr.cpp')
-rw-r--r--source/kernel/gen_system/GEN_HashedPtr.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/kernel/gen_system/GEN_HashedPtr.cpp b/source/kernel/gen_system/GEN_HashedPtr.cpp
index 6dbed1fb7a8..ff9de465a34 100644
--- a/source/kernel/gen_system/GEN_HashedPtr.cpp
+++ b/source/kernel/gen_system/GEN_HashedPtr.cpp
@@ -40,11 +40,12 @@
// is a 32-bit integer, use all the bits of the pointer as long
// as possible.
//
-
+#if 1
unsigned int GEN_Hash(void * inDWord)
{
uintptr_t key = (uintptr_t)inDWord;
-
+#if 0
+ // this is way too complicated
key += ~(key << 16);
key ^= (key >> 5);
key += (key << 3);
@@ -53,4 +54,8 @@ unsigned int GEN_Hash(void * inDWord)
key ^= (key >> 17);
return (unsigned int)(key & 0xffffffff);
+#else
+ return (unsigned int)(key ^ (key>>4));
+#endif
}
+#endif \ No newline at end of file