Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(60)

Side by Side Diff: third_party/boringssl/win-x86/crypto/chacha/chacha-x86.asm

Issue 2050383002: Roll src/third_party/boringssl/src 0fc7df55c..166958944 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: roll a little further Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/boringssl/mac-x86/crypto/chacha/chacha-x86.S ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 %ifidn __OUTPUT_FORMAT__,obj 1 %ifidn __OUTPUT_FORMAT__,obj
2 section code use32 class=code align=64 2 section code use32 class=code align=64
3 %elifidn __OUTPUT_FORMAT__,win32 3 %elifidn __OUTPUT_FORMAT__,win32
4 %ifdef __YASM_VERSION_ID__ 4 %ifdef __YASM_VERSION_ID__
5 %if __YASM_VERSION_ID__ < 01010000h 5 %if __YASM_VERSION_ID__ < 01010000h
6 %error yasm version 1.1.0 or later needed. 6 %error yasm version 1.1.0 or later needed.
7 %endif 7 %endif
8 ; Yasm automatically includes .00 and complains about redefining it. 8 ; Yasm automatically includes .00 and complains about redefining it.
9 ; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html 9 ; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html
10 %else 10 %else
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 add edx,DWORD [112+esp] 265 add edx,DWORD [112+esp]
266 add edi,DWORD [120+esp] 266 add edi,DWORD [120+esp]
267 xor eax,DWORD [ebx] 267 xor eax,DWORD [ebx]
268 xor ebp,DWORD [16+ebx] 268 xor ebp,DWORD [16+ebx]
269 mov DWORD [esp],eax 269 mov DWORD [esp],eax
270 mov eax,DWORD [152+esp] 270 mov eax,DWORD [152+esp]
271 xor ecx,DWORD [32+ebx] 271 xor ecx,DWORD [32+ebx]
272 xor esi,DWORD [36+ebx] 272 xor esi,DWORD [36+ebx]
273 xor edx,DWORD [48+ebx] 273 xor edx,DWORD [48+ebx]
274 xor edi,DWORD [56+ebx] 274 xor edi,DWORD [56+ebx]
275 » mov» DWORD [16+esp],ebp 275 » mov» DWORD [16+eax],ebp
276 » mov» ebp,DWORD [esp] 276 » mov» DWORD [32+eax],ecx
277 » mov» DWORD [32+esp],ecx 277 » mov» DWORD [36+eax],esi
278 » mov» DWORD [36+esp],esi 278 » mov» DWORD [48+eax],edx
279 » mov» DWORD [48+esp],edx 279 » mov» DWORD [56+eax],edi
280 » mov» DWORD [56+esp],edi
281 » mov» DWORD [eax],ebp
282 mov ebp,DWORD [4+esp] 280 mov ebp,DWORD [4+esp]
283 mov ecx,DWORD [8+esp] 281 mov ecx,DWORD [8+esp]
284 mov esi,DWORD [12+esp] 282 mov esi,DWORD [12+esp]
285 mov edx,DWORD [20+esp] 283 mov edx,DWORD [20+esp]
286 mov edi,DWORD [24+esp] 284 mov edi,DWORD [24+esp]
287 add ebp,857760878 285 add ebp,857760878
288 add ecx,2036477234 286 add ecx,2036477234
289 add esi,1797285236 287 add esi,1797285236
290 add edx,DWORD [84+esp] 288 add edx,DWORD [84+esp]
291 add edi,DWORD [88+esp] 289 add edi,DWORD [88+esp]
292 xor ebp,DWORD [4+ebx] 290 xor ebp,DWORD [4+ebx]
293 xor ecx,DWORD [8+ebx] 291 xor ecx,DWORD [8+ebx]
294 xor esi,DWORD [12+ebx] 292 xor esi,DWORD [12+ebx]
295 xor edx,DWORD [20+ebx] 293 xor edx,DWORD [20+ebx]
296 xor edi,DWORD [24+ebx] 294 xor edi,DWORD [24+ebx]
297 mov DWORD [4+eax],ebp 295 mov DWORD [4+eax],ebp
298 mov ebp,DWORD [16+esp]
299 mov DWORD [8+eax],ecx 296 mov DWORD [8+eax],ecx
300 mov DWORD [12+eax],esi 297 mov DWORD [12+eax],esi
301 mov DWORD [16+eax],ebp
302 mov DWORD [20+eax],edx 298 mov DWORD [20+eax],edx
303 mov DWORD [24+eax],edi 299 mov DWORD [24+eax],edi
304 » mov» ecx,DWORD [28+esp] 300 » mov» ebp,DWORD [28+esp]
305 » mov» edx,DWORD [32+esp] 301 » mov» ecx,DWORD [40+esp]
306 » mov» edi,DWORD [36+esp]
307 » add» ecx,DWORD [92+esp]
308 » mov» ebp,DWORD [40+esp]
309 » xor» ecx,DWORD [28+ebx]
310 mov esi,DWORD [44+esp] 302 mov esi,DWORD [44+esp]
311 mov DWORD [28+eax],ecx
312 mov DWORD [32+eax],edx
313 mov DWORD [36+eax],edi
314 add ebp,DWORD [104+esp]
315 add esi,DWORD [108+esp]
316 xor ebp,DWORD [40+ebx]
317 xor esi,DWORD [44+ebx]
318 mov DWORD [40+eax],ebp
319 mov DWORD [44+eax],esi
320 mov ecx,DWORD [48+esp]
321 mov esi,DWORD [56+esp]
322 mov edx,DWORD [52+esp] 303 mov edx,DWORD [52+esp]
323 mov edi,DWORD [60+esp] 304 mov edi,DWORD [60+esp]
305 add ebp,DWORD [92+esp]
306 add ecx,DWORD [104+esp]
307 add esi,DWORD [108+esp]
324 add edx,DWORD [116+esp] 308 add edx,DWORD [116+esp]
325 add edi,DWORD [124+esp] 309 add edi,DWORD [124+esp]
310 xor ebp,DWORD [28+ebx]
311 xor ecx,DWORD [40+ebx]
312 xor esi,DWORD [44+ebx]
326 xor edx,DWORD [52+ebx] 313 xor edx,DWORD [52+ebx]
327 xor edi,DWORD [60+ebx] 314 xor edi,DWORD [60+ebx]
328 lea ebx,[64+ebx] 315 lea ebx,[64+ebx]
329 » mov» DWORD [48+eax],ecx 316 » mov» DWORD [28+eax],ebp
317 » mov» ebp,DWORD [esp]
318 » mov» DWORD [40+eax],ecx
330 mov ecx,DWORD [160+esp] 319 mov ecx,DWORD [160+esp]
320 mov DWORD [44+eax],esi
331 mov DWORD [52+eax],edx 321 mov DWORD [52+eax],edx
332 mov DWORD [56+eax],esi
333 mov DWORD [60+eax],edi 322 mov DWORD [60+eax],edi
323 mov DWORD [eax],ebp
334 lea eax,[64+eax] 324 lea eax,[64+eax]
335 sub ecx,64 325 sub ecx,64
336 jnz NEAR L$003outer_loop 326 jnz NEAR L$003outer_loop
337 jmp NEAR L$006done 327 jmp NEAR L$006done
338 L$005tail: 328 L$005tail:
339 add edx,DWORD [112+esp] 329 add edx,DWORD [112+esp]
340 add edi,DWORD [120+esp] 330 add edi,DWORD [120+esp]
341 mov DWORD [esp],eax 331 mov DWORD [esp],eax
342 mov DWORD [16+esp],ebp 332 mov DWORD [16+esp],ebp
343 mov DWORD [32+esp],ecx 333 mov DWORD [32+esp],ecx
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after
716 movdqa xmm7,xmm2 706 movdqa xmm7,xmm2
717 punpckldq xmm2,xmm3 707 punpckldq xmm2,xmm3
718 punpckhdq xmm6,xmm1 708 punpckhdq xmm6,xmm1
719 punpckhdq xmm7,xmm3 709 punpckhdq xmm7,xmm3
720 movdqa xmm1,xmm0 710 movdqa xmm1,xmm0
721 punpcklqdq xmm0,xmm2 711 punpcklqdq xmm0,xmm2
722 movdqa xmm3,xmm6 712 movdqa xmm3,xmm6
723 punpcklqdq xmm6,xmm7 713 punpcklqdq xmm6,xmm7
724 punpckhqdq xmm1,xmm2 714 punpckhqdq xmm1,xmm2
725 punpckhqdq xmm3,xmm7 715 punpckhqdq xmm3,xmm7
726 » movdqa» [ebx-128],xmm0 716 » movdqu» xmm4,[esi-128]
717 » movdqu» xmm5,[esi-64]
718 » movdqu» xmm2,[esi]
719 » movdqu» xmm7,[64+esi]
720 » lea» esi,[16+esi]
721 » pxor» xmm4,xmm0
727 movdqa xmm0,[ebx-64] 722 movdqa xmm0,[ebx-64]
728 » movdqa» [ebx-112],xmm1 723 » pxor» xmm5,xmm1
729 » movdqa» [ebx-96],xmm6
730 » movdqa» [ebx-80],xmm3
731 movdqa xmm1,[ebx-48] 724 movdqa xmm1,[ebx-48]
725 pxor xmm6,xmm2
732 movdqa xmm2,[ebx-32] 726 movdqa xmm2,[ebx-32]
727 pxor xmm7,xmm3
733 movdqa xmm3,[ebx-16] 728 movdqa xmm3,[ebx-16]
729 movdqu [edi-128],xmm4
730 movdqu [edi-64],xmm5
731 movdqu [edi],xmm6
732 movdqu [64+edi],xmm7
733 lea edi,[16+edi]
734 paddd xmm0,[ebp-64] 734 paddd xmm0,[ebp-64]
735 paddd xmm1,[ebp-48] 735 paddd xmm1,[ebp-48]
736 paddd xmm2,[ebp-32] 736 paddd xmm2,[ebp-32]
737 paddd xmm3,[ebp-16] 737 paddd xmm3,[ebp-16]
738 movdqa xmm6,xmm0 738 movdqa xmm6,xmm0
739 punpckldq xmm0,xmm1 739 punpckldq xmm0,xmm1
740 movdqa xmm7,xmm2 740 movdqa xmm7,xmm2
741 punpckldq xmm2,xmm3 741 punpckldq xmm2,xmm3
742 punpckhdq xmm6,xmm1 742 punpckhdq xmm6,xmm1
743 punpckhdq xmm7,xmm3 743 punpckhdq xmm7,xmm3
744 movdqa xmm1,xmm0 744 movdqa xmm1,xmm0
745 punpcklqdq xmm0,xmm2 745 punpcklqdq xmm0,xmm2
746 movdqa xmm3,xmm6 746 movdqa xmm3,xmm6
747 punpcklqdq xmm6,xmm7 747 punpcklqdq xmm6,xmm7
748 punpckhqdq xmm1,xmm2 748 punpckhqdq xmm1,xmm2
749 punpckhqdq xmm3,xmm7 749 punpckhqdq xmm3,xmm7
750 » movdqa» [ebx-64],xmm0 750 » movdqu» xmm4,[esi-128]
751 » movdqu» xmm5,[esi-64]
752 » movdqu» xmm2,[esi]
753 » movdqu» xmm7,[64+esi]
754 » lea» esi,[16+esi]
755 » pxor» xmm4,xmm0
751 movdqa xmm0,[ebx] 756 movdqa xmm0,[ebx]
752 » movdqa» [ebx-48],xmm1 757 » pxor» xmm5,xmm1
753 » movdqa» [ebx-32],xmm6
754 » movdqa» [ebx-16],xmm3
755 movdqa xmm1,[16+ebx] 758 movdqa xmm1,[16+ebx]
759 pxor xmm6,xmm2
756 movdqa xmm2,[32+ebx] 760 movdqa xmm2,[32+ebx]
761 pxor xmm7,xmm3
757 movdqa xmm3,[48+ebx] 762 movdqa xmm3,[48+ebx]
763 movdqu [edi-128],xmm4
764 movdqu [edi-64],xmm5
765 movdqu [edi],xmm6
766 movdqu [64+edi],xmm7
767 lea edi,[16+edi]
758 paddd xmm0,[ebp] 768 paddd xmm0,[ebp]
759 paddd xmm1,[16+ebp] 769 paddd xmm1,[16+ebp]
760 paddd xmm2,[32+ebp] 770 paddd xmm2,[32+ebp]
761 paddd xmm3,[48+ebp] 771 paddd xmm3,[48+ebp]
762 movdqa xmm6,xmm0 772 movdqa xmm6,xmm0
763 punpckldq xmm0,xmm1 773 punpckldq xmm0,xmm1
764 movdqa xmm7,xmm2 774 movdqa xmm7,xmm2
765 punpckldq xmm2,xmm3 775 punpckldq xmm2,xmm3
766 punpckhdq xmm6,xmm1 776 punpckhdq xmm6,xmm1
767 punpckhdq xmm7,xmm3 777 punpckhdq xmm7,xmm3
768 movdqa xmm1,xmm0 778 movdqa xmm1,xmm0
769 punpcklqdq xmm0,xmm2 779 punpcklqdq xmm0,xmm2
770 movdqa xmm3,xmm6 780 movdqa xmm3,xmm6
771 punpcklqdq xmm6,xmm7 781 punpcklqdq xmm6,xmm7
772 punpckhqdq xmm1,xmm2 782 punpckhqdq xmm1,xmm2
773 punpckhqdq xmm3,xmm7 783 punpckhqdq xmm3,xmm7
774 » movdqa» [ebx],xmm0 784 » movdqu» xmm4,[esi-128]
785 » movdqu» xmm5,[esi-64]
786 » movdqu» xmm2,[esi]
787 » movdqu» xmm7,[64+esi]
788 » lea» esi,[16+esi]
789 » pxor» xmm4,xmm0
775 movdqa xmm0,[64+ebx] 790 movdqa xmm0,[64+ebx]
776 » movdqa» [16+ebx],xmm1 791 » pxor» xmm5,xmm1
777 » movdqa» [32+ebx],xmm6
778 » movdqa» [48+ebx],xmm3
779 movdqa xmm1,[80+ebx] 792 movdqa xmm1,[80+ebx]
793 pxor xmm6,xmm2
780 movdqa xmm2,[96+ebx] 794 movdqa xmm2,[96+ebx]
795 pxor xmm7,xmm3
781 movdqa xmm3,[112+ebx] 796 movdqa xmm3,[112+ebx]
797 movdqu [edi-128],xmm4
798 movdqu [edi-64],xmm5
799 movdqu [edi],xmm6
800 movdqu [64+edi],xmm7
801 lea edi,[16+edi]
782 paddd xmm0,[64+ebp] 802 paddd xmm0,[64+ebp]
783 paddd xmm1,[80+ebp] 803 paddd xmm1,[80+ebp]
784 paddd xmm2,[96+ebp] 804 paddd xmm2,[96+ebp]
785 paddd xmm3,[112+ebp] 805 paddd xmm3,[112+ebp]
786 movdqa xmm6,xmm0 806 movdqa xmm6,xmm0
787 punpckldq xmm0,xmm1 807 punpckldq xmm0,xmm1
788 movdqa xmm7,xmm2 808 movdqa xmm7,xmm2
789 punpckldq xmm2,xmm3 809 punpckldq xmm2,xmm3
790 punpckhdq xmm6,xmm1 810 punpckhdq xmm6,xmm1
791 punpckhdq xmm7,xmm3 811 punpckhdq xmm7,xmm3
792 movdqa xmm1,xmm0 812 movdqa xmm1,xmm0
793 punpcklqdq xmm0,xmm2 813 punpcklqdq xmm0,xmm2
794 movdqa xmm3,xmm6 814 movdqa xmm3,xmm6
795 punpcklqdq xmm6,xmm7 815 punpcklqdq xmm6,xmm7
796 punpckhqdq xmm1,xmm2 816 punpckhqdq xmm1,xmm2
797 punpckhqdq xmm3,xmm7 817 punpckhqdq xmm3,xmm7
798 » movdqa» [64+ebx],xmm0 818 » movdqu» xmm4,[esi-128]
799 » movdqa» [80+ebx],xmm1 819 » movdqu» xmm5,[esi-64]
800 » movdqa» [96+ebx],xmm6 820 » movdqu» xmm2,[esi]
801 » movdqa» [112+ebx],xmm3 821 » movdqu» xmm7,[64+esi]
802 » movdqu» xmm0,[esi-128] 822 » lea» esi,[208+esi]
803 » movdqu» xmm1,[esi-112] 823 » pxor» xmm4,xmm0
804 » movdqu» xmm2,[esi-96] 824 » pxor» xmm5,xmm1
805 » movdqu» xmm3,[esi-80] 825 » pxor» xmm6,xmm2
806 » pxor» xmm0,[ebx-128] 826 » pxor» xmm7,xmm3
807 » pxor» xmm1,[ebx-64] 827 » movdqu» [edi-128],xmm4
808 » pxor» xmm2,[ebx] 828 » movdqu» [edi-64],xmm5
809 » pxor» xmm3,[64+ebx] 829 » movdqu» [edi],xmm6
810 » movdqu» [edi-128],xmm0 830 » movdqu» [64+edi],xmm7
811 » movdqu» [edi-112],xmm1 831 » lea» edi,[208+edi]
812 » movdqu» [edi-96],xmm2
813 » movdqu» [edi-80],xmm3
814 » movdqu» xmm0,[esi-64]
815 » movdqu» xmm1,[esi-48]
816 » movdqu» xmm2,[esi-32]
817 » movdqu» xmm3,[esi-16]
818 » pxor» xmm0,[ebx-112]
819 » pxor» xmm1,[ebx-48]
820 » pxor» xmm2,[16+ebx]
821 » pxor» xmm3,[80+ebx]
822 » movdqu» [edi-64],xmm0
823 » movdqu» [edi-48],xmm1
824 » movdqu» [edi-32],xmm2
825 » movdqu» [edi-16],xmm3
826 » movdqu» xmm0,[esi]
827 » movdqu» xmm1,[16+esi]
828 » movdqu» xmm2,[32+esi]
829 » movdqu» xmm3,[48+esi]
830 » pxor» xmm0,[ebx-96]
831 » pxor» xmm1,[ebx-32]
832 » pxor» xmm2,[32+ebx]
833 » pxor» xmm3,[96+ebx]
834 » movdqu» [edi],xmm0
835 » movdqu» [16+edi],xmm1
836 » movdqu» [32+edi],xmm2
837 » movdqu» [48+edi],xmm3
838 » movdqu» xmm0,[64+esi]
839 » movdqu» xmm1,[80+esi]
840 » movdqu» xmm2,[96+esi]
841 » movdqu» xmm3,[112+esi]
842 » pxor» xmm0,[ebx-80]
843 » pxor» xmm1,[ebx-16]
844 » pxor» xmm2,[48+ebx]
845 » pxor» xmm3,[112+ebx]
846 » movdqu» [64+edi],xmm0
847 » movdqu» [80+edi],xmm1
848 » movdqu» [96+edi],xmm2
849 » movdqu» [112+edi],xmm3
850 » lea» esi,[256+esi]
851 » lea» edi,[256+edi]
852 sub ecx,256 832 sub ecx,256
853 jnc NEAR L$009outer_loop 833 jnc NEAR L$009outer_loop
854 add ecx,256 834 add ecx,256
855 jz NEAR L$011done 835 jz NEAR L$011done
856 mov ebx,DWORD [520+esp] 836 mov ebx,DWORD [520+esp]
857 lea esi,[esi-128] 837 lea esi,[esi-128]
858 mov edx,DWORD [516+esp] 838 mov edx,DWORD [516+esp]
859 lea edi,[edi-128] 839 lea edi,[edi-128]
860 movd xmm2,DWORD [64+ebp] 840 movd xmm2,DWORD [64+ebp]
861 movdqu xmm3,[ebx] 841 movdqu xmm3,[ebx]
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
988 dd 1,0,0,0 968 dd 1,0,0,0
989 dd 4,0,0,0 969 dd 4,0,0,0
990 dd 0,-1,-1,-1 970 dd 0,-1,-1,-1
991 align 64 971 align 64
992 db 67,104,97,67,104,97,50,48,32,102,111,114,32,120,56,54 972 db 67,104,97,67,104,97,50,48,32,102,111,114,32,120,56,54
993 db 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32 973 db 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
994 db 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111 974 db 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
995 db 114,103,62,0 975 db 114,103,62,0
996 segment .bss 976 segment .bss
997 common _OPENSSL_ia32cap_P 16 977 common _OPENSSL_ia32cap_P 16
OLDNEW
« no previous file with comments | « third_party/boringssl/mac-x86/crypto/chacha/chacha-x86.S ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698