5 .type aesni_encrypt,@function
8 .L_aesni_encrypt_begin:
19 .byte 102,15,56,220,209
24 .byte 102,15,56,221,209
27 .size aesni_encrypt,.-.L_aesni_encrypt_begin
29 .type aesni_decrypt,@function
32 .L_aesni_decrypt_begin:
43 .byte 102,15,56,222,209
48 .byte 102,15,56,223,209
51 .size aesni_decrypt,.-.L_aesni_decrypt_begin
52 .type _aesni_encrypt3,@function
64 .byte 102,15,56,220,209
65 .byte 102,15,56,220,217
67 .byte 102,15,56,220,225
69 .byte 102,15,56,220,208
70 .byte 102,15,56,220,216
72 .byte 102,15,56,220,224
75 .byte 102,15,56,220,209
76 .byte 102,15,56,220,217
77 .byte 102,15,56,220,225
78 .byte 102,15,56,221,208
79 .byte 102,15,56,221,216
80 .byte 102,15,56,221,224
82 .size _aesni_encrypt3,.-_aesni_encrypt3
83 .type _aesni_decrypt3,@function
95 .byte 102,15,56,222,209
96 .byte 102,15,56,222,217
98 .byte 102,15,56,222,225
100 .byte 102,15,56,222,208
101 .byte 102,15,56,222,216
103 .byte 102,15,56,222,224
106 .byte 102,15,56,222,209
107 .byte 102,15,56,222,217
108 .byte 102,15,56,222,225
109 .byte 102,15,56,223,208
110 .byte 102,15,56,223,216
111 .byte 102,15,56,223,224
113 .size _aesni_decrypt3,.-_aesni_decrypt3
114 .type _aesni_encrypt4,@function
118 movups 16(%edx),%xmm1
127 .byte 102,15,56,220,209
128 .byte 102,15,56,220,217
130 .byte 102,15,56,220,225
131 .byte 102,15,56,220,233
132 movups 16(%edx),%xmm1
133 .byte 102,15,56,220,208
134 .byte 102,15,56,220,216
136 .byte 102,15,56,220,224
137 .byte 102,15,56,220,232
140 .byte 102,15,56,220,209
141 .byte 102,15,56,220,217
142 .byte 102,15,56,220,225
143 .byte 102,15,56,220,233
144 .byte 102,15,56,221,208
145 .byte 102,15,56,221,216
146 .byte 102,15,56,221,224
147 .byte 102,15,56,221,232
149 .size _aesni_encrypt4,.-_aesni_encrypt4
150 .type _aesni_decrypt4,@function
154 movups 16(%edx),%xmm1
163 .byte 102,15,56,222,209
164 .byte 102,15,56,222,217
166 .byte 102,15,56,222,225
167 .byte 102,15,56,222,233
168 movups 16(%edx),%xmm1
169 .byte 102,15,56,222,208
170 .byte 102,15,56,222,216
172 .byte 102,15,56,222,224
173 .byte 102,15,56,222,232
176 .byte 102,15,56,222,209
177 .byte 102,15,56,222,217
178 .byte 102,15,56,222,225
179 .byte 102,15,56,222,233
180 .byte 102,15,56,223,208
181 .byte 102,15,56,223,216
182 .byte 102,15,56,223,224
183 .byte 102,15,56,223,232
185 .size _aesni_decrypt4,.-_aesni_decrypt4
186 .type _aesni_encrypt6,@function
191 movups 16(%edx),%xmm1
195 .byte 102,15,56,220,209
197 .byte 102,15,56,220,217
200 .byte 102,15,56,220,225
202 .byte 102,15,56,220,233
204 .byte 102,15,56,220,241
206 .byte 102,15,56,220,249
207 jmp .L_aesni_encrypt6_enter
210 .byte 102,15,56,220,209
211 .byte 102,15,56,220,217
213 .byte 102,15,56,220,225
214 .byte 102,15,56,220,233
215 .byte 102,15,56,220,241
216 .byte 102,15,56,220,249
218 .L_aesni_encrypt6_enter:
219 movups 16(%edx),%xmm1
220 .byte 102,15,56,220,208
221 .byte 102,15,56,220,216
223 .byte 102,15,56,220,224
224 .byte 102,15,56,220,232
225 .byte 102,15,56,220,240
226 .byte 102,15,56,220,248
229 .byte 102,15,56,220,209
230 .byte 102,15,56,220,217
231 .byte 102,15,56,220,225
232 .byte 102,15,56,220,233
233 .byte 102,15,56,220,241
234 .byte 102,15,56,220,249
235 .byte 102,15,56,221,208
236 .byte 102,15,56,221,216
237 .byte 102,15,56,221,224
238 .byte 102,15,56,221,232
239 .byte 102,15,56,221,240
240 .byte 102,15,56,221,248
242 .size _aesni_encrypt6,.-_aesni_encrypt6
243 .type _aesni_decrypt6,@function
248 movups 16(%edx),%xmm1
252 .byte 102,15,56,222,209
254 .byte 102,15,56,222,217
257 .byte 102,15,56,222,225
259 .byte 102,15,56,222,233
261 .byte 102,15,56,222,241
263 .byte 102,15,56,222,249
264 jmp .L_aesni_decrypt6_enter
267 .byte 102,15,56,222,209
268 .byte 102,15,56,222,217
270 .byte 102,15,56,222,225
271 .byte 102,15,56,222,233
272 .byte 102,15,56,222,241
273 .byte 102,15,56,222,249
275 .L_aesni_decrypt6_enter:
276 movups 16(%edx),%xmm1
277 .byte 102,15,56,222,208
278 .byte 102,15,56,222,216
280 .byte 102,15,56,222,224
281 .byte 102,15,56,222,232
282 .byte 102,15,56,222,240
283 .byte 102,15,56,222,248
286 .byte 102,15,56,222,209
287 .byte 102,15,56,222,217
288 .byte 102,15,56,222,225
289 .byte 102,15,56,222,233
290 .byte 102,15,56,222,241
291 .byte 102,15,56,222,249
292 .byte 102,15,56,223,208
293 .byte 102,15,56,223,216
294 .byte 102,15,56,223,224
295 .byte 102,15,56,223,232
296 .byte 102,15,56,223,240
297 .byte 102,15,56,223,248
299 .size _aesni_decrypt6,.-_aesni_decrypt6
300 .globl aesni_ecb_encrypt
301 .type aesni_ecb_encrypt,@function
304 .L_aesni_ecb_encrypt_begin:
324 movdqu 16(%esi),%xmm3
325 movdqu 32(%esi),%xmm4
326 movdqu 48(%esi),%xmm5
327 movdqu 64(%esi),%xmm6
328 movdqu 80(%esi),%xmm7
331 jmp .L011ecb_enc_loop6_enter
336 movups %xmm3,16(%edi)
337 movdqu 16(%esi),%xmm3
338 movups %xmm4,32(%edi)
339 movdqu 32(%esi),%xmm4
340 movups %xmm5,48(%edi)
341 movdqu 48(%esi),%xmm5
342 movups %xmm6,64(%edi)
343 movdqu 64(%esi),%xmm6
344 movups %xmm7,80(%edi)
346 movdqu 80(%esi),%xmm7
348 .L011ecb_enc_loop6_enter:
353 jnc .L012ecb_enc_loop6
355 movups %xmm3,16(%edi)
356 movups %xmm4,32(%edi)
357 movups %xmm5,48(%edi)
358 movups %xmm6,64(%edi)
359 movups %xmm7,80(%edi)
367 movups 16(%esi),%xmm3
369 movups 32(%esi),%xmm4
371 jb .L015ecb_enc_three
372 movups 48(%esi),%xmm5
374 movups 64(%esi),%xmm6
378 movups %xmm3,16(%edi)
379 movups %xmm4,32(%edi)
380 movups %xmm5,48(%edi)
381 movups %xmm6,64(%edi)
386 movups 16(%edx),%xmm1
390 .byte 102,15,56,220,209
395 .byte 102,15,56,221,209
403 movups %xmm3,16(%edi)
409 movups %xmm3,16(%edi)
410 movups %xmm4,32(%edi)
416 movups %xmm3,16(%edi)
417 movups %xmm4,32(%edi)
418 movups %xmm5,48(%edi)
427 movdqu 16(%esi),%xmm3
428 movdqu 32(%esi),%xmm4
429 movdqu 48(%esi),%xmm5
430 movdqu 64(%esi),%xmm6
431 movdqu 80(%esi),%xmm7
434 jmp .L019ecb_dec_loop6_enter
439 movups %xmm3,16(%edi)
440 movdqu 16(%esi),%xmm3
441 movups %xmm4,32(%edi)
442 movdqu 32(%esi),%xmm4
443 movups %xmm5,48(%edi)
444 movdqu 48(%esi),%xmm5
445 movups %xmm6,64(%edi)
446 movdqu 64(%esi),%xmm6
447 movups %xmm7,80(%edi)
449 movdqu 80(%esi),%xmm7
451 .L019ecb_dec_loop6_enter:
456 jnc .L020ecb_dec_loop6
458 movups %xmm3,16(%edi)
459 movups %xmm4,32(%edi)
460 movups %xmm5,48(%edi)
461 movups %xmm6,64(%edi)
462 movups %xmm7,80(%edi)
470 movups 16(%esi),%xmm3
472 movups 32(%esi),%xmm4
474 jb .L023ecb_dec_three
475 movups 48(%esi),%xmm5
477 movups 64(%esi),%xmm6
481 movups %xmm3,16(%edi)
482 movups %xmm4,32(%edi)
483 movups %xmm5,48(%edi)
484 movups %xmm6,64(%edi)
489 movups 16(%edx),%xmm1
493 .byte 102,15,56,222,209
498 .byte 102,15,56,223,209
506 movups %xmm3,16(%edi)
512 movups %xmm3,16(%edi)
513 movups %xmm4,32(%edi)
519 movups %xmm3,16(%edi)
520 movups %xmm4,32(%edi)
521 movups %xmm5,48(%edi)
528 .size aesni_ecb_encrypt,.-.L_aesni_ecb_encrypt_begin
529 .globl aesni_ccm64_encrypt_blocks
530 .type aesni_ccm64_encrypt_blocks,@function
532 aesni_ccm64_encrypt_blocks:
533 .L_aesni_ccm64_encrypt_blocks_begin:
551 movl $202182159,(%esp)
552 movl $134810123,4(%esp)
553 movl $67438087,8(%esp)
566 .byte 102,15,56,0,253
567 .L026ccm64_enc_outer:
572 movups 16(%ebp),%xmm1
577 .L027ccm64_enc2_loop:
578 .byte 102,15,56,220,209
580 .byte 102,15,56,220,217
581 movups 16(%edx),%xmm1
582 .byte 102,15,56,220,208
584 .byte 102,15,56,220,216
586 jnz .L027ccm64_enc2_loop
587 .byte 102,15,56,220,209
588 .byte 102,15,56,220,217
590 .byte 102,15,56,221,208
591 .byte 102,15,56,221,216
598 .byte 102,15,56,0,213
599 jnz .L026ccm64_enc_outer
608 .size aesni_ccm64_encrypt_blocks,.-.L_aesni_ccm64_encrypt_blocks_begin
609 .globl aesni_ccm64_decrypt_blocks
610 .type aesni_ccm64_decrypt_blocks,@function
612 aesni_ccm64_decrypt_blocks:
613 .L_aesni_ccm64_decrypt_blocks_begin:
631 movl $202182159,(%esp)
632 movl $134810123,4(%esp)
633 movl $67438087,8(%esp)
645 .byte 102,15,56,0,253
647 movups 16(%edx),%xmm1
651 .byte 102,15,56,220,209
656 .byte 102,15,56,221,209
660 jmp .L029ccm64_dec_outer
662 .L029ccm64_dec_outer:
668 .byte 102,15,56,0,213
670 jz .L030ccm64_dec_break
673 movups 16(%ebp),%xmm1
679 .L031ccm64_dec2_loop:
680 .byte 102,15,56,220,209
682 .byte 102,15,56,220,217
683 movups 16(%edx),%xmm1
684 .byte 102,15,56,220,208
686 .byte 102,15,56,220,216
688 jnz .L031ccm64_dec2_loop
691 .byte 102,15,56,220,209
692 .byte 102,15,56,220,217
694 .byte 102,15,56,221,208
695 .byte 102,15,56,221,216
696 jmp .L029ccm64_dec_outer
698 .L030ccm64_dec_break:
701 movups 16(%edx),%xmm1
706 .byte 102,15,56,220,217
711 .byte 102,15,56,221,217
720 .size aesni_ccm64_decrypt_blocks,.-.L_aesni_ccm64_decrypt_blocks_begin
721 .globl aesni_ctr32_encrypt_blocks
722 .type aesni_ctr32_encrypt_blocks,@function
724 aesni_ctr32_encrypt_blocks:
725 .L_aesni_ctr32_encrypt_blocks_begin:
740 je .L033ctr32_one_shortcut
742 movl $202182159,(%esp)
743 movl $134810123,4(%esp)
744 movl $67438087,8(%esp)
752 .byte 102,15,58,22,251,3
753 .byte 102,15,58,34,253,3
759 .byte 102,15,58,34,203,0
761 .byte 102,15,58,34,197,0
763 .byte 102,15,58,34,203,1
765 .byte 102,15,58,34,197,1
767 .byte 102,15,58,34,203,2
769 .byte 102,15,58,34,197,2
770 movdqa %xmm1,48(%esp)
771 .byte 102,15,56,0,202
772 movdqa %xmm0,64(%esp)
773 .byte 102,15,56,0,194
774 pshufd $192,%xmm1,%xmm2
775 pshufd $128,%xmm1,%xmm3
778 movdqa %xmm7,32(%esp)
786 pshufd $64,%xmm1,%xmm4
787 movdqa 32(%esp),%xmm1
788 pshufd $192,%xmm0,%xmm5
790 pshufd $128,%xmm0,%xmm6
792 pshufd $64,%xmm0,%xmm7
798 movups 16(%ebp),%xmm1
803 .byte 102,15,56,220,209
805 .byte 102,15,56,220,217
807 .byte 102,15,56,220,225
809 .byte 102,15,56,220,233
811 .byte 102,15,56,220,241
813 .byte 102,15,56,220,249
814 call .L_aesni_encrypt6_enter
816 movups 16(%esi),%xmm0
818 movups 32(%esi),%xmm1
821 movdqa 16(%esp),%xmm0
823 movdqa 48(%esp),%xmm1
824 movups %xmm3,16(%edi)
825 movups %xmm4,32(%edi)
829 movups 48(%esi),%xmm3
830 movups 64(%esi),%xmm4
832 movups 80(%esi),%xmm3
834 movdqa %xmm1,48(%esp)
835 .byte 102,15,56,0,202
837 movups %xmm5,48(%edi)
839 movdqa %xmm0,64(%esp)
840 .byte 102,15,56,0,194
841 movups %xmm6,64(%edi)
842 pshufd $192,%xmm1,%xmm2
843 movups %xmm7,80(%edi)
846 pshufd $128,%xmm1,%xmm3
853 movdqa 32(%esp),%xmm7
858 pshufd $64,%xmm1,%xmm4
861 pshufd $192,%xmm0,%xmm5
865 pshufd $128,%xmm0,%xmm6
871 movups 16(%esi),%xmm0
873 movups 32(%esi),%xmm1
875 movups 48(%esi),%xmm0
877 movups 64(%esi),%xmm1
881 movups %xmm3,16(%edi)
882 movups %xmm4,32(%edi)
883 movups %xmm5,48(%edi)
884 movups %xmm6,64(%edi)
887 .L033ctr32_one_shortcut:
892 movups 16(%edx),%xmm1
896 .byte 102,15,56,220,209
901 .byte 102,15,56,221,209
910 movups 16(%esi),%xmm6
914 movups %xmm3,16(%edi)
920 movups 16(%esi),%xmm6
922 movups 32(%esi),%xmm7
926 movups %xmm3,16(%edi)
927 movups %xmm4,32(%edi)
933 movups 16(%esi),%xmm7
934 movups 32(%esi),%xmm1
936 movups 48(%esi),%xmm0
940 movups %xmm3,16(%edi)
942 movups %xmm4,32(%edi)
943 movups %xmm5,48(%edi)
951 .size aesni_ctr32_encrypt_blocks,.-.L_aesni_ctr32_encrypt_blocks_begin
952 .globl aesni_xts_encrypt
953 .type aesni_xts_encrypt,@function
956 .L_aesni_xts_encrypt_begin:
966 movups 16(%edx),%xmm1
970 .byte 102,15,56,220,209
975 .byte 102,15,56,221,209
992 movdqa 96(%esp),%xmm3
998 jc .L043xts_enc_short
1001 jmp .L044xts_enc_loop6
1004 pshufd $19,%xmm0,%xmm2
1011 pshufd $19,%xmm0,%xmm2
1013 movdqa %xmm1,16(%esp)
1018 pshufd $19,%xmm0,%xmm2
1020 movdqa %xmm1,32(%esp)
1025 pshufd $19,%xmm0,%xmm2
1027 movdqa %xmm1,48(%esp)
1032 pshufd $19,%xmm0,%xmm7
1033 movdqa %xmm1,64(%esp)
1039 movdqu 16(%esi),%xmm3
1041 movdqu 32(%esi),%xmm4
1043 movdqu 48(%esi),%xmm5
1045 movdqu 64(%esi),%xmm6
1047 movdqu 80(%esi),%xmm1
1051 movdqa %xmm7,80(%esp)
1053 movups 16(%ebp),%xmm1
1056 .byte 102,15,56,220,209
1058 .byte 102,15,56,220,217
1061 .byte 102,15,56,220,225
1063 .byte 102,15,56,220,233
1065 .byte 102,15,56,220,241
1067 .byte 102,15,56,220,249
1068 call .L_aesni_encrypt6_enter
1069 movdqa 80(%esp),%xmm1
1073 xorps 16(%esp),%xmm3
1075 xorps 32(%esp),%xmm4
1076 movups %xmm3,16(%edi)
1077 xorps 48(%esp),%xmm5
1078 movups %xmm4,32(%edi)
1079 xorps 64(%esp),%xmm6
1080 movups %xmm5,48(%edi)
1082 movups %xmm6,64(%edi)
1083 pshufd $19,%xmm0,%xmm2
1084 movups %xmm7,80(%edi)
1086 movdqa 96(%esp),%xmm3
1094 jnc .L044xts_enc_loop6
1095 leal 1(,%ecx,2),%ecx
1100 jz .L045xts_enc_done6x
1104 pshufd $19,%xmm0,%xmm2
1111 pshufd $19,%xmm0,%xmm2
1119 jb .L048xts_enc_three
1120 pshufd $19,%xmm0,%xmm2
1128 movdqa %xmm6,16(%esp)
1129 je .L049xts_enc_four
1130 movdqa %xmm7,32(%esp)
1131 pshufd $19,%xmm0,%xmm7
1132 movdqa %xmm1,48(%esp)
1137 movdqu 16(%esi),%xmm3
1138 movdqu 32(%esi),%xmm4
1140 movdqu 48(%esi),%xmm5
1142 movdqu 64(%esi),%xmm6
1146 movdqa %xmm7,64(%esp)
1148 call _aesni_encrypt6
1149 movaps 64(%esp),%xmm1
1151 xorps 16(%esp),%xmm3
1152 xorps 32(%esp),%xmm4
1154 xorps 48(%esp),%xmm5
1155 movups %xmm3,16(%edi)
1157 movups %xmm4,32(%edi)
1158 movups %xmm5,48(%edi)
1159 movups %xmm6,64(%edi)
1161 jmp .L050xts_enc_done
1168 movups 16(%edx),%xmm1
1172 .byte 102,15,56,220,209
1176 jnz .L051enc1_loop_9
1177 .byte 102,15,56,221,209
1182 jmp .L050xts_enc_done
1187 movups 16(%esi),%xmm3
1192 call _aesni_encrypt3
1196 movups %xmm3,16(%edi)
1199 jmp .L050xts_enc_done
1204 movups 16(%esi),%xmm3
1205 movups 32(%esi),%xmm4
1210 call _aesni_encrypt3
1215 movups %xmm3,16(%edi)
1216 movups %xmm4,32(%edi)
1219 jmp .L050xts_enc_done
1224 movups 16(%esi),%xmm3
1225 movups 32(%esi),%xmm4
1227 movups 48(%esi),%xmm5
1229 xorps 16(%esp),%xmm3
1232 call _aesni_encrypt4
1234 xorps 16(%esp),%xmm3
1238 movups %xmm3,16(%edi)
1239 movups %xmm4,32(%edi)
1240 movups %xmm5,48(%edi)
1243 jmp .L050xts_enc_done
1245 .L045xts_enc_done6x:
1251 jmp .L053xts_enc_steal
1260 pshufd $19,%xmm0,%xmm5
1266 movzbl -16(%edi),%edx
1272 jnz .L053xts_enc_steal
1276 movups -16(%edi),%xmm2
1279 movups 16(%edx),%xmm1
1283 .byte 102,15,56,220,209
1287 jnz .L054enc1_loop_10
1288 .byte 102,15,56,221,209
1290 movups %xmm2,-16(%edi)
1298 .size aesni_xts_encrypt,.-.L_aesni_xts_encrypt_begin
1299 .globl aesni_xts_decrypt
1300 .type aesni_xts_decrypt,@function
1303 .L_aesni_xts_decrypt_begin:
1313 movups 16(%edx),%xmm1
1317 .byte 102,15,56,220,209
1321 jnz .L055enc1_loop_11
1322 .byte 102,15,56,221,209
1346 movdqa 96(%esp),%xmm3
1350 jc .L056xts_dec_short
1353 jmp .L057xts_dec_loop6
1356 pshufd $19,%xmm0,%xmm2
1363 pshufd $19,%xmm0,%xmm2
1365 movdqa %xmm1,16(%esp)
1370 pshufd $19,%xmm0,%xmm2
1372 movdqa %xmm1,32(%esp)
1377 pshufd $19,%xmm0,%xmm2
1379 movdqa %xmm1,48(%esp)
1384 pshufd $19,%xmm0,%xmm7
1385 movdqa %xmm1,64(%esp)
1391 movdqu 16(%esi),%xmm3
1393 movdqu 32(%esi),%xmm4
1395 movdqu 48(%esi),%xmm5
1397 movdqu 64(%esi),%xmm6
1399 movdqu 80(%esi),%xmm1
1403 movdqa %xmm7,80(%esp)
1405 movups 16(%ebp),%xmm1
1408 .byte 102,15,56,222,209
1410 .byte 102,15,56,222,217
1413 .byte 102,15,56,222,225
1415 .byte 102,15,56,222,233
1417 .byte 102,15,56,222,241
1419 .byte 102,15,56,222,249
1420 call .L_aesni_decrypt6_enter
1421 movdqa 80(%esp),%xmm1
1425 xorps 16(%esp),%xmm3
1427 xorps 32(%esp),%xmm4
1428 movups %xmm3,16(%edi)
1429 xorps 48(%esp),%xmm5
1430 movups %xmm4,32(%edi)
1431 xorps 64(%esp),%xmm6
1432 movups %xmm5,48(%edi)
1434 movups %xmm6,64(%edi)
1435 pshufd $19,%xmm0,%xmm2
1436 movups %xmm7,80(%edi)
1438 movdqa 96(%esp),%xmm3
1446 jnc .L057xts_dec_loop6
1447 leal 1(,%ecx,2),%ecx
1452 jz .L058xts_dec_done6x
1456 pshufd $19,%xmm0,%xmm2
1463 pshufd $19,%xmm0,%xmm2
1471 jb .L061xts_dec_three
1472 pshufd $19,%xmm0,%xmm2
1480 movdqa %xmm6,16(%esp)
1481 je .L062xts_dec_four
1482 movdqa %xmm7,32(%esp)
1483 pshufd $19,%xmm0,%xmm7
1484 movdqa %xmm1,48(%esp)
1489 movdqu 16(%esi),%xmm3
1490 movdqu 32(%esi),%xmm4
1492 movdqu 48(%esi),%xmm5
1494 movdqu 64(%esi),%xmm6
1498 movdqa %xmm7,64(%esp)
1500 call _aesni_decrypt6
1501 movaps 64(%esp),%xmm1
1503 xorps 16(%esp),%xmm3
1504 xorps 32(%esp),%xmm4
1506 xorps 48(%esp),%xmm5
1507 movups %xmm3,16(%edi)
1509 movups %xmm4,32(%edi)
1510 movups %xmm5,48(%edi)
1511 movups %xmm6,64(%edi)
1513 jmp .L063xts_dec_done
1520 movups 16(%edx),%xmm1
1524 .byte 102,15,56,222,209
1528 jnz .L064dec1_loop_12
1529 .byte 102,15,56,223,209
1534 jmp .L063xts_dec_done
1539 movups 16(%esi),%xmm3
1543 call _aesni_decrypt3
1547 movups %xmm3,16(%edi)
1550 jmp .L063xts_dec_done
1555 movups 16(%esi),%xmm3
1556 movups 32(%esi),%xmm4
1561 call _aesni_decrypt3
1566 movups %xmm3,16(%edi)
1567 movups %xmm4,32(%edi)
1570 jmp .L063xts_dec_done
1575 movups 16(%esi),%xmm3
1576 movups 32(%esi),%xmm4
1578 movups 48(%esi),%xmm5
1580 xorps 16(%esp),%xmm3
1583 call _aesni_decrypt4
1585 xorps 16(%esp),%xmm3
1589 movups %xmm3,16(%edi)
1590 movups %xmm4,32(%edi)
1591 movups %xmm5,48(%edi)
1594 jmp .L063xts_dec_done
1596 .L058xts_dec_done6x:
1601 jmp .L066xts_dec_only_one_more
1610 pshufd $19,%xmm0,%xmm2
1612 movdqa 96(%esp),%xmm3
1617 .L066xts_dec_only_one_more:
1618 pshufd $19,%xmm0,%xmm5
1628 movups 16(%edx),%xmm1
1632 .byte 102,15,56,222,209
1636 jnz .L067dec1_loop_13
1637 .byte 102,15,56,223,209
1641 movzbl 16(%esi),%ecx
1648 jnz .L068xts_dec_steal
1655 movups 16(%edx),%xmm1
1659 .byte 102,15,56,222,209
1663 jnz .L069dec1_loop_14
1664 .byte 102,15,56,223,209
1674 .size aesni_xts_decrypt,.-.L_aesni_xts_decrypt_begin
1675 .globl aesni_cbc_encrypt
1676 .type aesni_cbc_encrypt,@function
1679 .L_aesni_cbc_encrypt_begin:
1704 jb .L072cbc_enc_tail
1706 jmp .L073cbc_enc_loop
1712 movups 16(%edx),%xmm1
1717 .byte 102,15,56,220,209
1721 jnz .L074enc1_loop_15
1722 .byte 102,15,56,221,209
1728 jnc .L073cbc_enc_loop
1730 jnz .L072cbc_enc_tail
1744 jmp .L073cbc_enc_loop
1748 jbe .L076cbc_dec_tail
1751 jmp .L077cbc_dec_loop6_enter
1757 .L077cbc_dec_loop6_enter:
1759 movdqu 16(%esi),%xmm3
1760 movdqu 32(%esi),%xmm4
1761 movdqu 48(%esi),%xmm5
1762 movdqu 64(%esi),%xmm6
1763 movdqu 80(%esi),%xmm7
1764 call _aesni_decrypt6
1766 movups 16(%esi),%xmm0
1769 movups 32(%esi),%xmm1
1771 movups 48(%esi),%xmm0
1773 movups 64(%esi),%xmm1
1775 movups 80(%esi),%xmm0
1778 movups %xmm3,16(%edi)
1780 movups %xmm4,32(%edi)
1782 movups %xmm5,48(%edi)
1784 movups %xmm6,64(%edi)
1787 ja .L078cbc_dec_loop6
1791 jle .L079cbc_dec_tail_collected
1798 jbe .L080cbc_dec_one
1799 movups 16(%esi),%xmm3
1802 jbe .L081cbc_dec_two
1803 movups 32(%esi),%xmm4
1805 jbe .L082cbc_dec_three
1806 movups 48(%esi),%xmm5
1808 jbe .L083cbc_dec_four
1809 movups 64(%esi),%xmm6
1813 call _aesni_decrypt6
1815 movups 16(%esi),%xmm0
1818 movups 32(%esi),%xmm1
1820 movups 48(%esi),%xmm0
1822 movups 64(%esi),%xmm7
1825 movups %xmm3,16(%edi)
1826 movups %xmm4,32(%edi)
1827 movups %xmm5,48(%edi)
1831 jmp .L079cbc_dec_tail_collected
1835 movups 16(%edx),%xmm1
1839 .byte 102,15,56,222,209
1843 jnz .L084dec1_loop_16
1844 .byte 102,15,56,223,209
1848 jmp .L079cbc_dec_tail_collected
1852 call _aesni_decrypt3
1860 jmp .L079cbc_dec_tail_collected
1863 call _aesni_decrypt3
1869 movups %xmm3,16(%edi)
1871 movups 32(%esi),%xmm7
1873 jmp .L079cbc_dec_tail_collected
1876 call _aesni_decrypt4
1877 movups 16(%esi),%xmm1
1878 movups 32(%esi),%xmm0
1880 movups 48(%esi),%xmm7
1884 movups %xmm3,16(%edi)
1886 movups %xmm4,32(%edi)
1890 .L079cbc_dec_tail_collected:
1892 jnz .L085cbc_dec_tail_partial
1896 .L085cbc_dec_tail_partial:
1912 .size aesni_cbc_encrypt,.-.L_aesni_cbc_encrypt_begin
1913 .type _aesni_set_encrypt_key,@function
1915 _aesni_set_encrypt_key:
1928 jne .L089bad_keybits
1932 movups %xmm0,-16(%edx)
1933 .byte 102,15,58,223,200,1
1934 call .L091key_128_cold
1935 .byte 102,15,58,223,200,2
1937 .byte 102,15,58,223,200,4
1939 .byte 102,15,58,223,200,8
1941 .byte 102,15,58,223,200,16
1943 .byte 102,15,58,223,200,32
1945 .byte 102,15,58,223,200,64
1947 .byte 102,15,58,223,200,128
1949 .byte 102,15,58,223,200,27
1951 .byte 102,15,58,223,200,54
1962 shufps $16,%xmm0,%xmm4
1964 shufps $140,%xmm0,%xmm4
1966 shufps $255,%xmm1,%xmm1
1973 movups %xmm0,-16(%edx)
1974 .byte 102,15,58,223,202,1
1975 call .L093key_192a_cold
1976 .byte 102,15,58,223,202,2
1978 .byte 102,15,58,223,202,4
1980 .byte 102,15,58,223,202,8
1982 .byte 102,15,58,223,202,16
1984 .byte 102,15,58,223,202,32
1986 .byte 102,15,58,223,202,64
1988 .byte 102,15,58,223,202,128
2002 shufps $16,%xmm0,%xmm4
2005 shufps $140,%xmm0,%xmm4
2008 pshufd $85,%xmm1,%xmm1
2011 pshufd $255,%xmm0,%xmm3
2017 shufps $68,%xmm0,%xmm5
2019 shufps $78,%xmm2,%xmm3
2020 movups %xmm3,16(%edx)
2022 jmp .L096key_192b_warm
2025 movups 16(%eax),%xmm2
2028 movups %xmm0,-32(%edx)
2029 movups %xmm2,-16(%edx)
2030 .byte 102,15,58,223,202,1
2031 call .L097key_256a_cold
2032 .byte 102,15,58,223,200,1
2034 .byte 102,15,58,223,202,2
2036 .byte 102,15,58,223,200,2
2038 .byte 102,15,58,223,202,4
2040 .byte 102,15,58,223,200,4
2042 .byte 102,15,58,223,202,8
2044 .byte 102,15,58,223,200,8
2046 .byte 102,15,58,223,202,16
2048 .byte 102,15,58,223,200,16
2050 .byte 102,15,58,223,202,32
2052 .byte 102,15,58,223,200,32
2054 .byte 102,15,58,223,202,64
2065 shufps $16,%xmm0,%xmm4
2067 shufps $140,%xmm0,%xmm4
2069 shufps $255,%xmm1,%xmm1
2076 shufps $16,%xmm2,%xmm4
2078 shufps $140,%xmm2,%xmm4
2080 shufps $170,%xmm1,%xmm1
2091 .size _aesni_set_encrypt_key,.-_aesni_set_encrypt_key
2092 .globl aesni_set_encrypt_key
2093 .type aesni_set_encrypt_key,@function
2095 aesni_set_encrypt_key:
2096 .L_aesni_set_encrypt_key_begin:
2100 call _aesni_set_encrypt_key
2102 .size aesni_set_encrypt_key,.-.L_aesni_set_encrypt_key_begin
2103 .globl aesni_set_decrypt_key
2104 .type aesni_set_decrypt_key,@function
2106 aesni_set_decrypt_key:
2107 .L_aesni_set_decrypt_key_begin:
2111 call _aesni_set_encrypt_key
2115 jnz .L100dec_key_ret
2116 leal 16(%edx,%ecx,1),%eax
2123 .L101dec_key_inverse:
2126 .byte 102,15,56,219,192
2127 .byte 102,15,56,219,201
2130 movups %xmm0,16(%eax)
2131 movups %xmm1,-16(%edx)
2133 ja .L101dec_key_inverse
2135 .byte 102,15,56,219,192
2140 .size aesni_set_decrypt_key,.-.L_aesni_set_decrypt_key_begin
2141 .byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69
2142 .byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83
2143 .byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
2144 .byte 115,108,46,111,114,103,62,0