18 v1 = rotl64(v1, 13); \
20 v0 = rotl64(v0, 32); \
22 v3 = rotl64(v3, 16); \
25 v3 = rotl64(v3, 21); \
28 v1 = rotl64(v1, 17); \
30 v2 = rotl64(v2, 32); \
43 uint64_t
v0 = 0x736f6d6570736575ULL ^ k0;
44 uint64_t
v1 = 0x646f72616e646f6dULL ^ k1;
45 uint64_t
v2 = 0x6c7967656e657261ULL ^ k0;
46 uint64_t v3 = 0x7465646279746573ULL ^ k1;
48 const uint64_t* data = (
const uint64_t*)in;
49 const uint64_t* end = data + inlen;
51 const uint64_t* limit = data + (inlen & ~3ULL);
53 while (data < limit) {
54 uint64_t m0 = data[0];
55 uint64_t m1 = data[1];
56 uint64_t m2 = data[2];
57 uint64_t m3 = data[3];
89 uint64_t b = ((uint64_t)(inlen *
LIMB_BYTES)) << 56;