Lines Matching +full:10 +full:- +full:14

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)
97 SAVE_GPR 14, 112, 1
130 SAVE_VSX 14, 192, 9
165 RESTORE_VSX 14, 192, 9
184 RESTORE_GPR 14, 112, 1
220 vmulouw 14, 4, 26
221 vmulouw 10, 5, 3
226 vaddudm 14, 14, 10
227 vaddudm 14, 14, 11
228 vmulouw 10, 5, 26
230 vaddudm 14, 14, 12
231 vaddudm 14, 14, 13 # x0
232 vaddudm 15, 15, 10
239 vmulouw 10, 5, 27
241 vaddudm 16, 16, 10
248 vmulouw 10, 5, 28
250 vaddudm 17, 17, 10
257 vmulouw 10, 5, 29
259 vaddudm 18, 18, 10
269 vmuleuw 10, 5, 3
273 vaddudm 14, 14, 9
274 vaddudm 14, 14, 10
275 vaddudm 14, 14, 11
276 vaddudm 14, 14, 12
277 vaddudm 14, 14, 13 # x0
280 vmuleuw 10, 5, 26
285 vaddudm 15, 15, 10
291 vmuleuw 10, 5, 27
296 vaddudm 16, 16, 10
302 vmuleuw 10, 5, 28
307 vaddudm 17, 17, 10
313 vmuleuw 10, 5, 29
318 vaddudm 18, 18, 10
376 vsld 10, 28, 13
380 vaddudm 1, 10, 28
392 vsld 10, 28, 13
396 vaddudm 1, 10, 28
412 vspltw 10, 26, 2
413 vmrgow 26, 10, 9
415 vspltw 10, 27, 2
416 vmrgow 27, 10, 9
418 vspltw 10, 28, 2
419 vmrgow 28, 10, 9
421 vspltw 10, 29, 2
422 vmrgow 29, 10, 9
424 vspltw 10, 30, 2
425 vmrgow 30, 10, 9
428 vsld 10, 28, 13
432 vaddudm 1, 10, 28
443 vsrd 10, 14, 31
446 vand 4, 14, 25
449 vaddudm 15, 15, 10
455 vsld 10, 12, 9
460 vaddudm 4, 4, 10
461 vsrd 10, 4, 31
467 vaddudm 5, 5, 10
476 addis 10, 2, rmask@toc@ha
477 addi 10, 10, rmask@toc@l
479 ld 11, 0(10)
480 ld 12, 8(10)
482 li 14, 16
484 addis 10, 2, cnum@toc@ha
485 addi 10, 10, cnum@toc@l
486 lvx 25, 0, 10 # v25 - mask
487 lvx 31, 14, 10 # v31 = 1a
488 lvx 19, 15, 10 # v19 = 1 << 24
489 lxv 24, 48(10) # vs24
490 lxv 25, 64(10) # vs25
495 ld 10, 32(3)
497 and. 10, 10, 12
500 extrdi 14, 9, 26, 38
503 mtvsrdd 58, 0, 14
504 insrdi 16, 10, 14, 38
506 extrdi 17, 10, 26, 24
508 extrdi 18, 10, 24, 0
544 ld 10, 8(3)
548 extrdi 14, 9, 26, 38
551 mtvsrdd 36, 0, 14
552 insrdi 16, 10, 14, 38
554 extrdi 17, 10, 26, 24
556 extrdi 18, 10, 24, 0
568 vperm 14, 11, 12, 17
570 vand 9, 14, 25 # a0
571 vsrd 10, 14, 31 # >> 26
572 vsrd 11, 10, 31 # 12 bits left
573 vand 10, 10, 25 # a1
579 vspltisb 13, 14
580 vsrd 12, 15, 13 # >> 14
585 vaddudm 21, 5, 10
595 vperm 14, 11, 12, 17
597 vand 9, 14, 25 # a0
598 vsrd 10, 14, 31 # >> 26
599 vsrd 11, 10, 31 # 12 bits left
600 vand 10, 10, 25 # a1
604 vspltisb 13, 14
607 vsrd 12, 15, 13 # >> 14
613 vmrgow 5, 10, 21
619 addi 5, 5, -64 # len -= 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
645 vsrd 10, 14, 31
648 vand 4, 14, 25
651 vaddudm 15, 15, 10
657 vsld 10, 12, 9
662 vaddudm 4, 4, 10
663 vsrd 10, 4, 31
669 vaddudm 5, 5, 10
679 vperm 14, 11, 12, 17
688 vand 20, 14, 25 # a0
690 vsrd 21, 14, 31 # >> 26
692 vsrd 10, 17, 31 # >> 26
693 vsrd 11, 10, 31 # 12 bits left
696 vand 10, 10, 25 # a1
707 vspltisb 13, 14
708 vsrd 23, 15, 13 # >> 14
711 vsrd 12, 18, 13 # >> 14
723 vmrgow 5, 10, 5
729 addi 5, 5, -64 # len -= 64
752 vaddudm 4, 14, 9
754 vaddudm 5, 15, 10
768 vsrd 10, 4, 31
774 vaddudm 5, 5, 10
780 vsld 10, 12, 9
785 vaddudm 4, 4, 10
786 vsrd 10, 4, 31
792 vaddudm 5, 5, 10
793 vsrd 10, 5, 31
795 vaddudm 6, 6, 10
810 vspltisb 11, 14
844 addis 10, 2, rmask@toc@ha
845 addi 10, 10, rmask@toc@l
846 ld 11, 0(10)
847 ld 12, 8(10)
852 ld 10, 32(3)
854 and. 10, 10, 12 # cramp mask r1
856 srdi 21, 10, 2
857 add 19, 21, 10 # s1: r19 - (r1 >> 2) *5
862 mtvsrdd 32+1, 10, 9 # r1, r0
882 vmsumudm 10, 8, 2, 11 # d1 += h2 * s1
898 mfvsrld 28, 32+10
901 mfvsrd 21, 32+10 # h1.h
923 # - no highbit if final leftover block (highbit = 0)
931 stdu 1,-400(1)
933 SAVE_GPR 14, 112, 1
999 RESTORE_GPR 14, 112, 1
1034 ld 10, 0(3)
1039 # h + 5 + (-p)
1040 mr 6, 10
1049 mr 10, 6
1056 addc 10, 10, 6
1060 std 10, 0(5)