Lines Matching +full:src +full:-
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
14 u8 *dst, const u8 *src,
17 u8 *dst, const u8 *src,
23 u8 *dst, const u8 *src,
26 u8 *dst, const u8 *src,
29 u8 *dst, const u8 *src,
33 u8 *dst, const u8 *src,
36 u8 *dst, const u8 *src,
39 u8 *dst, const u8 *src,
52 static void chacha_dosimd(struct chacha_state *state, u8 *dst, const u8 *src, in chacha_dosimd() argument
57 chacha_8block_xor_avx512vl(state, dst, src, bytes, in chacha_dosimd()
59 bytes -= CHACHA_BLOCK_SIZE * 8; in chacha_dosimd()
60 src += CHACHA_BLOCK_SIZE * 8; in chacha_dosimd()
62 state->x[12] += 8; in chacha_dosimd()
65 chacha_8block_xor_avx512vl(state, dst, src, bytes, in chacha_dosimd()
67 state->x[12] += chacha_advance(bytes, 8); in chacha_dosimd()
71 chacha_4block_xor_avx512vl(state, dst, src, bytes, in chacha_dosimd()
73 state->x[12] += chacha_advance(bytes, 4); in chacha_dosimd()
77 chacha_2block_xor_avx512vl(state, dst, src, bytes, in chacha_dosimd()
79 state->x[12] += chacha_advance(bytes, 2); in chacha_dosimd()
86 chacha_8block_xor_avx2(state, dst, src, bytes, nrounds); in chacha_dosimd()
87 bytes -= CHACHA_BLOCK_SIZE * 8; in chacha_dosimd()
88 src += CHACHA_BLOCK_SIZE * 8; in chacha_dosimd()
90 state->x[12] += 8; in chacha_dosimd()
93 chacha_8block_xor_avx2(state, dst, src, bytes, nrounds); in chacha_dosimd()
94 state->x[12] += chacha_advance(bytes, 8); in chacha_dosimd()
98 chacha_4block_xor_avx2(state, dst, src, bytes, nrounds); in chacha_dosimd()
99 state->x[12] += chacha_advance(bytes, 4); in chacha_dosimd()
103 chacha_2block_xor_avx2(state, dst, src, bytes, nrounds); in chacha_dosimd()
104 state->x[12] += chacha_advance(bytes, 2); in chacha_dosimd()
110 chacha_4block_xor_ssse3(state, dst, src, bytes, nrounds); in chacha_dosimd()
111 bytes -= CHACHA_BLOCK_SIZE * 4; in chacha_dosimd()
112 src += CHACHA_BLOCK_SIZE * 4; in chacha_dosimd()
114 state->x[12] += 4; in chacha_dosimd()
117 chacha_4block_xor_ssse3(state, dst, src, bytes, nrounds); in chacha_dosimd()
118 state->x[12] += chacha_advance(bytes, 4); in chacha_dosimd()
122 chacha_block_xor_ssse3(state, dst, src, bytes, nrounds); in chacha_dosimd()
123 state->x[12]++; in chacha_dosimd()
140 const u8 *src, unsigned int bytes, int nrounds) in chacha_crypt_arch() argument
144 return chacha_crypt_generic(state, dst, src, bytes, nrounds); in chacha_crypt_arch()
150 chacha_dosimd(state, dst, src, todo, nrounds); in chacha_crypt_arch()
153 bytes -= todo; in chacha_crypt_arch()
154 src += todo; in chacha_crypt_arch()