Lines Matching full:hash
1 // From http://www.azillionmonkeys.com/qed/hash.html
3 #include "base/hash.h"
22 uint32_t hash = len, tmp;
33 hash += get16bits(data);
34 tmp = (get16bits(data + 2) << 11) ^ hash;
35 hash = (hash << 16) ^ tmp;
37 hash += hash >> 11;
43 hash += get16bits(data);
44 hash ^= hash << 16;
48 hash ^= static_cast<signed char>(data[sizeof(uint16_t)]) << 18;
49 hash += hash >> 11;
52 hash += get16bits(data);
53 hash ^= hash << 11;
54 hash += hash >> 17;
57 hash += static_cast<signed char>(*data);
58 hash ^= hash << 10;
59 hash += hash >> 1;
63 hash ^= hash << 3;
64 hash += hash >> 5;
65 hash ^= hash << 4;
66 hash += hash >> 17;
67 hash ^= hash << 25;
68 hash += hash >> 6;
70 return hash;