| Index: third_party/boringssl/linux-x86/crypto/rc4/rc4-586.S
|
| diff --git a/third_party/boringssl/linux-x86/crypto/rc4/rc4-586.S b/third_party/boringssl/linux-x86/crypto/rc4/rc4-586.S
|
| index 4d63575786ecb79eb2432d5c007d9ae9b925deaf..164d3132518dbeebfa6587e38522f982129d1b2c 100644
|
| --- a/third_party/boringssl/linux-x86/crypto/rc4/rc4-586.S
|
| +++ b/third_party/boringssl/linux-x86/crypto/rc4/rc4-586.S
|
| @@ -33,7 +33,10 @@ RC4:
|
| movl %ebp,32(%esp)
|
| testl $-8,%edx
|
| jz .L003go4loop4
|
| - leal OPENSSL_ia32cap_P,%ebp
|
| + call .L004PIC_me_up
|
| +.L004PIC_me_up:
|
| + popl %ebp
|
| + leal OPENSSL_ia32cap_P-.L004PIC_me_up(%ebp),%ebp
|
| btl $26,(%ebp)
|
| jnc .L003go4loop4
|
| movl 32(%esp),%ebp
|
| @@ -51,9 +54,9 @@ RC4:
|
| movq (%esi),%mm0
|
| movl (%edi,%eax,4),%ecx
|
| movd (%edi,%edx,4),%mm2
|
| - jmp .L004loop_mmx_enter
|
| + jmp .L005loop_mmx_enter
|
| .align 16
|
| -.L005loop_mmx:
|
| +.L006loop_mmx:
|
| addb %cl,%bl
|
| psllq $56,%mm1
|
| movl (%edi,%ebx,4),%edx
|
| @@ -68,7 +71,7 @@ RC4:
|
| movq %mm2,-8(%ebp,%esi,1)
|
| movl (%edi,%eax,4),%ecx
|
| movd (%edi,%edx,4),%mm2
|
| -.L004loop_mmx_enter:
|
| +.L005loop_mmx_enter:
|
| addb %cl,%bl
|
| movl (%edi,%ebx,4),%edx
|
| movl %ecx,(%edi,%ebx,4)
|
| @@ -157,19 +160,19 @@ RC4:
|
| movb %dl,%bl
|
| cmpl -4(%edi),%esi
|
| leal 8(%esi),%esi
|
| - jb .L005loop_mmx
|
| + jb .L006loop_mmx
|
| psllq $56,%mm1
|
| pxor %mm1,%mm2
|
| movq %mm2,-8(%ebp,%esi,1)
|
| emms
|
| cmpl 24(%esp),%esi
|
| - je .L006done
|
| + je .L007done
|
| jmp .L002loop1
|
| .align 16
|
| .L003go4loop4:
|
| leal -4(%esi,%edx,1),%edx
|
| movl %edx,28(%esp)
|
| -.L007loop4:
|
| +.L008loop4:
|
| addb %cl,%bl
|
| movl (%edi,%ebx,4),%edx
|
| movl %ecx,(%edi,%ebx,4)
|
| @@ -215,9 +218,9 @@ RC4:
|
| movl %ebp,(%ecx,%esi,1)
|
| leal 4(%esi),%esi
|
| movl (%edi,%eax,4),%ecx
|
| - jb .L007loop4
|
| + jb .L008loop4
|
| cmpl 24(%esp),%esi
|
| - je .L006done
|
| + je .L007done
|
| movl 32(%esp),%ebp
|
| .align 16
|
| .L002loop1:
|
| @@ -235,11 +238,11 @@ RC4:
|
| cmpl 24(%esp),%esi
|
| movb %dl,-1(%ebp,%esi,1)
|
| jb .L002loop1
|
| - jmp .L006done
|
| + jmp .L007done
|
| .align 16
|
| .L001RC4_CHAR:
|
| movzbl (%edi,%eax,1),%ecx
|
| -.L008cloop1:
|
| +.L009cloop1:
|
| addb %cl,%bl
|
| movzbl (%edi,%ebx,1),%edx
|
| movb %cl,(%edi,%ebx,1)
|
| @@ -252,8 +255,8 @@ RC4:
|
| movzbl (%edi,%eax,1),%ecx
|
| cmpl 24(%esp),%esi
|
| movb %dl,-1(%ebp,%esi,1)
|
| - jb .L008cloop1
|
| -.L006done:
|
| + jb .L009cloop1
|
| +.L007done:
|
| decb %al
|
| movl %ebx,-4(%edi)
|
| movb %al,-8(%edi)
|
| @@ -276,60 +279,63 @@ RC4_set_key:
|
| movl 20(%esp),%edi
|
| movl 24(%esp),%ebp
|
| movl 28(%esp),%esi
|
| - leal OPENSSL_ia32cap_P,%edx
|
| + call .L010PIC_me_up
|
| +.L010PIC_me_up:
|
| + popl %edx
|
| + leal OPENSSL_ia32cap_P-.L010PIC_me_up(%edx),%edx
|
| leal 8(%edi),%edi
|
| leal (%esi,%ebp,1),%esi
|
| negl %ebp
|
| xorl %eax,%eax
|
| movl %ebp,-4(%edi)
|
| btl $20,(%edx)
|
| - jc .L009c1stloop
|
| + jc .L011c1stloop
|
| .align 16
|
| -.L010w1stloop:
|
| +.L012w1stloop:
|
| movl %eax,(%edi,%eax,4)
|
| addb $1,%al
|
| - jnc .L010w1stloop
|
| + jnc .L012w1stloop
|
| xorl %ecx,%ecx
|
| xorl %edx,%edx
|
| .align 16
|
| -.L011w2ndloop:
|
| +.L013w2ndloop:
|
| movl (%edi,%ecx,4),%eax
|
| addb (%esi,%ebp,1),%dl
|
| addb %al,%dl
|
| addl $1,%ebp
|
| movl (%edi,%edx,4),%ebx
|
| - jnz .L012wnowrap
|
| + jnz .L014wnowrap
|
| movl -4(%edi),%ebp
|
| -.L012wnowrap:
|
| +.L014wnowrap:
|
| movl %eax,(%edi,%edx,4)
|
| movl %ebx,(%edi,%ecx,4)
|
| addb $1,%cl
|
| - jnc .L011w2ndloop
|
| - jmp .L013exit
|
| + jnc .L013w2ndloop
|
| + jmp .L015exit
|
| .align 16
|
| -.L009c1stloop:
|
| +.L011c1stloop:
|
| movb %al,(%edi,%eax,1)
|
| addb $1,%al
|
| - jnc .L009c1stloop
|
| + jnc .L011c1stloop
|
| xorl %ecx,%ecx
|
| xorl %edx,%edx
|
| xorl %ebx,%ebx
|
| .align 16
|
| -.L014c2ndloop:
|
| +.L016c2ndloop:
|
| movb (%edi,%ecx,1),%al
|
| addb (%esi,%ebp,1),%dl
|
| addb %al,%dl
|
| addl $1,%ebp
|
| movb (%edi,%edx,1),%bl
|
| - jnz .L015cnowrap
|
| + jnz .L017cnowrap
|
| movl -4(%edi),%ebp
|
| -.L015cnowrap:
|
| +.L017cnowrap:
|
| movb %al,(%edi,%edx,1)
|
| movb %bl,(%edi,%ecx,1)
|
| addb $1,%cl
|
| - jnc .L014c2ndloop
|
| + jnc .L016c2ndloop
|
| movl $-1,256(%edi)
|
| -.L013exit:
|
| +.L015exit:
|
| xorl %eax,%eax
|
| movl %eax,-8(%edi)
|
| movl %eax,-4(%edi)
|
| @@ -344,24 +350,27 @@ RC4_set_key:
|
| .align 16
|
| RC4_options:
|
| .L_RC4_options_begin:
|
| - call .L016pic_point
|
| -.L016pic_point:
|
| + call .L018pic_point
|
| +.L018pic_point:
|
| popl %eax
|
| - leal .L017opts-.L016pic_point(%eax),%eax
|
| - leal OPENSSL_ia32cap_P,%edx
|
| + leal .L019opts-.L018pic_point(%eax),%eax
|
| + call .L020PIC_me_up
|
| +.L020PIC_me_up:
|
| + popl %edx
|
| + leal OPENSSL_ia32cap_P-.L020PIC_me_up(%edx),%edx
|
| movl (%edx),%edx
|
| btl $20,%edx
|
| - jc .L0181xchar
|
| + jc .L0211xchar
|
| btl $26,%edx
|
| - jnc .L019ret
|
| + jnc .L022ret
|
| addl $25,%eax
|
| ret
|
| -.L0181xchar:
|
| +.L0211xchar:
|
| addl $12,%eax
|
| -.L019ret:
|
| +.L022ret:
|
| ret
|
| .align 64
|
| -.L017opts:
|
| +.L019opts:
|
| .byte 114,99,52,40,52,120,44,105,110,116,41,0
|
| .byte 114,99,52,40,49,120,44,99,104,97,114,41,0
|
| .byte 114,99,52,40,56,120,44,109,109,120,41,0
|
| @@ -370,4 +379,4 @@ RC4_options:
|
| .byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
|
| .align 64
|
| .size RC4_options,.-.L_RC4_options_begin
|
| -#endif
|
| +#endif
|
|
|