| 103 | } |
| 104 | |
| 105 | static void inline HashFinal(uint32_t& a, uint32_t& b, uint32_t& c) |
| 106 | { |
| 107 | // Taken from lookup3, by Bob Jenkins. |
| 108 | c ^= b; |
| 109 | c -= ((b << 14) | (b >> 18)); |
| 110 | a ^= c; |
| 111 | a -= ((c << 11) | (c >> 21)); |
| 112 | b ^= a; |
| 113 | b -= ((a << 25) | (a >> 7)); |
| 114 | c ^= b; |
| 115 | c -= ((b << 16) | (b >> 16)); |
| 116 | a ^= c; |
| 117 | a -= ((c << 4) | (c >> 28)); |
| 118 | b ^= a; |
| 119 | b -= ((a << 14) | (a >> 18)); |
| 120 | c ^= b; |
| 121 | c -= ((b << 24) | (b >> 8)); |
| 122 | } |
| 123 | |
| 124 | uint64_t uint256::GetHash(const uint256& salt) const |
| 125 | { |