Lines Matching +full:24 +full:- +full:21

1 /* SPDX-License-Identifier: GPL-2.0-or-later */
5 # Copyright 2023- IBM Corp. All rights reserved
10 # Poly1305 - this version mainly using vector/VSX/Scalar
11 # - 26 bits limbs
12 # - Handle multiple 64 byte blcok.
17 # p = 2^130 - 5
25 # 07/22/21 - this revison based on the above sum of products. Setup r^4, r^3, r^2, r and s3, s2, …
56 #include <asm/asm-offsets.h>
57 #include <asm/asm-compat.h>
95 stdu 1,-752(1)
104 SAVE_GPR 21, 168, 1
107 SAVE_GPR 24, 192, 1
118 SAVE_VRS 21, 16, 9
121 SAVE_VRS 24, 64, 9
137 SAVE_VSX 21, 304, 9
140 SAVE_VSX 24, 352, 9
153 RESTORE_VRS 21, 16, 9
156 RESTORE_VRS 24, 64, 9
172 RESTORE_VSX 21, 304, 9
175 RESTORE_VSX 24, 352, 9
191 RESTORE_GPR 21, 168, 1
194 RESTORE_GPR 24, 192, 1
486 lvx 25, 0, 10 # v25 - mask
488 lvx 19, 15, 10 # v19 = 1 << 24
489 lxv 24, 48(10) # vs24
494 ld 9, 24(3)
506 extrdi 17, 10, 26, 24
508 extrdi 18, 10, 24, 0
537 li 21, 0 # counter to message
546 sldi 19, 19, 24
554 extrdi 17, 10, 26, 24
556 extrdi 18, 10, 24, 0
562 add 20, 4, 21
563 xxlor 49, 24, 24
585 vaddudm 21, 5, 10
588 vaddudm 24, 8, 13
613 vmrgow 5, 10, 21
616 vmrgow 8, 13, 24
619 addi 5, 5, -64 # len -= 64
620 addi 21, 21, 64 # offset += 64
633 # h3 = (h1 + m3) * r^2, h4 = (h2 + m4) * r^2 --> (h0 + m1) r*4 + (h3 + m3) r^2, (h0 + m2) r^4 + (h…
635 # h5 = (h3 + m5) * r^2, h6 = (h4 + m6) * r^2 -->
636 # h7 = (h5 + m7) * r^2, h8 = (h6 + m8) * r^1 --> m5 * r^4 + m6 * r^3 + m7 * r^2 + m8 * r
673 add 20, 4, 21
674 xxlor 49, 24, 24
690 vsrd 21, 14, 31 # >> 26
691 vsrd 22, 21, 31 # 12 bits left
695 vand 21, 21, 25 # a1
709 vsrd 24, 23, 31 # >> 26, a4
716 vaddudm 5, 5, 21
719 vaddudm 8, 8, 24
729 addi 5, 5, -64 # len -= 64
730 addi 21, 21, 64 # offset += 64
812 vor 21, 7, 12
816 vor 21, 21, 8
819 srdi 16, 16, 24
851 ld 9, 24(3)
856 srdi 21, 10, 2
857 add 19, 21, 10 # s1: r19 - (r1 >> 2) *5
901 mfvsrd 21, 32+10 # h1.h
904 adde 29, 29, 21
923 # - no highbit if final leftover block (highbit = 0)
931 stdu 1,-400(1)
940 SAVE_GPR 21, 168, 1
943 SAVE_GPR 24, 192, 1
970 mr 24, 6 # highbit
976 ld 21, 8(11)
980 adde 28, 28, 21
981 adde 29, 29, 24
1006 RESTORE_GPR 21, 168, 1
1009 RESTORE_GPR 24, 192, 1
1039 # h + 5 + (-p)