152 const uint8_t * tail = (
const uint8_t*)(
blocks);
154 static const uint64_t c1 =
BIG_CONSTANT( 0x87c37b91114253d5 );
155 static const uint64_t c2 =
BIG_CONSTANT( 0x4cf5ad432745937f );
162 case 15: k2 ^= ((uint64_t)tail[14]) << 48; [[fallthrough]];
163 case 14: k2 ^= ((uint64_t)tail[13]) << 40; [[fallthrough]];
164 case 13: k2 ^= ((uint64_t)tail[12]) << 32; [[fallthrough]];
165 case 12: k2 ^= ((uint64_t)tail[11]) << 24; [[fallthrough]];
166 case 11: k2 ^= ((uint64_t)tail[10]) << 16; [[fallthrough]];
167 case 10: k2 ^= ((uint64_t)tail[ 9]) << 8; [[fallthrough]];
168 case 9: k2 ^= ((uint64_t)tail[ 8]) << 0;
169 k2 *= c2; k2 =
ROTL64(k2,33); k2 *= c1;
h2 ^= k2;
172 case 8: k1 ^= ((uint64_t)tail[ 7]) << 56; [[fallthrough]];
173 case 7: k1 ^= ((uint64_t)tail[ 6]) << 48; [[fallthrough]];
174 case 6: k1 ^= ((uint64_t)tail[ 5]) << 40; [[fallthrough]];
175 case 5: k1 ^= ((uint64_t)tail[ 4]) << 32; [[fallthrough]];
176 case 4: k1 ^= ((uint64_t)tail[ 3]) << 24; [[fallthrough]];
177 case 3: k1 ^= ((uint64_t)tail[ 2]) << 16; [[fallthrough]];
178 case 2: k1 ^= ((uint64_t)tail[ 1]) << 8; [[fallthrough]];
179 case 1: k1 ^= ((uint64_t)tail[ 0]) << 0;
180 k1 *= c1; k1 =
ROTL64(k1,31); k1 *= c2;
h1 ^= k1;