2 /* Do not modify. This file is auto-generated from sha1-armv8.pl. */
8 .hidden OPENSSL_armcap_P
9 .globl sha1_block_data_order
10 .type sha1_block_data_order,%function
12 sha1_block_data_order:
14 ldrsw x16,.LOPENSSL_armcap_P
16 ldr x16,.LOPENSSL_armcap_P
18 adr x17,.LOPENSSL_armcap_P
24 stp x29,x30,[sp,#-96]!
40 movk w28,#0x5a82,lsl#16
46 add w24,w24,w28 // warm it up
53 add w23,w23,w28 // future e+=K
55 add w24,w24,w27 // e+=rot(a,5)
57 add w23,w23,w4 // future e+=X[i]
58 add w24,w24,w25 // e+=F(b,c,d)
67 add w22,w22,w28 // future e+=K
69 add w23,w23,w27 // e+=rot(a,5)
71 add w22,w22,w5 // future e+=X[i]
72 add w23,w23,w25 // e+=F(b,c,d)
78 add w21,w21,w28 // future e+=K
80 add w22,w22,w27 // e+=rot(a,5)
82 add w21,w21,w6 // future e+=X[i]
83 add w22,w22,w25 // e+=F(b,c,d)
92 add w20,w20,w28 // future e+=K
94 add w21,w21,w27 // e+=rot(a,5)
96 add w20,w20,w7 // future e+=X[i]
97 add w21,w21,w25 // e+=F(b,c,d)
103 add w24,w24,w28 // future e+=K
105 add w20,w20,w27 // e+=rot(a,5)
107 add w24,w24,w8 // future e+=X[i]
108 add w20,w20,w25 // e+=F(b,c,d)
117 add w23,w23,w28 // future e+=K
119 add w24,w24,w27 // e+=rot(a,5)
121 add w23,w23,w9 // future e+=X[i]
122 add w24,w24,w25 // e+=F(b,c,d)
128 add w22,w22,w28 // future e+=K
130 add w23,w23,w27 // e+=rot(a,5)
132 add w22,w22,w10 // future e+=X[i]
133 add w23,w23,w25 // e+=F(b,c,d)
142 add w21,w21,w28 // future e+=K
144 add w22,w22,w27 // e+=rot(a,5)
146 add w21,w21,w11 // future e+=X[i]
147 add w22,w22,w25 // e+=F(b,c,d)
153 add w20,w20,w28 // future e+=K
155 add w21,w21,w27 // e+=rot(a,5)
157 add w20,w20,w12 // future e+=X[i]
158 add w21,w21,w25 // e+=F(b,c,d)
167 add w24,w24,w28 // future e+=K
169 add w20,w20,w27 // e+=rot(a,5)
171 add w24,w24,w13 // future e+=X[i]
172 add w20,w20,w25 // e+=F(b,c,d)
178 add w23,w23,w28 // future e+=K
180 add w24,w24,w27 // e+=rot(a,5)
182 add w23,w23,w14 // future e+=X[i]
183 add w24,w24,w25 // e+=F(b,c,d)
192 add w22,w22,w28 // future e+=K
194 add w23,w23,w27 // e+=rot(a,5)
196 add w22,w22,w15 // future e+=X[i]
197 add w23,w23,w25 // e+=F(b,c,d)
203 add w21,w21,w28 // future e+=K
205 add w22,w22,w27 // e+=rot(a,5)
207 add w21,w21,w16 // future e+=X[i]
208 add w22,w22,w25 // e+=F(b,c,d)
217 add w20,w20,w28 // future e+=K
219 add w21,w21,w27 // e+=rot(a,5)
221 add w20,w20,w17 // future e+=X[i]
222 add w21,w21,w25 // e+=F(b,c,d)
229 add w24,w24,w28 // future e+=K
231 add w20,w20,w27 // e+=rot(a,5)
234 add w24,w24,w19 // future e+=X[i]
235 add w20,w20,w25 // e+=F(b,c,d)
242 add w23,w23,w28 // future e+=K
244 add w24,w24,w27 // e+=rot(a,5)
247 add w23,w23,w3 // future e+=X[i]
248 add w24,w24,w25 // e+=F(b,c,d)
255 add w22,w22,w28 // future e+=K
257 add w23,w23,w27 // e+=rot(a,5)
260 add w22,w22,w4 // future e+=X[i]
261 add w23,w23,w25 // e+=F(b,c,d)
268 add w21,w21,w28 // future e+=K
270 add w22,w22,w27 // e+=rot(a,5)
273 add w21,w21,w5 // future e+=X[i]
274 add w22,w22,w25 // e+=F(b,c,d)
281 add w20,w20,w28 // future e+=K
283 add w21,w21,w27 // e+=rot(a,5)
286 add w20,w20,w6 // future e+=X[i]
287 add w21,w21,w25 // e+=F(b,c,d)
290 movk w28,#0x6ed9,lsl#16
296 add w24,w24,w28 // future e+=K
298 add w20,w20,w27 // e+=rot(a,5)
301 add w24,w24,w7 // future e+=X[i]
302 add w20,w20,w25 // e+=F(b,c,d)
307 add w23,w23,w28 // future e+=K
310 add w24,w24,w27 // e+=rot(a,5)
313 add w23,w23,w8 // future e+=X[i]
314 add w24,w24,w25 // e+=F(b,c,d)
319 add w22,w22,w28 // future e+=K
322 add w23,w23,w27 // e+=rot(a,5)
325 add w22,w22,w9 // future e+=X[i]
326 add w23,w23,w25 // e+=F(b,c,d)
331 add w21,w21,w28 // future e+=K
334 add w22,w22,w27 // e+=rot(a,5)
337 add w21,w21,w10 // future e+=X[i]
338 add w22,w22,w25 // e+=F(b,c,d)
343 add w20,w20,w28 // future e+=K
346 add w21,w21,w27 // e+=rot(a,5)
349 add w20,w20,w11 // future e+=X[i]
350 add w21,w21,w25 // e+=F(b,c,d)
355 add w24,w24,w28 // future e+=K
358 add w20,w20,w27 // e+=rot(a,5)
361 add w24,w24,w12 // future e+=X[i]
362 add w20,w20,w25 // e+=F(b,c,d)
367 add w23,w23,w28 // future e+=K
370 add w24,w24,w27 // e+=rot(a,5)
373 add w23,w23,w13 // future e+=X[i]
374 add w24,w24,w25 // e+=F(b,c,d)
379 add w22,w22,w28 // future e+=K
382 add w23,w23,w27 // e+=rot(a,5)
385 add w22,w22,w14 // future e+=X[i]
386 add w23,w23,w25 // e+=F(b,c,d)
391 add w21,w21,w28 // future e+=K
394 add w22,w22,w27 // e+=rot(a,5)
397 add w21,w21,w15 // future e+=X[i]
398 add w22,w22,w25 // e+=F(b,c,d)
403 add w20,w20,w28 // future e+=K
406 add w21,w21,w27 // e+=rot(a,5)
409 add w20,w20,w16 // future e+=X[i]
410 add w21,w21,w25 // e+=F(b,c,d)
415 add w24,w24,w28 // future e+=K
418 add w20,w20,w27 // e+=rot(a,5)
421 add w24,w24,w17 // future e+=X[i]
422 add w20,w20,w25 // e+=F(b,c,d)
427 add w23,w23,w28 // future e+=K
430 add w24,w24,w27 // e+=rot(a,5)
433 add w23,w23,w19 // future e+=X[i]
434 add w24,w24,w25 // e+=F(b,c,d)
439 add w22,w22,w28 // future e+=K
442 add w23,w23,w27 // e+=rot(a,5)
445 add w22,w22,w3 // future e+=X[i]
446 add w23,w23,w25 // e+=F(b,c,d)
451 add w21,w21,w28 // future e+=K
454 add w22,w22,w27 // e+=rot(a,5)
457 add w21,w21,w4 // future e+=X[i]
458 add w22,w22,w25 // e+=F(b,c,d)
463 add w20,w20,w28 // future e+=K
466 add w21,w21,w27 // e+=rot(a,5)
469 add w20,w20,w5 // future e+=X[i]
470 add w21,w21,w25 // e+=F(b,c,d)
475 add w24,w24,w28 // future e+=K
478 add w20,w20,w27 // e+=rot(a,5)
481 add w24,w24,w6 // future e+=X[i]
482 add w20,w20,w25 // e+=F(b,c,d)
487 add w23,w23,w28 // future e+=K
490 add w24,w24,w27 // e+=rot(a,5)
493 add w23,w23,w7 // future e+=X[i]
494 add w24,w24,w25 // e+=F(b,c,d)
499 add w22,w22,w28 // future e+=K
502 add w23,w23,w27 // e+=rot(a,5)
505 add w22,w22,w8 // future e+=X[i]
506 add w23,w23,w25 // e+=F(b,c,d)
511 add w21,w21,w28 // future e+=K
514 add w22,w22,w27 // e+=rot(a,5)
517 add w21,w21,w9 // future e+=X[i]
518 add w22,w22,w25 // e+=F(b,c,d)
523 add w20,w20,w28 // future e+=K
526 add w21,w21,w27 // e+=rot(a,5)
529 add w20,w20,w10 // future e+=X[i]
530 add w21,w21,w25 // e+=F(b,c,d)
533 movk w28,#0x8f1b,lsl#16
537 add w24,w24,w28 // future e+=K
540 add w20,w20,w27 // e+=rot(a,5)
543 add w24,w24,w11 // future e+=X[i]
544 add w20,w20,w25 // e+=F(b,c,d)
551 add w23,w23,w28 // future e+=K
553 add w24,w24,w27 // e+=rot(a,5)
557 add w23,w23,w12 // future e+=X[i]
558 add w24,w24,w25 // e+=F(b,c,d)
565 add w22,w22,w28 // future e+=K
567 add w23,w23,w27 // e+=rot(a,5)
571 add w22,w22,w13 // future e+=X[i]
572 add w23,w23,w25 // e+=F(b,c,d)
579 add w21,w21,w28 // future e+=K
581 add w22,w22,w27 // e+=rot(a,5)
585 add w21,w21,w14 // future e+=X[i]
586 add w22,w22,w25 // e+=F(b,c,d)
593 add w20,w20,w28 // future e+=K
595 add w21,w21,w27 // e+=rot(a,5)
599 add w20,w20,w15 // future e+=X[i]
600 add w21,w21,w25 // e+=F(b,c,d)
607 add w24,w24,w28 // future e+=K
609 add w20,w20,w27 // e+=rot(a,5)
613 add w24,w24,w16 // future e+=X[i]
614 add w20,w20,w25 // e+=F(b,c,d)
621 add w23,w23,w28 // future e+=K
623 add w24,w24,w27 // e+=rot(a,5)
627 add w23,w23,w17 // future e+=X[i]
628 add w24,w24,w25 // e+=F(b,c,d)
635 add w22,w22,w28 // future e+=K
637 add w23,w23,w27 // e+=rot(a,5)
641 add w22,w22,w19 // future e+=X[i]
642 add w23,w23,w25 // e+=F(b,c,d)
649 add w21,w21,w28 // future e+=K
651 add w22,w22,w27 // e+=rot(a,5)
655 add w21,w21,w3 // future e+=X[i]
656 add w22,w22,w25 // e+=F(b,c,d)
663 add w20,w20,w28 // future e+=K
665 add w21,w21,w27 // e+=rot(a,5)
669 add w20,w20,w4 // future e+=X[i]
670 add w21,w21,w25 // e+=F(b,c,d)
677 add w24,w24,w28 // future e+=K
679 add w20,w20,w27 // e+=rot(a,5)
683 add w24,w24,w5 // future e+=X[i]
684 add w20,w20,w25 // e+=F(b,c,d)
691 add w23,w23,w28 // future e+=K
693 add w24,w24,w27 // e+=rot(a,5)
697 add w23,w23,w6 // future e+=X[i]
698 add w24,w24,w25 // e+=F(b,c,d)
705 add w22,w22,w28 // future e+=K
707 add w23,w23,w27 // e+=rot(a,5)
711 add w22,w22,w7 // future e+=X[i]
712 add w23,w23,w25 // e+=F(b,c,d)
719 add w21,w21,w28 // future e+=K
721 add w22,w22,w27 // e+=rot(a,5)
725 add w21,w21,w8 // future e+=X[i]
726 add w22,w22,w25 // e+=F(b,c,d)
733 add w20,w20,w28 // future e+=K
735 add w21,w21,w27 // e+=rot(a,5)
739 add w20,w20,w9 // future e+=X[i]
740 add w21,w21,w25 // e+=F(b,c,d)
747 add w24,w24,w28 // future e+=K
749 add w20,w20,w27 // e+=rot(a,5)
753 add w24,w24,w10 // future e+=X[i]
754 add w20,w20,w25 // e+=F(b,c,d)
761 add w23,w23,w28 // future e+=K
763 add w24,w24,w27 // e+=rot(a,5)
767 add w23,w23,w11 // future e+=X[i]
768 add w24,w24,w25 // e+=F(b,c,d)
775 add w22,w22,w28 // future e+=K
777 add w23,w23,w27 // e+=rot(a,5)
781 add w22,w22,w12 // future e+=X[i]
782 add w23,w23,w25 // e+=F(b,c,d)
789 add w21,w21,w28 // future e+=K
791 add w22,w22,w27 // e+=rot(a,5)
795 add w21,w21,w13 // future e+=X[i]
796 add w22,w22,w25 // e+=F(b,c,d)
803 add w20,w20,w28 // future e+=K
805 add w21,w21,w27 // e+=rot(a,5)
809 add w20,w20,w14 // future e+=X[i]
810 add w21,w21,w25 // e+=F(b,c,d)
813 movk w28,#0xca62,lsl#16
819 add w24,w24,w28 // future e+=K
821 add w20,w20,w27 // e+=rot(a,5)
825 add w24,w24,w15 // future e+=X[i]
826 add w20,w20,w25 // e+=F(b,c,d)
831 add w23,w23,w28 // future e+=K
834 add w24,w24,w27 // e+=rot(a,5)
837 add w23,w23,w16 // future e+=X[i]
838 add w24,w24,w25 // e+=F(b,c,d)
843 add w22,w22,w28 // future e+=K
846 add w23,w23,w27 // e+=rot(a,5)
849 add w22,w22,w17 // future e+=X[i]
850 add w23,w23,w25 // e+=F(b,c,d)
855 add w21,w21,w28 // future e+=K
858 add w22,w22,w27 // e+=rot(a,5)
861 add w21,w21,w19 // future e+=X[i]
862 add w22,w22,w25 // e+=F(b,c,d)
867 add w20,w20,w28 // future e+=K
870 add w21,w21,w27 // e+=rot(a,5)
873 add w20,w20,w3 // future e+=X[i]
874 add w21,w21,w25 // e+=F(b,c,d)
879 add w24,w24,w28 // future e+=K
882 add w20,w20,w27 // e+=rot(a,5)
885 add w24,w24,w4 // future e+=X[i]
886 add w20,w20,w25 // e+=F(b,c,d)
891 add w23,w23,w28 // future e+=K
894 add w24,w24,w27 // e+=rot(a,5)
897 add w23,w23,w5 // future e+=X[i]
898 add w24,w24,w25 // e+=F(b,c,d)
903 add w22,w22,w28 // future e+=K
906 add w23,w23,w27 // e+=rot(a,5)
909 add w22,w22,w6 // future e+=X[i]
910 add w23,w23,w25 // e+=F(b,c,d)
915 add w21,w21,w28 // future e+=K
918 add w22,w22,w27 // e+=rot(a,5)
921 add w21,w21,w7 // future e+=X[i]
922 add w22,w22,w25 // e+=F(b,c,d)
927 add w20,w20,w28 // future e+=K
930 add w21,w21,w27 // e+=rot(a,5)
933 add w20,w20,w8 // future e+=X[i]
934 add w21,w21,w25 // e+=F(b,c,d)
939 add w24,w24,w28 // future e+=K
942 add w20,w20,w27 // e+=rot(a,5)
945 add w24,w24,w9 // future e+=X[i]
946 add w20,w20,w25 // e+=F(b,c,d)
951 add w23,w23,w28 // future e+=K
954 add w24,w24,w27 // e+=rot(a,5)
957 add w23,w23,w10 // future e+=X[i]
958 add w24,w24,w25 // e+=F(b,c,d)
963 add w22,w22,w28 // future e+=K
966 add w23,w23,w27 // e+=rot(a,5)
969 add w22,w22,w11 // future e+=X[i]
970 add w23,w23,w25 // e+=F(b,c,d)
975 add w21,w21,w28 // future e+=K
978 add w22,w22,w27 // e+=rot(a,5)
981 add w21,w21,w12 // future e+=X[i]
982 add w22,w22,w25 // e+=F(b,c,d)
987 add w20,w20,w28 // future e+=K
990 add w21,w21,w27 // e+=rot(a,5)
993 add w20,w20,w13 // future e+=X[i]
994 add w21,w21,w25 // e+=F(b,c,d)
999 add w24,w24,w28 // future e+=K
1002 add w20,w20,w27 // e+=rot(a,5)
1005 add w24,w24,w14 // future e+=X[i]
1006 add w20,w20,w25 // e+=F(b,c,d)
1011 add w23,w23,w28 // future e+=K
1014 add w24,w24,w27 // e+=rot(a,5)
1017 add w23,w23,w15 // future e+=X[i]
1018 add w24,w24,w25 // e+=F(b,c,d)
1023 add w22,w22,w28 // future e+=K
1026 add w23,w23,w27 // e+=rot(a,5)
1029 add w22,w22,w16 // future e+=X[i]
1030 add w23,w23,w25 // e+=F(b,c,d)
1035 add w21,w21,w28 // future e+=K
1038 add w22,w22,w27 // e+=rot(a,5)
1041 add w21,w21,w17 // future e+=X[i]
1042 add w22,w22,w25 // e+=F(b,c,d)
1047 add w20,w20,w28 // future e+=K
1049 add w21,w21,w27 // e+=rot(a,5)
1051 add w20,w20,w19 // future e+=X[i]
1052 add w21,w21,w25 // e+=F(b,c,d)
1057 add w20,w20,w27 // e+=rot(a,5)
1060 add w20,w20,w25 // e+=F(b,c,d)
1071 ldp x19,x20,[sp,#16]
1072 ldp x21,x22,[sp,#32]
1073 ldp x23,x24,[sp,#48]
1074 ldp x25,x26,[sp,#64]
1075 ldp x27,x28,[sp,#80]
1078 .size sha1_block_data_order,.-sha1_block_data_order
1079 .type sha1_block_armv8,%function
1083 stp x29,x30,[sp,#-16]!
1087 eor v1.16b,v1.16b,v1.16b
1088 ld1 {v0.4s},[x0],#16
1091 ld1 {v16.4s,v17.4s,v18.4s,v19.4s},[x4]
1094 ld1 {v4.16b,v5.16b,v6.16b,v7.16b},[x1],#64
1099 add v20.4s,v16.4s,v4.4s
1101 orr v22.16b,v0.16b,v0.16b // offload
1103 add v21.4s,v16.4s,v5.4s
1105 .inst 0x5e280803 //sha1h v3.16b,v0.16b
1106 .inst 0x5e140020 //sha1c v0.16b,v1.16b,v20.4s // 0
1107 add v20.4s,v16.4s,v6.4s
1108 .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b
1109 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 1
1110 .inst 0x5e150060 //sha1c v0.16b,v3.16b,v21.4s
1111 add v21.4s,v16.4s,v7.4s
1112 .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b
1113 .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b
1114 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 2
1115 .inst 0x5e140040 //sha1c v0.16b,v2.16b,v20.4s
1116 add v20.4s,v16.4s,v4.4s
1117 .inst 0x5e281885 //sha1su1 v5.16b,v4.16b
1118 .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b
1119 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 3
1120 .inst 0x5e150060 //sha1c v0.16b,v3.16b,v21.4s
1121 add v21.4s,v17.4s,v5.4s
1122 .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b
1123 .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b
1124 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 4
1125 .inst 0x5e140040 //sha1c v0.16b,v2.16b,v20.4s
1126 add v20.4s,v17.4s,v6.4s
1127 .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b
1128 .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b
1129 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 5
1130 .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s
1131 add v21.4s,v17.4s,v7.4s
1132 .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b
1133 .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b
1134 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 6
1135 .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s
1136 add v20.4s,v17.4s,v4.4s
1137 .inst 0x5e281885 //sha1su1 v5.16b,v4.16b
1138 .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b
1139 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 7
1140 .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s
1141 add v21.4s,v17.4s,v5.4s
1142 .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b
1143 .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b
1144 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 8
1145 .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s
1146 add v20.4s,v18.4s,v6.4s
1147 .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b
1148 .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b
1149 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 9
1150 .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s
1151 add v21.4s,v18.4s,v7.4s
1152 .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b
1153 .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b
1154 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 10
1155 .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s
1156 add v20.4s,v18.4s,v4.4s
1157 .inst 0x5e281885 //sha1su1 v5.16b,v4.16b
1158 .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b
1159 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 11
1160 .inst 0x5e152060 //sha1m v0.16b,v3.16b,v21.4s
1161 add v21.4s,v18.4s,v5.4s
1162 .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b
1163 .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b
1164 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 12
1165 .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s
1166 add v20.4s,v18.4s,v6.4s
1167 .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b
1168 .inst 0x5e0630a4 //sha1su0 v4.16b,v5.16b,v6.16b
1169 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 13
1170 .inst 0x5e152060 //sha1m v0.16b,v3.16b,v21.4s
1171 add v21.4s,v19.4s,v7.4s
1172 .inst 0x5e2818e4 //sha1su1 v4.16b,v7.16b
1173 .inst 0x5e0730c5 //sha1su0 v5.16b,v6.16b,v7.16b
1174 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 14
1175 .inst 0x5e142040 //sha1m v0.16b,v2.16b,v20.4s
1176 add v20.4s,v19.4s,v4.4s
1177 .inst 0x5e281885 //sha1su1 v5.16b,v4.16b
1178 .inst 0x5e0430e6 //sha1su0 v6.16b,v7.16b,v4.16b
1179 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 15
1180 .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s
1181 add v21.4s,v19.4s,v5.4s
1182 .inst 0x5e2818a6 //sha1su1 v6.16b,v5.16b
1183 .inst 0x5e053087 //sha1su0 v7.16b,v4.16b,v5.16b
1184 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 16
1185 .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s
1186 add v20.4s,v19.4s,v6.4s
1187 .inst 0x5e2818c7 //sha1su1 v7.16b,v6.16b
1188 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 17
1189 .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s
1190 add v21.4s,v19.4s,v7.4s
1192 .inst 0x5e280803 //sha1h v3.16b,v0.16b // 18
1193 .inst 0x5e141040 //sha1p v0.16b,v2.16b,v20.4s
1195 .inst 0x5e280802 //sha1h v2.16b,v0.16b // 19
1196 .inst 0x5e151060 //sha1p v0.16b,v3.16b,v21.4s
1198 add v1.4s,v1.4s,v2.4s
1199 add v0.4s,v0.4s,v22.4s
1203 st1 {v0.4s},[x0],#16
1208 .size sha1_block_armv8,.-sha1_block_armv8
1211 .long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 //K_00_19
1212 .long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 //K_20_39
1213 .long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc //K_40_59
1214 .long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 //K_60_79
1217 .long OPENSSL_armcap_P-.
1219 .quad OPENSSL_armcap_P-.
1221 .byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,65,82,77,118,56,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0