Switch default hash to SIPHASH on 64 bit builds and ONE_AT_A_TIME on 32 bit builds
authorYves Orton <demerphq@gmail.com>
Tue, 4 Dec 2012 14:22:28 +0000 (15:22 +0100)
committerYves Orton <demerphq@gmail.com>
Wed, 5 Dec 2012 00:22:30 +0000 (01:22 +0100)
Murmurhash has certain disadvantages that neither ONE_AT_A_TIME nor SIPHASH posses

hv.h

index 3937b5d..3ee2399 100644 (file)
--- a/hv.h
+++ b/hv.h
@@ -156,7 +156,11 @@ struct xpvhv {
         || defined(PERL_HASH_FUNC_ONE_AT_A_TIME_OLD) \
         || defined(PERL_HASH_FUNC_BUZZHASH16) \
     )
-#define PERL_HASH_FUNC_MURMUR3
+#ifdef U64
+#define PERL_HASH_FUNC_SIPHASH
+#else
+#define PERL_HASH_FUNC_ONE_AT_A_TIME
+#endif
 #endif
 
 #if defined(PERL_HASH_FUNC_BUZZHASH16)