Lines Matching +full:ext +full:- +full:32 +full:k
1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * Copyright (C) 2014 - 2018 Linaro Ltd. <ard.biesheuvel@linaro.org>
60 .arch armv8-a+crypto
71 ext t3.8b, \ad\().8b, \ad\().8b, #1 // A1
72 ext t5.8b, \ad\().8b, \ad\().8b, #2 // A2
73 ext t7.8b, \ad\().8b, \ad\().8b, #3 // A3
105 pmull\t t9.8h, \ad, \b4\().\nb // K = A*B4
123 // t9 = (K) (P6 + P7) << 32
135 ext t3.16b, t3.16b, t3.16b, #15
136 ext t5.16b, t5.16b, t5.16b, #14
137 ext t7.16b, t7.16b, t7.16b, #13
138 ext t9.16b, t9.16b, t9.16b, #12
148 ld1 {HH.2d-HH4.2d}, [x8]
163 ext SHASH2.16b, SHASH.16b, SHASH.16b, #8
170 ushr k00_16.2d, k32_48.2d, #32
189 ext ss1.8b, SHASH2.8b, SHASH2.8b, #1
190 ext ss2.8b, SHASH2.8b, SHASH2.8b, #2
191 ext ss3.8b, SHASH2.8b, SHASH2.8b, #3
192 ext ss4.8b, SHASH2.8b, SHASH2.8b, #4
196 // PMULL (64x64->128) based reduction for CPUs that can do
207 ext T2.16b, XL.16b, XL.16b, #8
213 // 64x64->128 PMULL instruction
226 ext T1.16b, XL.16b, XH.16b, #8
255 1: ld1 {XM3.16b-TT4.16b}, [x2], #64
264 ext IN1.16b, TT4.16b, TT4.16b, #8
265 ext XL3.16b, TT3.16b, TT3.16b, #8
277 ext IN1.16b, T2.16b, T2.16b, #8
291 ext IN1.16b, T1.16b, T1.16b, #8
292 ext TT3.16b, XL.16b, XL.16b, #8
306 ext T1.16b, XL.16b, XH.16b, #8
324 ext T2.16b, XL.16b, XL.16b, #8
325 ext IN1.16b, T1.16b, T1.16b, #8
335 ext T1.16b, XL.16b, XH.16b, #8
351 * struct ghash_key const *k, const char *head)
387 ld1 {K0.4s-K3.4s}, [\rk]
388 ld1 {K4.4s-K5.4s}, [\tmp]
390 sub \tmp, \tmp, #32
391 ld1 {KK.4s-KM.4s}, [\tmp]
408 ld1 {K6.4s-K7.4s}, [\tmp], #32
425 ld1 {K8.4s-K9.4s}, [\tmp], #32
428 ld1 {K6.4s-K7.4s}, [\tmp]
438 stp x29, x30, [sp, #-32]!
445 ld1 {HH.2d-HH4.2d}, [x3]
471 ld1 {INP0.16b-INP3.16b}, [x2], #64
501 cmp x0, #-16
503 cmp x0, #-32
505 cmp x0, #-48
525 st1 {INP0.16b-INP3.16b}, [x1], #64
544 ext XL.16b, XL.16b, XL.16b, #8
549 4: ldp x29, x30, [sp], #32
558 6: ld1 {T1.16b-T2.16b}, [x17], #32 // permute vectors
579 tbl INP3.16b, {INP3.16b}, T1.16b // clear non-data bits
587 * struct ghash_key const *k, u64 dg[], u8 ctr[],
596 * struct ghash_key const *k, u64 dg[], u8 ctr[],
612 ext XL.16b, XL.16b, XL.16b, #8
624 ext T1.16b, T2.16b, T2.16b, #8
628 ext T2.16b, TT3.16b, TT3.16b, #8
632 ext IN1.16b, TT4.16b, TT4.16b, #8
637 ext IN1.16b, T1.16b, T1.16b, #8
644 ext T1.16b, T2.16b, T2.16b, #8
654 ext T2.16b, TT3.16b, TT3.16b, #8
664 ext IN1.16b, TT4.16b, TT4.16b, #8
675 ext T1.16b, XL.16b, XH.16b, #8
705 ld1 {K6.4s-K7.4s}, [x10], #32
713 ld1 {K8.4s-K9.4s}, [x10], #32
717 ld1 {K6.4s-K7.4s}, [x10]