MCPcopy Create free account
hub / github.com/Snapchat/KeyDB / do_recursion

Function do_recursion

deps/jemalloc/test/src/SFMT.c:244–259  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

242#if (!defined(HAVE_ALTIVEC)) && (!defined(HAVE_SSE2))
243#ifdef ONLY64
244static inline void do_recursion(w128_t *r, w128_t *a, w128_t *b, w128_t *c,
245 w128_t *d) {
246 w128_t x;
247 w128_t y;
248
249 lshift128(&x, a, SL2);
250 rshift128(&y, c, SR2);
251 r->u[0] = a->u[0] ^ x.u[0] ^ ((b->u[0] >> SR1) & MSK2) ^ y.u[0]
252 ^ (d->u[0] << SL1);
253 r->u[1] = a->u[1] ^ x.u[1] ^ ((b->u[1] >> SR1) & MSK1) ^ y.u[1]
254 ^ (d->u[1] << SL1);
255 r->u[2] = a->u[2] ^ x.u[2] ^ ((b->u[2] >> SR1) & MSK4) ^ y.u[2]
256 ^ (d->u[2] << SL1);
257 r->u[3] = a->u[3] ^ x.u[3] ^ ((b->u[3] >> SR1) & MSK3) ^ y.u[3]
258 ^ (d->u[3] << SL1);
259}
260#else
261static inline void do_recursion(w128_t *r, w128_t *a, w128_t *b, w128_t *c,
262 w128_t *d) {

Callers 2

gen_rand_allFunction · 0.70
gen_rand_arrayFunction · 0.70

Calls 2

lshift128Function · 0.70
rshift128Function · 0.70

Tested by

no test coverage detected