Lines Matching refs:u64
41 static const u64 p64 = UINT64_C(0xfffffffffffffeff); /* 2^64 - 257 prime */
42 static const u64 m62 = UINT64_C(0x3fffffffffffffff); /* 62-bit mask */
43 static const u64 m63 = UINT64_C(0x7fffffffffffffff); /* 63-bit mask */
44 static const u64 m64 = UINT64_C(0xffffffffffffffff); /* 64-bit mask */
45 static const u64 mpoly = UINT64_C(0x1fffffff1fffffff); /* Poly key mask */
68 u64 _il = (il); \
75 #define MUL32(i1, i2) ((u64)(u32)(i1)*(u32)(i2))
79 u64 _i1 = (i1), _i2 = (i2); \
80 u64 m = MUL32(_i1, _i2>>32) + MUL32(_i1>>32, _i2); \
88 u64 _i1 = (i1), _i2 = (i2); \
89 u64 m1 = MUL32(_i1, _i2>>32); \
90 u64 m2 = MUL32(_i1>>32, _i2); \
113 int i; u64 th, tl; \
124 int i; u64 th, tl; \
139 int i; u64 th, tl; \
159 int i; u64 th, tl; \
192 u64 t1h, t1l, t2h, t2l, t3h, t3l, z = 0; \
218 u64 t1, t2, m1, m2, t; \
228 rh += (u64)(u32)(m1 >> 32) \
230 t += (u64)(u32)m1 + (u32)m2; \
236 static void poly_step_func(u64 *ahi, u64 *alo, in poly_step_func()
237 const u64 *kh, const u64 *kl, in poly_step_func()
238 const u64 *mh, const u64 *ml) in poly_step_func()
249 u64 p, q, t; in poly_step_func()
254 p += *(u64 *)mh; in poly_step_func()
264 t |= ((u64)((u32)p & 0x7fffffff)) << 32; in poly_step_func()
266 p += (u64)(((u32 *)ml)[INDEX_LOW]); in poly_step_func()
275 p += (u64)(((u32 *)ml)[INDEX_HIGH]); in poly_step_func()
282 *(u64 *)(alo) = (p << 32) | t2; in poly_step_func()
284 *(u64 *)(ahi) = p + t; in poly_step_func()
328 static u64 l3hash(u64 p1, u64 p2, u64 k1, u64 k2, u64 len) in l3hash()
330 u64 rh, rl, t, z = 0; in l3hash()
371 u64 rh, rl, *mptr; in vhash_update()
372 const u64 *kptr = (u64 *)ctx->nhkey; in vhash_update()
374 u64 ch, cl; in vhash_update()
375 u64 pkh = ctx->polykey[0]; in vhash_update()
376 u64 pkl = ctx->polykey[1]; in vhash_update()
383 mptr = (u64 *)m; in vhash_update()
394 mptr += (VMAC_NHBYTES/sizeof(u64)); in vhash_update()
402 mptr += (VMAC_NHBYTES/sizeof(u64)); in vhash_update()
409 static u64 vhash(unsigned char m[], unsigned int mbytes, in vhash()
410 u64 *tagl, struct vmac_ctx *ctx) in vhash()
412 u64 rh, rl, *mptr; in vhash()
413 const u64 *kptr = (u64 *)ctx->nhkey; in vhash()
415 u64 ch, cl; in vhash()
416 u64 pkh = ctx->polykey[0]; in vhash()
417 u64 pkl = ctx->polykey[1]; in vhash()
419 mptr = (u64 *)m; in vhash()
430 mptr += (VMAC_NHBYTES/sizeof(u64)); in vhash()
436 mptr += (VMAC_NHBYTES/sizeof(u64)); in vhash()
447 mptr += (VMAC_NHBYTES/sizeof(u64)); in vhash()
461 static u64 vmac(unsigned char m[], unsigned int mbytes, in vmac()
462 const unsigned char n[16], u64 *tagl, in vmac()
465 u64 *in_n, *out_p; in vmac()
466 u64 p, h; in vmac()
473 if ((*(u64 *)(n+8) != in_n[1]) || (*(u64 *)(n) != in_n[0])) { in vmac()
474 in_n[0] = *(u64 *)(n); in vmac()
475 in_n[1] = *(u64 *)(n+8); in vmac()
483 h = vhash(m, mbytes, (u64 *)0, &ctx->__vmac_ctx); in vmac()
489 u64 in[2] = {0}, out[2]; in vmac_set_key()
537 ctx->__vmac_ctx.cached_nonce[0] = (u64)-1; /* Ensure illegal nonce */ in vmac_set_key()
538 ctx->__vmac_ctx.cached_nonce[1] = (u64)0; /* Ensure illegal nonce */ in vmac_set_key()