Lines Matching defs:acc
243 uint64_t acc =
246 acc ^= input64;
247 // XXH3_rrmxmx(acc, len)
248 acc ^= rotl64(acc, 49) ^ rotl64(acc, 24);
249 acc *= PRIME_MX2;
250 acc ^= (acc >> 35) + (uint64_t)len;
251 acc *= PRIME_MX2;
252 return acc ^ (acc >> 28);
263 uint64_t acc = uint64_t(len) + byteswap(input_lo) + input_hi +
265 return XXH3_avalanche(acc);
297 uint64_t acc = len * PRIME64_1, acc_end;
298 acc += XXH3_mix16B(input + 0, secret + 0, seed);
301 acc += XXH3_mix16B(input + 16, secret + 32, seed);
304 acc += XXH3_mix16B(input + 32, secret + 64, seed);
307 acc += XXH3_mix16B(input + 48, secret + 96, seed);
312 return XXH3_avalanche(acc + acc_end);
322 uint64_t acc = (uint64_t)len * PRIME64_1;
325 acc += XXH3_mix16B(input + 16 * i, secret + 16 * i, seed);
326 acc = XXH3_avalanche(acc);
329 acc += XXH3_mix16B(input + 16 * i,
333 acc +=
336 return XXH3_avalanche(acc);
365 static void XXH3_accumulate_512_neon(uint64_t *acc, const uint8_t *input,
367 xxh_aliasing_uint64x2_t *const xacc = (xxh_aliasing_uint64x2_t *)acc;
430 static void XXH3_scrambleAcc_neon(uint64_t *acc, const uint8_t *secret) {
431 xxh_aliasing_uint64x2_t *const xacc = (xxh_aliasing_uint64x2_t *)acc;
441 uint64x2_t acc_vec = XXH_vld1q_u64(acc + (2 * i));
478 static void XXH3_accumulate_512_scalar(uint64_t *acc, const uint8_t *input,
483 acc[i ^ 1] += data_val;
484 acc[i] += uint32_t(data_key) * (data_key >> 32);
489 static void XXH3_scrambleAcc_scalar(uint64_t *acc, const uint8_t *secret) {
491 acc[i] ^= acc[i] >> 47;
492 acc[i] ^= endian::read64le(secret + 8 * i);
493 acc[i] *= PRIME32_1;
499 static void XXH3_accumulate(uint64_t *acc, const uint8_t *input,
502 XXH3_accumulate_512(acc, input + n * XXH_STRIPE_LEN,
507 static uint64_t XXH3_mix2Accs(const uint64_t *acc, const uint8_t *secret) {
508 return XXH3_mul128_fold64(acc[0] ^ endian::read64le(secret),
509 acc[1] ^ endian::read64le(secret + 8));
512 static uint64_t XXH3_mergeAccs(const uint64_t *acc, const uint8_t *key,
516 result64 += XXH3_mix2Accs(acc + 2 * i, key + 16 * i);
527 alignas(16) uint64_t acc[XXH_ACC_NB] = {
532 XXH3_accumulate(acc, input + n * block_len, secret, nbStripesPerBlock);
533 XXH3_scrambleAcc(acc, secret + secretSize - XXH_STRIPE_LEN);
539 XXH3_accumulate(acc, input + nb_blocks * block_len, secret, nbStripes);
543 XXH3_accumulate_512(acc, input + len - XXH_STRIPE_LEN,
549 return XXH3_mergeAccs(acc, secret + XXH_SECRET_MERGEACCS_START,
900 XXH128_mix32B(XXH128_hash_t acc, const uint8_t *input_1, const uint8_t *input_2,
902 acc.low64 += XXH3_mix16B(input_1, secret + 0, seed);
903 acc.low64 ^= endian::read64le(input_2) + endian::read64le(input_2 + 8);
904 acc.high64 += XXH3_mix16B(input_2, secret + 16, seed);
905 acc.high64 ^= endian::read64le(input_1) + endian::read64le(input_1 + 8);
906 return acc;
914 XXH128_hash_t acc;
915 acc.low64 = len * PRIME64_1;
916 acc.high64 = 0;
921 acc =
922 XXH128_mix32B(acc, input + 48, input + len - 64, secret + 96, seed);
924 acc = XXH128_mix32B(acc, input + 32, input + len - 48, secret + 64, seed);
926 acc = XXH128_mix32B(acc, input + 16, input + len - 32, secret + 32, seed);
928 acc = XXH128_mix32B(acc, input, input + len - 16, secret, seed);
930 h128.low64 = acc.low64 + acc.high64;
931 h128.high64 = (acc.low64 * PRIME64_1) + (acc.high64 * PRIME64_4) +
943 XXH128_hash_t acc;
945 acc.low64 = len * PRIME64_1;
946 acc.high64 = 0;
954 acc = XXH128_mix32B(acc, input + i - 32, input + i - 16, secret + i - 32,
957 acc.low64 = XXH3_avalanche(acc.low64);
958 acc.high64 = XXH3_avalanche(acc.high64);
965 acc = XXH128_mix32B(acc, input + i - 32, input + i - 16,
969 acc =
970 XXH128_mix32B(acc, input + len - 16, input + len - 32,
975 h128.low64 = acc.low64 + acc.high64;
976 h128.high64 = (acc.low64 * PRIME64_1) + (acc.high64 * PRIME64_4) +
990 alignas(16) uint64_t acc[XXH_ACC_NB] = {
996 XXH3_accumulate(acc, input + n * block_len, secret, nbStripesPerBlock);
997 XXH3_scrambleAcc(acc, secret + secretSize - XXH_STRIPE_LEN);
1003 XXH3_accumulate(acc, input + nb_blocks * block_len, secret, nbStripes);
1007 XXH3_accumulate_512(acc, input + len - XXH_STRIPE_LEN,
1012 static_assert(sizeof(acc) == 64);
1015 h128.low64 = XXH3_mergeAccs(acc, secret + XXH_SECRET_MERGEACCS_START,
1018 acc, secret + secretSize - sizeof(acc) - XXH_SECRET_MERGEACCS_START,