Lines Matching +full:left +full:- +full:aligned

1 /*-
9 * These are functions for producing 32-bit hashes for hash table lookup...
13 * Copyright (c) 2014-2016 Solarflare Communications Inc.
50 * Rotate a 32-bit value left
53 * fall-back to a simple shift based implementation.
63 (((_value) << (_shift)) | ((_value) >> (32 - (_shift))))
67 /* Mix three 32-bit values reversibly */
70 _a -= _c; \
73 _b -= _a; \
76 _c -= _b; \
79 _a -= _c; \
82 _b -= _a; \
85 _c -= _b; \
91 /* Final mixing of three 32-bit values into one (_c) */
95 _c -= EFX_HASH_ROTATE(_b, 14); \
97 _a -= EFX_HASH_ROTATE(_c, 11); \
99 _b -= EFX_HASH_ROTATE(_a, 25); \
101 _c -= EFX_HASH_ROTATE(_b, 16); \
103 _a -= EFX_HASH_ROTATE(_c, 4); \
105 _b -= EFX_HASH_ROTATE(_a, 14); \
107 _c -= EFX_HASH_ROTATE(_b, 24); \
111 /* Produce a 32-bit hash from 32-bit aligned input */
133 count -= 3; in efx_hash_dwords()
137 /* Handle the left-overs */ in efx_hash_dwords()
141 /* Fall-through */ in efx_hash_dwords()
144 /* Fall-through */ in efx_hash_dwords()
160 /* Produce a 32-bit hash from arbitrarily aligned input */
189 length -= 12; in efx_hash_bytes()
193 /* Handle the left-overs */ in efx_hash_bytes()
197 /* Fall-through */ in efx_hash_bytes()
200 /* Fall-through */ in efx_hash_bytes()
203 /* Fall-through */ in efx_hash_bytes()
206 /* Fall-through */ in efx_hash_bytes()
209 /* Fall-through */ in efx_hash_bytes()
212 /* Fall-through */ in efx_hash_bytes()
215 /* Fall-through */ in efx_hash_bytes()
218 /* Fall-through */ in efx_hash_bytes()
221 /* Fall-through */ in efx_hash_bytes()
224 /* Fall-through */ in efx_hash_bytes()
227 /* Fall-through */ in efx_hash_bytes()
243 /* Produce a 32-bit hash from arbitrarily aligned input */
272 length -= 12; in efx_hash_bytes()
276 /* Handle the left-overs */ in efx_hash_bytes()
280 /* Fall-through */ in efx_hash_bytes()
283 /* Fall-through */ in efx_hash_bytes()
286 /* Fall-through */ in efx_hash_bytes()
289 /* Fall-through */ in efx_hash_bytes()
292 /* Fall-through */ in efx_hash_bytes()
295 /* Fall-through */ in efx_hash_bytes()
298 /* Fall-through */ in efx_hash_bytes()
301 /* Fall-through */ in efx_hash_bytes()
304 /* Fall-through */ in efx_hash_bytes()
307 /* Fall-through */ in efx_hash_bytes()
310 /* Fall-through */ in efx_hash_bytes()