Lines Matching refs:dctx
67 static unsigned int poly1305_simd_blocks(struct poly1305_desc_ctx *dctx, in poly1305_simd_blocks() argument
74 sctx = container_of(dctx, struct poly1305_simd_desc_ctx, base); in poly1305_simd_blocks()
76 if (unlikely(!dctx->sset)) { in poly1305_simd_blocks()
77 datalen = crypto_poly1305_setdesckey(dctx, src, srclen); in poly1305_simd_blocks()
86 memcpy(sctx->u, dctx->r, sizeof(sctx->u)); in poly1305_simd_blocks()
87 poly1305_simd_mult(sctx->u, dctx->r); in poly1305_simd_blocks()
91 poly1305_simd_mult(sctx->u + 5, dctx->r); in poly1305_simd_blocks()
93 poly1305_simd_mult(sctx->u + 10, dctx->r); in poly1305_simd_blocks()
97 poly1305_4block_avx2(dctx->h, src, dctx->r, blocks, sctx->u); in poly1305_simd_blocks()
104 memcpy(sctx->u, dctx->r, sizeof(sctx->u)); in poly1305_simd_blocks()
105 poly1305_simd_mult(sctx->u, dctx->r); in poly1305_simd_blocks()
109 poly1305_2block_sse2(dctx->h, src, dctx->r, blocks, sctx->u); in poly1305_simd_blocks()
114 poly1305_block_sse2(dctx->h, src, dctx->r, 1); in poly1305_simd_blocks()
123 struct poly1305_desc_ctx *dctx = shash_desc_ctx(desc); in poly1305_simd_update() local
132 if (unlikely(dctx->buflen)) { in poly1305_simd_update()
133 bytes = min(srclen, POLY1305_BLOCK_SIZE - dctx->buflen); in poly1305_simd_update()
134 memcpy(dctx->buf + dctx->buflen, src, bytes); in poly1305_simd_update()
137 dctx->buflen += bytes; in poly1305_simd_update()
139 if (dctx->buflen == POLY1305_BLOCK_SIZE) { in poly1305_simd_update()
140 poly1305_simd_blocks(dctx, dctx->buf, in poly1305_simd_update()
142 dctx->buflen = 0; in poly1305_simd_update()
147 bytes = poly1305_simd_blocks(dctx, src, srclen); in poly1305_simd_update()
155 dctx->buflen = srclen; in poly1305_simd_update()
156 memcpy(dctx->buf, src, srclen); in poly1305_simd_update()