Lines Matching +full:21 +full:- +full:k
1 /*-
4 * SPDX-License-Identifier: BSD-2-Clause
34 .macro round a, b, c, d, f, k, m, s
36 add $\k, \a // a + k[i]
37 add ((\m)%16*4)(%rsi), \a // a + k[i] + m[g]
38 add %ebp, \a // a + k[i] + m[g] + f
68 mov $-1, \f
96 rounds f3, 7, 7*\i, 6, 10, 15, 21, \k0, \k1, \k2, \k3
147 // special-cased round 1
149 .macro round1 a, b, c, d, k, m, s
151 add $\k, \a // a + k[i]
153 add ((\m)%16*4)(%rsi), \a // a + k[i] + m[g]
155 add %edi, \a // a + k[i] + m[g] + (~d & c)
156 add %ebp, \a // a + k[i] + m[g] + (~d & c) + (d & b)
161 // special-cased round 3
162 // f3 = c ^ (b | ~d) = ~(c ^ ~b & d) = -1 - (c ^ ~b & d)
163 .macro round3 a, b, c, d, k, m, s
165 add $\k - 1, \a // a + k[i] - 1
166 add ((\m)%16*4)(%rsi), \a // a + k[i] + m[g]
168 sub %ebp, \a // a + k[i] + m[g] + f
186 round3 %ebx, %ecx, %edx, %eax, \k3, 7*\i+21, 21
237 * An implementation leveraging AVX-512 for its VPTERNLOGD
245 vpaddd 4*(\i)(%rax){1to4}, \m, %xmm5 // m[g] + k[i]
249 vpaddd %xmm5, \a, \a // a + k[i] + m[g]
250 vpaddd %xmm4, \a, \a // a + k[i] + m[g] + f
287 vrounds 0x39, \i, \m0, \i0, \m1, \i1, \m2, \i2, \m3, \i3, 6, 10, 15, 21
360 .size keys, .-keys
363 .section .note.GNU-stack,"",%progbits