--- datastructures-0.2.7/src/hashfunctions.h.orig 2022-03-02 16:41:30.000000000 -0700
+++ datastructures-0.2.7/src/hashfunctions.h 2022-09-07 12:50:49.955397038 -0600
@@ -42,32 +42,4 @@ static inline Obj HashValueToObjInt(UInt
return INTOBJ_INT(hash);
}
-// Perform a shuffle of a UInt. Ideally, changing any
-// bit would have a 50/50 chance of changing every other bit.
-// The main purpose of this is to allow adding values when
-// we want to hash an unordered list -- while 1+3 = 2+2,
-// HashUInt(1) + HashUInt(3) should not be equal to
-// HashUInt(2) + HashUInt(2)
-// From: http://www.concentric.net/~Ttwang/tech/inthash.htm
-static UInt ShuffleUInt(UInt key)
-{
-#ifdef SYS_IS_64_BIT
- key = (~key) + (key << 21); // key = (key << 21) - key - 1;
- key = key ^ (key >> 24);
- key = (key + (key << 3)) + (key << 8); // key * 265
- key = key ^ (key >> 14);
- key = (key + (key << 2)) + (key << 4); // key * 21
- key = key ^ (key >> 28);
- key = key + (key << 31);
-#else
- key = ~key + (key << 15); // key = (key << 15) - key - 1;
- key = key ^ (key >> 12);
- key = key + (key << 2);
- key = key ^ (key >> 4);
- key = key * 2057; // key = (key + (key << 3)) + (key << 11);
- key = key ^ (key >> 16);
-#endif
- return key;
-}
-
#endif