Index: third_party/boringssl/win-x86/crypto/cpu-x86-asm.asm |
diff --git a/third_party/boringssl/win-x86/crypto/cpu-x86-asm.asm b/third_party/boringssl/win-x86/crypto/cpu-x86-asm.asm |
deleted file mode 100644 |
index 4317a73bc884d3437688163b5a083fee5c298d0f..0000000000000000000000000000000000000000 |
--- a/third_party/boringssl/win-x86/crypto/cpu-x86-asm.asm |
+++ /dev/null |
@@ -1,303 +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 |
-global _OPENSSL_ia32_cpuid |
-align 16 |
-_OPENSSL_ia32_cpuid: |
-L$_OPENSSL_ia32_cpuid_begin: |
- push ebp |
- push ebx |
- push esi |
- push edi |
- xor edx,edx |
- pushfd |
- pop eax |
- mov ecx,eax |
- xor eax,2097152 |
- push eax |
- popfd |
- pushfd |
- pop eax |
- xor ecx,eax |
- xor eax,eax |
- bt ecx,21 |
- jnc NEAR L$000nocpuid |
- mov esi,DWORD [20+esp] |
- mov DWORD [8+esi],eax |
- cpuid |
- mov edi,eax |
- xor eax,eax |
- cmp ebx,1970169159 |
- setne al |
- mov ebp,eax |
- cmp edx,1231384169 |
- setne al |
- or ebp,eax |
- cmp ecx,1818588270 |
- setne al |
- or ebp,eax |
- jz NEAR L$001intel |
- cmp ebx,1752462657 |
- setne al |
- mov esi,eax |
- cmp edx,1769238117 |
- setne al |
- or esi,eax |
- cmp ecx,1145913699 |
- setne al |
- or esi,eax |
- jnz NEAR L$001intel |
- mov eax,2147483648 |
- cpuid |
- cmp eax,2147483649 |
- jb NEAR L$001intel |
- mov esi,eax |
- mov eax,2147483649 |
- cpuid |
- or ebp,ecx |
- and ebp,2049 |
- cmp esi,2147483656 |
- jb NEAR L$001intel |
- mov eax,2147483656 |
- cpuid |
- movzx esi,cl |
- inc esi |
- mov eax,1 |
- xor ecx,ecx |
- cpuid |
- bt edx,28 |
- jnc NEAR L$002generic |
- shr ebx,16 |
- and ebx,255 |
- cmp ebx,esi |
- ja NEAR L$002generic |
- and edx,4026531839 |
- jmp NEAR L$002generic |
-L$001intel: |
- cmp edi,7 |
- jb NEAR L$003cacheinfo |
- mov esi,DWORD [20+esp] |
- mov eax,7 |
- xor ecx,ecx |
- cpuid |
- mov DWORD [8+esi],ebx |
-L$003cacheinfo: |
- cmp edi,4 |
- mov edi,-1 |
- jb NEAR L$004nocacheinfo |
- mov eax,4 |
- mov ecx,0 |
- cpuid |
- mov edi,eax |
- shr edi,14 |
- and edi,4095 |
-L$004nocacheinfo: |
- mov eax,1 |
- xor ecx,ecx |
- cpuid |
- and edx,3220176895 |
- cmp ebp,0 |
- jne NEAR L$005notintel |
- or edx,1073741824 |
-L$005notintel: |
- bt edx,28 |
- jnc NEAR L$002generic |
- and edx,4026531839 |
- cmp edi,0 |
- je NEAR L$002generic |
- or edx,268435456 |
- shr ebx,16 |
- cmp bl,1 |
- ja NEAR L$002generic |
- and edx,4026531839 |
-L$002generic: |
- and ebp,2048 |
- and ecx,4294965247 |
- mov esi,edx |
- or ebp,ecx |
- bt ecx,27 |
- jnc NEAR L$006clear_avx |
- xor ecx,ecx |
-db 15,1,208 |
- and eax,6 |
- cmp eax,6 |
- je NEAR L$007done |
- cmp eax,2 |
- je NEAR L$006clear_avx |
-L$008clear_xmm: |
- and ebp,4261412861 |
- and esi,4278190079 |
-L$006clear_avx: |
- and ebp,4026525695 |
- mov edi,DWORD [20+esp] |
- and DWORD [8+edi],4294967263 |
-L$007done: |
- mov eax,esi |
- mov edx,ebp |
-L$000nocpuid: |
- pop edi |
- pop esi |
- pop ebx |
- pop ebp |
- ret |
-;extern _OPENSSL_ia32cap_P |
-global _OPENSSL_rdtsc |
-align 16 |
-_OPENSSL_rdtsc: |
-L$_OPENSSL_rdtsc_begin: |
- xor eax,eax |
- xor edx,edx |
- lea ecx,[_OPENSSL_ia32cap_P] |
- bt DWORD [ecx],4 |
- jnc NEAR L$009notsc |
- rdtsc |
-L$009notsc: |
- ret |
-global _OPENSSL_instrument_halt |
-align 16 |
-_OPENSSL_instrument_halt: |
-L$_OPENSSL_instrument_halt_begin: |
- lea ecx,[_OPENSSL_ia32cap_P] |
- bt DWORD [ecx],4 |
- jnc NEAR L$010nohalt |
-dd 2421723150 |
- and eax,3 |
- jnz NEAR L$010nohalt |
- pushfd |
- pop eax |
- bt eax,9 |
- jnc NEAR L$010nohalt |
- rdtsc |
- push edx |
- push eax |
- hlt |
- rdtsc |
- sub eax,DWORD [esp] |
- sbb edx,DWORD [4+esp] |
- add esp,8 |
- ret |
-L$010nohalt: |
- xor eax,eax |
- xor edx,edx |
- ret |
-global _OPENSSL_far_spin |
-align 16 |
-_OPENSSL_far_spin: |
-L$_OPENSSL_far_spin_begin: |
- pushfd |
- pop eax |
- bt eax,9 |
- jnc NEAR L$011nospin |
- mov eax,DWORD [4+esp] |
- mov ecx,DWORD [8+esp] |
-dd 2430111262 |
- xor eax,eax |
- mov edx,DWORD [ecx] |
- jmp NEAR L$012spin |
-align 16 |
-L$012spin: |
- inc eax |
- cmp edx,DWORD [ecx] |
- je NEAR L$012spin |
-dd 529567888 |
- ret |
-L$011nospin: |
- xor eax,eax |
- xor edx,edx |
- ret |
-global _OPENSSL_wipe_cpu |
-align 16 |
-_OPENSSL_wipe_cpu: |
-L$_OPENSSL_wipe_cpu_begin: |
- xor eax,eax |
- xor edx,edx |
- lea ecx,[_OPENSSL_ia32cap_P] |
- mov ecx,DWORD [ecx] |
- bt DWORD [ecx],1 |
- jnc NEAR L$013no_x87 |
- and ecx,83886080 |
- cmp ecx,83886080 |
- jne NEAR L$014no_sse2 |
- pxor xmm0,xmm0 |
- pxor xmm1,xmm1 |
- pxor xmm2,xmm2 |
- pxor xmm3,xmm3 |
- pxor xmm4,xmm4 |
- pxor xmm5,xmm5 |
- pxor xmm6,xmm6 |
- pxor xmm7,xmm7 |
-L$014no_sse2: |
-dd 4007259865,4007259865,4007259865,4007259865,2430851995 |
-L$013no_x87: |
- lea eax,[4+esp] |
- ret |
-global _OPENSSL_atomic_add |
-align 16 |
-_OPENSSL_atomic_add: |
-L$_OPENSSL_atomic_add_begin: |
- mov edx,DWORD [4+esp] |
- mov ecx,DWORD [8+esp] |
- push ebx |
- nop |
- mov eax,DWORD [edx] |
-L$015spin: |
- lea ebx,[ecx*1+eax] |
- nop |
-dd 447811568 |
- jne NEAR L$015spin |
- mov eax,ebx |
- pop ebx |
- ret |
-global _OPENSSL_indirect_call |
-align 16 |
-_OPENSSL_indirect_call: |
-L$_OPENSSL_indirect_call_begin: |
- push ebp |
- mov ebp,esp |
- sub esp,28 |
- mov ecx,DWORD [12+ebp] |
- mov DWORD [esp],ecx |
- mov edx,DWORD [16+ebp] |
- mov DWORD [4+esp],edx |
- mov eax,DWORD [20+ebp] |
- mov DWORD [8+esp],eax |
- mov eax,DWORD [24+ebp] |
- mov DWORD [12+esp],eax |
- mov eax,DWORD [28+ebp] |
- mov DWORD [16+esp],eax |
- mov eax,DWORD [32+ebp] |
- mov DWORD [20+esp],eax |
- mov eax,DWORD [36+ebp] |
- mov DWORD [24+esp],eax |
- call DWORD [8+ebp] |
- mov esp,ebp |
- pop ebp |
- ret |
-global _OPENSSL_ia32_rdrand |
-align 16 |
-_OPENSSL_ia32_rdrand: |
-L$_OPENSSL_ia32_rdrand_begin: |
- mov ecx,8 |
-L$016loop: |
-db 15,199,240 |
- jc NEAR L$017break |
- loop L$016loop |
-L$017break: |
- cmp eax,0 |
- cmove eax,ecx |
- ret |
-segment .bss |
-common _OPENSSL_ia32cap_P 16 |