Lines Matching +full:compute +full:-

1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
2 /* Copyright (C) 2016-2022 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved.
4 * SipHash: a fast short-input PRF
7 * This implementation is specifically for SipHash2-4 for a secure PRF
8 * and HalfSipHash1-3/SipHash1-3 for an insecure PRF only suitable for
17 #include <asm/word-at-a-time.h>
28 v3 ^= key->key[1]; \
29 v2 ^= key->key[0]; \
30 v1 ^= key->key[1]; \
31 v0 ^= key->key[0];
48 const u8 *end = data + len - (len % sizeof(u64)); in __siphash_aligned()
49 const u8 left = len & (sizeof(u64) - 1); in __siphash_aligned()
81 const u8 *end = data + len - (len % sizeof(u64)); in __siphash_unaligned()
82 const u8 left = len & (sizeof(u64) - 1); in __siphash_unaligned()
112 * siphash_1u64 - compute 64-bit siphash PRF value of a u64
128 * siphash_2u64 - compute 64-bit siphash PRF value of 2 u64
149 * siphash_3u64 - compute 64-bit siphash PRF value of 3 u64
176 * siphash_4u64 - compute 64-bit siphash PRF value of 4 u64
230 /* Note that on 64-bit, we make HalfSipHash1-3 actually be SipHash1-3, for
231 * performance reasons. On 32-bit, below, we actually implement HalfSipHash1-3.
249 const u8 *end = data + len - (len % sizeof(u64)); in __hsiphash_aligned()
250 const u8 left = len & (sizeof(u64) - 1); in __hsiphash_aligned()
282 const u8 *end = data + len - (len % sizeof(u64)); in __hsiphash_unaligned()
283 const u8 left = len & (sizeof(u64) - 1); in __hsiphash_unaligned()
312 * hsiphash_1u32 - compute 64-bit hsiphash PRF value of a u32
325 * hsiphash_2u32 - compute 32-bit hsiphash PRF value of 2 u32
342 * hsiphash_3u32 - compute 32-bit hsiphash PRF value of 3 u32
362 * hsiphash_4u32 - compute 32-bit hsiphash PRF value of 4 u32
393 v3 ^= key->key[1]; \
394 v2 ^= key->key[0]; \
395 v1 ^= key->key[1]; \
396 v0 ^= key->key[0];
411 const u8 *end = data + len - (len % sizeof(u32)); in __hsiphash_aligned()
412 const u8 left = len & (sizeof(u32) - 1); in __hsiphash_aligned()
434 const u8 *end = data + len - (len % sizeof(u32)); in __hsiphash_unaligned()
435 const u8 left = len & (sizeof(u32) - 1); in __hsiphash_unaligned()
454 * hsiphash_1u32 - compute 32-bit hsiphash PRF value of a u32
469 * hsiphash_2u32 - compute 32-bit hsiphash PRF value of 2 u32
488 * hsiphash_3u32 - compute 32-bit hsiphash PRF value of 3 u32
512 * hsiphash_4u32 - compute 32-bit hsiphash PRF value of 4 u32