Index: third_party/boringssl/win-x86/crypto/rc4/rc4-586.asm |
diff --git a/third_party/boringssl/win-x86/crypto/rc4/rc4-586.asm b/third_party/boringssl/win-x86/crypto/rc4/rc4-586.asm |
deleted file mode 100644 |
index 0bab2bec85df0753a4c614a7aa4b8c38449ef3ff..0000000000000000000000000000000000000000 |
--- a/third_party/boringssl/win-x86/crypto/rc4/rc4-586.asm |
+++ /dev/null |
@@ -1,353 +0,0 @@ |
-%ifidn __OUTPUT_FORMAT__,obj |
-section code use32 class=code align=64 |
-%elifidn __OUTPUT_FORMAT__,win32 |
-%ifdef __YASM_VERSION_ID__ |
-%if __YASM_VERSION_ID__ < 01010000h |
-%error yasm version 1.1.0 or later needed. |
-%endif |
-; Yasm automatically includes .00 and complains about redefining it. |
-; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html |
-%else |
-$@feat.00 equ 1 |
-%endif |
-section .text code align=64 |
-%else |
-section .text code |
-%endif |
-;extern _OPENSSL_ia32cap_P |
-global _asm_RC4 |
-align 16 |
-_asm_RC4: |
-L$_asm_RC4_begin: |
- push ebp |
- push ebx |
- push esi |
- push edi |
- mov edi,DWORD [20+esp] |
- mov edx,DWORD [24+esp] |
- mov esi,DWORD [28+esp] |
- mov ebp,DWORD [32+esp] |
- xor eax,eax |
- xor ebx,ebx |
- cmp edx,0 |
- je NEAR L$000abort |
- mov al,BYTE [edi] |
- mov bl,BYTE [4+edi] |
- add edi,8 |
- lea ecx,[edx*1+esi] |
- sub ebp,esi |
- mov DWORD [24+esp],ecx |
- inc al |
- cmp DWORD [256+edi],-1 |
- je NEAR L$001RC4_CHAR |
- mov ecx,DWORD [eax*4+edi] |
- and edx,-4 |
- jz NEAR L$002loop1 |
- mov DWORD [32+esp],ebp |
- test edx,-8 |
- jz NEAR L$003go4loop4 |
- lea ebp,[_OPENSSL_ia32cap_P] |
- bt DWORD [ebp],26 |
- jnc NEAR L$003go4loop4 |
- mov ebp,DWORD [32+esp] |
- and edx,-8 |
- lea edx,[edx*1+esi-8] |
- mov DWORD [edi-4],edx |
- add bl,cl |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- movq mm0,[esi] |
- mov ecx,DWORD [eax*4+edi] |
- movd mm2,DWORD [edx*4+edi] |
- jmp NEAR L$004loop_mmx_enter |
-align 16 |
-L$005loop_mmx: |
- add bl,cl |
- psllq mm1,56 |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm1 |
- movq mm0,[esi] |
- movq [esi*1+ebp-8],mm2 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm2,DWORD [edx*4+edi] |
-L$004loop_mmx_enter: |
- add bl,cl |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm0 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm1,DWORD [edx*4+edi] |
- add bl,cl |
- psllq mm1,8 |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm1 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm1,DWORD [edx*4+edi] |
- add bl,cl |
- psllq mm1,16 |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm1 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm1,DWORD [edx*4+edi] |
- add bl,cl |
- psllq mm1,24 |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm1 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm1,DWORD [edx*4+edi] |
- add bl,cl |
- psllq mm1,32 |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm1 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm1,DWORD [edx*4+edi] |
- add bl,cl |
- psllq mm1,40 |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm1 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm1,DWORD [edx*4+edi] |
- add bl,cl |
- psllq mm1,48 |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- inc eax |
- add edx,ecx |
- movzx eax,al |
- movzx edx,dl |
- pxor mm2,mm1 |
- mov ecx,DWORD [eax*4+edi] |
- movd mm1,DWORD [edx*4+edi] |
- mov edx,ebx |
- xor ebx,ebx |
- mov bl,dl |
- cmp esi,DWORD [edi-4] |
- lea esi,[8+esi] |
- jb NEAR L$005loop_mmx |
- psllq mm1,56 |
- pxor mm2,mm1 |
- movq [esi*1+ebp-8],mm2 |
- emms |
- cmp esi,DWORD [24+esp] |
- je NEAR L$006done |
- jmp NEAR L$002loop1 |
-align 16 |
-L$003go4loop4: |
- lea edx,[edx*1+esi-4] |
- mov DWORD [28+esp],edx |
-L$007loop4: |
- add bl,cl |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- add edx,ecx |
- inc al |
- and edx,255 |
- mov ecx,DWORD [eax*4+edi] |
- mov ebp,DWORD [edx*4+edi] |
- add bl,cl |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- add edx,ecx |
- inc al |
- and edx,255 |
- ror ebp,8 |
- mov ecx,DWORD [eax*4+edi] |
- or ebp,DWORD [edx*4+edi] |
- add bl,cl |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- add edx,ecx |
- inc al |
- and edx,255 |
- ror ebp,8 |
- mov ecx,DWORD [eax*4+edi] |
- or ebp,DWORD [edx*4+edi] |
- add bl,cl |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- add edx,ecx |
- inc al |
- and edx,255 |
- ror ebp,8 |
- mov ecx,DWORD [32+esp] |
- or ebp,DWORD [edx*4+edi] |
- ror ebp,8 |
- xor ebp,DWORD [esi] |
- cmp esi,DWORD [28+esp] |
- mov DWORD [esi*1+ecx],ebp |
- lea esi,[4+esi] |
- mov ecx,DWORD [eax*4+edi] |
- jb NEAR L$007loop4 |
- cmp esi,DWORD [24+esp] |
- je NEAR L$006done |
- mov ebp,DWORD [32+esp] |
-align 16 |
-L$002loop1: |
- add bl,cl |
- mov edx,DWORD [ebx*4+edi] |
- mov DWORD [ebx*4+edi],ecx |
- mov DWORD [eax*4+edi],edx |
- add edx,ecx |
- inc al |
- and edx,255 |
- mov edx,DWORD [edx*4+edi] |
- xor dl,BYTE [esi] |
- lea esi,[1+esi] |
- mov ecx,DWORD [eax*4+edi] |
- cmp esi,DWORD [24+esp] |
- mov BYTE [esi*1+ebp-1],dl |
- jb NEAR L$002loop1 |
- jmp NEAR L$006done |
-align 16 |
-L$001RC4_CHAR: |
- movzx ecx,BYTE [eax*1+edi] |
-L$008cloop1: |
- add bl,cl |
- movzx edx,BYTE [ebx*1+edi] |
- mov BYTE [ebx*1+edi],cl |
- mov BYTE [eax*1+edi],dl |
- add dl,cl |
- movzx edx,BYTE [edx*1+edi] |
- add al,1 |
- xor dl,BYTE [esi] |
- lea esi,[1+esi] |
- movzx ecx,BYTE [eax*1+edi] |
- cmp esi,DWORD [24+esp] |
- mov BYTE [esi*1+ebp-1],dl |
- jb NEAR L$008cloop1 |
-L$006done: |
- dec al |
- mov DWORD [edi-4],ebx |
- mov BYTE [edi-8],al |
-L$000abort: |
- pop edi |
- pop esi |
- pop ebx |
- pop ebp |
- ret |
-global _asm_RC4_set_key |
-align 16 |
-_asm_RC4_set_key: |
-L$_asm_RC4_set_key_begin: |
- push ebp |
- push ebx |
- push esi |
- push edi |
- mov edi,DWORD [20+esp] |
- mov ebp,DWORD [24+esp] |
- mov esi,DWORD [28+esp] |
- lea edx,[_OPENSSL_ia32cap_P] |
- lea edi,[8+edi] |
- lea esi,[ebp*1+esi] |
- neg ebp |
- xor eax,eax |
- mov DWORD [edi-4],ebp |
- bt DWORD [edx],20 |
- jc NEAR L$009c1stloop |
-align 16 |
-L$010w1stloop: |
- mov DWORD [eax*4+edi],eax |
- add al,1 |
- jnc NEAR L$010w1stloop |
- xor ecx,ecx |
- xor edx,edx |
-align 16 |
-L$011w2ndloop: |
- mov eax,DWORD [ecx*4+edi] |
- add dl,BYTE [ebp*1+esi] |
- add dl,al |
- add ebp,1 |
- mov ebx,DWORD [edx*4+edi] |
- jnz NEAR L$012wnowrap |
- mov ebp,DWORD [edi-4] |
-L$012wnowrap: |
- mov DWORD [edx*4+edi],eax |
- mov DWORD [ecx*4+edi],ebx |
- add cl,1 |
- jnc NEAR L$011w2ndloop |
- jmp NEAR L$013exit |
-align 16 |
-L$009c1stloop: |
- mov BYTE [eax*1+edi],al |
- add al,1 |
- jnc NEAR L$009c1stloop |
- xor ecx,ecx |
- xor edx,edx |
- xor ebx,ebx |
-align 16 |
-L$014c2ndloop: |
- mov al,BYTE [ecx*1+edi] |
- add dl,BYTE [ebp*1+esi] |
- add dl,al |
- add ebp,1 |
- mov bl,BYTE [edx*1+edi] |
- jnz NEAR L$015cnowrap |
- mov ebp,DWORD [edi-4] |
-L$015cnowrap: |
- mov BYTE [edx*1+edi],al |
- mov BYTE [ecx*1+edi],bl |
- add cl,1 |
- jnc NEAR L$014c2ndloop |
- mov DWORD [256+edi],-1 |
-L$013exit: |
- xor eax,eax |
- mov DWORD [edi-8],eax |
- mov DWORD [edi-4],eax |
- pop edi |
- pop esi |
- pop ebx |
- pop ebp |
- ret |
-segment .bss |
-common _OPENSSL_ia32cap_P 16 |