Module Name: src
Committed By: christos
Date: Mon Mar 21 19:13:15 UTC 2016
Modified Files:
src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64:
sha1-x86_64.S x86_64cpuid.S
Log Message:
regen with old assembly stubs.
To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 \
src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/sha1-x86_64.S
cvs rdiff -u -r1.5 -r1.6 \
src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/x86_64cpuid.S
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/sha1-x86_64.S
diff -u src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/sha1-x86_64.S:1.9 src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/sha1-x86_64.S:1.10
--- src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/sha1-x86_64.S:1.9 Sun Mar 20 18:27:44 2016
+++ src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/sha1-x86_64.S Mon Mar 21 15:13:15 2016
@@ -6,37 +6,27 @@
.type sha1_block_data_order,@function
.align 16
sha1_block_data_order:
- movl OPENSSL_ia32cap_P+0@GOTPCREL(%rip),%r9d
- movl OPENSSL_ia32cap_P+4@GOTPCREL(%rip),%r8d
- movl OPENSSL_ia32cap_P+8@GOTPCREL(%rip),%r10d
- testl $512,%r8d
- jz .Lialu
- testl $536870912,%r10d
- jnz _shaext_shortcut
- andl $296,%r10d
- cmpl $296,%r10d
- je _avx2_shortcut
- andl $268435456,%r8d
- andl $1073741824,%r9d
- orl %r9d,%r8d
- cmpl $1342177280,%r8d
- je _avx_shortcut
+ movq OPENSSL_ia32cap_P+0@GOTPCREL(%rip),%r8
+ movl 4(%r8),%r8d
+ btl $9,%r8d
+ jnc .Lialu
+ btl $28,%r8d
+ jc _avx_shortcut
jmp _ssse3_shortcut
.align 16
.Lialu:
- movq %rsp,%rax
pushq %rbx
pushq %rbp
pushq %r12
pushq %r13
- pushq %r14
+ movq %rsp,%r11
movq %rdi,%r8
subq $72,%rsp
movq %rsi,%r9
andq $-64,%rsp
movq %rdx,%r10
- movq %rax,64(%rsp)
+ movq %r11,64(%rsp)
.Lprologue:
movl 0(%r8),%esi
@@ -50,1168 +40,1230 @@ sha1_block_data_order:
.Lloop:
movl 0(%r9),%edx
bswapl %edx
- movl 4(%r9),%ebp
- movl %r12d,%eax
movl %edx,0(%rsp)
+ movl %r11d,%eax
+ movl 4(%r9),%ebp
movl %esi,%ecx
+ xorl %r12d,%eax
bswapl %ebp
- xorl %r11d,%eax
roll $5,%ecx
- andl %edi,%eax
leal 1518500249(%rdx,%r13,1),%r13d
+ andl %edi,%eax
+ movl %ebp,4(%rsp)
addl %ecx,%r13d
xorl %r12d,%eax
roll $30,%edi
addl %eax,%r13d
- movl 8(%r9),%r14d
- movl %r11d,%eax
- movl %ebp,4(%rsp)
+ movl %edi,%eax
+ movl 8(%r9),%edx
movl %r13d,%ecx
- bswapl %r14d
- xorl %edi,%eax
+ xorl %r11d,%eax
+ bswapl %edx
roll $5,%ecx
- andl %esi,%eax
leal 1518500249(%rbp,%r12,1),%r12d
+ andl %esi,%eax
+ movl %edx,8(%rsp)
addl %ecx,%r12d
xorl %r11d,%eax
roll $30,%esi
addl %eax,%r12d
- movl 12(%r9),%edx
- movl %edi,%eax
- movl %r14d,8(%rsp)
+ movl %esi,%eax
+ movl 12(%r9),%ebp
movl %r12d,%ecx
- bswapl %edx
- xorl %esi,%eax
+ xorl %edi,%eax
+ bswapl %ebp
roll $5,%ecx
+ leal 1518500249(%rdx,%r11,1),%r11d
andl %r13d,%eax
- leal 1518500249(%r14,%r11,1),%r11d
+ movl %ebp,12(%rsp)
addl %ecx,%r11d
xorl %edi,%eax
roll $30,%r13d
addl %eax,%r11d
- movl 16(%r9),%ebp
- movl %esi,%eax
- movl %edx,12(%rsp)
+ movl %r13d,%eax
+ movl 16(%r9),%edx
movl %r11d,%ecx
- bswapl %ebp
- xorl %r13d,%eax
+ xorl %esi,%eax
+ bswapl %edx
roll $5,%ecx
+ leal 1518500249(%rbp,%rdi,1),%edi
andl %r12d,%eax
- leal 1518500249(%rdx,%rdi,1),%edi
+ movl %edx,16(%rsp)
addl %ecx,%edi
xorl %esi,%eax
roll $30,%r12d
addl %eax,%edi
- movl 20(%r9),%r14d
- movl %r13d,%eax
- movl %ebp,16(%rsp)
+ movl %r12d,%eax
+ movl 20(%r9),%ebp
movl %edi,%ecx
- bswapl %r14d
- xorl %r12d,%eax
+ xorl %r13d,%eax
+ bswapl %ebp
roll $5,%ecx
+ leal 1518500249(%rdx,%rsi,1),%esi
andl %r11d,%eax
- leal 1518500249(%rbp,%rsi,1),%esi
+ movl %ebp,20(%rsp)
addl %ecx,%esi
xorl %r13d,%eax
roll $30,%r11d
addl %eax,%esi
+ movl %r11d,%eax
movl 24(%r9),%edx
- movl %r12d,%eax
- movl %r14d,20(%rsp)
movl %esi,%ecx
+ xorl %r12d,%eax
bswapl %edx
- xorl %r11d,%eax
roll $5,%ecx
+ leal 1518500249(%rbp,%r13,1),%r13d
andl %edi,%eax
- leal 1518500249(%r14,%r13,1),%r13d
+ movl %edx,24(%rsp)
addl %ecx,%r13d
xorl %r12d,%eax
roll $30,%edi
addl %eax,%r13d
+ movl %edi,%eax
movl 28(%r9),%ebp
- movl %r11d,%eax
- movl %edx,24(%rsp)
movl %r13d,%ecx
+ xorl %r11d,%eax
bswapl %ebp
- xorl %edi,%eax
roll $5,%ecx
- andl %esi,%eax
leal 1518500249(%rdx,%r12,1),%r12d
+ andl %esi,%eax
+ movl %ebp,28(%rsp)
addl %ecx,%r12d
xorl %r11d,%eax
roll $30,%esi
addl %eax,%r12d
- movl 32(%r9),%r14d
- movl %edi,%eax
- movl %ebp,28(%rsp)
+ movl %esi,%eax
+ movl 32(%r9),%edx
movl %r12d,%ecx
- bswapl %r14d
- xorl %esi,%eax
+ xorl %edi,%eax
+ bswapl %edx
roll $5,%ecx
- andl %r13d,%eax
leal 1518500249(%rbp,%r11,1),%r11d
+ andl %r13d,%eax
+ movl %edx,32(%rsp)
addl %ecx,%r11d
xorl %edi,%eax
roll $30,%r13d
addl %eax,%r11d
- movl 36(%r9),%edx
- movl %esi,%eax
- movl %r14d,32(%rsp)
+ movl %r13d,%eax
+ movl 36(%r9),%ebp
movl %r11d,%ecx
- bswapl %edx
- xorl %r13d,%eax
+ xorl %esi,%eax
+ bswapl %ebp
roll $5,%ecx
+ leal 1518500249(%rdx,%rdi,1),%edi
andl %r12d,%eax
- leal 1518500249(%r14,%rdi,1),%edi
+ movl %ebp,36(%rsp)
addl %ecx,%edi
xorl %esi,%eax
roll $30,%r12d
addl %eax,%edi
- movl 40(%r9),%ebp
- movl %r13d,%eax
- movl %edx,36(%rsp)
+ movl %r12d,%eax
+ movl 40(%r9),%edx
movl %edi,%ecx
- bswapl %ebp
- xorl %r12d,%eax
+ xorl %r13d,%eax
+ bswapl %edx
roll $5,%ecx
+ leal 1518500249(%rbp,%rsi,1),%esi
andl %r11d,%eax
- leal 1518500249(%rdx,%rsi,1),%esi
+ movl %edx,40(%rsp)
addl %ecx,%esi
xorl %r13d,%eax
roll $30,%r11d
addl %eax,%esi
- movl 44(%r9),%r14d
- movl %r12d,%eax
- movl %ebp,40(%rsp)
+ movl %r11d,%eax
+ movl 44(%r9),%ebp
movl %esi,%ecx
- bswapl %r14d
- xorl %r11d,%eax
+ xorl %r12d,%eax
+ bswapl %ebp
roll $5,%ecx
+ leal 1518500249(%rdx,%r13,1),%r13d
andl %edi,%eax
- leal 1518500249(%rbp,%r13,1),%r13d
+ movl %ebp,44(%rsp)
addl %ecx,%r13d
xorl %r12d,%eax
roll $30,%edi
addl %eax,%r13d
+ movl %edi,%eax
movl 48(%r9),%edx
- movl %r11d,%eax
- movl %r14d,44(%rsp)
movl %r13d,%ecx
+ xorl %r11d,%eax
bswapl %edx
- xorl %edi,%eax
roll $5,%ecx
+ leal 1518500249(%rbp,%r12,1),%r12d
andl %esi,%eax
- leal 1518500249(%r14,%r12,1),%r12d
+ movl %edx,48(%rsp)
addl %ecx,%r12d
xorl %r11d,%eax
roll $30,%esi
addl %eax,%r12d
+ movl %esi,%eax
movl 52(%r9),%ebp
- movl %edi,%eax
- movl %edx,48(%rsp)
movl %r12d,%ecx
+ xorl %edi,%eax
bswapl %ebp
- xorl %esi,%eax
roll $5,%ecx
- andl %r13d,%eax
leal 1518500249(%rdx,%r11,1),%r11d
+ andl %r13d,%eax
+ movl %ebp,52(%rsp)
addl %ecx,%r11d
xorl %edi,%eax
roll $30,%r13d
addl %eax,%r11d
- movl 56(%r9),%r14d
- movl %esi,%eax
- movl %ebp,52(%rsp)
+ movl %r13d,%eax
+ movl 56(%r9),%edx
movl %r11d,%ecx
- bswapl %r14d
- xorl %r13d,%eax
+ xorl %esi,%eax
+ bswapl %edx
roll $5,%ecx
- andl %r12d,%eax
leal 1518500249(%rbp,%rdi,1),%edi
+ andl %r12d,%eax
+ movl %edx,56(%rsp)
addl %ecx,%edi
xorl %esi,%eax
roll $30,%r12d
addl %eax,%edi
- movl 60(%r9),%edx
- movl %r13d,%eax
- movl %r14d,56(%rsp)
+ movl %r12d,%eax
+ movl 60(%r9),%ebp
movl %edi,%ecx
- bswapl %edx
- xorl %r12d,%eax
+ xorl %r13d,%eax
+ bswapl %ebp
roll $5,%ecx
+ leal 1518500249(%rdx,%rsi,1),%esi
andl %r11d,%eax
- leal 1518500249(%r14,%rsi,1),%esi
+ movl %ebp,60(%rsp)
addl %ecx,%esi
xorl %r13d,%eax
roll $30,%r11d
addl %eax,%esi
- xorl 0(%rsp),%ebp
- movl %r12d,%eax
- movl %edx,60(%rsp)
+ movl 0(%rsp),%edx
+ movl %r11d,%eax
movl %esi,%ecx
- xorl 8(%rsp),%ebp
- xorl %r11d,%eax
+ xorl 8(%rsp),%edx
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 32(%rsp),%ebp
+ xorl 32(%rsp),%edx
andl %edi,%eax
- leal 1518500249(%rdx,%r13,1),%r13d
- roll $30,%edi
+ leal 1518500249(%rbp,%r13,1),%r13d
+ xorl 52(%rsp),%edx
xorl %r12d,%eax
+ roll $1,%edx
addl %ecx,%r13d
- roll $1,%ebp
+ roll $30,%edi
+ movl %edx,0(%rsp)
addl %eax,%r13d
- xorl 4(%rsp),%r14d
- movl %r11d,%eax
- movl %ebp,0(%rsp)
+ movl 4(%rsp),%ebp
+ movl %edi,%eax
movl %r13d,%ecx
- xorl 12(%rsp),%r14d
- xorl %edi,%eax
+ xorl 12(%rsp),%ebp
+ xorl %r11d,%eax
roll $5,%ecx
- xorl 36(%rsp),%r14d
+ xorl 36(%rsp),%ebp
andl %esi,%eax
- leal 1518500249(%rbp,%r12,1),%r12d
- roll $30,%esi
+ leal 1518500249(%rdx,%r12,1),%r12d
+ xorl 56(%rsp),%ebp
xorl %r11d,%eax
+ roll $1,%ebp
addl %ecx,%r12d
- roll $1,%r14d
+ roll $30,%esi
+ movl %ebp,4(%rsp)
addl %eax,%r12d
- xorl 8(%rsp),%edx
- movl %edi,%eax
- movl %r14d,4(%rsp)
+ movl 8(%rsp),%edx
+ movl %esi,%eax
movl %r12d,%ecx
xorl 16(%rsp),%edx
- xorl %esi,%eax
+ xorl %edi,%eax
roll $5,%ecx
xorl 40(%rsp),%edx
andl %r13d,%eax
- leal 1518500249(%r14,%r11,1),%r11d
- roll $30,%r13d
+ leal 1518500249(%rbp,%r11,1),%r11d
+ xorl 60(%rsp),%edx
xorl %edi,%eax
- addl %ecx,%r11d
roll $1,%edx
- addl %eax,%r11d
- xorl 12(%rsp),%ebp
- movl %esi,%eax
+ addl %ecx,%r11d
+ roll $30,%r13d
movl %edx,8(%rsp)
+ addl %eax,%r11d
+ movl 12(%rsp),%ebp
+ movl %r13d,%eax
movl %r11d,%ecx
xorl 20(%rsp),%ebp
- xorl %r13d,%eax
+ xorl %esi,%eax
roll $5,%ecx
xorl 44(%rsp),%ebp
andl %r12d,%eax
leal 1518500249(%rdx,%rdi,1),%edi
- roll $30,%r12d
+ xorl 0(%rsp),%ebp
xorl %esi,%eax
- addl %ecx,%edi
roll $1,%ebp
- addl %eax,%edi
- xorl 16(%rsp),%r14d
- movl %r13d,%eax
+ addl %ecx,%edi
+ roll $30,%r12d
movl %ebp,12(%rsp)
+ addl %eax,%edi
+ movl 16(%rsp),%edx
+ movl %r12d,%eax
movl %edi,%ecx
- xorl 24(%rsp),%r14d
- xorl %r12d,%eax
+ xorl 24(%rsp),%edx
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 48(%rsp),%r14d
+ xorl 48(%rsp),%edx
andl %r11d,%eax
leal 1518500249(%rbp,%rsi,1),%esi
- roll $30,%r11d
+ xorl 4(%rsp),%edx
xorl %r13d,%eax
+ roll $1,%edx
addl %ecx,%esi
- roll $1,%r14d
+ roll $30,%r11d
+ movl %edx,16(%rsp)
addl %eax,%esi
- xorl 20(%rsp),%edx
- movl %edi,%eax
- movl %r14d,16(%rsp)
+ movl 20(%rsp),%ebp
+ movl %r11d,%eax
movl %esi,%ecx
- xorl 28(%rsp),%edx
- xorl %r12d,%eax
+ xorl 28(%rsp),%ebp
+ xorl %edi,%eax
roll $5,%ecx
- xorl 52(%rsp),%edx
- leal 1859775393(%r14,%r13,1),%r13d
- xorl %r11d,%eax
+ leal 1859775393(%rdx,%r13,1),%r13d
+ xorl 52(%rsp),%ebp
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 8(%rsp),%ebp
roll $30,%edi
addl %eax,%r13d
- roll $1,%edx
- xorl 24(%rsp),%ebp
- movl %esi,%eax
- movl %edx,20(%rsp)
+ roll $1,%ebp
+ movl %ebp,20(%rsp)
+ movl 24(%rsp),%edx
+ movl %edi,%eax
movl %r13d,%ecx
- xorl 32(%rsp),%ebp
- xorl %r11d,%eax
+ xorl 32(%rsp),%edx
+ xorl %esi,%eax
roll $5,%ecx
- xorl 56(%rsp),%ebp
- leal 1859775393(%rdx,%r12,1),%r12d
- xorl %edi,%eax
+ leal 1859775393(%rbp,%r12,1),%r12d
+ xorl 56(%rsp),%edx
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 12(%rsp),%edx
roll $30,%esi
addl %eax,%r12d
- roll $1,%ebp
- xorl 28(%rsp),%r14d
- movl %r13d,%eax
- movl %ebp,24(%rsp)
+ roll $1,%edx
+ movl %edx,24(%rsp)
+ movl 28(%rsp),%ebp
+ movl %esi,%eax
movl %r12d,%ecx
- xorl 36(%rsp),%r14d
- xorl %edi,%eax
+ xorl 36(%rsp),%ebp
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 60(%rsp),%r14d
- leal 1859775393(%rbp,%r11,1),%r11d
- xorl %esi,%eax
+ leal 1859775393(%rdx,%r11,1),%r11d
+ xorl 60(%rsp),%ebp
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 16(%rsp),%ebp
roll $30,%r13d
addl %eax,%r11d
- roll $1,%r14d
- xorl 32(%rsp),%edx
- movl %r12d,%eax
- movl %r14d,28(%rsp)
+ roll $1,%ebp
+ movl %ebp,28(%rsp)
+ movl 32(%rsp),%edx
+ movl %r13d,%eax
movl %r11d,%ecx
xorl 40(%rsp),%edx
- xorl %esi,%eax
+ xorl %r12d,%eax
roll $5,%ecx
+ leal 1859775393(%rbp,%rdi,1),%edi
xorl 0(%rsp),%edx
- leal 1859775393(%r14,%rdi,1),%edi
- xorl %r13d,%eax
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 20(%rsp),%edx
roll $30,%r12d
addl %eax,%edi
roll $1,%edx
- xorl 36(%rsp),%ebp
- movl %r11d,%eax
movl %edx,32(%rsp)
+ movl 36(%rsp),%ebp
+ movl %r12d,%eax
movl %edi,%ecx
xorl 44(%rsp),%ebp
- xorl %r13d,%eax
+ xorl %r11d,%eax
roll $5,%ecx
- xorl 4(%rsp),%ebp
leal 1859775393(%rdx,%rsi,1),%esi
- xorl %r12d,%eax
+ xorl 4(%rsp),%ebp
+ xorl %r13d,%eax
addl %ecx,%esi
+ xorl 24(%rsp),%ebp
roll $30,%r11d
addl %eax,%esi
roll $1,%ebp
- xorl 40(%rsp),%r14d
- movl %edi,%eax
movl %ebp,36(%rsp)
+ movl 40(%rsp),%edx
+ movl %r11d,%eax
movl %esi,%ecx
- xorl 48(%rsp),%r14d
- xorl %r12d,%eax
+ xorl 48(%rsp),%edx
+ xorl %edi,%eax
roll $5,%ecx
- xorl 8(%rsp),%r14d
leal 1859775393(%rbp,%r13,1),%r13d
- xorl %r11d,%eax
+ xorl 8(%rsp),%edx
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 28(%rsp),%edx
roll $30,%edi
addl %eax,%r13d
- roll $1,%r14d
- xorl 44(%rsp),%edx
- movl %esi,%eax
- movl %r14d,40(%rsp)
+ roll $1,%edx
+ movl %edx,40(%rsp)
+ movl 44(%rsp),%ebp
+ movl %edi,%eax
movl %r13d,%ecx
- xorl 52(%rsp),%edx
- xorl %r11d,%eax
+ xorl 52(%rsp),%ebp
+ xorl %esi,%eax
roll $5,%ecx
- xorl 12(%rsp),%edx
- leal 1859775393(%r14,%r12,1),%r12d
- xorl %edi,%eax
+ leal 1859775393(%rdx,%r12,1),%r12d
+ xorl 12(%rsp),%ebp
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 32(%rsp),%ebp
roll $30,%esi
addl %eax,%r12d
- roll $1,%edx
- xorl 48(%rsp),%ebp
- movl %r13d,%eax
- movl %edx,44(%rsp)
+ roll $1,%ebp
+ movl %ebp,44(%rsp)
+ movl 48(%rsp),%edx
+ movl %esi,%eax
movl %r12d,%ecx
- xorl 56(%rsp),%ebp
- xorl %edi,%eax
+ xorl 56(%rsp),%edx
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 16(%rsp),%ebp
- leal 1859775393(%rdx,%r11,1),%r11d
- xorl %esi,%eax
+ leal 1859775393(%rbp,%r11,1),%r11d
+ xorl 16(%rsp),%edx
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 36(%rsp),%edx
roll $30,%r13d
addl %eax,%r11d
- roll $1,%ebp
- xorl 52(%rsp),%r14d
- movl %r12d,%eax
- movl %ebp,48(%rsp)
+ roll $1,%edx
+ movl %edx,48(%rsp)
+ movl 52(%rsp),%ebp
+ movl %r13d,%eax
movl %r11d,%ecx
- xorl 60(%rsp),%r14d
- xorl %esi,%eax
+ xorl 60(%rsp),%ebp
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 20(%rsp),%r14d
- leal 1859775393(%rbp,%rdi,1),%edi
- xorl %r13d,%eax
+ leal 1859775393(%rdx,%rdi,1),%edi
+ xorl 20(%rsp),%ebp
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 40(%rsp),%ebp
roll $30,%r12d
addl %eax,%edi
- roll $1,%r14d
- xorl 56(%rsp),%edx
- movl %r11d,%eax
- movl %r14d,52(%rsp)
+ roll $1,%ebp
+ movl %ebp,52(%rsp)
+ movl 56(%rsp),%edx
+ movl %r12d,%eax
movl %edi,%ecx
xorl 0(%rsp),%edx
- xorl %r13d,%eax
+ xorl %r11d,%eax
roll $5,%ecx
+ leal 1859775393(%rbp,%rsi,1),%esi
xorl 24(%rsp),%edx
- leal 1859775393(%r14,%rsi,1),%esi
- xorl %r12d,%eax
+ xorl %r13d,%eax
addl %ecx,%esi
+ xorl 44(%rsp),%edx
roll $30,%r11d
addl %eax,%esi
roll $1,%edx
- xorl 60(%rsp),%ebp
- movl %edi,%eax
movl %edx,56(%rsp)
+ movl 60(%rsp),%ebp
+ movl %r11d,%eax
movl %esi,%ecx
xorl 4(%rsp),%ebp
- xorl %r12d,%eax
+ xorl %edi,%eax
roll $5,%ecx
- xorl 28(%rsp),%ebp
leal 1859775393(%rdx,%r13,1),%r13d
- xorl %r11d,%eax
+ xorl 28(%rsp),%ebp
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 48(%rsp),%ebp
roll $30,%edi
addl %eax,%r13d
roll $1,%ebp
- xorl 0(%rsp),%r14d
- movl %esi,%eax
movl %ebp,60(%rsp)
+ movl 0(%rsp),%edx
+ movl %edi,%eax
movl %r13d,%ecx
- xorl 8(%rsp),%r14d
- xorl %r11d,%eax
+ xorl 8(%rsp),%edx
+ xorl %esi,%eax
roll $5,%ecx
- xorl 32(%rsp),%r14d
leal 1859775393(%rbp,%r12,1),%r12d
- xorl %edi,%eax
+ xorl 32(%rsp),%edx
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 52(%rsp),%edx
roll $30,%esi
addl %eax,%r12d
- roll $1,%r14d
- xorl 4(%rsp),%edx
- movl %r13d,%eax
- movl %r14d,0(%rsp)
+ roll $1,%edx
+ movl %edx,0(%rsp)
+ movl 4(%rsp),%ebp
+ movl %esi,%eax
movl %r12d,%ecx
- xorl 12(%rsp),%edx
- xorl %edi,%eax
+ xorl 12(%rsp),%ebp
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 36(%rsp),%edx
- leal 1859775393(%r14,%r11,1),%r11d
- xorl %esi,%eax
+ leal 1859775393(%rdx,%r11,1),%r11d
+ xorl 36(%rsp),%ebp
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 56(%rsp),%ebp
roll $30,%r13d
addl %eax,%r11d
- roll $1,%edx
- xorl 8(%rsp),%ebp
- movl %r12d,%eax
- movl %edx,4(%rsp)
+ roll $1,%ebp
+ movl %ebp,4(%rsp)
+ movl 8(%rsp),%edx
+ movl %r13d,%eax
movl %r11d,%ecx
- xorl 16(%rsp),%ebp
- xorl %esi,%eax
+ xorl 16(%rsp),%edx
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 40(%rsp),%ebp
- leal 1859775393(%rdx,%rdi,1),%edi
- xorl %r13d,%eax
+ leal 1859775393(%rbp,%rdi,1),%edi
+ xorl 40(%rsp),%edx
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 60(%rsp),%edx
roll $30,%r12d
addl %eax,%edi
- roll $1,%ebp
- xorl 12(%rsp),%r14d
- movl %r11d,%eax
- movl %ebp,8(%rsp)
+ roll $1,%edx
+ movl %edx,8(%rsp)
+ movl 12(%rsp),%ebp
+ movl %r12d,%eax
movl %edi,%ecx
- xorl 20(%rsp),%r14d
- xorl %r13d,%eax
+ xorl 20(%rsp),%ebp
+ xorl %r11d,%eax
roll $5,%ecx
- xorl 44(%rsp),%r14d
- leal 1859775393(%rbp,%rsi,1),%esi
- xorl %r12d,%eax
+ leal 1859775393(%rdx,%rsi,1),%esi
+ xorl 44(%rsp),%ebp
+ xorl %r13d,%eax
addl %ecx,%esi
+ xorl 0(%rsp),%ebp
roll $30,%r11d
addl %eax,%esi
- roll $1,%r14d
- xorl 16(%rsp),%edx
- movl %edi,%eax
- movl %r14d,12(%rsp)
+ roll $1,%ebp
+ movl %ebp,12(%rsp)
+ movl 16(%rsp),%edx
+ movl %r11d,%eax
movl %esi,%ecx
xorl 24(%rsp),%edx
- xorl %r12d,%eax
+ xorl %edi,%eax
roll $5,%ecx
+ leal 1859775393(%rbp,%r13,1),%r13d
xorl 48(%rsp),%edx
- leal 1859775393(%r14,%r13,1),%r13d
- xorl %r11d,%eax
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 4(%rsp),%edx
roll $30,%edi
addl %eax,%r13d
roll $1,%edx
- xorl 20(%rsp),%ebp
- movl %esi,%eax
movl %edx,16(%rsp)
+ movl 20(%rsp),%ebp
+ movl %edi,%eax
movl %r13d,%ecx
xorl 28(%rsp),%ebp
- xorl %r11d,%eax
+ xorl %esi,%eax
roll $5,%ecx
- xorl 52(%rsp),%ebp
leal 1859775393(%rdx,%r12,1),%r12d
- xorl %edi,%eax
+ xorl 52(%rsp),%ebp
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 8(%rsp),%ebp
roll $30,%esi
addl %eax,%r12d
roll $1,%ebp
- xorl 24(%rsp),%r14d
- movl %r13d,%eax
movl %ebp,20(%rsp)
+ movl 24(%rsp),%edx
+ movl %esi,%eax
movl %r12d,%ecx
- xorl 32(%rsp),%r14d
- xorl %edi,%eax
+ xorl 32(%rsp),%edx
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 56(%rsp),%r14d
leal 1859775393(%rbp,%r11,1),%r11d
- xorl %esi,%eax
+ xorl 56(%rsp),%edx
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 12(%rsp),%edx
roll $30,%r13d
addl %eax,%r11d
- roll $1,%r14d
- xorl 28(%rsp),%edx
- movl %r12d,%eax
- movl %r14d,24(%rsp)
+ roll $1,%edx
+ movl %edx,24(%rsp)
+ movl 28(%rsp),%ebp
+ movl %r13d,%eax
movl %r11d,%ecx
- xorl 36(%rsp),%edx
- xorl %esi,%eax
+ xorl 36(%rsp),%ebp
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 60(%rsp),%edx
- leal 1859775393(%r14,%rdi,1),%edi
- xorl %r13d,%eax
+ leal 1859775393(%rdx,%rdi,1),%edi
+ xorl 60(%rsp),%ebp
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 16(%rsp),%ebp
roll $30,%r12d
addl %eax,%edi
- roll $1,%edx
- xorl 32(%rsp),%ebp
- movl %r11d,%eax
- movl %edx,28(%rsp)
+ roll $1,%ebp
+ movl %ebp,28(%rsp)
+ movl 32(%rsp),%edx
+ movl %r12d,%eax
movl %edi,%ecx
- xorl 40(%rsp),%ebp
- xorl %r13d,%eax
+ xorl 40(%rsp),%edx
+ xorl %r11d,%eax
roll $5,%ecx
- xorl 0(%rsp),%ebp
- leal 1859775393(%rdx,%rsi,1),%esi
- xorl %r12d,%eax
+ leal 1859775393(%rbp,%rsi,1),%esi
+ xorl 0(%rsp),%edx
+ xorl %r13d,%eax
addl %ecx,%esi
+ xorl 20(%rsp),%edx
roll $30,%r11d
addl %eax,%esi
- roll $1,%ebp
- xorl 36(%rsp),%r14d
- movl %r12d,%eax
- movl %ebp,32(%rsp)
- movl %r12d,%ebx
- xorl 44(%rsp),%r14d
- andl %r11d,%eax
+ roll $1,%edx
+ movl %edx,32(%rsp)
+ movl 36(%rsp),%ebp
+ movl %r11d,%eax
+ movl %r11d,%ebx
+ xorl 44(%rsp),%ebp
+ andl %r12d,%eax
movl %esi,%ecx
- xorl 4(%rsp),%r14d
- leal -1894007588(%rbp,%r13,1),%r13d
- xorl %r11d,%ebx
+ xorl 4(%rsp),%ebp
+ xorl %r12d,%ebx
+ leal -1894007588(%rdx,%r13,1),%r13d
roll $5,%ecx
+ xorl 24(%rsp),%ebp
addl %eax,%r13d
- roll $1,%r14d
andl %edi,%ebx
- addl %ecx,%r13d
- roll $30,%edi
+ roll $1,%ebp
addl %ebx,%r13d
- xorl 40(%rsp),%edx
- movl %r11d,%eax
- movl %r14d,36(%rsp)
- movl %r11d,%ebx
+ roll $30,%edi
+ movl %ebp,36(%rsp)
+ addl %ecx,%r13d
+ movl 40(%rsp),%edx
+ movl %edi,%eax
+ movl %edi,%ebx
xorl 48(%rsp),%edx
- andl %edi,%eax
+ andl %r11d,%eax
movl %r13d,%ecx
xorl 8(%rsp),%edx
- leal -1894007588(%r14,%r12,1),%r12d
- xorl %edi,%ebx
+ xorl %r11d,%ebx
+ leal -1894007588(%rbp,%r12,1),%r12d
roll $5,%ecx
+ xorl 28(%rsp),%edx
addl %eax,%r12d
- roll $1,%edx
andl %esi,%ebx
- addl %ecx,%r12d
- roll $30,%esi
+ roll $1,%edx
addl %ebx,%r12d
- xorl 44(%rsp),%ebp
- movl %edi,%eax
+ roll $30,%esi
movl %edx,40(%rsp)
- movl %edi,%ebx
+ addl %ecx,%r12d
+ movl 44(%rsp),%ebp
+ movl %esi,%eax
+ movl %esi,%ebx
xorl 52(%rsp),%ebp
- andl %esi,%eax
+ andl %edi,%eax
movl %r12d,%ecx
xorl 12(%rsp),%ebp
+ xorl %edi,%ebx
leal -1894007588(%rdx,%r11,1),%r11d
- xorl %esi,%ebx
roll $5,%ecx
+ xorl 32(%rsp),%ebp
addl %eax,%r11d
- roll $1,%ebp
andl %r13d,%ebx
- addl %ecx,%r11d
- roll $30,%r13d
+ roll $1,%ebp
addl %ebx,%r11d
- xorl 48(%rsp),%r14d
- movl %esi,%eax
+ roll $30,%r13d
movl %ebp,44(%rsp)
- movl %esi,%ebx
- xorl 56(%rsp),%r14d
- andl %r13d,%eax
+ addl %ecx,%r11d
+ movl 48(%rsp),%edx
+ movl %r13d,%eax
+ movl %r13d,%ebx
+ xorl 56(%rsp),%edx
+ andl %esi,%eax
movl %r11d,%ecx
- xorl 16(%rsp),%r14d
+ xorl 16(%rsp),%edx
+ xorl %esi,%ebx
leal -1894007588(%rbp,%rdi,1),%edi
- xorl %r13d,%ebx
roll $5,%ecx
+ xorl 36(%rsp),%edx
addl %eax,%edi
- roll $1,%r14d
andl %r12d,%ebx
- addl %ecx,%edi
- roll $30,%r12d
+ roll $1,%edx
addl %ebx,%edi
- xorl 52(%rsp),%edx
- movl %r13d,%eax
- movl %r14d,48(%rsp)
- movl %r13d,%ebx
- xorl 60(%rsp),%edx
- andl %r12d,%eax
+ roll $30,%r12d
+ movl %edx,48(%rsp)
+ addl %ecx,%edi
+ movl 52(%rsp),%ebp
+ movl %r12d,%eax
+ movl %r12d,%ebx
+ xorl 60(%rsp),%ebp
+ andl %r13d,%eax
movl %edi,%ecx
- xorl 20(%rsp),%edx
- leal -1894007588(%r14,%rsi,1),%esi
- xorl %r12d,%ebx
+ xorl 20(%rsp),%ebp
+ xorl %r13d,%ebx
+ leal -1894007588(%rdx,%rsi,1),%esi
roll $5,%ecx
+ xorl 40(%rsp),%ebp
addl %eax,%esi
- roll $1,%edx
andl %r11d,%ebx
- addl %ecx,%esi
- roll $30,%r11d
+ roll $1,%ebp
addl %ebx,%esi
- xorl 56(%rsp),%ebp
- movl %r12d,%eax
- movl %edx,52(%rsp)
- movl %r12d,%ebx
- xorl 0(%rsp),%ebp
- andl %r11d,%eax
+ roll $30,%r11d
+ movl %ebp,52(%rsp)
+ addl %ecx,%esi
+ movl 56(%rsp),%edx
+ movl %r11d,%eax
+ movl %r11d,%ebx
+ xorl 0(%rsp),%edx
+ andl %r12d,%eax
movl %esi,%ecx
- xorl 24(%rsp),%ebp
- leal -1894007588(%rdx,%r13,1),%r13d
- xorl %r11d,%ebx
+ xorl 24(%rsp),%edx
+ xorl %r12d,%ebx
+ leal -1894007588(%rbp,%r13,1),%r13d
roll $5,%ecx
+ xorl 44(%rsp),%edx
addl %eax,%r13d
- roll $1,%ebp
andl %edi,%ebx
- addl %ecx,%r13d
- roll $30,%edi
+ roll $1,%edx
addl %ebx,%r13d
- xorl 60(%rsp),%r14d
- movl %r11d,%eax
- movl %ebp,56(%rsp)
- movl %r11d,%ebx
- xorl 4(%rsp),%r14d
- andl %edi,%eax
+ roll $30,%edi
+ movl %edx,56(%rsp)
+ addl %ecx,%r13d
+ movl 60(%rsp),%ebp
+ movl %edi,%eax
+ movl %edi,%ebx
+ xorl 4(%rsp),%ebp
+ andl %r11d,%eax
movl %r13d,%ecx
- xorl 28(%rsp),%r14d
- leal -1894007588(%rbp,%r12,1),%r12d
- xorl %edi,%ebx
+ xorl 28(%rsp),%ebp
+ xorl %r11d,%ebx
+ leal -1894007588(%rdx,%r12,1),%r12d
roll $5,%ecx
+ xorl 48(%rsp),%ebp
addl %eax,%r12d
- roll $1,%r14d
andl %esi,%ebx
- addl %ecx,%r12d
- roll $30,%esi
+ roll $1,%ebp
addl %ebx,%r12d
- xorl 0(%rsp),%edx
- movl %edi,%eax
- movl %r14d,60(%rsp)
- movl %edi,%ebx
+ roll $30,%esi
+ movl %ebp,60(%rsp)
+ addl %ecx,%r12d
+ movl 0(%rsp),%edx
+ movl %esi,%eax
+ movl %esi,%ebx
xorl 8(%rsp),%edx
- andl %esi,%eax
+ andl %edi,%eax
movl %r12d,%ecx
xorl 32(%rsp),%edx
- leal -1894007588(%r14,%r11,1),%r11d
- xorl %esi,%ebx
+ xorl %edi,%ebx
+ leal -1894007588(%rbp,%r11,1),%r11d
roll $5,%ecx
+ xorl 52(%rsp),%edx
addl %eax,%r11d
- roll $1,%edx
andl %r13d,%ebx
- addl %ecx,%r11d
- roll $30,%r13d
+ roll $1,%edx
addl %ebx,%r11d
- xorl 4(%rsp),%ebp
- movl %esi,%eax
+ roll $30,%r13d
movl %edx,0(%rsp)
- movl %esi,%ebx
+ addl %ecx,%r11d
+ movl 4(%rsp),%ebp
+ movl %r13d,%eax
+ movl %r13d,%ebx
xorl 12(%rsp),%ebp
- andl %r13d,%eax
+ andl %esi,%eax
movl %r11d,%ecx
xorl 36(%rsp),%ebp
+ xorl %esi,%ebx
leal -1894007588(%rdx,%rdi,1),%edi
- xorl %r13d,%ebx
roll $5,%ecx
+ xorl 56(%rsp),%ebp
addl %eax,%edi
- roll $1,%ebp
andl %r12d,%ebx
- addl %ecx,%edi
- roll $30,%r12d
+ roll $1,%ebp
addl %ebx,%edi
- xorl 8(%rsp),%r14d
- movl %r13d,%eax
+ roll $30,%r12d
movl %ebp,4(%rsp)
- movl %r13d,%ebx
- xorl 16(%rsp),%r14d
- andl %r12d,%eax
+ addl %ecx,%edi
+ movl 8(%rsp),%edx
+ movl %r12d,%eax
+ movl %r12d,%ebx
+ xorl 16(%rsp),%edx
+ andl %r13d,%eax
movl %edi,%ecx
- xorl 40(%rsp),%r14d
+ xorl 40(%rsp),%edx
+ xorl %r13d,%ebx
leal -1894007588(%rbp,%rsi,1),%esi
- xorl %r12d,%ebx
roll $5,%ecx
+ xorl 60(%rsp),%edx
addl %eax,%esi
- roll $1,%r14d
andl %r11d,%ebx
- addl %ecx,%esi
- roll $30,%r11d
+ roll $1,%edx
addl %ebx,%esi
- xorl 12(%rsp),%edx
- movl %r12d,%eax
- movl %r14d,8(%rsp)
- movl %r12d,%ebx
- xorl 20(%rsp),%edx
- andl %r11d,%eax
+ roll $30,%r11d
+ movl %edx,8(%rsp)
+ addl %ecx,%esi
+ movl 12(%rsp),%ebp
+ movl %r11d,%eax
+ movl %r11d,%ebx
+ xorl 20(%rsp),%ebp
+ andl %r12d,%eax
movl %esi,%ecx
- xorl 44(%rsp),%edx
- leal -1894007588(%r14,%r13,1),%r13d
- xorl %r11d,%ebx
+ xorl 44(%rsp),%ebp
+ xorl %r12d,%ebx
+ leal -1894007588(%rdx,%r13,1),%r13d
roll $5,%ecx
+ xorl 0(%rsp),%ebp
addl %eax,%r13d
- roll $1,%edx
andl %edi,%ebx
- addl %ecx,%r13d
- roll $30,%edi
+ roll $1,%ebp
addl %ebx,%r13d
- xorl 16(%rsp),%ebp
- movl %r11d,%eax
- movl %edx,12(%rsp)
- movl %r11d,%ebx
- xorl 24(%rsp),%ebp
- andl %edi,%eax
+ roll $30,%edi
+ movl %ebp,12(%rsp)
+ addl %ecx,%r13d
+ movl 16(%rsp),%edx
+ movl %edi,%eax
+ movl %edi,%ebx
+ xorl 24(%rsp),%edx
+ andl %r11d,%eax
movl %r13d,%ecx
- xorl 48(%rsp),%ebp
- leal -1894007588(%rdx,%r12,1),%r12d
- xorl %edi,%ebx
+ xorl 48(%rsp),%edx
+ xorl %r11d,%ebx
+ leal -1894007588(%rbp,%r12,1),%r12d
roll $5,%ecx
+ xorl 4(%rsp),%edx
addl %eax,%r12d
- roll $1,%ebp
andl %esi,%ebx
- addl %ecx,%r12d
- roll $30,%esi
+ roll $1,%edx
addl %ebx,%r12d
- xorl 20(%rsp),%r14d
- movl %edi,%eax
- movl %ebp,16(%rsp)
- movl %edi,%ebx
- xorl 28(%rsp),%r14d
- andl %esi,%eax
+ roll $30,%esi
+ movl %edx,16(%rsp)
+ addl %ecx,%r12d
+ movl 20(%rsp),%ebp
+ movl %esi,%eax
+ movl %esi,%ebx
+ xorl 28(%rsp),%ebp
+ andl %edi,%eax
movl %r12d,%ecx
- xorl 52(%rsp),%r14d
- leal -1894007588(%rbp,%r11,1),%r11d
- xorl %esi,%ebx
+ xorl 52(%rsp),%ebp
+ xorl %edi,%ebx
+ leal -1894007588(%rdx,%r11,1),%r11d
roll $5,%ecx
+ xorl 8(%rsp),%ebp
addl %eax,%r11d
- roll $1,%r14d
andl %r13d,%ebx
- addl %ecx,%r11d
- roll $30,%r13d
+ roll $1,%ebp
addl %ebx,%r11d
- xorl 24(%rsp),%edx
- movl %esi,%eax
- movl %r14d,20(%rsp)
- movl %esi,%ebx
+ roll $30,%r13d
+ movl %ebp,20(%rsp)
+ addl %ecx,%r11d
+ movl 24(%rsp),%edx
+ movl %r13d,%eax
+ movl %r13d,%ebx
xorl 32(%rsp),%edx
- andl %r13d,%eax
+ andl %esi,%eax
movl %r11d,%ecx
xorl 56(%rsp),%edx
- leal -1894007588(%r14,%rdi,1),%edi
- xorl %r13d,%ebx
+ xorl %esi,%ebx
+ leal -1894007588(%rbp,%rdi,1),%edi
roll $5,%ecx
+ xorl 12(%rsp),%edx
addl %eax,%edi
- roll $1,%edx
andl %r12d,%ebx
- addl %ecx,%edi
- roll $30,%r12d
+ roll $1,%edx
addl %ebx,%edi
- xorl 28(%rsp),%ebp
- movl %r13d,%eax
+ roll $30,%r12d
movl %edx,24(%rsp)
- movl %r13d,%ebx
+ addl %ecx,%edi
+ movl 28(%rsp),%ebp
+ movl %r12d,%eax
+ movl %r12d,%ebx
xorl 36(%rsp),%ebp
- andl %r12d,%eax
+ andl %r13d,%eax
movl %edi,%ecx
xorl 60(%rsp),%ebp
+ xorl %r13d,%ebx
leal -1894007588(%rdx,%rsi,1),%esi
- xorl %r12d,%ebx
roll $5,%ecx
+ xorl 16(%rsp),%ebp
addl %eax,%esi
- roll $1,%ebp
andl %r11d,%ebx
- addl %ecx,%esi
- roll $30,%r11d
+ roll $1,%ebp
addl %ebx,%esi
- xorl 32(%rsp),%r14d
- movl %r12d,%eax
+ roll $30,%r11d
movl %ebp,28(%rsp)
- movl %r12d,%ebx
- xorl 40(%rsp),%r14d
- andl %r11d,%eax
+ addl %ecx,%esi
+ movl 32(%rsp),%edx
+ movl %r11d,%eax
+ movl %r11d,%ebx
+ xorl 40(%rsp),%edx
+ andl %r12d,%eax
movl %esi,%ecx
- xorl 0(%rsp),%r14d
+ xorl 0(%rsp),%edx
+ xorl %r12d,%ebx
leal -1894007588(%rbp,%r13,1),%r13d
- xorl %r11d,%ebx
roll $5,%ecx
+ xorl 20(%rsp),%edx
addl %eax,%r13d
- roll $1,%r14d
andl %edi,%ebx
- addl %ecx,%r13d
- roll $30,%edi
+ roll $1,%edx
addl %ebx,%r13d
- xorl 36(%rsp),%edx
- movl %r11d,%eax
- movl %r14d,32(%rsp)
- movl %r11d,%ebx
- xorl 44(%rsp),%edx
- andl %edi,%eax
+ roll $30,%edi
+ movl %edx,32(%rsp)
+ addl %ecx,%r13d
+ movl 36(%rsp),%ebp
+ movl %edi,%eax
+ movl %edi,%ebx
+ xorl 44(%rsp),%ebp
+ andl %r11d,%eax
movl %r13d,%ecx
- xorl 4(%rsp),%edx
- leal -1894007588(%r14,%r12,1),%r12d
- xorl %edi,%ebx
+ xorl 4(%rsp),%ebp
+ xorl %r11d,%ebx
+ leal -1894007588(%rdx,%r12,1),%r12d
roll $5,%ecx
+ xorl 24(%rsp),%ebp
addl %eax,%r12d
- roll $1,%edx
andl %esi,%ebx
- addl %ecx,%r12d
- roll $30,%esi
+ roll $1,%ebp
addl %ebx,%r12d
- xorl 40(%rsp),%ebp
- movl %edi,%eax
- movl %edx,36(%rsp)
- movl %edi,%ebx
- xorl 48(%rsp),%ebp
- andl %esi,%eax
+ roll $30,%esi
+ movl %ebp,36(%rsp)
+ addl %ecx,%r12d
+ movl 40(%rsp),%edx
+ movl %esi,%eax
+ movl %esi,%ebx
+ xorl 48(%rsp),%edx
+ andl %edi,%eax
movl %r12d,%ecx
- xorl 8(%rsp),%ebp
- leal -1894007588(%rdx,%r11,1),%r11d
- xorl %esi,%ebx
+ xorl 8(%rsp),%edx
+ xorl %edi,%ebx
+ leal -1894007588(%rbp,%r11,1),%r11d
roll $5,%ecx
+ xorl 28(%rsp),%edx
addl %eax,%r11d
- roll $1,%ebp
andl %r13d,%ebx
- addl %ecx,%r11d
- roll $30,%r13d
+ roll $1,%edx
addl %ebx,%r11d
- xorl 44(%rsp),%r14d
- movl %esi,%eax
- movl %ebp,40(%rsp)
- movl %esi,%ebx
- xorl 52(%rsp),%r14d
- andl %r13d,%eax
+ roll $30,%r13d
+ movl %edx,40(%rsp)
+ addl %ecx,%r11d
+ movl 44(%rsp),%ebp
+ movl %r13d,%eax
+ movl %r13d,%ebx
+ xorl 52(%rsp),%ebp
+ andl %esi,%eax
movl %r11d,%ecx
- xorl 12(%rsp),%r14d
- leal -1894007588(%rbp,%rdi,1),%edi
- xorl %r13d,%ebx
+ xorl 12(%rsp),%ebp
+ xorl %esi,%ebx
+ leal -1894007588(%rdx,%rdi,1),%edi
roll $5,%ecx
+ xorl 32(%rsp),%ebp
addl %eax,%edi
- roll $1,%r14d
andl %r12d,%ebx
- addl %ecx,%edi
- roll $30,%r12d
+ roll $1,%ebp
addl %ebx,%edi
- xorl 48(%rsp),%edx
- movl %r13d,%eax
- movl %r14d,44(%rsp)
- movl %r13d,%ebx
+ roll $30,%r12d
+ movl %ebp,44(%rsp)
+ addl %ecx,%edi
+ movl 48(%rsp),%edx
+ movl %r12d,%eax
+ movl %r12d,%ebx
xorl 56(%rsp),%edx
- andl %r12d,%eax
+ andl %r13d,%eax
movl %edi,%ecx
xorl 16(%rsp),%edx
- leal -1894007588(%r14,%rsi,1),%esi
- xorl %r12d,%ebx
+ xorl %r13d,%ebx
+ leal -1894007588(%rbp,%rsi,1),%esi
roll $5,%ecx
+ xorl 36(%rsp),%edx
addl %eax,%esi
- roll $1,%edx
andl %r11d,%ebx
- addl %ecx,%esi
- roll $30,%r11d
+ roll $1,%edx
addl %ebx,%esi
- xorl 52(%rsp),%ebp
- movl %edi,%eax
+ roll $30,%r11d
movl %edx,48(%rsp)
+ addl %ecx,%esi
+ movl 52(%rsp),%ebp
+ movl %r11d,%eax
movl %esi,%ecx
xorl 60(%rsp),%ebp
- xorl %r12d,%eax
+ xorl %edi,%eax
roll $5,%ecx
- xorl 20(%rsp),%ebp
leal -899497514(%rdx,%r13,1),%r13d
- xorl %r11d,%eax
+ xorl 20(%rsp),%ebp
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 40(%rsp),%ebp
roll $30,%edi
addl %eax,%r13d
roll $1,%ebp
- xorl 56(%rsp),%r14d
- movl %esi,%eax
movl %ebp,52(%rsp)
+ movl 56(%rsp),%edx
+ movl %edi,%eax
movl %r13d,%ecx
- xorl 0(%rsp),%r14d
- xorl %r11d,%eax
+ xorl 0(%rsp),%edx
+ xorl %esi,%eax
roll $5,%ecx
- xorl 24(%rsp),%r14d
leal -899497514(%rbp,%r12,1),%r12d
- xorl %edi,%eax
+ xorl 24(%rsp),%edx
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 44(%rsp),%edx
roll $30,%esi
addl %eax,%r12d
- roll $1,%r14d
- xorl 60(%rsp),%edx
- movl %r13d,%eax
- movl %r14d,56(%rsp)
+ roll $1,%edx
+ movl %edx,56(%rsp)
+ movl 60(%rsp),%ebp
+ movl %esi,%eax
movl %r12d,%ecx
- xorl 4(%rsp),%edx
- xorl %edi,%eax
+ xorl 4(%rsp),%ebp
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 28(%rsp),%edx
- leal -899497514(%r14,%r11,1),%r11d
- xorl %esi,%eax
+ leal -899497514(%rdx,%r11,1),%r11d
+ xorl 28(%rsp),%ebp
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 48(%rsp),%ebp
roll $30,%r13d
addl %eax,%r11d
- roll $1,%edx
- xorl 0(%rsp),%ebp
- movl %r12d,%eax
- movl %edx,60(%rsp)
+ roll $1,%ebp
+ movl %ebp,60(%rsp)
+ movl 0(%rsp),%edx
+ movl %r13d,%eax
movl %r11d,%ecx
- xorl 8(%rsp),%ebp
- xorl %esi,%eax
+ xorl 8(%rsp),%edx
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 32(%rsp),%ebp
- leal -899497514(%rdx,%rdi,1),%edi
- xorl %r13d,%eax
+ leal -899497514(%rbp,%rdi,1),%edi
+ xorl 32(%rsp),%edx
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 52(%rsp),%edx
roll $30,%r12d
addl %eax,%edi
- roll $1,%ebp
- xorl 4(%rsp),%r14d
- movl %r11d,%eax
- movl %ebp,0(%rsp)
+ roll $1,%edx
+ movl %edx,0(%rsp)
+ movl 4(%rsp),%ebp
+ movl %r12d,%eax
movl %edi,%ecx
- xorl 12(%rsp),%r14d
- xorl %r13d,%eax
+ xorl 12(%rsp),%ebp
+ xorl %r11d,%eax
roll $5,%ecx
- xorl 36(%rsp),%r14d
- leal -899497514(%rbp,%rsi,1),%esi
- xorl %r12d,%eax
+ leal -899497514(%rdx,%rsi,1),%esi
+ xorl 36(%rsp),%ebp
+ xorl %r13d,%eax
addl %ecx,%esi
+ xorl 56(%rsp),%ebp
roll $30,%r11d
addl %eax,%esi
- roll $1,%r14d
- xorl 8(%rsp),%edx
- movl %edi,%eax
- movl %r14d,4(%rsp)
+ roll $1,%ebp
+ movl %ebp,4(%rsp)
+ movl 8(%rsp),%edx
+ movl %r11d,%eax
movl %esi,%ecx
xorl 16(%rsp),%edx
- xorl %r12d,%eax
+ xorl %edi,%eax
roll $5,%ecx
+ leal -899497514(%rbp,%r13,1),%r13d
xorl 40(%rsp),%edx
- leal -899497514(%r14,%r13,1),%r13d
- xorl %r11d,%eax
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 60(%rsp),%edx
roll $30,%edi
addl %eax,%r13d
roll $1,%edx
- xorl 12(%rsp),%ebp
- movl %esi,%eax
movl %edx,8(%rsp)
+ movl 12(%rsp),%ebp
+ movl %edi,%eax
movl %r13d,%ecx
xorl 20(%rsp),%ebp
- xorl %r11d,%eax
+ xorl %esi,%eax
roll $5,%ecx
- xorl 44(%rsp),%ebp
leal -899497514(%rdx,%r12,1),%r12d
- xorl %edi,%eax
+ xorl 44(%rsp),%ebp
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 0(%rsp),%ebp
roll $30,%esi
addl %eax,%r12d
roll $1,%ebp
- xorl 16(%rsp),%r14d
- movl %r13d,%eax
movl %ebp,12(%rsp)
+ movl 16(%rsp),%edx
+ movl %esi,%eax
movl %r12d,%ecx
- xorl 24(%rsp),%r14d
- xorl %edi,%eax
+ xorl 24(%rsp),%edx
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 48(%rsp),%r14d
leal -899497514(%rbp,%r11,1),%r11d
- xorl %esi,%eax
+ xorl 48(%rsp),%edx
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 4(%rsp),%edx
roll $30,%r13d
addl %eax,%r11d
- roll $1,%r14d
- xorl 20(%rsp),%edx
- movl %r12d,%eax
- movl %r14d,16(%rsp)
+ roll $1,%edx
+ movl %edx,16(%rsp)
+ movl 20(%rsp),%ebp
+ movl %r13d,%eax
movl %r11d,%ecx
- xorl 28(%rsp),%edx
- xorl %esi,%eax
+ xorl 28(%rsp),%ebp
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 52(%rsp),%edx
- leal -899497514(%r14,%rdi,1),%edi
- xorl %r13d,%eax
+ leal -899497514(%rdx,%rdi,1),%edi
+ xorl 52(%rsp),%ebp
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 8(%rsp),%ebp
roll $30,%r12d
addl %eax,%edi
- roll $1,%edx
- xorl 24(%rsp),%ebp
- movl %r11d,%eax
- movl %edx,20(%rsp)
+ roll $1,%ebp
+ movl %ebp,20(%rsp)
+ movl 24(%rsp),%edx
+ movl %r12d,%eax
movl %edi,%ecx
- xorl 32(%rsp),%ebp
- xorl %r13d,%eax
+ xorl 32(%rsp),%edx
+ xorl %r11d,%eax
roll $5,%ecx
- xorl 56(%rsp),%ebp
- leal -899497514(%rdx,%rsi,1),%esi
- xorl %r12d,%eax
+ leal -899497514(%rbp,%rsi,1),%esi
+ xorl 56(%rsp),%edx
+ xorl %r13d,%eax
addl %ecx,%esi
+ xorl 12(%rsp),%edx
roll $30,%r11d
addl %eax,%esi
- roll $1,%ebp
- xorl 28(%rsp),%r14d
- movl %edi,%eax
- movl %ebp,24(%rsp)
+ roll $1,%edx
+ movl %edx,24(%rsp)
+ movl 28(%rsp),%ebp
+ movl %r11d,%eax
movl %esi,%ecx
- xorl 36(%rsp),%r14d
- xorl %r12d,%eax
+ xorl 36(%rsp),%ebp
+ xorl %edi,%eax
roll $5,%ecx
- xorl 60(%rsp),%r14d
- leal -899497514(%rbp,%r13,1),%r13d
- xorl %r11d,%eax
+ leal -899497514(%rdx,%r13,1),%r13d
+ xorl 60(%rsp),%ebp
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 16(%rsp),%ebp
roll $30,%edi
addl %eax,%r13d
- roll $1,%r14d
- xorl 32(%rsp),%edx
- movl %esi,%eax
- movl %r14d,28(%rsp)
+ roll $1,%ebp
+ movl %ebp,28(%rsp)
+ movl 32(%rsp),%edx
+ movl %edi,%eax
movl %r13d,%ecx
xorl 40(%rsp),%edx
- xorl %r11d,%eax
+ xorl %esi,%eax
roll $5,%ecx
+ leal -899497514(%rbp,%r12,1),%r12d
xorl 0(%rsp),%edx
- leal -899497514(%r14,%r12,1),%r12d
- xorl %edi,%eax
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 20(%rsp),%edx
roll $30,%esi
addl %eax,%r12d
roll $1,%edx
- xorl 36(%rsp),%ebp
- movl %r13d,%eax
-
+ movl %edx,32(%rsp)
+ movl 36(%rsp),%ebp
+ movl %esi,%eax
movl %r12d,%ecx
xorl 44(%rsp),%ebp
- xorl %edi,%eax
+ xorl %r13d,%eax
roll $5,%ecx
- xorl 4(%rsp),%ebp
leal -899497514(%rdx,%r11,1),%r11d
- xorl %esi,%eax
+ xorl 4(%rsp),%ebp
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 24(%rsp),%ebp
roll $30,%r13d
addl %eax,%r11d
roll $1,%ebp
- xorl 40(%rsp),%r14d
- movl %r12d,%eax
-
+ movl %ebp,36(%rsp)
+ movl 40(%rsp),%edx
+ movl %r13d,%eax
movl %r11d,%ecx
- xorl 48(%rsp),%r14d
- xorl %esi,%eax
+ xorl 48(%rsp),%edx
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 8(%rsp),%r14d
leal -899497514(%rbp,%rdi,1),%edi
- xorl %r13d,%eax
+ xorl 8(%rsp),%edx
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 28(%rsp),%edx
roll $30,%r12d
addl %eax,%edi
- roll $1,%r14d
- xorl 44(%rsp),%edx
- movl %r11d,%eax
-
+ roll $1,%edx
+ movl %edx,40(%rsp)
+ movl 44(%rsp),%ebp
+ movl %r12d,%eax
movl %edi,%ecx
- xorl 52(%rsp),%edx
- xorl %r13d,%eax
+ xorl 52(%rsp),%ebp
+ xorl %r11d,%eax
roll $5,%ecx
- xorl 12(%rsp),%edx
- leal -899497514(%r14,%rsi,1),%esi
- xorl %r12d,%eax
+ leal -899497514(%rdx,%rsi,1),%esi
+ xorl 12(%rsp),%ebp
+ xorl %r13d,%eax
addl %ecx,%esi
+ xorl 32(%rsp),%ebp
roll $30,%r11d
addl %eax,%esi
- roll $1,%edx
- xorl 48(%rsp),%ebp
- movl %edi,%eax
-
- movl %esi,%ecx
- xorl 56(%rsp),%ebp
- xorl %r12d,%eax
+ roll $1,%ebp
+ movl %ebp,44(%rsp)
+ movl 48(%rsp),%edx
+ movl %r11d,%eax
+ movl %esi,%ecx
+ xorl 56(%rsp),%edx
+ xorl %edi,%eax
roll $5,%ecx
- xorl 16(%rsp),%ebp
- leal -899497514(%rdx,%r13,1),%r13d
- xorl %r11d,%eax
+ leal -899497514(%rbp,%r13,1),%r13d
+ xorl 16(%rsp),%edx
+ xorl %r12d,%eax
addl %ecx,%r13d
+ xorl 36(%rsp),%edx
roll $30,%edi
addl %eax,%r13d
- roll $1,%ebp
- xorl 52(%rsp),%r14d
- movl %esi,%eax
-
+ roll $1,%edx
+ movl %edx,48(%rsp)
+ movl 52(%rsp),%ebp
+ movl %edi,%eax
movl %r13d,%ecx
- xorl 60(%rsp),%r14d
- xorl %r11d,%eax
+ xorl 60(%rsp),%ebp
+ xorl %esi,%eax
roll $5,%ecx
- xorl 20(%rsp),%r14d
- leal -899497514(%rbp,%r12,1),%r12d
- xorl %edi,%eax
+ leal -899497514(%rdx,%r12,1),%r12d
+ xorl 20(%rsp),%ebp
+ xorl %r11d,%eax
addl %ecx,%r12d
+ xorl 40(%rsp),%ebp
roll $30,%esi
addl %eax,%r12d
- roll $1,%r14d
- xorl 56(%rsp),%edx
- movl %r13d,%eax
-
+ roll $1,%ebp
+ movl 56(%rsp),%edx
+ movl %esi,%eax
movl %r12d,%ecx
xorl 0(%rsp),%edx
- xorl %edi,%eax
+ xorl %r13d,%eax
roll $5,%ecx
+ leal -899497514(%rbp,%r11,1),%r11d
xorl 24(%rsp),%edx
- leal -899497514(%r14,%r11,1),%r11d
- xorl %esi,%eax
+ xorl %edi,%eax
addl %ecx,%r11d
+ xorl 44(%rsp),%edx
roll $30,%r13d
addl %eax,%r11d
roll $1,%edx
- xorl 60(%rsp),%ebp
- movl %r12d,%eax
-
+ movl 60(%rsp),%ebp
+ movl %r13d,%eax
movl %r11d,%ecx
xorl 4(%rsp),%ebp
- xorl %esi,%eax
+ xorl %r12d,%eax
roll $5,%ecx
- xorl 28(%rsp),%ebp
leal -899497514(%rdx,%rdi,1),%edi
- xorl %r13d,%eax
+ xorl 28(%rsp),%ebp
+ xorl %esi,%eax
addl %ecx,%edi
+ xorl 48(%rsp),%ebp
roll $30,%r12d
addl %eax,%edi
roll $1,%ebp
- movl %r11d,%eax
+ movl %r12d,%eax
movl %edi,%ecx
- xorl %r13d,%eax
+ xorl %r11d,%eax
leal -899497514(%rbp,%rsi,1),%esi
roll $5,%ecx
- xorl %r12d,%eax
+ xorl %r13d,%eax
addl %ecx,%esi
roll $30,%r11d
addl %eax,%esi
@@ -1231,202 +1283,29 @@ sha1_block_data_order:
jnz .Lloop
movq 64(%rsp),%rsi
- movq -40(%rsi),%r14
- movq -32(%rsi),%r13
- movq -24(%rsi),%r12
- movq -16(%rsi),%rbp
- movq -8(%rsi),%rbx
- leaq (%rsi),%rsp
+ movq (%rsi),%r13
+ movq 8(%rsi),%r12
+ movq 16(%rsi),%rbp
+ movq 24(%rsi),%rbx
+ leaq 32(%rsi),%rsp
.Lepilogue:
.byte 0xf3,0xc3
.size sha1_block_data_order,.-sha1_block_data_order
-.type sha1_block_data_order_shaext,@function
-.align 32
-sha1_block_data_order_shaext:
-_shaext_shortcut:
- movdqu (%rdi),%xmm0
- movd 16(%rdi),%xmm1
- movdqa K_XX_XX+160(%rip),%xmm3
-
- movdqu (%rsi),%xmm4
- pshufd $27,%xmm0,%xmm0
- movdqu 16(%rsi),%xmm5
- pshufd $27,%xmm1,%xmm1
- movdqu 32(%rsi),%xmm6
-.byte 102,15,56,0,227
- movdqu 48(%rsi),%xmm7
-.byte 102,15,56,0,235
-.byte 102,15,56,0,243
- movdqa %xmm1,%xmm9
-.byte 102,15,56,0,251
- jmp .Loop_shaext
-
-.align 16
-.Loop_shaext:
- decq %rdx
- leaq 64(%rsi),%rax
- paddd %xmm4,%xmm1
- cmovneq %rax,%rsi
- movdqa %xmm0,%xmm8
-.byte 15,56,201,229
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,0
-.byte 15,56,200,213
- pxor %xmm6,%xmm4
-.byte 15,56,201,238
-.byte 15,56,202,231
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,0
-.byte 15,56,200,206
- pxor %xmm7,%xmm5
-.byte 15,56,202,236
-.byte 15,56,201,247
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,0
-.byte 15,56,200,215
- pxor %xmm4,%xmm6
-.byte 15,56,201,252
-.byte 15,56,202,245
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,0
-.byte 15,56,200,204
- pxor %xmm5,%xmm7
-.byte 15,56,202,254
-.byte 15,56,201,229
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,0
-.byte 15,56,200,213
- pxor %xmm6,%xmm4
-.byte 15,56,201,238
-.byte 15,56,202,231
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,1
-.byte 15,56,200,206
- pxor %xmm7,%xmm5
-.byte 15,56,202,236
-.byte 15,56,201,247
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,1
-.byte 15,56,200,215
- pxor %xmm4,%xmm6
-.byte 15,56,201,252
-.byte 15,56,202,245
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,1
-.byte 15,56,200,204
- pxor %xmm5,%xmm7
-.byte 15,56,202,254
-.byte 15,56,201,229
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,1
-.byte 15,56,200,213
- pxor %xmm6,%xmm4
-.byte 15,56,201,238
-.byte 15,56,202,231
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,1
-.byte 15,56,200,206
- pxor %xmm7,%xmm5
-.byte 15,56,202,236
-.byte 15,56,201,247
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,2
-.byte 15,56,200,215
- pxor %xmm4,%xmm6
-.byte 15,56,201,252
-.byte 15,56,202,245
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,2
-.byte 15,56,200,204
- pxor %xmm5,%xmm7
-.byte 15,56,202,254
-.byte 15,56,201,229
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,2
-.byte 15,56,200,213
- pxor %xmm6,%xmm4
-.byte 15,56,201,238
-.byte 15,56,202,231
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,2
-.byte 15,56,200,206
- pxor %xmm7,%xmm5
-.byte 15,56,202,236
-.byte 15,56,201,247
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,2
-.byte 15,56,200,215
- pxor %xmm4,%xmm6
-.byte 15,56,201,252
-.byte 15,56,202,245
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,3
-.byte 15,56,200,204
- pxor %xmm5,%xmm7
-.byte 15,56,202,254
- movdqu (%rsi),%xmm4
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,3
-.byte 15,56,200,213
- movdqu 16(%rsi),%xmm5
-.byte 102,15,56,0,227
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,3
-.byte 15,56,200,206
- movdqu 32(%rsi),%xmm6
-.byte 102,15,56,0,235
-
- movdqa %xmm0,%xmm2
-.byte 15,58,204,193,3
-.byte 15,56,200,215
- movdqu 48(%rsi),%xmm7
-.byte 102,15,56,0,243
-
- movdqa %xmm0,%xmm1
-.byte 15,58,204,194,3
-.byte 65,15,56,200,201
-.byte 102,15,56,0,251
-
- paddd %xmm8,%xmm0
- movdqa %xmm1,%xmm9
-
- jnz .Loop_shaext
-
- pshufd $27,%xmm0,%xmm0
- pshufd $27,%xmm1,%xmm1
- movdqu %xmm0,(%rdi)
- movd %xmm1,16(%rdi)
- .byte 0xf3,0xc3
-.size sha1_block_data_order_shaext,.-sha1_block_data_order_shaext
.type sha1_block_data_order_ssse3,@function
.align 16
sha1_block_data_order_ssse3:
_ssse3_shortcut:
- movq %rsp,%rax
pushq %rbx
pushq %rbp
pushq %r12
- pushq %r13
- pushq %r14
leaq -64(%rsp),%rsp
- movq %rax,%r14
- andq $-64,%rsp
movq %rdi,%r8
movq %rsi,%r9
movq %rdx,%r10
shlq $6,%r10
addq %r9,%r10
- leaq K_XX_XX+64(%rip),%r11
+ leaq K_XX_XX(%rip),%r11
movl 0(%r8),%eax
movl 4(%r8),%ebx
@@ -1434,22 +1313,19 @@ _ssse3_shortcut:
movl 12(%r8),%edx
movl %ebx,%esi
movl 16(%r8),%ebp
- movl %ecx,%edi
- xorl %edx,%edi
- andl %edi,%esi
movdqa 64(%r11),%xmm6
- movdqa -64(%r11),%xmm9
+ movdqa 0(%r11),%xmm9
movdqu 0(%r9),%xmm0
movdqu 16(%r9),%xmm1
movdqu 32(%r9),%xmm2
movdqu 48(%r9),%xmm3
.byte 102,15,56,0,198
+ addq $64,%r9
.byte 102,15,56,0,206
.byte 102,15,56,0,214
- addq $64,%r9
- paddd %xmm9,%xmm0
.byte 102,15,56,0,222
+ paddd %xmm9,%xmm0
paddd %xmm9,%xmm1
paddd %xmm9,%xmm2
movdqa %xmm0,0(%rsp)
@@ -1461,882 +1337,904 @@ _ssse3_shortcut:
jmp .Loop_ssse3
.align 16
.Loop_ssse3:
- rorl $2,%ebx
- pshufd $238,%xmm0,%xmm4
- xorl %edx,%esi
+ movdqa %xmm1,%xmm4
+ addl 0(%rsp),%ebp
+ xorl %edx,%ecx
movdqa %xmm3,%xmm8
- paddd %xmm3,%xmm9
+.byte 102,15,58,15,224,8
movl %eax,%edi
- addl 0(%rsp),%ebp
- punpcklqdq %xmm1,%xmm4
- xorl %ecx,%ebx
roll $5,%eax
- addl %esi,%ebp
+ paddd %xmm3,%xmm9
+ andl %ecx,%esi
+ xorl %edx,%ecx
psrldq $4,%xmm8
- andl %ebx,%edi
- xorl %ecx,%ebx
- pxor %xmm0,%xmm4
+ xorl %edx,%esi
addl %eax,%ebp
- rorl $7,%eax
+ pxor %xmm0,%xmm4
+ rorl $2,%ebx
+ addl %esi,%ebp
pxor %xmm2,%xmm8
- xorl %ecx,%edi
- movl %ebp,%esi
addl 4(%rsp),%edx
- pxor %xmm8,%xmm4
- xorl %ebx,%eax
+ xorl %ecx,%ebx
+ movl %ebp,%esi
roll $5,%ebp
+ pxor %xmm8,%xmm4
+ andl %ebx,%edi
+ xorl %ecx,%ebx
movdqa %xmm9,48(%rsp)
- addl %edi,%edx
- andl %eax,%esi
- movdqa %xmm4,%xmm10
- xorl %ebx,%eax
+ xorl %ecx,%edi
addl %ebp,%edx
- rorl $7,%ebp
+ movdqa %xmm4,%xmm10
movdqa %xmm4,%xmm8
- xorl %ebx,%esi
+ rorl $7,%eax
+ addl %edi,%edx
+ addl 8(%rsp),%ecx
+ xorl %ebx,%eax
pslldq $12,%xmm10
paddd %xmm4,%xmm4
movl %edx,%edi
- addl 8(%rsp),%ecx
- psrld $31,%xmm8
- xorl %eax,%ebp
roll $5,%edx
- addl %esi,%ecx
+ andl %eax,%esi
+ xorl %ebx,%eax
+ psrld $31,%xmm8
+ xorl %ebx,%esi
+ addl %edx,%ecx
movdqa %xmm10,%xmm9
- andl %ebp,%edi
- xorl %eax,%ebp
+ rorl $7,%ebp
+ addl %esi,%ecx
psrld $30,%xmm10
- addl %edx,%ecx
- rorl $7,%edx
por %xmm8,%xmm4
- xorl %eax,%edi
- movl %ecx,%esi
addl 12(%rsp),%ebx
+ xorl %eax,%ebp
+ movl %ecx,%esi
+ roll $5,%ecx
pslld $2,%xmm9
pxor %xmm10,%xmm4
- xorl %ebp,%edx
- movdqa -64(%r11),%xmm10
- roll $5,%ecx
- addl %edi,%ebx
- andl %edx,%esi
+ andl %ebp,%edi
+ xorl %eax,%ebp
+ movdqa 0(%r11),%xmm10
+ xorl %eax,%edi
+ addl %ecx,%ebx
pxor %xmm9,%xmm4
+ rorl $7,%edx
+ addl %edi,%ebx
+ movdqa %xmm2,%xmm5
+ addl 16(%rsp),%eax
xorl %ebp,%edx
- addl %ecx,%ebx
- rorl $7,%ecx
- pshufd $238,%xmm1,%xmm5
- xorl %ebp,%esi
movdqa %xmm4,%xmm9
- paddd %xmm4,%xmm10
+.byte 102,15,58,15,233,8
movl %ebx,%edi
- addl 16(%rsp),%eax
- punpcklqdq %xmm2,%xmm5
- xorl %edx,%ecx
roll $5,%ebx
- addl %esi,%eax
+ paddd %xmm4,%xmm10
+ andl %edx,%esi
+ xorl %ebp,%edx
psrldq $4,%xmm9
- andl %ecx,%edi
- xorl %edx,%ecx
- pxor %xmm1,%xmm5
+ xorl %ebp,%esi
addl %ebx,%eax
- rorl $7,%ebx
+ pxor %xmm1,%xmm5
+ rorl $7,%ecx
+ addl %esi,%eax
pxor %xmm3,%xmm9
- xorl %edx,%edi
- movl %eax,%esi
addl 20(%rsp),%ebp
- pxor %xmm9,%xmm5
- xorl %ecx,%ebx
+ xorl %edx,%ecx
+ movl %eax,%esi
roll $5,%eax
+ pxor %xmm9,%xmm5
+ andl %ecx,%edi
+ xorl %edx,%ecx
movdqa %xmm10,0(%rsp)
- addl %edi,%ebp
- andl %ebx,%esi
- movdqa %xmm5,%xmm8
- xorl %ecx,%ebx
+ xorl %edx,%edi
addl %eax,%ebp
- rorl $7,%eax
+ movdqa %xmm5,%xmm8
movdqa %xmm5,%xmm9
- xorl %ecx,%esi
+ rorl $7,%ebx
+ addl %edi,%ebp
+ addl 24(%rsp),%edx
+ xorl %ecx,%ebx
pslldq $12,%xmm8
paddd %xmm5,%xmm5
movl %ebp,%edi
- addl 24(%rsp),%edx
- psrld $31,%xmm9
- xorl %ebx,%eax
roll $5,%ebp
- addl %esi,%edx
+ andl %ebx,%esi
+ xorl %ecx,%ebx
+ psrld $31,%xmm9
+ xorl %ecx,%esi
+ addl %ebp,%edx
movdqa %xmm8,%xmm10
- andl %eax,%edi
- xorl %ebx,%eax
+ rorl $7,%eax
+ addl %esi,%edx
psrld $30,%xmm8
- addl %ebp,%edx
- rorl $7,%ebp
por %xmm9,%xmm5
- xorl %ebx,%edi
- movl %edx,%esi
addl 28(%rsp),%ecx
+ xorl %ebx,%eax
+ movl %edx,%esi
+ roll $5,%edx
pslld $2,%xmm10
pxor %xmm8,%xmm5
- xorl %eax,%ebp
- movdqa -32(%r11),%xmm8
- roll $5,%edx
- addl %edi,%ecx
- andl %ebp,%esi
+ andl %eax,%edi
+ xorl %ebx,%eax
+ movdqa 16(%r11),%xmm8
+ xorl %ebx,%edi
+ addl %edx,%ecx
pxor %xmm10,%xmm5
+ rorl $7,%ebp
+ addl %edi,%ecx
+ movdqa %xmm3,%xmm6
+ addl 32(%rsp),%ebx
xorl %eax,%ebp
- addl %edx,%ecx
- rorl $7,%edx
- pshufd $238,%xmm2,%xmm6
- xorl %eax,%esi
movdqa %xmm5,%xmm10
- paddd %xmm5,%xmm8
+.byte 102,15,58,15,242,8
movl %ecx,%edi
- addl 32(%rsp),%ebx
- punpcklqdq %xmm3,%xmm6
- xorl %ebp,%edx
roll $5,%ecx
- addl %esi,%ebx
+ paddd %xmm5,%xmm8
+ andl %ebp,%esi
+ xorl %eax,%ebp
psrldq $4,%xmm10
- andl %edx,%edi
- xorl %ebp,%edx
- pxor %xmm2,%xmm6
+ xorl %eax,%esi
addl %ecx,%ebx
- rorl $7,%ecx
+ pxor %xmm2,%xmm6
+ rorl $7,%edx
+ addl %esi,%ebx
pxor %xmm4,%xmm10
- xorl %ebp,%edi
- movl %ebx,%esi
addl 36(%rsp),%eax
- pxor %xmm10,%xmm6
- xorl %edx,%ecx
+ xorl %ebp,%edx
+ movl %ebx,%esi
roll $5,%ebx
+ pxor %xmm10,%xmm6
+ andl %edx,%edi
+ xorl %ebp,%edx
movdqa %xmm8,16(%rsp)
- addl %edi,%eax
- andl %ecx,%esi
- movdqa %xmm6,%xmm9
- xorl %edx,%ecx
+ xorl %ebp,%edi
addl %ebx,%eax
- rorl $7,%ebx
+ movdqa %xmm6,%xmm9
movdqa %xmm6,%xmm10
- xorl %edx,%esi
+ rorl $7,%ecx
+ addl %edi,%eax
+ addl 40(%rsp),%ebp
+ xorl %edx,%ecx
pslldq $12,%xmm9
paddd %xmm6,%xmm6
movl %eax,%edi
- addl 40(%rsp),%ebp
- psrld $31,%xmm10
- xorl %ecx,%ebx
roll $5,%eax
- addl %esi,%ebp
+ andl %ecx,%esi
+ xorl %edx,%ecx
+ psrld $31,%xmm10
+ xorl %edx,%esi
+ addl %eax,%ebp
movdqa %xmm9,%xmm8
- andl %ebx,%edi
- xorl %ecx,%ebx
+ rorl $7,%ebx
+ addl %esi,%ebp
psrld $30,%xmm9
- addl %eax,%ebp
- rorl $7,%eax
por %xmm10,%xmm6
- xorl %ecx,%edi
- movl %ebp,%esi
addl 44(%rsp),%edx
+ xorl %ecx,%ebx
+ movl %ebp,%esi
+ roll $5,%ebp
pslld $2,%xmm8
pxor %xmm9,%xmm6
- xorl %ebx,%eax
- movdqa -32(%r11),%xmm9
- roll $5,%ebp
- addl %edi,%edx
- andl %eax,%esi
+ andl %ebx,%edi
+ xorl %ecx,%ebx
+ movdqa 16(%r11),%xmm9
+ xorl %ecx,%edi
+ addl %ebp,%edx
pxor %xmm8,%xmm6
+ rorl $7,%eax
+ addl %edi,%edx
+ movdqa %xmm4,%xmm7
+ addl 48(%rsp),%ecx
xorl %ebx,%eax
- addl %ebp,%edx
- rorl $7,%ebp
- pshufd $238,%xmm3,%xmm7
- xorl %ebx,%esi
movdqa %xmm6,%xmm8
- paddd %xmm6,%xmm9
+.byte 102,15,58,15,251,8
movl %edx,%edi
- addl 48(%rsp),%ecx
- punpcklqdq %xmm4,%xmm7
- xorl %eax,%ebp
roll $5,%edx
- addl %esi,%ecx
+ paddd %xmm6,%xmm9
+ andl %eax,%esi
+ xorl %ebx,%eax
psrldq $4,%xmm8
- andl %ebp,%edi
- xorl %eax,%ebp
- pxor %xmm3,%xmm7
+ xorl %ebx,%esi
addl %edx,%ecx
- rorl $7,%edx
+ pxor %xmm3,%xmm7
+ rorl $7,%ebp
+ addl %esi,%ecx
pxor %xmm5,%xmm8
- xorl %eax,%edi
- movl %ecx,%esi
addl 52(%rsp),%ebx
- pxor %xmm8,%xmm7
- xorl %ebp,%edx
+ xorl %eax,%ebp
+ movl %ecx,%esi
roll $5,%ecx
+ pxor %xmm8,%xmm7
+ andl %ebp,%edi
+ xorl %eax,%ebp
movdqa %xmm9,32(%rsp)
- addl %edi,%ebx
- andl %edx,%esi
- movdqa %xmm7,%xmm10
- xorl %ebp,%edx
+ xorl %eax,%edi
addl %ecx,%ebx
- rorl $7,%ecx
+ movdqa %xmm7,%xmm10
movdqa %xmm7,%xmm8
- xorl %ebp,%esi
+ rorl $7,%edx
+ addl %edi,%ebx
+ addl 56(%rsp),%eax
+ xorl %ebp,%edx
pslldq $12,%xmm10
paddd %xmm7,%xmm7
movl %ebx,%edi
- addl 56(%rsp),%eax
- psrld $31,%xmm8
- xorl %edx,%ecx
roll $5,%ebx
- addl %esi,%eax
+ andl %edx,%esi
+ xorl %ebp,%edx
+ psrld $31,%xmm8
+ xorl %ebp,%esi
+ addl %ebx,%eax
movdqa %xmm10,%xmm9
- andl %ecx,%edi
- xorl %edx,%ecx
+ rorl $7,%ecx
+ addl %esi,%eax
psrld $30,%xmm10
- addl %ebx,%eax
- rorl $7,%ebx
por %xmm8,%xmm7
- xorl %edx,%edi
- movl %eax,%esi
addl 60(%rsp),%ebp
+ xorl %edx,%ecx
+ movl %eax,%esi
+ roll $5,%eax
pslld $2,%xmm9
pxor %xmm10,%xmm7
- xorl %ecx,%ebx
- movdqa -32(%r11),%xmm10
- roll $5,%eax
- addl %edi,%ebp
- andl %ebx,%esi
- pxor %xmm9,%xmm7
- pshufd $238,%xmm6,%xmm9
- xorl %ecx,%ebx
+ andl %ecx,%edi
+ xorl %edx,%ecx
+ movdqa 16(%r11),%xmm10
+ xorl %edx,%edi
addl %eax,%ebp
- rorl $7,%eax
+ pxor %xmm9,%xmm7
+ rorl $7,%ebx
+ addl %edi,%ebp
+ movdqa %xmm7,%xmm9
+ addl 0(%rsp),%edx
pxor %xmm4,%xmm0
- xorl %ecx,%esi
+.byte 102,68,15,58,15,206,8
+ xorl %ecx,%ebx
movl %ebp,%edi
- addl 0(%rsp),%edx
- punpcklqdq %xmm7,%xmm9
- xorl %ebx,%eax
roll $5,%ebp
pxor %xmm1,%xmm0
- addl %esi,%edx
- andl %eax,%edi
+ andl %ebx,%esi
+ xorl %ecx,%ebx
movdqa %xmm10,%xmm8
- xorl %ebx,%eax
paddd %xmm7,%xmm10
+ xorl %ecx,%esi
addl %ebp,%edx
pxor %xmm9,%xmm0
- rorl $7,%ebp
- xorl %ebx,%edi
- movl %edx,%esi
+ rorl $7,%eax
+ addl %esi,%edx
addl 4(%rsp),%ecx
+ xorl %ebx,%eax
movdqa %xmm0,%xmm9
- xorl %eax,%ebp
- roll $5,%edx
movdqa %xmm10,48(%rsp)
- addl %edi,%ecx
- andl %ebp,%esi
- xorl %eax,%ebp
+ movl %edx,%esi
+ roll $5,%edx
+ andl %eax,%edi
+ xorl %ebx,%eax
pslld $2,%xmm0
+ xorl %ebx,%edi
addl %edx,%ecx
- rorl $7,%edx
psrld $30,%xmm9
- xorl %eax,%esi
- movl %ecx,%edi
+ rorl $7,%ebp
+ addl %edi,%ecx
addl 8(%rsp),%ebx
- por %xmm9,%xmm0
- xorl %ebp,%edx
+ xorl %eax,%ebp
+ movl %ecx,%edi
roll $5,%ecx
- pshufd $238,%xmm7,%xmm10
- addl %esi,%ebx
- andl %edx,%edi
- xorl %ebp,%edx
+ por %xmm9,%xmm0
+ andl %ebp,%esi
+ xorl %eax,%ebp
+ movdqa %xmm0,%xmm10
+ xorl %eax,%esi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %esi,%ebx
addl 12(%rsp),%eax
- xorl %ebp,%edi
+ xorl %ebp,%edx
movl %ebx,%esi
roll $5,%ebx
- addl %edi,%eax
- xorl %edx,%esi
- rorl $7,%ecx
+ andl %edx,%edi
+ xorl %ebp,%edx
+ xorl %ebp,%edi
addl %ebx,%eax
- pxor %xmm5,%xmm1
+ rorl $7,%ecx
+ addl %edi,%eax
addl 16(%rsp),%ebp
- xorl %ecx,%esi
- punpcklqdq %xmm0,%xmm10
+ pxor %xmm5,%xmm1
+.byte 102,68,15,58,15,215,8
+ xorl %edx,%esi
movl %eax,%edi
roll $5,%eax
pxor %xmm2,%xmm1
- addl %esi,%ebp
- xorl %ecx,%edi
+ xorl %ecx,%esi
+ addl %eax,%ebp
movdqa %xmm8,%xmm9
- rorl $7,%ebx
paddd %xmm0,%xmm8
- addl %eax,%ebp
+ rorl $7,%ebx
+ addl %esi,%ebp
pxor %xmm10,%xmm1
addl 20(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
roll $5,%ebp
movdqa %xmm1,%xmm10
- addl %edi,%edx
- xorl %ebx,%esi
movdqa %xmm8,0(%rsp)
- rorl $7,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
- addl 24(%rsp),%ecx
+ rorl $7,%eax
+ addl %edi,%edx
pslld $2,%xmm1
- xorl %eax,%esi
- movl %edx,%edi
+ addl 24(%rsp),%ecx
+ xorl %ebx,%esi
psrld $30,%xmm10
+ movl %edx,%edi
roll $5,%edx
- addl %esi,%ecx
- xorl %eax,%edi
+ xorl %eax,%esi
+ addl %edx,%ecx
rorl $7,%ebp
+ addl %esi,%ecx
por %xmm10,%xmm1
- addl %edx,%ecx
addl 28(%rsp),%ebx
- pshufd $238,%xmm0,%xmm8
- xorl %ebp,%edi
+ xorl %eax,%edi
+ movdqa %xmm1,%xmm8
movl %ecx,%esi
roll $5,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- rorl $7,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
- pxor %xmm6,%xmm2
+ rorl $7,%edx
+ addl %edi,%ebx
addl 32(%rsp),%eax
- xorl %edx,%esi
- punpcklqdq %xmm1,%xmm8
+ pxor %xmm6,%xmm2
+.byte 102,68,15,58,15,192,8
+ xorl %ebp,%esi
movl %ebx,%edi
roll $5,%ebx
pxor %xmm3,%xmm2
- addl %esi,%eax
- xorl %edx,%edi
- movdqa 0(%r11),%xmm10
- rorl $7,%ecx
- paddd %xmm1,%xmm9
+ xorl %edx,%esi
addl %ebx,%eax
+ movdqa 32(%r11),%xmm10
+ paddd %xmm1,%xmm9
+ rorl $7,%ecx
+ addl %esi,%eax
pxor %xmm8,%xmm2
addl 36(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
roll $5,%eax
movdqa %xmm2,%xmm8
- addl %edi,%ebp
- xorl %ecx,%esi
movdqa %xmm9,16(%rsp)
- rorl $7,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
- addl 40(%rsp),%edx
+ rorl $7,%ebx
+ addl %edi,%ebp
pslld $2,%xmm2
- xorl %ebx,%esi
- movl %ebp,%edi
+ addl 40(%rsp),%edx
+ xorl %ecx,%esi
psrld $30,%xmm8
+ movl %ebp,%edi
roll $5,%ebp
- addl %esi,%edx
- xorl %ebx,%edi
+ xorl %ebx,%esi
+ addl %ebp,%edx
rorl $7,%eax
+ addl %esi,%edx
por %xmm8,%xmm2
- addl %ebp,%edx
addl 44(%rsp),%ecx
- pshufd $238,%xmm1,%xmm9
- xorl %eax,%edi
+ xorl %ebx,%edi
+ movdqa %xmm2,%xmm9
movl %edx,%esi
roll $5,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- rorl $7,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
- pxor %xmm7,%xmm3
+ rorl $7,%ebp
+ addl %edi,%ecx
addl 48(%rsp),%ebx
- xorl %ebp,%esi
- punpcklqdq %xmm2,%xmm9
+ pxor %xmm7,%xmm3
+.byte 102,68,15,58,15,201,8
+ xorl %eax,%esi
movl %ecx,%edi
roll $5,%ecx
pxor %xmm4,%xmm3
- addl %esi,%ebx
- xorl %ebp,%edi
+ xorl %ebp,%esi
+ addl %ecx,%ebx
movdqa %xmm10,%xmm8
- rorl $7,%edx
paddd %xmm2,%xmm10
- addl %ecx,%ebx
+ rorl $7,%edx
+ addl %esi,%ebx
pxor %xmm9,%xmm3
addl 52(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
roll $5,%ebx
movdqa %xmm3,%xmm9
- addl %edi,%eax
- xorl %edx,%esi
movdqa %xmm10,32(%rsp)
- rorl $7,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
- addl 56(%rsp),%ebp
+ rorl $7,%ecx
+ addl %edi,%eax
pslld $2,%xmm3
- xorl %ecx,%esi
- movl %eax,%edi
+ addl 56(%rsp),%ebp
+ xorl %edx,%esi
psrld $30,%xmm9
+ movl %eax,%edi
roll $5,%eax
- addl %esi,%ebp
- xorl %ecx,%edi
+ xorl %ecx,%esi
+ addl %eax,%ebp
rorl $7,%ebx
+ addl %esi,%ebp
por %xmm9,%xmm3
- addl %eax,%ebp
addl 60(%rsp),%edx
- pshufd $238,%xmm2,%xmm10
- xorl %ebx,%edi
+ xorl %ecx,%edi
+ movdqa %xmm3,%xmm10
movl %ebp,%esi
roll $5,%ebp
- addl %edi,%edx
- xorl %ebx,%esi
- rorl $7,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
- pxor %xmm0,%xmm4
+ rorl $7,%eax
+ addl %edi,%edx
addl 0(%rsp),%ecx
- xorl %eax,%esi
- punpcklqdq %xmm3,%xmm10
+ pxor %xmm0,%xmm4
+.byte 102,68,15,58,15,210,8
+ xorl %ebx,%esi
movl %edx,%edi
roll $5,%edx
pxor %xmm5,%xmm4
- addl %esi,%ecx
- xorl %eax,%edi
+ xorl %eax,%esi
+ addl %edx,%ecx
movdqa %xmm8,%xmm9
- rorl $7,%ebp
paddd %xmm3,%xmm8
- addl %edx,%ecx
+ rorl $7,%ebp
+ addl %esi,%ecx
pxor %xmm10,%xmm4
addl 4(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
movl %ecx,%esi
roll $5,%ecx
movdqa %xmm4,%xmm10
- addl %edi,%ebx
- xorl %ebp,%esi
movdqa %xmm8,48(%rsp)
- rorl $7,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
- addl 8(%rsp),%eax
+ rorl $7,%edx
+ addl %edi,%ebx
pslld $2,%xmm4
- xorl %edx,%esi
- movl %ebx,%edi
+ addl 8(%rsp),%eax
+ xorl %ebp,%esi
psrld $30,%xmm10
+ movl %ebx,%edi
roll $5,%ebx
- addl %esi,%eax
- xorl %edx,%edi
+ xorl %edx,%esi
+ addl %ebx,%eax
rorl $7,%ecx
+ addl %esi,%eax
por %xmm10,%xmm4
- addl %ebx,%eax
addl 12(%rsp),%ebp
- pshufd $238,%xmm3,%xmm8
- xorl %ecx,%edi
+ xorl %edx,%edi
+ movdqa %xmm4,%xmm8
movl %eax,%esi
roll $5,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- rorl $7,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
- pxor %xmm1,%xmm5
+ rorl $7,%ebx
+ addl %edi,%ebp
addl 16(%rsp),%edx
- xorl %ebx,%esi
- punpcklqdq %xmm4,%xmm8
+ pxor %xmm1,%xmm5
+.byte 102,68,15,58,15,195,8
+ xorl %ecx,%esi
movl %ebp,%edi
roll $5,%ebp
pxor %xmm6,%xmm5
- addl %esi,%edx
- xorl %ebx,%edi
+ xorl %ebx,%esi
+ addl %ebp,%edx
movdqa %xmm9,%xmm10
- rorl $7,%eax
paddd %xmm4,%xmm9
- addl %ebp,%edx
+ rorl $7,%eax
+ addl %esi,%edx
pxor %xmm8,%xmm5
addl 20(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
movl %edx,%esi
roll $5,%edx
movdqa %xmm5,%xmm8
- addl %edi,%ecx
- xorl %eax,%esi
movdqa %xmm9,0(%rsp)
- rorl $7,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
- addl 24(%rsp),%ebx
+ rorl $7,%ebp
+ addl %edi,%ecx
pslld $2,%xmm5
- xorl %ebp,%esi
- movl %ecx,%edi
+ addl 24(%rsp),%ebx
+ xorl %eax,%esi
psrld $30,%xmm8
+ movl %ecx,%edi
roll $5,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
+ xorl %ebp,%esi
+ addl %ecx,%ebx
rorl $7,%edx
+ addl %esi,%ebx
por %xmm8,%xmm5
- addl %ecx,%ebx
addl 28(%rsp),%eax
- pshufd $238,%xmm4,%xmm9
- rorl $7,%ecx
+ xorl %ebp,%edi
+ movdqa %xmm5,%xmm9
movl %ebx,%esi
- xorl %edx,%edi
roll $5,%ebx
- addl %edi,%eax
- xorl %ecx,%esi
- xorl %edx,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %edi,%eax
+ movl %ecx,%edi
pxor %xmm2,%xmm6
+.byte 102,68,15,58,15,204,8
+ xorl %edx,%ecx
addl 32(%rsp),%ebp
+ andl %edx,%edi
+ pxor %xmm7,%xmm6
andl %ecx,%esi
- xorl %edx,%ecx
rorl $7,%ebx
- punpcklqdq %xmm5,%xmm9
- movl %eax,%edi
- xorl %ecx,%esi
- pxor %xmm7,%xmm6
- roll $5,%eax
- addl %esi,%ebp
movdqa %xmm10,%xmm8
- xorl %ebx,%edi
paddd %xmm5,%xmm10
- xorl %ecx,%ebx
+ addl %edi,%ebp
+ movl %eax,%edi
pxor %xmm9,%xmm6
+ roll $5,%eax
+ addl %esi,%ebp
+ xorl %edx,%ecx
addl %eax,%ebp
+ movdqa %xmm6,%xmm9
+ movdqa %xmm10,16(%rsp)
+ movl %ebx,%esi
+ xorl %ecx,%ebx
addl 36(%rsp),%edx
+ andl %ecx,%esi
+ pslld $2,%xmm6
andl %ebx,%edi
- xorl %ecx,%ebx
rorl $7,%eax
- movdqa %xmm6,%xmm9
+ psrld $30,%xmm9
+ addl %esi,%edx
movl %ebp,%esi
- xorl %ebx,%edi
- movdqa %xmm10,16(%rsp)
roll $5,%ebp
addl %edi,%edx
- xorl %eax,%esi
- pslld $2,%xmm6
- xorl %ebx,%eax
+ xorl %ecx,%ebx
addl %ebp,%edx
- psrld $30,%xmm9
+ por %xmm9,%xmm6
+ movl %eax,%edi
+ xorl %ebx,%eax
+ movdqa %xmm6,%xmm10
addl 40(%rsp),%ecx
+ andl %ebx,%edi
andl %eax,%esi
- xorl %ebx,%eax
- por %xmm9,%xmm6
rorl $7,%ebp
+ addl %edi,%ecx
movl %edx,%edi
- xorl %eax,%esi
roll $5,%edx
- pshufd $238,%xmm5,%xmm10
addl %esi,%ecx
- xorl %ebp,%edi
- xorl %eax,%ebp
+ xorl %ebx,%eax
addl %edx,%ecx
+ movl %ebp,%esi
+ xorl %eax,%ebp
addl 44(%rsp),%ebx
+ andl %eax,%esi
andl %ebp,%edi
- xorl %eax,%ebp
rorl $7,%edx
+ addl %esi,%ebx
movl %ecx,%esi
- xorl %ebp,%edi
roll $5,%ecx
addl %edi,%ebx
- xorl %edx,%esi
- xorl %ebp,%edx
+ xorl %eax,%ebp
addl %ecx,%ebx
+ movl %edx,%edi
pxor %xmm3,%xmm7
+.byte 102,68,15,58,15,213,8
+ xorl %ebp,%edx
addl 48(%rsp),%eax
+ andl %ebp,%edi
+ pxor %xmm0,%xmm7
andl %edx,%esi
- xorl %ebp,%edx
rorl $7,%ecx
- punpcklqdq %xmm6,%xmm10
+ movdqa 48(%r11),%xmm9
+ paddd %xmm6,%xmm8
+ addl %edi,%eax
movl %ebx,%edi
- xorl %edx,%esi
- pxor %xmm0,%xmm7
+ pxor %xmm10,%xmm7
roll $5,%ebx
addl %esi,%eax
- movdqa 32(%r11),%xmm9
- xorl %ecx,%edi
- paddd %xmm6,%xmm8
- xorl %edx,%ecx
- pxor %xmm10,%xmm7
+ xorl %ebp,%edx
addl %ebx,%eax
+ movdqa %xmm7,%xmm10
+ movdqa %xmm8,32(%rsp)
+ movl %ecx,%esi
+ xorl %edx,%ecx
addl 52(%rsp),%ebp
+ andl %edx,%esi
+ pslld $2,%xmm7
andl %ecx,%edi
- xorl %edx,%ecx
rorl $7,%ebx
- movdqa %xmm7,%xmm10
+ psrld $30,%xmm10
+ addl %esi,%ebp
movl %eax,%esi
- xorl %ecx,%edi
- movdqa %xmm8,32(%rsp)
roll $5,%eax
addl %edi,%ebp
- xorl %ebx,%esi
- pslld $2,%xmm7
- xorl %ecx,%ebx
+ xorl %edx,%ecx
addl %eax,%ebp
- psrld $30,%xmm10
+ por %xmm10,%xmm7
+ movl %ebx,%edi
+ xorl %ecx,%ebx
+ movdqa %xmm7,%xmm8
addl 56(%rsp),%edx
+ andl %ecx,%edi
andl %ebx,%esi
- xorl %ecx,%ebx
- por %xmm10,%xmm7
rorl $7,%eax
+ addl %edi,%edx
movl %ebp,%edi
- xorl %ebx,%esi
roll $5,%ebp
- pshufd $238,%xmm6,%xmm8
addl %esi,%edx
- xorl %eax,%edi
- xorl %ebx,%eax
+ xorl %ecx,%ebx
addl %ebp,%edx
+ movl %eax,%esi
+ xorl %ebx,%eax
addl 60(%rsp),%ecx
+ andl %ebx,%esi
andl %eax,%edi
- xorl %ebx,%eax
rorl $7,%ebp
+ addl %esi,%ecx
movl %edx,%esi
- xorl %eax,%edi
roll $5,%edx
addl %edi,%ecx
- xorl %ebp,%esi
- xorl %eax,%ebp
+ xorl %ebx,%eax
addl %edx,%ecx
+ movl %ebp,%edi
pxor %xmm4,%xmm0
+.byte 102,68,15,58,15,198,8
+ xorl %eax,%ebp
addl 0(%rsp),%ebx
+ andl %eax,%edi
+ pxor %xmm1,%xmm0
andl %ebp,%esi
- xorl %eax,%ebp
rorl $7,%edx
- punpcklqdq %xmm7,%xmm8
- movl %ecx,%edi
- xorl %ebp,%esi
- pxor %xmm1,%xmm0
- roll $5,%ecx
- addl %esi,%ebx
movdqa %xmm9,%xmm10
- xorl %edx,%edi
paddd %xmm7,%xmm9
- xorl %ebp,%edx
+ addl %edi,%ebx
+ movl %ecx,%edi
pxor %xmm8,%xmm0
+ roll $5,%ecx
+ addl %esi,%ebx
+ xorl %eax,%ebp
addl %ecx,%ebx
+ movdqa %xmm0,%xmm8
+ movdqa %xmm9,48(%rsp)
+ movl %edx,%esi
+ xorl %ebp,%edx
addl 4(%rsp),%eax
+ andl %ebp,%esi
+ pslld $2,%xmm0
andl %edx,%edi
- xorl %ebp,%edx
rorl $7,%ecx
- movdqa %xmm0,%xmm8
+ psrld $30,%xmm8
+ addl %esi,%eax
movl %ebx,%esi
- xorl %edx,%edi
- movdqa %xmm9,48(%rsp)
roll $5,%ebx
addl %edi,%eax
- xorl %ecx,%esi
- pslld $2,%xmm0
- xorl %edx,%ecx
+ xorl %ebp,%edx
addl %ebx,%eax
- psrld $30,%xmm8
+ por %xmm8,%xmm0
+ movl %ecx,%edi
+ xorl %edx,%ecx
+ movdqa %xmm0,%xmm9
addl 8(%rsp),%ebp
+ andl %edx,%edi
andl %ecx,%esi
- xorl %edx,%ecx
- por %xmm8,%xmm0
rorl $7,%ebx
+ addl %edi,%ebp
movl %eax,%edi
- xorl %ecx,%esi
roll $5,%eax
- pshufd $238,%xmm7,%xmm9
addl %esi,%ebp
- xorl %ebx,%edi
- xorl %ecx,%ebx
+ xorl %edx,%ecx
addl %eax,%ebp
+ movl %ebx,%esi
+ xorl %ecx,%ebx
addl 12(%rsp),%edx
+ andl %ecx,%esi
andl %ebx,%edi
- xorl %ecx,%ebx
rorl $7,%eax
+ addl %esi,%edx
movl %ebp,%esi
- xorl %ebx,%edi
roll $5,%ebp
addl %edi,%edx
- xorl %eax,%esi
- xorl %ebx,%eax
+ xorl %ecx,%ebx
addl %ebp,%edx
+ movl %eax,%edi
pxor %xmm5,%xmm1
+.byte 102,68,15,58,15,207,8
+ xorl %ebx,%eax
addl 16(%rsp),%ecx
+ andl %ebx,%edi
+ pxor %xmm2,%xmm1
andl %eax,%esi
- xorl %ebx,%eax
rorl $7,%ebp
- punpcklqdq %xmm0,%xmm9
- movl %edx,%edi
- xorl %eax,%esi
- pxor %xmm2,%xmm1
- roll $5,%edx
- addl %esi,%ecx
movdqa %xmm10,%xmm8
- xorl %ebp,%edi
paddd %xmm0,%xmm10
- xorl %eax,%ebp
+ addl %edi,%ecx
+ movl %edx,%edi
pxor %xmm9,%xmm1
+ roll $5,%edx
+ addl %esi,%ecx
+ xorl %ebx,%eax
addl %edx,%ecx
+ movdqa %xmm1,%xmm9
+ movdqa %xmm10,0(%rsp)
+ movl %ebp,%esi
+ xorl %eax,%ebp
addl 20(%rsp),%ebx
+ andl %eax,%esi
+ pslld $2,%xmm1
andl %ebp,%edi
- xorl %eax,%ebp
rorl $7,%edx
- movdqa %xmm1,%xmm9
+ psrld $30,%xmm9
+ addl %esi,%ebx
movl %ecx,%esi
- xorl %ebp,%edi
- movdqa %xmm10,0(%rsp)
roll $5,%ecx
addl %edi,%ebx
- xorl %edx,%esi
- pslld $2,%xmm1
- xorl %ebp,%edx
+ xorl %eax,%ebp
addl %ecx,%ebx
- psrld $30,%xmm9
+ por %xmm9,%xmm1
+ movl %edx,%edi
+ xorl %ebp,%edx
+ movdqa %xmm1,%xmm10
addl 24(%rsp),%eax
+ andl %ebp,%edi
andl %edx,%esi
- xorl %ebp,%edx
- por %xmm9,%xmm1
rorl $7,%ecx
+ addl %edi,%eax
movl %ebx,%edi
- xorl %edx,%esi
roll $5,%ebx
- pshufd $238,%xmm0,%xmm10
addl %esi,%eax
- xorl %ecx,%edi
- xorl %edx,%ecx
+ xorl %ebp,%edx
addl %ebx,%eax
+ movl %ecx,%esi
+ xorl %edx,%ecx
addl 28(%rsp),%ebp
+ andl %edx,%esi
andl %ecx,%edi
- xorl %edx,%ecx
rorl $7,%ebx
+ addl %esi,%ebp
movl %eax,%esi
- xorl %ecx,%edi
roll $5,%eax
addl %edi,%ebp
- xorl %ebx,%esi
- xorl %ecx,%ebx
+ xorl %edx,%ecx
addl %eax,%ebp
+ movl %ebx,%edi
pxor %xmm6,%xmm2
+.byte 102,68,15,58,15,208,8
+ xorl %ecx,%ebx
addl 32(%rsp),%edx
+ andl %ecx,%edi
+ pxor %xmm3,%xmm2
andl %ebx,%esi
- xorl %ecx,%ebx
rorl $7,%eax
- punpcklqdq %xmm1,%xmm10
- movl %ebp,%edi
- xorl %ebx,%esi
- pxor %xmm3,%xmm2
- roll $5,%ebp
- addl %esi,%edx
movdqa %xmm8,%xmm9
- xorl %eax,%edi
paddd %xmm1,%xmm8
- xorl %ebx,%eax
+ addl %edi,%edx
+ movl %ebp,%edi
pxor %xmm10,%xmm2
+ roll $5,%ebp
+ addl %esi,%edx
+ xorl %ecx,%ebx
addl %ebp,%edx
+ movdqa %xmm2,%xmm10
+ movdqa %xmm8,16(%rsp)
+ movl %eax,%esi
+ xorl %ebx,%eax
addl 36(%rsp),%ecx
+ andl %ebx,%esi
+ pslld $2,%xmm2
andl %eax,%edi
- xorl %ebx,%eax
rorl $7,%ebp
- movdqa %xmm2,%xmm10
+ psrld $30,%xmm10
+ addl %esi,%ecx
movl %edx,%esi
- xorl %eax,%edi
- movdqa %xmm8,16(%rsp)
roll $5,%edx
addl %edi,%ecx
- xorl %ebp,%esi
- pslld $2,%xmm2
- xorl %eax,%ebp
+ xorl %ebx,%eax
addl %edx,%ecx
- psrld $30,%xmm10
+ por %xmm10,%xmm2
+ movl %ebp,%edi
+ xorl %eax,%ebp
+ movdqa %xmm2,%xmm8
addl 40(%rsp),%ebx
+ andl %eax,%edi
andl %ebp,%esi
- xorl %eax,%ebp
- por %xmm10,%xmm2
rorl $7,%edx
+ addl %edi,%ebx
movl %ecx,%edi
- xorl %ebp,%esi
roll $5,%ecx
- pshufd $238,%xmm1,%xmm8
addl %esi,%ebx
- xorl %edx,%edi
- xorl %ebp,%edx
+ xorl %eax,%ebp
addl %ecx,%ebx
+ movl %edx,%esi
+ xorl %ebp,%edx
addl 44(%rsp),%eax
+ andl %ebp,%esi
andl %edx,%edi
- xorl %ebp,%edx
rorl $7,%ecx
+ addl %esi,%eax
movl %ebx,%esi
- xorl %edx,%edi
roll $5,%ebx
addl %edi,%eax
- xorl %edx,%esi
+ xorl %ebp,%edx
addl %ebx,%eax
- pxor %xmm7,%xmm3
addl 48(%rsp),%ebp
- xorl %ecx,%esi
- punpcklqdq %xmm2,%xmm8
+ pxor %xmm7,%xmm3
+.byte 102,68,15,58,15,193,8
+ xorl %edx,%esi
movl %eax,%edi
roll $5,%eax
pxor %xmm4,%xmm3
- addl %esi,%ebp
- xorl %ecx,%edi
+ xorl %ecx,%esi
+ addl %eax,%ebp
movdqa %xmm9,%xmm10
- rorl $7,%ebx
paddd %xmm2,%xmm9
- addl %eax,%ebp
+ rorl $7,%ebx
+ addl %esi,%ebp
pxor %xmm8,%xmm3
addl 52(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
roll $5,%ebp
movdqa %xmm3,%xmm8
- addl %edi,%edx
- xorl %ebx,%esi
movdqa %xmm9,32(%rsp)
- rorl $7,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
- addl 56(%rsp),%ecx
+ rorl $7,%eax
+ addl %edi,%edx
pslld $2,%xmm3
- xorl %eax,%esi
- movl %edx,%edi
+ addl 56(%rsp),%ecx
+ xorl %ebx,%esi
psrld $30,%xmm8
+ movl %edx,%edi
roll $5,%edx
- addl %esi,%ecx
- xorl %eax,%edi
+ xorl %eax,%esi
+ addl %edx,%ecx
rorl $7,%ebp
+ addl %esi,%ecx
por %xmm8,%xmm3
- addl %edx,%ecx
addl 60(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
movl %ecx,%esi
roll $5,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- rorl $7,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %edi,%ebx
addl 0(%rsp),%eax
- xorl %edx,%esi
+ paddd %xmm3,%xmm10
+ xorl %ebp,%esi
movl %ebx,%edi
roll $5,%ebx
- paddd %xmm3,%xmm10
- addl %esi,%eax
- xorl %edx,%edi
+ xorl %edx,%esi
movdqa %xmm10,48(%rsp)
- rorl $7,%ecx
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %esi,%eax
addl 4(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
roll $5,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- rorl $7,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ rorl $7,%ebx
+ addl %edi,%ebp
addl 8(%rsp),%edx
- xorl %ebx,%esi
+ xorl %ecx,%esi
movl %ebp,%edi
roll $5,%ebp
- addl %esi,%edx
- xorl %ebx,%edi
- rorl $7,%eax
+ xorl %ebx,%esi
addl %ebp,%edx
+ rorl $7,%eax
+ addl %esi,%edx
addl 12(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
movl %edx,%esi
roll $5,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- rorl $7,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
+ rorl $7,%ebp
+ addl %edi,%ecx
cmpq %r10,%r9
je .Ldone_ssse3
movdqa 64(%r11),%xmm6
- movdqa -64(%r11),%xmm9
+ movdqa 0(%r11),%xmm9
movdqu 0(%r9),%xmm0
movdqu 16(%r9),%xmm1
movdqu 32(%r9),%xmm2
@@ -2344,112 +2242,113 @@ _ssse3_shortcut:
.byte 102,15,56,0,198
addq $64,%r9
addl 16(%rsp),%ebx
- xorl %ebp,%esi
- movl %ecx,%edi
+ xorl %eax,%esi
.byte 102,15,56,0,206
+ movl %ecx,%edi
roll $5,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
- rorl $7,%edx
paddd %xmm9,%xmm0
+ xorl %ebp,%esi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %esi,%ebx
+ movdqa %xmm0,0(%rsp)
addl 20(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
+ psubd %xmm9,%xmm0
movl %ebx,%esi
- movdqa %xmm0,0(%rsp)
roll $5,%ebx
- addl %edi,%eax
- xorl %edx,%esi
- rorl $7,%ecx
- psubd %xmm9,%xmm0
+ xorl %edx,%edi
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %edi,%eax
addl 24(%rsp),%ebp
- xorl %ecx,%esi
+ xorl %edx,%esi
movl %eax,%edi
roll $5,%eax
- addl %esi,%ebp
- xorl %ecx,%edi
- rorl $7,%ebx
+ xorl %ecx,%esi
addl %eax,%ebp
+ rorl $7,%ebx
+ addl %esi,%ebp
addl 28(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
roll $5,%ebp
- addl %edi,%edx
- xorl %ebx,%esi
- rorl $7,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
+ rorl $7,%eax
+ addl %edi,%edx
addl 32(%rsp),%ecx
- xorl %eax,%esi
- movl %edx,%edi
+ xorl %ebx,%esi
.byte 102,15,56,0,214
+ movl %edx,%edi
roll $5,%edx
- addl %esi,%ecx
- xorl %eax,%edi
- rorl $7,%ebp
paddd %xmm9,%xmm1
+ xorl %eax,%esi
addl %edx,%ecx
+ rorl $7,%ebp
+ addl %esi,%ecx
+ movdqa %xmm1,16(%rsp)
addl 36(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
+ psubd %xmm9,%xmm1
movl %ecx,%esi
- movdqa %xmm1,16(%rsp)
roll $5,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- rorl $7,%edx
- psubd %xmm9,%xmm1
+ xorl %ebp,%edi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %edi,%ebx
addl 40(%rsp),%eax
- xorl %edx,%esi
+ xorl %ebp,%esi
movl %ebx,%edi
roll $5,%ebx
- addl %esi,%eax
- xorl %edx,%edi
- rorl $7,%ecx
+ xorl %edx,%esi
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %esi,%eax
addl 44(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
roll $5,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- rorl $7,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ rorl $7,%ebx
+ addl %edi,%ebp
addl 48(%rsp),%edx
- xorl %ebx,%esi
- movl %ebp,%edi
+ xorl %ecx,%esi
.byte 102,15,56,0,222
+ movl %ebp,%edi
roll $5,%ebp
- addl %esi,%edx
- xorl %ebx,%edi
- rorl $7,%eax
paddd %xmm9,%xmm2
+ xorl %ebx,%esi
addl %ebp,%edx
+ rorl $7,%eax
+ addl %esi,%edx
+ movdqa %xmm2,32(%rsp)
addl 52(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
+ psubd %xmm9,%xmm2
movl %edx,%esi
- movdqa %xmm2,32(%rsp)
roll $5,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- rorl $7,%ebp
- psubd %xmm9,%xmm2
+ xorl %eax,%edi
addl %edx,%ecx
+ rorl $7,%ebp
+ addl %edi,%ecx
addl 56(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
roll $5,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
- rorl $7,%edx
+ xorl %ebp,%esi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %esi,%ebx
addl 60(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
roll $5,%ebx
- addl %edi,%eax
- rorl $7,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %edi,%eax
addl 0(%r8),%eax
addl 4(%r8),%esi
addl 8(%r8),%ecx
@@ -2459,110 +2358,108 @@ _ssse3_shortcut:
movl %esi,4(%r8)
movl %esi,%ebx
movl %ecx,8(%r8)
- movl %ecx,%edi
movl %edx,12(%r8)
- xorl %edx,%edi
movl %ebp,16(%r8)
- andl %edi,%esi
jmp .Loop_ssse3
.align 16
.Ldone_ssse3:
addl 16(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
roll $5,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
- rorl $7,%edx
+ xorl %ebp,%esi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %esi,%ebx
addl 20(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
roll $5,%ebx
- addl %edi,%eax
- xorl %edx,%esi
- rorl $7,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %edi,%eax
addl 24(%rsp),%ebp
- xorl %ecx,%esi
+ xorl %edx,%esi
movl %eax,%edi
roll $5,%eax
- addl %esi,%ebp
- xorl %ecx,%edi
- rorl $7,%ebx
+ xorl %ecx,%esi
addl %eax,%ebp
+ rorl $7,%ebx
+ addl %esi,%ebp
addl 28(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
roll $5,%ebp
- addl %edi,%edx
- xorl %ebx,%esi
- rorl $7,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
+ rorl $7,%eax
+ addl %edi,%edx
addl 32(%rsp),%ecx
- xorl %eax,%esi
+ xorl %ebx,%esi
movl %edx,%edi
roll $5,%edx
- addl %esi,%ecx
- xorl %eax,%edi
- rorl $7,%ebp
+ xorl %eax,%esi
addl %edx,%ecx
+ rorl $7,%ebp
+ addl %esi,%ecx
addl 36(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
movl %ecx,%esi
roll $5,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- rorl $7,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %edi,%ebx
addl 40(%rsp),%eax
- xorl %edx,%esi
+ xorl %ebp,%esi
movl %ebx,%edi
roll $5,%ebx
- addl %esi,%eax
- xorl %edx,%edi
- rorl $7,%ecx
+ xorl %edx,%esi
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %esi,%eax
addl 44(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
roll $5,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- rorl $7,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ rorl $7,%ebx
+ addl %edi,%ebp
addl 48(%rsp),%edx
- xorl %ebx,%esi
+ xorl %ecx,%esi
movl %ebp,%edi
roll $5,%ebp
- addl %esi,%edx
- xorl %ebx,%edi
- rorl $7,%eax
+ xorl %ebx,%esi
addl %ebp,%edx
+ rorl $7,%eax
+ addl %esi,%edx
addl 52(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
movl %edx,%esi
roll $5,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- rorl $7,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
+ rorl $7,%ebp
+ addl %edi,%ecx
addl 56(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
roll $5,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
- rorl $7,%edx
+ xorl %ebp,%esi
addl %ecx,%ebx
+ rorl $7,%edx
+ addl %esi,%ebx
addl 60(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
roll $5,%ebx
- addl %edi,%eax
- rorl $7,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ rorl $7,%ecx
+ addl %edi,%eax
addl 0(%r8),%eax
addl 4(%r8),%esi
addl 8(%r8),%ecx
@@ -2573,13 +2470,11 @@ _ssse3_shortcut:
movl %ecx,8(%r8)
movl %edx,12(%r8)
movl %ebp,16(%r8)
- leaq (%r14),%rsi
- movq -40(%rsi),%r14
- movq -32(%rsi),%r13
- movq -24(%rsi),%r12
- movq -16(%rsi),%rbp
- movq -8(%rsi),%rbx
- leaq (%rsi),%rsp
+ leaq 64(%rsp),%rsi
+ movq 0(%rsi),%r12
+ movq 8(%rsi),%rbp
+ movq 16(%rsi),%rbx
+ leaq 24(%rsi),%rsp
.Lepilogue_ssse3:
.byte 0xf3,0xc3
.size sha1_block_data_order_ssse3,.-sha1_block_data_order_ssse3
@@ -2587,23 +2482,18 @@ _ssse3_shortcut:
.align 16
sha1_block_data_order_avx:
_avx_shortcut:
- movq %rsp,%rax
pushq %rbx
pushq %rbp
pushq %r12
- pushq %r13
- pushq %r14
leaq -64(%rsp),%rsp
- vzeroupper
- movq %rax,%r14
- andq $-64,%rsp
movq %rdi,%r8
movq %rsi,%r9
movq %rdx,%r10
+ vzeroupper
shlq $6,%r10
addq %r9,%r10
- leaq K_XX_XX+64(%rip),%r11
+ leaq K_XX_XX(%rip),%r11
movl 0(%r8),%eax
movl 4(%r8),%ebx
@@ -2611,12 +2501,9 @@ _avx_shortcut:
movl 12(%r8),%edx
movl %ebx,%esi
movl 16(%r8),%ebp
- movl %ecx,%edi
- xorl %edx,%edi
- andl %edi,%esi
vmovdqa 64(%r11),%xmm6
- vmovdqa -64(%r11),%xmm11
+ vmovdqa 0(%r11),%xmm9
vmovdqu 0(%r9),%xmm0
vmovdqu 16(%r9),%xmm1
vmovdqu 32(%r9),%xmm2
@@ -2626,834 +2513,880 @@ _avx_shortcut:
vpshufb %xmm6,%xmm1,%xmm1
vpshufb %xmm6,%xmm2,%xmm2
vpshufb %xmm6,%xmm3,%xmm3
- vpaddd %xmm11,%xmm0,%xmm4
- vpaddd %xmm11,%xmm1,%xmm5
- vpaddd %xmm11,%xmm2,%xmm6
+ vpaddd %xmm9,%xmm0,%xmm4
+ vpaddd %xmm9,%xmm1,%xmm5
+ vpaddd %xmm9,%xmm2,%xmm6
vmovdqa %xmm4,0(%rsp)
vmovdqa %xmm5,16(%rsp)
vmovdqa %xmm6,32(%rsp)
jmp .Loop_avx
.align 16
.Loop_avx:
- shrdl $2,%ebx,%ebx
- xorl %edx,%esi
+ addl 0(%rsp),%ebp
+ xorl %edx,%ecx
vpalignr $8,%xmm0,%xmm1,%xmm4
movl %eax,%edi
- addl 0(%rsp),%ebp
- vpaddd %xmm3,%xmm11,%xmm9
- xorl %ecx,%ebx
shldl $5,%eax,%eax
+ vpaddd %xmm3,%xmm9,%xmm9
+ andl %ecx,%esi
+ xorl %edx,%ecx
vpsrldq $4,%xmm3,%xmm8
- addl %esi,%ebp
- andl %ebx,%edi
- vpxor %xmm0,%xmm4,%xmm4
- xorl %ecx,%ebx
+ xorl %edx,%esi
addl %eax,%ebp
+ vpxor %xmm0,%xmm4,%xmm4
+ shrdl $2,%ebx,%ebx
+ addl %esi,%ebp
vpxor %xmm2,%xmm8,%xmm8
- shrdl $7,%eax,%eax
- xorl %ecx,%edi
- movl %ebp,%esi
addl 4(%rsp),%edx
- vpxor %xmm8,%xmm4,%xmm4
- xorl %ebx,%eax
+ xorl %ecx,%ebx
+ movl %ebp,%esi
shldl $5,%ebp,%ebp
+ vpxor %xmm8,%xmm4,%xmm4
+ andl %ebx,%edi
+ xorl %ecx,%ebx
vmovdqa %xmm9,48(%rsp)
- addl %edi,%edx
- andl %eax,%esi
+ xorl %ecx,%edi
+ addl %ebp,%edx
vpsrld $31,%xmm4,%xmm8
+ shrdl $7,%eax,%eax
+ addl %edi,%edx
+ addl 8(%rsp),%ecx
xorl %ebx,%eax
- addl %ebp,%edx
- shrdl $7,%ebp,%ebp
- xorl %ebx,%esi
vpslldq $12,%xmm4,%xmm10
vpaddd %xmm4,%xmm4,%xmm4
movl %edx,%edi
- addl 8(%rsp),%ecx
- xorl %eax,%ebp
shldl $5,%edx,%edx
+ andl %eax,%esi
+ xorl %ebx,%eax
vpsrld $30,%xmm10,%xmm9
vpor %xmm8,%xmm4,%xmm4
- addl %esi,%ecx
- andl %ebp,%edi
- xorl %eax,%ebp
+ xorl %ebx,%esi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
vpslld $2,%xmm10,%xmm10
vpxor %xmm9,%xmm4,%xmm4
- shrdl $7,%edx,%edx
- xorl %eax,%edi
- movl %ecx,%esi
addl 12(%rsp),%ebx
- vpxor %xmm10,%xmm4,%xmm4
- xorl %ebp,%edx
+ xorl %eax,%ebp
+ movl %ecx,%esi
shldl $5,%ecx,%ecx
+ vpxor %xmm10,%xmm4,%xmm4
+ andl %ebp,%edi
+ xorl %eax,%ebp
+ vmovdqa 0(%r11),%xmm10
+ xorl %eax,%edi
+ addl %ecx,%ebx
+ shrdl $7,%edx,%edx
addl %edi,%ebx
- andl %edx,%esi
+ addl 16(%rsp),%eax
xorl %ebp,%edx
- addl %ecx,%ebx
- shrdl $7,%ecx,%ecx
- xorl %ebp,%esi
vpalignr $8,%xmm1,%xmm2,%xmm5
movl %ebx,%edi
- addl 16(%rsp),%eax
- vpaddd %xmm4,%xmm11,%xmm9
- xorl %edx,%ecx
shldl $5,%ebx,%ebx
- vpsrldq $4,%xmm4,%xmm8
- addl %esi,%eax
- andl %ecx,%edi
+ vpaddd %xmm4,%xmm10,%xmm10
+ andl %edx,%esi
+ xorl %ebp,%edx
+ vpsrldq $4,%xmm4,%xmm9
+ xorl %ebp,%esi
+ addl %ebx,%eax
vpxor %xmm1,%xmm5,%xmm5
+ shrdl $7,%ecx,%ecx
+ addl %esi,%eax
+ vpxor %xmm3,%xmm9,%xmm9
+ addl 20(%rsp),%ebp
xorl %edx,%ecx
- addl %ebx,%eax
- vpxor %xmm3,%xmm8,%xmm8
- shrdl $7,%ebx,%ebx
- xorl %edx,%edi
movl %eax,%esi
- addl 20(%rsp),%ebp
- vpxor %xmm8,%xmm5,%xmm5
- xorl %ecx,%ebx
shldl $5,%eax,%eax
- vmovdqa %xmm9,0(%rsp)
- addl %edi,%ebp
- andl %ebx,%esi
- vpsrld $31,%xmm5,%xmm8
- xorl %ecx,%ebx
+ vpxor %xmm9,%xmm5,%xmm5
+ andl %ecx,%edi
+ xorl %edx,%ecx
+ vmovdqa %xmm10,0(%rsp)
+ xorl %edx,%edi
addl %eax,%ebp
- shrdl $7,%eax,%eax
- xorl %ecx,%esi
- vpslldq $12,%xmm5,%xmm10
+ vpsrld $31,%xmm5,%xmm9
+ shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
+ addl 24(%rsp),%edx
+ xorl %ecx,%ebx
+ vpslldq $12,%xmm5,%xmm8
vpaddd %xmm5,%xmm5,%xmm5
movl %ebp,%edi
- addl 24(%rsp),%edx
- xorl %ebx,%eax
shldl $5,%ebp,%ebp
- vpsrld $30,%xmm10,%xmm9
- vpor %xmm8,%xmm5,%xmm5
+ andl %ebx,%esi
+ xorl %ecx,%ebx
+ vpsrld $30,%xmm8,%xmm10
+ vpor %xmm9,%xmm5,%xmm5
+ xorl %ecx,%esi
+ addl %ebp,%edx
+ shrdl $7,%eax,%eax
addl %esi,%edx
- andl %eax,%edi
+ vpslld $2,%xmm8,%xmm8
+ vpxor %xmm10,%xmm5,%xmm5
+ addl 28(%rsp),%ecx
xorl %ebx,%eax
- addl %ebp,%edx
- vpslld $2,%xmm10,%xmm10
- vpxor %xmm9,%xmm5,%xmm5
- shrdl $7,%ebp,%ebp
- xorl %ebx,%edi
movl %edx,%esi
- addl 28(%rsp),%ecx
- vpxor %xmm10,%xmm5,%xmm5
- xorl %eax,%ebp
shldl $5,%edx,%edx
- vmovdqa -32(%r11),%xmm11
+ vpxor %xmm8,%xmm5,%xmm5
+ andl %eax,%edi
+ xorl %ebx,%eax
+ vmovdqa 16(%r11),%xmm8
+ xorl %ebx,%edi
+ addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
addl %edi,%ecx
- andl %ebp,%esi
+ addl 32(%rsp),%ebx
xorl %eax,%ebp
- addl %edx,%ecx
- shrdl $7,%edx,%edx
- xorl %eax,%esi
vpalignr $8,%xmm2,%xmm3,%xmm6
movl %ecx,%edi
- addl 32(%rsp),%ebx
- vpaddd %xmm5,%xmm11,%xmm9
- xorl %ebp,%edx
shldl $5,%ecx,%ecx
- vpsrldq $4,%xmm5,%xmm8
- addl %esi,%ebx
- andl %edx,%edi
+ vpaddd %xmm5,%xmm8,%xmm8
+ andl %ebp,%esi
+ xorl %eax,%ebp
+ vpsrldq $4,%xmm5,%xmm10
+ xorl %eax,%esi
+ addl %ecx,%ebx
vpxor %xmm2,%xmm6,%xmm6
+ shrdl $7,%edx,%edx
+ addl %esi,%ebx
+ vpxor %xmm4,%xmm10,%xmm10
+ addl 36(%rsp),%eax
xorl %ebp,%edx
- addl %ecx,%ebx
- vpxor %xmm4,%xmm8,%xmm8
- shrdl $7,%ecx,%ecx
- xorl %ebp,%edi
movl %ebx,%esi
- addl 36(%rsp),%eax
- vpxor %xmm8,%xmm6,%xmm6
- xorl %edx,%ecx
shldl $5,%ebx,%ebx
- vmovdqa %xmm9,16(%rsp)
+ vpxor %xmm10,%xmm6,%xmm6
+ andl %edx,%edi
+ xorl %ebp,%edx
+ vmovdqa %xmm8,16(%rsp)
+ xorl %ebp,%edi
+ addl %ebx,%eax
+ vpsrld $31,%xmm6,%xmm10
+ shrdl $7,%ecx,%ecx
addl %edi,%eax
- andl %ecx,%esi
- vpsrld $31,%xmm6,%xmm8
+ addl 40(%rsp),%ebp
xorl %edx,%ecx
- addl %ebx,%eax
- shrdl $7,%ebx,%ebx
- xorl %edx,%esi
- vpslldq $12,%xmm6,%xmm10
+ vpslldq $12,%xmm6,%xmm9
vpaddd %xmm6,%xmm6,%xmm6
movl %eax,%edi
- addl 40(%rsp),%ebp
- xorl %ecx,%ebx
shldl $5,%eax,%eax
- vpsrld $30,%xmm10,%xmm9
- vpor %xmm8,%xmm6,%xmm6
+ andl %ecx,%esi
+ xorl %edx,%ecx
+ vpsrld $30,%xmm9,%xmm8
+ vpor %xmm10,%xmm6,%xmm6
+ xorl %edx,%esi
+ addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
addl %esi,%ebp
- andl %ebx,%edi
+ vpslld $2,%xmm9,%xmm9
+ vpxor %xmm8,%xmm6,%xmm6
+ addl 44(%rsp),%edx
xorl %ecx,%ebx
- addl %eax,%ebp
- vpslld $2,%xmm10,%xmm10
- vpxor %xmm9,%xmm6,%xmm6
- shrdl $7,%eax,%eax
- xorl %ecx,%edi
movl %ebp,%esi
- addl 44(%rsp),%edx
- vpxor %xmm10,%xmm6,%xmm6
- xorl %ebx,%eax
shldl $5,%ebp,%ebp
+ vpxor %xmm9,%xmm6,%xmm6
+ andl %ebx,%edi
+ xorl %ecx,%ebx
+ vmovdqa 16(%r11),%xmm9
+ xorl %ecx,%edi
+ addl %ebp,%edx
+ shrdl $7,%eax,%eax
addl %edi,%edx
- andl %eax,%esi
+ addl 48(%rsp),%ecx
xorl %ebx,%eax
- addl %ebp,%edx
- shrdl $7,%ebp,%ebp
- xorl %ebx,%esi
vpalignr $8,%xmm3,%xmm4,%xmm7
movl %edx,%edi
- addl 48(%rsp),%ecx
- vpaddd %xmm6,%xmm11,%xmm9
- xorl %eax,%ebp
shldl $5,%edx,%edx
+ vpaddd %xmm6,%xmm9,%xmm9
+ andl %eax,%esi
+ xorl %ebx,%eax
vpsrldq $4,%xmm6,%xmm8
- addl %esi,%ecx
- andl %ebp,%edi
- vpxor %xmm3,%xmm7,%xmm7
- xorl %eax,%ebp
+ xorl %ebx,%esi
addl %edx,%ecx
+ vpxor %xmm3,%xmm7,%xmm7
+ shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
vpxor %xmm5,%xmm8,%xmm8
- shrdl $7,%edx,%edx
- xorl %eax,%edi
- movl %ecx,%esi
addl 52(%rsp),%ebx
- vpxor %xmm8,%xmm7,%xmm7
- xorl %ebp,%edx
+ xorl %eax,%ebp
+ movl %ecx,%esi
shldl $5,%ecx,%ecx
+ vpxor %xmm8,%xmm7,%xmm7
+ andl %ebp,%edi
+ xorl %eax,%ebp
vmovdqa %xmm9,32(%rsp)
- addl %edi,%ebx
- andl %edx,%esi
+ xorl %eax,%edi
+ addl %ecx,%ebx
vpsrld $31,%xmm7,%xmm8
+ shrdl $7,%edx,%edx
+ addl %edi,%ebx
+ addl 56(%rsp),%eax
xorl %ebp,%edx
- addl %ecx,%ebx
- shrdl $7,%ecx,%ecx
- xorl %ebp,%esi
vpslldq $12,%xmm7,%xmm10
vpaddd %xmm7,%xmm7,%xmm7
movl %ebx,%edi
- addl 56(%rsp),%eax
- xorl %edx,%ecx
shldl $5,%ebx,%ebx
+ andl %edx,%esi
+ xorl %ebp,%edx
vpsrld $30,%xmm10,%xmm9
vpor %xmm8,%xmm7,%xmm7
- addl %esi,%eax
- andl %ecx,%edi
- xorl %edx,%ecx
+ xorl %ebp,%esi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %esi,%eax
vpslld $2,%xmm10,%xmm10
vpxor %xmm9,%xmm7,%xmm7
- shrdl $7,%ebx,%ebx
- xorl %edx,%edi
- movl %eax,%esi
addl 60(%rsp),%ebp
- vpxor %xmm10,%xmm7,%xmm7
- xorl %ecx,%ebx
+ xorl %edx,%ecx
+ movl %eax,%esi
shldl $5,%eax,%eax
- addl %edi,%ebp
- andl %ebx,%esi
- xorl %ecx,%ebx
+ vpxor %xmm10,%xmm7,%xmm7
+ andl %ecx,%edi
+ xorl %edx,%ecx
+ vmovdqa 16(%r11),%xmm10
+ xorl %edx,%edi
addl %eax,%ebp
- vpalignr $8,%xmm6,%xmm7,%xmm8
+ shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
+ vpalignr $8,%xmm6,%xmm7,%xmm9
vpxor %xmm4,%xmm0,%xmm0
- shrdl $7,%eax,%eax
- xorl %ecx,%esi
- movl %ebp,%edi
addl 0(%rsp),%edx
- vpxor %xmm1,%xmm0,%xmm0
- xorl %ebx,%eax
+ xorl %ecx,%ebx
+ movl %ebp,%edi
shldl $5,%ebp,%ebp
- vpaddd %xmm7,%xmm11,%xmm9
+ vpxor %xmm1,%xmm0,%xmm0
+ andl %ebx,%esi
+ xorl %ecx,%ebx
+ vmovdqa %xmm10,%xmm8
+ vpaddd %xmm7,%xmm10,%xmm10
+ xorl %ecx,%esi
+ addl %ebp,%edx
+ vpxor %xmm9,%xmm0,%xmm0
+ shrdl $7,%eax,%eax
addl %esi,%edx
- andl %eax,%edi
- vpxor %xmm8,%xmm0,%xmm0
+ addl 4(%rsp),%ecx
xorl %ebx,%eax
- addl %ebp,%edx
- shrdl $7,%ebp,%ebp
- xorl %ebx,%edi
- vpsrld $30,%xmm0,%xmm8
- vmovdqa %xmm9,48(%rsp)
+ vpsrld $30,%xmm0,%xmm9
+ vmovdqa %xmm10,48(%rsp)
movl %edx,%esi
- addl 4(%rsp),%ecx
- xorl %eax,%ebp
shldl $5,%edx,%edx
+ andl %eax,%edi
+ xorl %ebx,%eax
vpslld $2,%xmm0,%xmm0
+ xorl %ebx,%edi
+ addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
addl %edi,%ecx
- andl %ebp,%esi
+ addl 8(%rsp),%ebx
xorl %eax,%ebp
- addl %edx,%ecx
- shrdl $7,%edx,%edx
- xorl %eax,%esi
movl %ecx,%edi
- addl 8(%rsp),%ebx
- vpor %xmm8,%xmm0,%xmm0
- xorl %ebp,%edx
shldl $5,%ecx,%ecx
- addl %esi,%ebx
- andl %edx,%edi
- xorl %ebp,%edx
+ vpor %xmm9,%xmm0,%xmm0
+ andl %ebp,%esi
+ xorl %eax,%ebp
+ vmovdqa %xmm0,%xmm10
+ xorl %eax,%esi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %esi,%ebx
addl 12(%rsp),%eax
- xorl %ebp,%edi
+ xorl %ebp,%edx
movl %ebx,%esi
shldl $5,%ebx,%ebx
- addl %edi,%eax
- xorl %edx,%esi
- shrdl $7,%ecx,%ecx
+ andl %edx,%edi
+ xorl %ebp,%edx
+ xorl %ebp,%edi
addl %ebx,%eax
- vpalignr $8,%xmm7,%xmm0,%xmm8
+ shrdl $7,%ecx,%ecx
+ addl %edi,%eax
+ vpalignr $8,%xmm7,%xmm0,%xmm10
vpxor %xmm5,%xmm1,%xmm1
addl 16(%rsp),%ebp
- xorl %ecx,%esi
+ xorl %edx,%esi
movl %eax,%edi
shldl $5,%eax,%eax
vpxor %xmm2,%xmm1,%xmm1
- addl %esi,%ebp
- xorl %ecx,%edi
- vpaddd %xmm0,%xmm11,%xmm9
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%esi
addl %eax,%ebp
- vpxor %xmm8,%xmm1,%xmm1
+ vmovdqa %xmm8,%xmm9
+ vpaddd %xmm0,%xmm8,%xmm8
+ shrdl $7,%ebx,%ebx
+ addl %esi,%ebp
+ vpxor %xmm10,%xmm1,%xmm1
addl 20(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
shldl $5,%ebp,%ebp
- vpsrld $30,%xmm1,%xmm8
- vmovdqa %xmm9,0(%rsp)
- addl %edi,%edx
- xorl %ebx,%esi
- shrdl $7,%eax,%eax
+ vpsrld $30,%xmm1,%xmm10
+ vmovdqa %xmm8,0(%rsp)
+ xorl %ebx,%edi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %edi,%edx
vpslld $2,%xmm1,%xmm1
addl 24(%rsp),%ecx
- xorl %eax,%esi
+ xorl %ebx,%esi
movl %edx,%edi
shldl $5,%edx,%edx
- addl %esi,%ecx
- xorl %eax,%edi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%esi
addl %edx,%ecx
- vpor %xmm8,%xmm1,%xmm1
+ shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
+ vpor %xmm10,%xmm1,%xmm1
addl 28(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
+ vmovdqa %xmm1,%xmm8
movl %ecx,%esi
shldl $5,%ecx,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- shrdl $7,%edx,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %edi,%ebx
vpalignr $8,%xmm0,%xmm1,%xmm8
vpxor %xmm6,%xmm2,%xmm2
addl 32(%rsp),%eax
- xorl %edx,%esi
+ xorl %ebp,%esi
movl %ebx,%edi
shldl $5,%ebx,%ebx
vpxor %xmm3,%xmm2,%xmm2
- addl %esi,%eax
- xorl %edx,%edi
- vpaddd %xmm1,%xmm11,%xmm9
- vmovdqa 0(%r11),%xmm11
- shrdl $7,%ecx,%ecx
+ xorl %edx,%esi
addl %ebx,%eax
+ vmovdqa 32(%r11),%xmm10
+ vpaddd %xmm1,%xmm9,%xmm9
+ shrdl $7,%ecx,%ecx
+ addl %esi,%eax
vpxor %xmm8,%xmm2,%xmm2
addl 36(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
shldl $5,%eax,%eax
vpsrld $30,%xmm2,%xmm8
vmovdqa %xmm9,16(%rsp)
- addl %edi,%ebp
- xorl %ecx,%esi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
vpslld $2,%xmm2,%xmm2
addl 40(%rsp),%edx
- xorl %ebx,%esi
+ xorl %ecx,%esi
movl %ebp,%edi
shldl $5,%ebp,%ebp
- addl %esi,%edx
- xorl %ebx,%edi
- shrdl $7,%eax,%eax
+ xorl %ebx,%esi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %esi,%edx
vpor %xmm8,%xmm2,%xmm2
addl 44(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
+ vmovdqa %xmm2,%xmm9
movl %edx,%esi
shldl $5,%edx,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
- vpalignr $8,%xmm1,%xmm2,%xmm8
+ shrdl $7,%ebp,%ebp
+ addl %edi,%ecx
+ vpalignr $8,%xmm1,%xmm2,%xmm9
vpxor %xmm7,%xmm3,%xmm3
addl 48(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
shldl $5,%ecx,%ecx
vpxor %xmm4,%xmm3,%xmm3
- addl %esi,%ebx
- xorl %ebp,%edi
- vpaddd %xmm2,%xmm11,%xmm9
- shrdl $7,%edx,%edx
+ xorl %ebp,%esi
addl %ecx,%ebx
- vpxor %xmm8,%xmm3,%xmm3
+ vmovdqa %xmm10,%xmm8
+ vpaddd %xmm2,%xmm10,%xmm10
+ shrdl $7,%edx,%edx
+ addl %esi,%ebx
+ vpxor %xmm9,%xmm3,%xmm3
addl 52(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
shldl $5,%ebx,%ebx
- vpsrld $30,%xmm3,%xmm8
- vmovdqa %xmm9,32(%rsp)
- addl %edi,%eax
- xorl %edx,%esi
- shrdl $7,%ecx,%ecx
+ vpsrld $30,%xmm3,%xmm9
+ vmovdqa %xmm10,32(%rsp)
+ xorl %edx,%edi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %edi,%eax
vpslld $2,%xmm3,%xmm3
addl 56(%rsp),%ebp
- xorl %ecx,%esi
+ xorl %edx,%esi
movl %eax,%edi
shldl $5,%eax,%eax
- addl %esi,%ebp
- xorl %ecx,%edi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%esi
addl %eax,%ebp
- vpor %xmm8,%xmm3,%xmm3
+ shrdl $7,%ebx,%ebx
+ addl %esi,%ebp
+ vpor %xmm9,%xmm3,%xmm3
addl 60(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
+ vmovdqa %xmm3,%xmm10
movl %ebp,%esi
shldl $5,%ebp,%ebp
- addl %edi,%edx
- xorl %ebx,%esi
- shrdl $7,%eax,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
- vpalignr $8,%xmm2,%xmm3,%xmm8
+ shrdl $7,%eax,%eax
+ addl %edi,%edx
+ vpalignr $8,%xmm2,%xmm3,%xmm10
vpxor %xmm0,%xmm4,%xmm4
addl 0(%rsp),%ecx
- xorl %eax,%esi
+ xorl %ebx,%esi
movl %edx,%edi
shldl $5,%edx,%edx
vpxor %xmm5,%xmm4,%xmm4
- addl %esi,%ecx
- xorl %eax,%edi
- vpaddd %xmm3,%xmm11,%xmm9
- shrdl $7,%ebp,%ebp
+ xorl %eax,%esi
addl %edx,%ecx
- vpxor %xmm8,%xmm4,%xmm4
+ vmovdqa %xmm8,%xmm9
+ vpaddd %xmm3,%xmm8,%xmm8
+ shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
+ vpxor %xmm10,%xmm4,%xmm4
addl 4(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
movl %ecx,%esi
shldl $5,%ecx,%ecx
- vpsrld $30,%xmm4,%xmm8
- vmovdqa %xmm9,48(%rsp)
- addl %edi,%ebx
- xorl %ebp,%esi
- shrdl $7,%edx,%edx
+ vpsrld $30,%xmm4,%xmm10
+ vmovdqa %xmm8,48(%rsp)
+ xorl %ebp,%edi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %edi,%ebx
vpslld $2,%xmm4,%xmm4
addl 8(%rsp),%eax
- xorl %edx,%esi
+ xorl %ebp,%esi
movl %ebx,%edi
shldl $5,%ebx,%ebx
- addl %esi,%eax
- xorl %edx,%edi
- shrdl $7,%ecx,%ecx
+ xorl %edx,%esi
addl %ebx,%eax
- vpor %xmm8,%xmm4,%xmm4
+ shrdl $7,%ecx,%ecx
+ addl %esi,%eax
+ vpor %xmm10,%xmm4,%xmm4
addl 12(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
+ vmovdqa %xmm4,%xmm8
movl %eax,%esi
shldl $5,%eax,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
vpalignr $8,%xmm3,%xmm4,%xmm8
vpxor %xmm1,%xmm5,%xmm5
addl 16(%rsp),%edx
- xorl %ebx,%esi
+ xorl %ecx,%esi
movl %ebp,%edi
shldl $5,%ebp,%ebp
vpxor %xmm6,%xmm5,%xmm5
- addl %esi,%edx
- xorl %ebx,%edi
- vpaddd %xmm4,%xmm11,%xmm9
- shrdl $7,%eax,%eax
+ xorl %ebx,%esi
addl %ebp,%edx
+ vmovdqa %xmm9,%xmm10
+ vpaddd %xmm4,%xmm9,%xmm9
+ shrdl $7,%eax,%eax
+ addl %esi,%edx
vpxor %xmm8,%xmm5,%xmm5
addl 20(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
movl %edx,%esi
shldl $5,%edx,%edx
vpsrld $30,%xmm5,%xmm8
vmovdqa %xmm9,0(%rsp)
- addl %edi,%ecx
- xorl %eax,%esi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %edi,%ecx
vpslld $2,%xmm5,%xmm5
addl 24(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
shldl $5,%ecx,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
- shrdl $7,%edx,%edx
+ xorl %ebp,%esi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %esi,%ebx
vpor %xmm8,%xmm5,%xmm5
addl 28(%rsp),%eax
- shrdl $7,%ecx,%ecx
+ xorl %ebp,%edi
+ vmovdqa %xmm5,%xmm9
movl %ebx,%esi
- xorl %edx,%edi
shldl $5,%ebx,%ebx
- addl %edi,%eax
- xorl %ecx,%esi
- xorl %edx,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
- vpalignr $8,%xmm4,%xmm5,%xmm8
+ shrdl $7,%ecx,%ecx
+ addl %edi,%eax
+ vpalignr $8,%xmm4,%xmm5,%xmm9
vpxor %xmm2,%xmm6,%xmm6
+ movl %ecx,%edi
+ xorl %edx,%ecx
addl 32(%rsp),%ebp
+ andl %edx,%edi
+ vpxor %xmm7,%xmm6,%xmm6
andl %ecx,%esi
- xorl %edx,%ecx
shrdl $7,%ebx,%ebx
- vpxor %xmm7,%xmm6,%xmm6
+ vmovdqa %xmm10,%xmm8
+ vpaddd %xmm5,%xmm10,%xmm10
+ addl %edi,%ebp
movl %eax,%edi
- xorl %ecx,%esi
- vpaddd %xmm5,%xmm11,%xmm9
+ vpxor %xmm9,%xmm6,%xmm6
shldl $5,%eax,%eax
addl %esi,%ebp
- vpxor %xmm8,%xmm6,%xmm6
- xorl %ebx,%edi
- xorl %ecx,%ebx
+ xorl %edx,%ecx
addl %eax,%ebp
+ vpsrld $30,%xmm6,%xmm9
+ vmovdqa %xmm10,16(%rsp)
+ movl %ebx,%esi
+ xorl %ecx,%ebx
addl 36(%rsp),%edx
- vpsrld $30,%xmm6,%xmm8
- vmovdqa %xmm9,16(%rsp)
+ andl %ecx,%esi
+ vpslld $2,%xmm6,%xmm6
andl %ebx,%edi
- xorl %ecx,%ebx
shrdl $7,%eax,%eax
+ addl %esi,%edx
movl %ebp,%esi
- vpslld $2,%xmm6,%xmm6
- xorl %ebx,%edi
shldl $5,%ebp,%ebp
addl %edi,%edx
- xorl %eax,%esi
- xorl %ebx,%eax
+ xorl %ecx,%ebx
addl %ebp,%edx
+ vpor %xmm9,%xmm6,%xmm6
+ movl %eax,%edi
+ xorl %ebx,%eax
+ vmovdqa %xmm6,%xmm10
addl 40(%rsp),%ecx
+ andl %ebx,%edi
andl %eax,%esi
- vpor %xmm8,%xmm6,%xmm6
- xorl %ebx,%eax
shrdl $7,%ebp,%ebp
+ addl %edi,%ecx
movl %edx,%edi
- xorl %eax,%esi
shldl $5,%edx,%edx
addl %esi,%ecx
- xorl %ebp,%edi
- xorl %eax,%ebp
+ xorl %ebx,%eax
addl %edx,%ecx
+ movl %ebp,%esi
+ xorl %eax,%ebp
addl 44(%rsp),%ebx
+ andl %eax,%esi
andl %ebp,%edi
- xorl %eax,%ebp
shrdl $7,%edx,%edx
+ addl %esi,%ebx
movl %ecx,%esi
- xorl %ebp,%edi
shldl $5,%ecx,%ecx
addl %edi,%ebx
- xorl %edx,%esi
- xorl %ebp,%edx
+ xorl %eax,%ebp
addl %ecx,%ebx
- vpalignr $8,%xmm5,%xmm6,%xmm8
+ vpalignr $8,%xmm5,%xmm6,%xmm10
vpxor %xmm3,%xmm7,%xmm7
+ movl %edx,%edi
+ xorl %ebp,%edx
addl 48(%rsp),%eax
+ andl %ebp,%edi
+ vpxor %xmm0,%xmm7,%xmm7
andl %edx,%esi
- xorl %ebp,%edx
shrdl $7,%ecx,%ecx
- vpxor %xmm0,%xmm7,%xmm7
+ vmovdqa 48(%r11),%xmm9
+ vpaddd %xmm6,%xmm8,%xmm8
+ addl %edi,%eax
movl %ebx,%edi
- xorl %edx,%esi
- vpaddd %xmm6,%xmm11,%xmm9
- vmovdqa 32(%r11),%xmm11
+ vpxor %xmm10,%xmm7,%xmm7
shldl $5,%ebx,%ebx
addl %esi,%eax
- vpxor %xmm8,%xmm7,%xmm7
- xorl %ecx,%edi
- xorl %edx,%ecx
+ xorl %ebp,%edx
addl %ebx,%eax
+ vpsrld $30,%xmm7,%xmm10
+ vmovdqa %xmm8,32(%rsp)
+ movl %ecx,%esi
+ xorl %edx,%ecx
addl 52(%rsp),%ebp
- vpsrld $30,%xmm7,%xmm8
- vmovdqa %xmm9,32(%rsp)
+ andl %edx,%esi
+ vpslld $2,%xmm7,%xmm7
andl %ecx,%edi
- xorl %edx,%ecx
shrdl $7,%ebx,%ebx
+ addl %esi,%ebp
movl %eax,%esi
- vpslld $2,%xmm7,%xmm7
- xorl %ecx,%edi
shldl $5,%eax,%eax
addl %edi,%ebp
- xorl %ebx,%esi
- xorl %ecx,%ebx
+ xorl %edx,%ecx
addl %eax,%ebp
+ vpor %xmm10,%xmm7,%xmm7
+ movl %ebx,%edi
+ xorl %ecx,%ebx
+ vmovdqa %xmm7,%xmm8
addl 56(%rsp),%edx
+ andl %ecx,%edi
andl %ebx,%esi
- vpor %xmm8,%xmm7,%xmm7
- xorl %ecx,%ebx
shrdl $7,%eax,%eax
+ addl %edi,%edx
movl %ebp,%edi
- xorl %ebx,%esi
shldl $5,%ebp,%ebp
addl %esi,%edx
- xorl %eax,%edi
- xorl %ebx,%eax
+ xorl %ecx,%ebx
addl %ebp,%edx
+ movl %eax,%esi
+ xorl %ebx,%eax
addl 60(%rsp),%ecx
+ andl %ebx,%esi
andl %eax,%edi
- xorl %ebx,%eax
shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
movl %edx,%esi
- xorl %eax,%edi
shldl $5,%edx,%edx
addl %edi,%ecx
- xorl %ebp,%esi
- xorl %eax,%ebp
+ xorl %ebx,%eax
addl %edx,%ecx
vpalignr $8,%xmm6,%xmm7,%xmm8
vpxor %xmm4,%xmm0,%xmm0
+ movl %ebp,%edi
+ xorl %eax,%ebp
addl 0(%rsp),%ebx
+ andl %eax,%edi
+ vpxor %xmm1,%xmm0,%xmm0
andl %ebp,%esi
- xorl %eax,%ebp
shrdl $7,%edx,%edx
- vpxor %xmm1,%xmm0,%xmm0
+ vmovdqa %xmm9,%xmm10
+ vpaddd %xmm7,%xmm9,%xmm9
+ addl %edi,%ebx
movl %ecx,%edi
- xorl %ebp,%esi
- vpaddd %xmm7,%xmm11,%xmm9
+ vpxor %xmm8,%xmm0,%xmm0
shldl $5,%ecx,%ecx
addl %esi,%ebx
- vpxor %xmm8,%xmm0,%xmm0
- xorl %edx,%edi
- xorl %ebp,%edx
+ xorl %eax,%ebp
addl %ecx,%ebx
- addl 4(%rsp),%eax
vpsrld $30,%xmm0,%xmm8
vmovdqa %xmm9,48(%rsp)
- andl %edx,%edi
+ movl %edx,%esi
xorl %ebp,%edx
+ addl 4(%rsp),%eax
+ andl %ebp,%esi
+ vpslld $2,%xmm0,%xmm0
+ andl %edx,%edi
shrdl $7,%ecx,%ecx
+ addl %esi,%eax
movl %ebx,%esi
- vpslld $2,%xmm0,%xmm0
- xorl %edx,%edi
shldl $5,%ebx,%ebx
addl %edi,%eax
- xorl %ecx,%esi
- xorl %edx,%ecx
+ xorl %ebp,%edx
addl %ebx,%eax
- addl 8(%rsp),%ebp
- andl %ecx,%esi
vpor %xmm8,%xmm0,%xmm0
+ movl %ecx,%edi
xorl %edx,%ecx
+ vmovdqa %xmm0,%xmm9
+ addl 8(%rsp),%ebp
+ andl %edx,%edi
+ andl %ecx,%esi
shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
movl %eax,%edi
- xorl %ecx,%esi
shldl $5,%eax,%eax
addl %esi,%ebp
- xorl %ebx,%edi
- xorl %ecx,%ebx
+ xorl %edx,%ecx
addl %eax,%ebp
+ movl %ebx,%esi
+ xorl %ecx,%ebx
addl 12(%rsp),%edx
+ andl %ecx,%esi
andl %ebx,%edi
- xorl %ecx,%ebx
shrdl $7,%eax,%eax
+ addl %esi,%edx
movl %ebp,%esi
- xorl %ebx,%edi
shldl $5,%ebp,%ebp
addl %edi,%edx
- xorl %eax,%esi
- xorl %ebx,%eax
+ xorl %ecx,%ebx
addl %ebp,%edx
- vpalignr $8,%xmm7,%xmm0,%xmm8
+ vpalignr $8,%xmm7,%xmm0,%xmm9
vpxor %xmm5,%xmm1,%xmm1
+ movl %eax,%edi
+ xorl %ebx,%eax
addl 16(%rsp),%ecx
+ andl %ebx,%edi
+ vpxor %xmm2,%xmm1,%xmm1
andl %eax,%esi
- xorl %ebx,%eax
shrdl $7,%ebp,%ebp
- vpxor %xmm2,%xmm1,%xmm1
+ vmovdqa %xmm10,%xmm8
+ vpaddd %xmm0,%xmm10,%xmm10
+ addl %edi,%ecx
movl %edx,%edi
- xorl %eax,%esi
- vpaddd %xmm0,%xmm11,%xmm9
+ vpxor %xmm9,%xmm1,%xmm1
shldl $5,%edx,%edx
addl %esi,%ecx
- vpxor %xmm8,%xmm1,%xmm1
- xorl %ebp,%edi
- xorl %eax,%ebp
+ xorl %ebx,%eax
addl %edx,%ecx
+ vpsrld $30,%xmm1,%xmm9
+ vmovdqa %xmm10,0(%rsp)
+ movl %ebp,%esi
+ xorl %eax,%ebp
addl 20(%rsp),%ebx
- vpsrld $30,%xmm1,%xmm8
- vmovdqa %xmm9,0(%rsp)
+ andl %eax,%esi
+ vpslld $2,%xmm1,%xmm1
andl %ebp,%edi
- xorl %eax,%ebp
shrdl $7,%edx,%edx
+ addl %esi,%ebx
movl %ecx,%esi
- vpslld $2,%xmm1,%xmm1
- xorl %ebp,%edi
shldl $5,%ecx,%ecx
addl %edi,%ebx
- xorl %edx,%esi
- xorl %ebp,%edx
+ xorl %eax,%ebp
addl %ecx,%ebx
+ vpor %xmm9,%xmm1,%xmm1
+ movl %edx,%edi
+ xorl %ebp,%edx
+ vmovdqa %xmm1,%xmm10
addl 24(%rsp),%eax
+ andl %ebp,%edi
andl %edx,%esi
- vpor %xmm8,%xmm1,%xmm1
- xorl %ebp,%edx
shrdl $7,%ecx,%ecx
+ addl %edi,%eax
movl %ebx,%edi
- xorl %edx,%esi
shldl $5,%ebx,%ebx
addl %esi,%eax
- xorl %ecx,%edi
- xorl %edx,%ecx
+ xorl %ebp,%edx
addl %ebx,%eax
+ movl %ecx,%esi
+ xorl %edx,%ecx
addl 28(%rsp),%ebp
+ andl %edx,%esi
andl %ecx,%edi
- xorl %edx,%ecx
shrdl $7,%ebx,%ebx
+ addl %esi,%ebp
movl %eax,%esi
- xorl %ecx,%edi
shldl $5,%eax,%eax
addl %edi,%ebp
- xorl %ebx,%esi
- xorl %ecx,%ebx
+ xorl %edx,%ecx
addl %eax,%ebp
- vpalignr $8,%xmm0,%xmm1,%xmm8
+ vpalignr $8,%xmm0,%xmm1,%xmm10
vpxor %xmm6,%xmm2,%xmm2
+ movl %ebx,%edi
+ xorl %ecx,%ebx
addl 32(%rsp),%edx
+ andl %ecx,%edi
+ vpxor %xmm3,%xmm2,%xmm2
andl %ebx,%esi
- xorl %ecx,%ebx
shrdl $7,%eax,%eax
- vpxor %xmm3,%xmm2,%xmm2
+ vmovdqa %xmm8,%xmm9
+ vpaddd %xmm1,%xmm8,%xmm8
+ addl %edi,%edx
movl %ebp,%edi
- xorl %ebx,%esi
- vpaddd %xmm1,%xmm11,%xmm9
+ vpxor %xmm10,%xmm2,%xmm2
shldl $5,%ebp,%ebp
addl %esi,%edx
- vpxor %xmm8,%xmm2,%xmm2
- xorl %eax,%edi
- xorl %ebx,%eax
+ xorl %ecx,%ebx
addl %ebp,%edx
+ vpsrld $30,%xmm2,%xmm10
+ vmovdqa %xmm8,16(%rsp)
+ movl %eax,%esi
+ xorl %ebx,%eax
addl 36(%rsp),%ecx
- vpsrld $30,%xmm2,%xmm8
- vmovdqa %xmm9,16(%rsp)
+ andl %ebx,%esi
+ vpslld $2,%xmm2,%xmm2
andl %eax,%edi
- xorl %ebx,%eax
shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
movl %edx,%esi
- vpslld $2,%xmm2,%xmm2
- xorl %eax,%edi
shldl $5,%edx,%edx
addl %edi,%ecx
- xorl %ebp,%esi
- xorl %eax,%ebp
+ xorl %ebx,%eax
addl %edx,%ecx
+ vpor %xmm10,%xmm2,%xmm2
+ movl %ebp,%edi
+ xorl %eax,%ebp
+ vmovdqa %xmm2,%xmm8
addl 40(%rsp),%ebx
+ andl %eax,%edi
andl %ebp,%esi
- vpor %xmm8,%xmm2,%xmm2
- xorl %eax,%ebp
shrdl $7,%edx,%edx
+ addl %edi,%ebx
movl %ecx,%edi
- xorl %ebp,%esi
shldl $5,%ecx,%ecx
addl %esi,%ebx
- xorl %edx,%edi
- xorl %ebp,%edx
+ xorl %eax,%ebp
addl %ecx,%ebx
+ movl %edx,%esi
+ xorl %ebp,%edx
addl 44(%rsp),%eax
+ andl %ebp,%esi
andl %edx,%edi
- xorl %ebp,%edx
shrdl $7,%ecx,%ecx
+ addl %esi,%eax
movl %ebx,%esi
- xorl %edx,%edi
shldl $5,%ebx,%ebx
addl %edi,%eax
- xorl %edx,%esi
+ xorl %ebp,%edx
addl %ebx,%eax
vpalignr $8,%xmm1,%xmm2,%xmm8
vpxor %xmm7,%xmm3,%xmm3
addl 48(%rsp),%ebp
- xorl %ecx,%esi
+ xorl %edx,%esi
movl %eax,%edi
shldl $5,%eax,%eax
vpxor %xmm4,%xmm3,%xmm3
- addl %esi,%ebp
- xorl %ecx,%edi
- vpaddd %xmm2,%xmm11,%xmm9
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%esi
addl %eax,%ebp
+ vmovdqa %xmm9,%xmm10
+ vpaddd %xmm2,%xmm9,%xmm9
+ shrdl $7,%ebx,%ebx
+ addl %esi,%ebp
vpxor %xmm8,%xmm3,%xmm3
addl 52(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
shldl $5,%ebp,%ebp
vpsrld $30,%xmm3,%xmm8
vmovdqa %xmm9,32(%rsp)
- addl %edi,%edx
- xorl %ebx,%esi
- shrdl $7,%eax,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %edi,%edx
vpslld $2,%xmm3,%xmm3
addl 56(%rsp),%ecx
- xorl %eax,%esi
+ xorl %ebx,%esi
movl %edx,%edi
shldl $5,%edx,%edx
- addl %esi,%ecx
- xorl %eax,%edi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%esi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
vpor %xmm8,%xmm3,%xmm3
addl 60(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
movl %ecx,%esi
shldl $5,%ecx,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- shrdl $7,%edx,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %edi,%ebx
addl 0(%rsp),%eax
- vpaddd %xmm3,%xmm11,%xmm9
- xorl %edx,%esi
+ vpaddd %xmm3,%xmm10,%xmm10
+ xorl %ebp,%esi
movl %ebx,%edi
shldl $5,%ebx,%ebx
- addl %esi,%eax
- vmovdqa %xmm9,48(%rsp)
- xorl %edx,%edi
- shrdl $7,%ecx,%ecx
+ xorl %edx,%esi
+ movdqa %xmm10,48(%rsp)
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %esi,%eax
addl 4(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
shldl $5,%eax,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
addl 8(%rsp),%edx
- xorl %ebx,%esi
+ xorl %ecx,%esi
movl %ebp,%edi
shldl $5,%ebp,%ebp
- addl %esi,%edx
- xorl %ebx,%edi
- shrdl $7,%eax,%eax
+ xorl %ebx,%esi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %esi,%edx
addl 12(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
movl %edx,%esi
shldl $5,%edx,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %edi,%ecx
cmpq %r10,%r9
je .Ldone_avx
vmovdqa 64(%r11),%xmm6
- vmovdqa -64(%r11),%xmm11
+ vmovdqa 0(%r11),%xmm9
vmovdqu 0(%r9),%xmm0
vmovdqu 16(%r9),%xmm1
vmovdqu 32(%r9),%xmm2
@@ -3461,109 +3394,110 @@ _avx_shortcut:
vpshufb %xmm6,%xmm0,%xmm0
addq $64,%r9
addl 16(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
vpshufb %xmm6,%xmm1,%xmm1
movl %ecx,%edi
shldl $5,%ecx,%ecx
- vpaddd %xmm11,%xmm0,%xmm4
- addl %esi,%ebx
- xorl %ebp,%edi
- shrdl $7,%edx,%edx
+ vpaddd %xmm9,%xmm0,%xmm4
+ xorl %ebp,%esi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %esi,%ebx
vmovdqa %xmm4,0(%rsp)
addl 20(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
shldl $5,%ebx,%ebx
- addl %edi,%eax
- xorl %edx,%esi
- shrdl $7,%ecx,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %edi,%eax
addl 24(%rsp),%ebp
- xorl %ecx,%esi
+ xorl %edx,%esi
movl %eax,%edi
shldl $5,%eax,%eax
- addl %esi,%ebp
- xorl %ecx,%edi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%esi
addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
+ addl %esi,%ebp
addl 28(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
shldl $5,%ebp,%ebp
- addl %edi,%edx
- xorl %ebx,%esi
- shrdl $7,%eax,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %edi,%edx
addl 32(%rsp),%ecx
- xorl %eax,%esi
+ xorl %ebx,%esi
vpshufb %xmm6,%xmm2,%xmm2
movl %edx,%edi
shldl $5,%edx,%edx
- vpaddd %xmm11,%xmm1,%xmm5
- addl %esi,%ecx
- xorl %eax,%edi
- shrdl $7,%ebp,%ebp
+ vpaddd %xmm9,%xmm1,%xmm5
+ xorl %eax,%esi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
vmovdqa %xmm5,16(%rsp)
addl 36(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
movl %ecx,%esi
shldl $5,%ecx,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- shrdl $7,%edx,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %edi,%ebx
addl 40(%rsp),%eax
- xorl %edx,%esi
+ xorl %ebp,%esi
movl %ebx,%edi
shldl $5,%ebx,%ebx
- addl %esi,%eax
- xorl %edx,%edi
- shrdl $7,%ecx,%ecx
+ xorl %edx,%esi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %esi,%eax
addl 44(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
shldl $5,%eax,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
addl 48(%rsp),%edx
- xorl %ebx,%esi
+ xorl %ecx,%esi
vpshufb %xmm6,%xmm3,%xmm3
movl %ebp,%edi
shldl $5,%ebp,%ebp
- vpaddd %xmm11,%xmm2,%xmm6
- addl %esi,%edx
- xorl %ebx,%edi
- shrdl $7,%eax,%eax
+ vpaddd %xmm9,%xmm2,%xmm6
+ xorl %ebx,%esi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %esi,%edx
vmovdqa %xmm6,32(%rsp)
addl 52(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
movl %edx,%esi
shldl $5,%edx,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %edi,%ecx
addl 56(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
shldl $5,%ecx,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
- shrdl $7,%edx,%edx
+ xorl %ebp,%esi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %esi,%ebx
addl 60(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
shldl $5,%ebx,%ebx
- addl %edi,%eax
- shrdl $7,%ecx,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %edi,%eax
addl 0(%r8),%eax
addl 4(%r8),%esi
addl 8(%r8),%ecx
@@ -3573,110 +3507,108 @@ _avx_shortcut:
movl %esi,4(%r8)
movl %esi,%ebx
movl %ecx,8(%r8)
- movl %ecx,%edi
movl %edx,12(%r8)
- xorl %edx,%edi
movl %ebp,16(%r8)
- andl %edi,%esi
jmp .Loop_avx
.align 16
.Ldone_avx:
addl 16(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
shldl $5,%ecx,%ecx
+ xorl %ebp,%esi
+ addl %ecx,%ebx
+ shrdl $7,%edx,%edx
addl %esi,%ebx
+ addl 20(%rsp),%eax
xorl %ebp,%edi
- shrdl $7,%edx,%edx
- addl %ecx,%ebx
- addl 20(%rsp),%eax
- xorl %edx,%edi
movl %ebx,%esi
shldl $5,%ebx,%ebx
- addl %edi,%eax
- xorl %edx,%esi
- shrdl $7,%ecx,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %edi,%eax
addl 24(%rsp),%ebp
- xorl %ecx,%esi
+ xorl %edx,%esi
movl %eax,%edi
shldl $5,%eax,%eax
- addl %esi,%ebp
- xorl %ecx,%edi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%esi
addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
+ addl %esi,%ebp
addl 28(%rsp),%edx
- xorl %ebx,%edi
+ xorl %ecx,%edi
movl %ebp,%esi
shldl $5,%ebp,%ebp
- addl %edi,%edx
- xorl %ebx,%esi
- shrdl $7,%eax,%eax
+ xorl %ebx,%edi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %edi,%edx
addl 32(%rsp),%ecx
- xorl %eax,%esi
+ xorl %ebx,%esi
movl %edx,%edi
shldl $5,%edx,%edx
- addl %esi,%ecx
- xorl %eax,%edi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%esi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %esi,%ecx
addl 36(%rsp),%ebx
- xorl %ebp,%edi
+ xorl %eax,%edi
movl %ecx,%esi
shldl $5,%ecx,%ecx
- addl %edi,%ebx
- xorl %ebp,%esi
- shrdl $7,%edx,%edx
+ xorl %ebp,%edi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %edi,%ebx
addl 40(%rsp),%eax
- xorl %edx,%esi
+ xorl %ebp,%esi
movl %ebx,%edi
shldl $5,%ebx,%ebx
- addl %esi,%eax
- xorl %edx,%edi
- shrdl $7,%ecx,%ecx
+ xorl %edx,%esi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %esi,%eax
addl 44(%rsp),%ebp
- xorl %ecx,%edi
+ xorl %edx,%edi
movl %eax,%esi
shldl $5,%eax,%eax
- addl %edi,%ebp
- xorl %ecx,%esi
- shrdl $7,%ebx,%ebx
+ xorl %ecx,%edi
addl %eax,%ebp
+ shrdl $7,%ebx,%ebx
+ addl %edi,%ebp
addl 48(%rsp),%edx
- xorl %ebx,%esi
+ xorl %ecx,%esi
movl %ebp,%edi
shldl $5,%ebp,%ebp
- addl %esi,%edx
- xorl %ebx,%edi
- shrdl $7,%eax,%eax
+ xorl %ebx,%esi
addl %ebp,%edx
+ shrdl $7,%eax,%eax
+ addl %esi,%edx
addl 52(%rsp),%ecx
- xorl %eax,%edi
+ xorl %ebx,%edi
movl %edx,%esi
shldl $5,%edx,%edx
- addl %edi,%ecx
- xorl %eax,%esi
- shrdl $7,%ebp,%ebp
+ xorl %eax,%edi
addl %edx,%ecx
+ shrdl $7,%ebp,%ebp
+ addl %edi,%ecx
addl 56(%rsp),%ebx
- xorl %ebp,%esi
+ xorl %eax,%esi
movl %ecx,%edi
shldl $5,%ecx,%ecx
- addl %esi,%ebx
- xorl %ebp,%edi
- shrdl $7,%edx,%edx
+ xorl %ebp,%esi
addl %ecx,%ebx
+ shrdl $7,%edx,%edx
+ addl %esi,%ebx
addl 60(%rsp),%eax
- xorl %edx,%edi
+ xorl %ebp,%edi
movl %ebx,%esi
shldl $5,%ebx,%ebx
- addl %edi,%eax
- shrdl $7,%ecx,%ecx
+ xorl %edx,%edi
addl %ebx,%eax
+ shrdl $7,%ecx,%ecx
+ addl %edi,%eax
vzeroupper
addl 0(%r8),%eax
@@ -3689,1709 +3621,20 @@ _avx_shortcut:
movl %ecx,8(%r8)
movl %edx,12(%r8)
movl %ebp,16(%r8)
- leaq (%r14),%rsi
- movq -40(%rsi),%r14
- movq -32(%rsi),%r13
- movq -24(%rsi),%r12
- movq -16(%rsi),%rbp
- movq -8(%rsi),%rbx
- leaq (%rsi),%rsp
+ leaq 64(%rsp),%rsi
+ movq 0(%rsi),%r12
+ movq 8(%rsi),%rbp
+ movq 16(%rsi),%rbx
+ leaq 24(%rsi),%rsp
.Lepilogue_avx:
.byte 0xf3,0xc3
.size sha1_block_data_order_avx,.-sha1_block_data_order_avx
-.type sha1_block_data_order_avx2,@function
-.align 16
-sha1_block_data_order_avx2:
-_avx2_shortcut:
- movq %rsp,%rax
- pushq %rbx
- pushq %rbp
- pushq %r12
- pushq %r13
- pushq %r14
- vzeroupper
- movq %rax,%r14
- movq %rdi,%r8
- movq %rsi,%r9
- movq %rdx,%r10
-
- leaq -640(%rsp),%rsp
- shlq $6,%r10
- leaq 64(%r9),%r13
- andq $-128,%rsp
- addq %r9,%r10
- leaq K_XX_XX+64(%rip),%r11
-
- movl 0(%r8),%eax
- cmpq %r10,%r13
- cmovaeq %r9,%r13
- movl 4(%r8),%ebp
- movl 8(%r8),%ecx
- movl 12(%r8),%edx
- movl 16(%r8),%esi
- vmovdqu 64(%r11),%ymm6
-
- vmovdqu (%r9),%xmm0
- vmovdqu 16(%r9),%xmm1
- vmovdqu 32(%r9),%xmm2
- vmovdqu 48(%r9),%xmm3
- leaq 64(%r9),%r9
- vinserti128 $1,(%r13),%ymm0,%ymm0
- vinserti128 $1,16(%r13),%ymm1,%ymm1
- vpshufb %ymm6,%ymm0,%ymm0
- vinserti128 $1,32(%r13),%ymm2,%ymm2
- vpshufb %ymm6,%ymm1,%ymm1
- vinserti128 $1,48(%r13),%ymm3,%ymm3
- vpshufb %ymm6,%ymm2,%ymm2
- vmovdqu -64(%r11),%ymm11
- vpshufb %ymm6,%ymm3,%ymm3
-
- vpaddd %ymm11,%ymm0,%ymm4
- vpaddd %ymm11,%ymm1,%ymm5
- vmovdqu %ymm4,0(%rsp)
- vpaddd %ymm11,%ymm2,%ymm6
- vmovdqu %ymm5,32(%rsp)
- vpaddd %ymm11,%ymm3,%ymm7
- vmovdqu %ymm6,64(%rsp)
- vmovdqu %ymm7,96(%rsp)
- vpalignr $8,%ymm0,%ymm1,%ymm4
- vpsrldq $4,%ymm3,%ymm8
- vpxor %ymm0,%ymm4,%ymm4
- vpxor %ymm2,%ymm8,%ymm8
- vpxor %ymm8,%ymm4,%ymm4
- vpsrld $31,%ymm4,%ymm8
- vpslldq $12,%ymm4,%ymm10
- vpaddd %ymm4,%ymm4,%ymm4
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm4,%ymm4
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm4,%ymm4
- vpxor %ymm10,%ymm4,%ymm4
- vpaddd %ymm11,%ymm4,%ymm9
- vmovdqu %ymm9,128(%rsp)
- vpalignr $8,%ymm1,%ymm2,%ymm5
- vpsrldq $4,%ymm4,%ymm8
- vpxor %ymm1,%ymm5,%ymm5
- vpxor %ymm3,%ymm8,%ymm8
- vpxor %ymm8,%ymm5,%ymm5
- vpsrld $31,%ymm5,%ymm8
- vmovdqu -32(%r11),%ymm11
- vpslldq $12,%ymm5,%ymm10
- vpaddd %ymm5,%ymm5,%ymm5
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm5,%ymm5
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm5,%ymm5
- vpxor %ymm10,%ymm5,%ymm5
- vpaddd %ymm11,%ymm5,%ymm9
- vmovdqu %ymm9,160(%rsp)
- vpalignr $8,%ymm2,%ymm3,%ymm6
- vpsrldq $4,%ymm5,%ymm8
- vpxor %ymm2,%ymm6,%ymm6
- vpxor %ymm4,%ymm8,%ymm8
- vpxor %ymm8,%ymm6,%ymm6
- vpsrld $31,%ymm6,%ymm8
- vpslldq $12,%ymm6,%ymm10
- vpaddd %ymm6,%ymm6,%ymm6
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm6,%ymm6
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm6,%ymm6
- vpxor %ymm10,%ymm6,%ymm6
- vpaddd %ymm11,%ymm6,%ymm9
- vmovdqu %ymm9,192(%rsp)
- vpalignr $8,%ymm3,%ymm4,%ymm7
- vpsrldq $4,%ymm6,%ymm8
- vpxor %ymm3,%ymm7,%ymm7
- vpxor %ymm5,%ymm8,%ymm8
- vpxor %ymm8,%ymm7,%ymm7
- vpsrld $31,%ymm7,%ymm8
- vpslldq $12,%ymm7,%ymm10
- vpaddd %ymm7,%ymm7,%ymm7
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm7,%ymm7
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm7,%ymm7
- vpxor %ymm10,%ymm7,%ymm7
- vpaddd %ymm11,%ymm7,%ymm9
- vmovdqu %ymm9,224(%rsp)
- leaq 128(%rsp),%r13
- jmp .Loop_avx2
-.align 32
-.Loop_avx2:
- rorxl $2,%ebp,%ebx
- andnl %edx,%ebp,%edi
- andl %ecx,%ebp
- xorl %edi,%ebp
- jmp .Lalign32_1
-.align 32
-.Lalign32_1:
- vpalignr $8,%ymm6,%ymm7,%ymm8
- vpxor %ymm4,%ymm0,%ymm0
- addl -128(%r13),%esi
- andnl %ecx,%eax,%edi
- vpxor %ymm1,%ymm0,%ymm0
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- vpxor %ymm8,%ymm0,%ymm0
- andl %ebx,%eax
- addl %r12d,%esi
- xorl %edi,%eax
- vpsrld $30,%ymm0,%ymm8
- vpslld $2,%ymm0,%ymm0
- addl -124(%r13),%edx
- andnl %ebx,%esi,%edi
- addl %eax,%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- andl %ebp,%esi
- vpor %ymm8,%ymm0,%ymm0
- addl %r12d,%edx
- xorl %edi,%esi
- addl -120(%r13),%ecx
- andnl %ebp,%edx,%edi
- vpaddd %ymm11,%ymm0,%ymm9
- addl %esi,%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- andl %eax,%edx
- vmovdqu %ymm9,256(%rsp)
- addl %r12d,%ecx
- xorl %edi,%edx
- addl -116(%r13),%ebx
- andnl %eax,%ecx,%edi
- addl %edx,%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- andl %esi,%ecx
- addl %r12d,%ebx
- xorl %edi,%ecx
- addl -96(%r13),%ebp
- andnl %esi,%ebx,%edi
- addl %ecx,%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- andl %edx,%ebx
- addl %r12d,%ebp
- xorl %edi,%ebx
- vpalignr $8,%ymm7,%ymm0,%ymm8
- vpxor %ymm5,%ymm1,%ymm1
- addl -92(%r13),%eax
- andnl %edx,%ebp,%edi
- vpxor %ymm2,%ymm1,%ymm1
- addl %ebx,%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- vpxor %ymm8,%ymm1,%ymm1
- andl %ecx,%ebp
- addl %r12d,%eax
- xorl %edi,%ebp
- vpsrld $30,%ymm1,%ymm8
- vpslld $2,%ymm1,%ymm1
- addl -88(%r13),%esi
- andnl %ecx,%eax,%edi
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- andl %ebx,%eax
- vpor %ymm8,%ymm1,%ymm1
- addl %r12d,%esi
- xorl %edi,%eax
- addl -84(%r13),%edx
- andnl %ebx,%esi,%edi
- vpaddd %ymm11,%ymm1,%ymm9
- addl %eax,%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- andl %ebp,%esi
- vmovdqu %ymm9,288(%rsp)
- addl %r12d,%edx
- xorl %edi,%esi
- addl -64(%r13),%ecx
- andnl %ebp,%edx,%edi
- addl %esi,%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- andl %eax,%edx
- addl %r12d,%ecx
- xorl %edi,%edx
- addl -60(%r13),%ebx
- andnl %eax,%ecx,%edi
- addl %edx,%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- andl %esi,%ecx
- addl %r12d,%ebx
- xorl %edi,%ecx
- vpalignr $8,%ymm0,%ymm1,%ymm8
- vpxor %ymm6,%ymm2,%ymm2
- addl -56(%r13),%ebp
- andnl %esi,%ebx,%edi
- vpxor %ymm3,%ymm2,%ymm2
- vmovdqu 0(%r11),%ymm11
- addl %ecx,%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- vpxor %ymm8,%ymm2,%ymm2
- andl %edx,%ebx
- addl %r12d,%ebp
- xorl %edi,%ebx
- vpsrld $30,%ymm2,%ymm8
- vpslld $2,%ymm2,%ymm2
- addl -52(%r13),%eax
- andnl %edx,%ebp,%edi
- addl %ebx,%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- andl %ecx,%ebp
- vpor %ymm8,%ymm2,%ymm2
- addl %r12d,%eax
- xorl %edi,%ebp
- addl -32(%r13),%esi
- andnl %ecx,%eax,%edi
- vpaddd %ymm11,%ymm2,%ymm9
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- andl %ebx,%eax
- vmovdqu %ymm9,320(%rsp)
- addl %r12d,%esi
- xorl %edi,%eax
- addl -28(%r13),%edx
- andnl %ebx,%esi,%edi
- addl %eax,%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- andl %ebp,%esi
- addl %r12d,%edx
- xorl %edi,%esi
- addl -24(%r13),%ecx
- andnl %ebp,%edx,%edi
- addl %esi,%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- andl %eax,%edx
- addl %r12d,%ecx
- xorl %edi,%edx
- vpalignr $8,%ymm1,%ymm2,%ymm8
- vpxor %ymm7,%ymm3,%ymm3
- addl -20(%r13),%ebx
- andnl %eax,%ecx,%edi
- vpxor %ymm4,%ymm3,%ymm3
- addl %edx,%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- vpxor %ymm8,%ymm3,%ymm3
- andl %esi,%ecx
- addl %r12d,%ebx
- xorl %edi,%ecx
- vpsrld $30,%ymm3,%ymm8
- vpslld $2,%ymm3,%ymm3
- addl 0(%r13),%ebp
- andnl %esi,%ebx,%edi
- addl %ecx,%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- andl %edx,%ebx
- vpor %ymm8,%ymm3,%ymm3
- addl %r12d,%ebp
- xorl %edi,%ebx
- addl 4(%r13),%eax
- andnl %edx,%ebp,%edi
- vpaddd %ymm11,%ymm3,%ymm9
- addl %ebx,%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- andl %ecx,%ebp
- vmovdqu %ymm9,352(%rsp)
- addl %r12d,%eax
- xorl %edi,%ebp
- addl 8(%r13),%esi
- andnl %ecx,%eax,%edi
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- andl %ebx,%eax
- addl %r12d,%esi
- xorl %edi,%eax
- addl 12(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- vpalignr $8,%ymm2,%ymm3,%ymm8
- vpxor %ymm0,%ymm4,%ymm4
- addl 32(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- vpxor %ymm5,%ymm4,%ymm4
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- vpxor %ymm8,%ymm4,%ymm4
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl 36(%r13),%ebx
- vpsrld $30,%ymm4,%ymm8
- vpslld $2,%ymm4,%ymm4
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- vpor %ymm8,%ymm4,%ymm4
- addl 40(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- vpaddd %ymm11,%ymm4,%ymm9
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl 44(%r13),%eax
- vmovdqu %ymm9,384(%rsp)
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl 64(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- vpalignr $8,%ymm3,%ymm4,%ymm8
- vpxor %ymm1,%ymm5,%ymm5
- addl 68(%r13),%edx
- leal (%rdx,%rax,1),%edx
- vpxor %ymm6,%ymm5,%ymm5
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- vpxor %ymm8,%ymm5,%ymm5
- addl %r12d,%edx
- xorl %ebx,%esi
- addl 72(%r13),%ecx
- vpsrld $30,%ymm5,%ymm8
- vpslld $2,%ymm5,%ymm5
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- vpor %ymm8,%ymm5,%ymm5
- addl 76(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- vpaddd %ymm11,%ymm5,%ymm9
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl 96(%r13),%ebp
- vmovdqu %ymm9,416(%rsp)
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl 100(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- vpalignr $8,%ymm4,%ymm5,%ymm8
- vpxor %ymm2,%ymm6,%ymm6
- addl 104(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- vpxor %ymm7,%ymm6,%ymm6
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- vpxor %ymm8,%ymm6,%ymm6
- addl %r12d,%esi
- xorl %ecx,%eax
- addl 108(%r13),%edx
- leaq 256(%r13),%r13
- vpsrld $30,%ymm6,%ymm8
- vpslld $2,%ymm6,%ymm6
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- vpor %ymm8,%ymm6,%ymm6
- addl -128(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- vpaddd %ymm11,%ymm6,%ymm9
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl -124(%r13),%ebx
- vmovdqu %ymm9,448(%rsp)
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl -120(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- vpalignr $8,%ymm5,%ymm6,%ymm8
- vpxor %ymm3,%ymm7,%ymm7
- addl -116(%r13),%eax
- leal (%rax,%rbx,1),%eax
- vpxor %ymm0,%ymm7,%ymm7
- vmovdqu 32(%r11),%ymm11
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- vpxor %ymm8,%ymm7,%ymm7
- addl %r12d,%eax
- xorl %edx,%ebp
- addl -96(%r13),%esi
- vpsrld $30,%ymm7,%ymm8
- vpslld $2,%ymm7,%ymm7
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- vpor %ymm8,%ymm7,%ymm7
- addl -92(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- vpaddd %ymm11,%ymm7,%ymm9
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl -88(%r13),%ecx
- vmovdqu %ymm9,480(%rsp)
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl -84(%r13),%ebx
- movl %esi,%edi
- xorl %eax,%edi
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- andl %edi,%ecx
- jmp .Lalign32_2
-.align 32
-.Lalign32_2:
- vpalignr $8,%ymm6,%ymm7,%ymm8
- vpxor %ymm4,%ymm0,%ymm0
- addl -64(%r13),%ebp
- xorl %esi,%ecx
- vpxor %ymm1,%ymm0,%ymm0
- movl %edx,%edi
- xorl %esi,%edi
- leal (%rbp,%rcx,1),%ebp
- vpxor %ymm8,%ymm0,%ymm0
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- vpsrld $30,%ymm0,%ymm8
- vpslld $2,%ymm0,%ymm0
- addl %r12d,%ebp
- andl %edi,%ebx
- addl -60(%r13),%eax
- xorl %edx,%ebx
- movl %ecx,%edi
- xorl %edx,%edi
- vpor %ymm8,%ymm0,%ymm0
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- vpaddd %ymm11,%ymm0,%ymm9
- addl %r12d,%eax
- andl %edi,%ebp
- addl -56(%r13),%esi
- xorl %ecx,%ebp
- vmovdqu %ymm9,512(%rsp)
- movl %ebx,%edi
- xorl %ecx,%edi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- andl %edi,%eax
- addl -52(%r13),%edx
- xorl %ebx,%eax
- movl %ebp,%edi
- xorl %ebx,%edi
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- andl %edi,%esi
- addl -32(%r13),%ecx
- xorl %ebp,%esi
- movl %eax,%edi
- xorl %ebp,%edi
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- andl %edi,%edx
- vpalignr $8,%ymm7,%ymm0,%ymm8
- vpxor %ymm5,%ymm1,%ymm1
- addl -28(%r13),%ebx
- xorl %eax,%edx
- vpxor %ymm2,%ymm1,%ymm1
- movl %esi,%edi
- xorl %eax,%edi
- leal (%rbx,%rdx,1),%ebx
- vpxor %ymm8,%ymm1,%ymm1
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- vpsrld $30,%ymm1,%ymm8
- vpslld $2,%ymm1,%ymm1
- addl %r12d,%ebx
- andl %edi,%ecx
- addl -24(%r13),%ebp
- xorl %esi,%ecx
- movl %edx,%edi
- xorl %esi,%edi
- vpor %ymm8,%ymm1,%ymm1
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- vpaddd %ymm11,%ymm1,%ymm9
- addl %r12d,%ebp
- andl %edi,%ebx
- addl -20(%r13),%eax
- xorl %edx,%ebx
- vmovdqu %ymm9,544(%rsp)
- movl %ecx,%edi
- xorl %edx,%edi
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- andl %edi,%ebp
- addl 0(%r13),%esi
- xorl %ecx,%ebp
- movl %ebx,%edi
- xorl %ecx,%edi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- andl %edi,%eax
- addl 4(%r13),%edx
- xorl %ebx,%eax
- movl %ebp,%edi
- xorl %ebx,%edi
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- andl %edi,%esi
- vpalignr $8,%ymm0,%ymm1,%ymm8
- vpxor %ymm6,%ymm2,%ymm2
- addl 8(%r13),%ecx
- xorl %ebp,%esi
- vpxor %ymm3,%ymm2,%ymm2
- movl %eax,%edi
- xorl %ebp,%edi
- leal (%rcx,%rsi,1),%ecx
- vpxor %ymm8,%ymm2,%ymm2
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- vpsrld $30,%ymm2,%ymm8
- vpslld $2,%ymm2,%ymm2
- addl %r12d,%ecx
- andl %edi,%edx
- addl 12(%r13),%ebx
- xorl %eax,%edx
- movl %esi,%edi
- xorl %eax,%edi
- vpor %ymm8,%ymm2,%ymm2
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- vpaddd %ymm11,%ymm2,%ymm9
- addl %r12d,%ebx
- andl %edi,%ecx
- addl 32(%r13),%ebp
- xorl %esi,%ecx
- vmovdqu %ymm9,576(%rsp)
- movl %edx,%edi
- xorl %esi,%edi
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- andl %edi,%ebx
- addl 36(%r13),%eax
- xorl %edx,%ebx
- movl %ecx,%edi
- xorl %edx,%edi
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- andl %edi,%ebp
- addl 40(%r13),%esi
- xorl %ecx,%ebp
- movl %ebx,%edi
- xorl %ecx,%edi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- andl %edi,%eax
- vpalignr $8,%ymm1,%ymm2,%ymm8
- vpxor %ymm7,%ymm3,%ymm3
- addl 44(%r13),%edx
- xorl %ebx,%eax
- vpxor %ymm4,%ymm3,%ymm3
- movl %ebp,%edi
- xorl %ebx,%edi
- leal (%rdx,%rax,1),%edx
- vpxor %ymm8,%ymm3,%ymm3
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- vpsrld $30,%ymm3,%ymm8
- vpslld $2,%ymm3,%ymm3
- addl %r12d,%edx
- andl %edi,%esi
- addl 64(%r13),%ecx
- xorl %ebp,%esi
- movl %eax,%edi
- xorl %ebp,%edi
- vpor %ymm8,%ymm3,%ymm3
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- vpaddd %ymm11,%ymm3,%ymm9
- addl %r12d,%ecx
- andl %edi,%edx
- addl 68(%r13),%ebx
- xorl %eax,%edx
- vmovdqu %ymm9,608(%rsp)
- movl %esi,%edi
- xorl %eax,%edi
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- andl %edi,%ecx
- addl 72(%r13),%ebp
- xorl %esi,%ecx
- movl %edx,%edi
- xorl %esi,%edi
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- andl %edi,%ebx
- addl 76(%r13),%eax
- xorl %edx,%ebx
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl 96(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- addl 100(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl 104(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl 108(%r13),%ebx
- leaq 256(%r13),%r13
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl -128(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl -124(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl -120(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- addl -116(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl -96(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl -92(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl -88(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl -84(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl -64(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- addl -60(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl -56(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl -52(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl -32(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl -28(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl -24(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- addl -20(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- addl %r12d,%edx
- leaq 128(%r9),%r13
- leaq 128(%r9),%rdi
- cmpq %r10,%r13
- cmovaeq %r9,%r13
-
-
- addl 0(%r8),%edx
- addl 4(%r8),%esi
- addl 8(%r8),%ebp
- movl %edx,0(%r8)
- addl 12(%r8),%ebx
- movl %esi,4(%r8)
- movl %edx,%eax
- addl 16(%r8),%ecx
- movl %ebp,%r12d
- movl %ebp,8(%r8)
- movl %ebx,%edx
-
- movl %ebx,12(%r8)
- movl %esi,%ebp
- movl %ecx,16(%r8)
-
- movl %ecx,%esi
- movl %r12d,%ecx
-
-
- cmpq %r10,%r9
- je .Ldone_avx2
- vmovdqu 64(%r11),%ymm6
- cmpq %r10,%rdi
- ja .Last_avx2
-
- vmovdqu -64(%rdi),%xmm0
- vmovdqu -48(%rdi),%xmm1
- vmovdqu -32(%rdi),%xmm2
- vmovdqu -16(%rdi),%xmm3
- vinserti128 $1,0(%r13),%ymm0,%ymm0
- vinserti128 $1,16(%r13),%ymm1,%ymm1
- vinserti128 $1,32(%r13),%ymm2,%ymm2
- vinserti128 $1,48(%r13),%ymm3,%ymm3
- jmp .Last_avx2
-
-.align 32
-.Last_avx2:
- leaq 128+16(%rsp),%r13
- rorxl $2,%ebp,%ebx
- andnl %edx,%ebp,%edi
- andl %ecx,%ebp
- xorl %edi,%ebp
- subq $-128,%r9
- addl -128(%r13),%esi
- andnl %ecx,%eax,%edi
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- andl %ebx,%eax
- addl %r12d,%esi
- xorl %edi,%eax
- addl -124(%r13),%edx
- andnl %ebx,%esi,%edi
- addl %eax,%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- andl %ebp,%esi
- addl %r12d,%edx
- xorl %edi,%esi
- addl -120(%r13),%ecx
- andnl %ebp,%edx,%edi
- addl %esi,%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- andl %eax,%edx
- addl %r12d,%ecx
- xorl %edi,%edx
- addl -116(%r13),%ebx
- andnl %eax,%ecx,%edi
- addl %edx,%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- andl %esi,%ecx
- addl %r12d,%ebx
- xorl %edi,%ecx
- addl -96(%r13),%ebp
- andnl %esi,%ebx,%edi
- addl %ecx,%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- andl %edx,%ebx
- addl %r12d,%ebp
- xorl %edi,%ebx
- addl -92(%r13),%eax
- andnl %edx,%ebp,%edi
- addl %ebx,%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- andl %ecx,%ebp
- addl %r12d,%eax
- xorl %edi,%ebp
- addl -88(%r13),%esi
- andnl %ecx,%eax,%edi
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- andl %ebx,%eax
- addl %r12d,%esi
- xorl %edi,%eax
- addl -84(%r13),%edx
- andnl %ebx,%esi,%edi
- addl %eax,%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- andl %ebp,%esi
- addl %r12d,%edx
- xorl %edi,%esi
- addl -64(%r13),%ecx
- andnl %ebp,%edx,%edi
- addl %esi,%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- andl %eax,%edx
- addl %r12d,%ecx
- xorl %edi,%edx
- addl -60(%r13),%ebx
- andnl %eax,%ecx,%edi
- addl %edx,%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- andl %esi,%ecx
- addl %r12d,%ebx
- xorl %edi,%ecx
- addl -56(%r13),%ebp
- andnl %esi,%ebx,%edi
- addl %ecx,%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- andl %edx,%ebx
- addl %r12d,%ebp
- xorl %edi,%ebx
- addl -52(%r13),%eax
- andnl %edx,%ebp,%edi
- addl %ebx,%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- andl %ecx,%ebp
- addl %r12d,%eax
- xorl %edi,%ebp
- addl -32(%r13),%esi
- andnl %ecx,%eax,%edi
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- andl %ebx,%eax
- addl %r12d,%esi
- xorl %edi,%eax
- addl -28(%r13),%edx
- andnl %ebx,%esi,%edi
- addl %eax,%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- andl %ebp,%esi
- addl %r12d,%edx
- xorl %edi,%esi
- addl -24(%r13),%ecx
- andnl %ebp,%edx,%edi
- addl %esi,%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- andl %eax,%edx
- addl %r12d,%ecx
- xorl %edi,%edx
- addl -20(%r13),%ebx
- andnl %eax,%ecx,%edi
- addl %edx,%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- andl %esi,%ecx
- addl %r12d,%ebx
- xorl %edi,%ecx
- addl 0(%r13),%ebp
- andnl %esi,%ebx,%edi
- addl %ecx,%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- andl %edx,%ebx
- addl %r12d,%ebp
- xorl %edi,%ebx
- addl 4(%r13),%eax
- andnl %edx,%ebp,%edi
- addl %ebx,%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- andl %ecx,%ebp
- addl %r12d,%eax
- xorl %edi,%ebp
- addl 8(%r13),%esi
- andnl %ecx,%eax,%edi
- addl %ebp,%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- andl %ebx,%eax
- addl %r12d,%esi
- xorl %edi,%eax
- addl 12(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl 32(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl 36(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl 40(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl 44(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl 64(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- vmovdqu -64(%r11),%ymm11
- vpshufb %ymm6,%ymm0,%ymm0
- addl 68(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl 72(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl 76(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl 96(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl 100(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- vpshufb %ymm6,%ymm1,%ymm1
- vpaddd %ymm11,%ymm0,%ymm8
- addl 104(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- addl 108(%r13),%edx
- leaq 256(%r13),%r13
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl -128(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl -124(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl -120(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- vmovdqu %ymm8,0(%rsp)
- vpshufb %ymm6,%ymm2,%ymm2
- vpaddd %ymm11,%ymm1,%ymm9
- addl -116(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl -96(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- addl -92(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- addl -88(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl -84(%r13),%ebx
- movl %esi,%edi
- xorl %eax,%edi
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- andl %edi,%ecx
- vmovdqu %ymm9,32(%rsp)
- vpshufb %ymm6,%ymm3,%ymm3
- vpaddd %ymm11,%ymm2,%ymm6
- addl -64(%r13),%ebp
- xorl %esi,%ecx
- movl %edx,%edi
- xorl %esi,%edi
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- andl %edi,%ebx
- addl -60(%r13),%eax
- xorl %edx,%ebx
- movl %ecx,%edi
- xorl %edx,%edi
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- andl %edi,%ebp
- addl -56(%r13),%esi
- xorl %ecx,%ebp
- movl %ebx,%edi
- xorl %ecx,%edi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- andl %edi,%eax
- addl -52(%r13),%edx
- xorl %ebx,%eax
- movl %ebp,%edi
- xorl %ebx,%edi
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- andl %edi,%esi
- addl -32(%r13),%ecx
- xorl %ebp,%esi
- movl %eax,%edi
- xorl %ebp,%edi
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- andl %edi,%edx
- jmp .Lalign32_3
-.align 32
-.Lalign32_3:
- vmovdqu %ymm6,64(%rsp)
- vpaddd %ymm11,%ymm3,%ymm7
- addl -28(%r13),%ebx
- xorl %eax,%edx
- movl %esi,%edi
- xorl %eax,%edi
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- andl %edi,%ecx
- addl -24(%r13),%ebp
- xorl %esi,%ecx
- movl %edx,%edi
- xorl %esi,%edi
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- andl %edi,%ebx
- addl -20(%r13),%eax
- xorl %edx,%ebx
- movl %ecx,%edi
- xorl %edx,%edi
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- andl %edi,%ebp
- addl 0(%r13),%esi
- xorl %ecx,%ebp
- movl %ebx,%edi
- xorl %ecx,%edi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- andl %edi,%eax
- addl 4(%r13),%edx
- xorl %ebx,%eax
- movl %ebp,%edi
- xorl %ebx,%edi
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- andl %edi,%esi
- vmovdqu %ymm7,96(%rsp)
- addl 8(%r13),%ecx
- xorl %ebp,%esi
- movl %eax,%edi
- xorl %ebp,%edi
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- andl %edi,%edx
- addl 12(%r13),%ebx
- xorl %eax,%edx
- movl %esi,%edi
- xorl %eax,%edi
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- andl %edi,%ecx
- addl 32(%r13),%ebp
- xorl %esi,%ecx
- movl %edx,%edi
- xorl %esi,%edi
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- andl %edi,%ebx
- addl 36(%r13),%eax
- xorl %edx,%ebx
- movl %ecx,%edi
- xorl %edx,%edi
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- andl %edi,%ebp
- addl 40(%r13),%esi
- xorl %ecx,%ebp
- movl %ebx,%edi
- xorl %ecx,%edi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- andl %edi,%eax
- vpalignr $8,%ymm0,%ymm1,%ymm4
- addl 44(%r13),%edx
- xorl %ebx,%eax
- movl %ebp,%edi
- xorl %ebx,%edi
- vpsrldq $4,%ymm3,%ymm8
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- vpxor %ymm0,%ymm4,%ymm4
- vpxor %ymm2,%ymm8,%ymm8
- xorl %ebp,%esi
- addl %r12d,%edx
- vpxor %ymm8,%ymm4,%ymm4
- andl %edi,%esi
- addl 64(%r13),%ecx
- xorl %ebp,%esi
- movl %eax,%edi
- vpsrld $31,%ymm4,%ymm8
- xorl %ebp,%edi
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- vpslldq $12,%ymm4,%ymm10
- vpaddd %ymm4,%ymm4,%ymm4
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm4,%ymm4
- addl %r12d,%ecx
- andl %edi,%edx
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm4,%ymm4
- addl 68(%r13),%ebx
- xorl %eax,%edx
- vpxor %ymm10,%ymm4,%ymm4
- movl %esi,%edi
- xorl %eax,%edi
- leal (%rbx,%rdx,1),%ebx
- vpaddd %ymm11,%ymm4,%ymm9
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- vmovdqu %ymm9,128(%rsp)
- addl %r12d,%ebx
- andl %edi,%ecx
- addl 72(%r13),%ebp
- xorl %esi,%ecx
- movl %edx,%edi
- xorl %esi,%edi
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- andl %edi,%ebx
- addl 76(%r13),%eax
- xorl %edx,%ebx
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- vpalignr $8,%ymm1,%ymm2,%ymm5
- addl 96(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- vpsrldq $4,%ymm4,%ymm8
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- vpxor %ymm1,%ymm5,%ymm5
- vpxor %ymm3,%ymm8,%ymm8
- addl 100(%r13),%edx
- leal (%rdx,%rax,1),%edx
- vpxor %ymm8,%ymm5,%ymm5
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- xorl %ebp,%esi
- addl %r12d,%edx
- vpsrld $31,%ymm5,%ymm8
- vmovdqu -32(%r11),%ymm11
- xorl %ebx,%esi
- addl 104(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- vpslldq $12,%ymm5,%ymm10
- vpaddd %ymm5,%ymm5,%ymm5
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm5,%ymm5
- xorl %eax,%edx
- addl %r12d,%ecx
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm5,%ymm5
- xorl %ebp,%edx
- addl 108(%r13),%ebx
- leaq 256(%r13),%r13
- vpxor %ymm10,%ymm5,%ymm5
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- vpaddd %ymm11,%ymm5,%ymm9
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- vmovdqu %ymm9,160(%rsp)
- addl -128(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- vpalignr $8,%ymm2,%ymm3,%ymm6
- addl -124(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- vpsrldq $4,%ymm5,%ymm8
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- vpxor %ymm2,%ymm6,%ymm6
- vpxor %ymm4,%ymm8,%ymm8
- addl -120(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- vpxor %ymm8,%ymm6,%ymm6
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- vpsrld $31,%ymm6,%ymm8
- xorl %ecx,%eax
- addl -116(%r13),%edx
- leal (%rdx,%rax,1),%edx
- vpslldq $12,%ymm6,%ymm10
- vpaddd %ymm6,%ymm6,%ymm6
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm6,%ymm6
- xorl %ebp,%esi
- addl %r12d,%edx
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm6,%ymm6
- xorl %ebx,%esi
- addl -96(%r13),%ecx
- vpxor %ymm10,%ymm6,%ymm6
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- vpaddd %ymm11,%ymm6,%ymm9
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- vmovdqu %ymm9,192(%rsp)
- addl -92(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- vpalignr $8,%ymm3,%ymm4,%ymm7
- addl -88(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- vpsrldq $4,%ymm6,%ymm8
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- vpxor %ymm3,%ymm7,%ymm7
- vpxor %ymm5,%ymm8,%ymm8
- addl -84(%r13),%eax
- leal (%rax,%rbx,1),%eax
- vpxor %ymm8,%ymm7,%ymm7
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- vpsrld $31,%ymm7,%ymm8
- xorl %edx,%ebp
- addl -64(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- vpslldq $12,%ymm7,%ymm10
- vpaddd %ymm7,%ymm7,%ymm7
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- vpsrld $30,%ymm10,%ymm9
- vpor %ymm8,%ymm7,%ymm7
- xorl %ebx,%eax
- addl %r12d,%esi
- vpslld $2,%ymm10,%ymm10
- vpxor %ymm9,%ymm7,%ymm7
- xorl %ecx,%eax
- addl -60(%r13),%edx
- vpxor %ymm10,%ymm7,%ymm7
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- rorxl $2,%esi,%eax
- vpaddd %ymm11,%ymm7,%ymm9
- xorl %ebp,%esi
- addl %r12d,%edx
- xorl %ebx,%esi
- vmovdqu %ymm9,224(%rsp)
- addl -56(%r13),%ecx
- leal (%rcx,%rsi,1),%ecx
- rorxl $27,%edx,%r12d
- rorxl $2,%edx,%esi
- xorl %eax,%edx
- addl %r12d,%ecx
- xorl %ebp,%edx
- addl -52(%r13),%ebx
- leal (%rbx,%rdx,1),%ebx
- rorxl $27,%ecx,%r12d
- rorxl $2,%ecx,%edx
- xorl %esi,%ecx
- addl %r12d,%ebx
- xorl %eax,%ecx
- addl -32(%r13),%ebp
- leal (%rbp,%rcx,1),%ebp
- rorxl $27,%ebx,%r12d
- rorxl $2,%ebx,%ecx
- xorl %edx,%ebx
- addl %r12d,%ebp
- xorl %esi,%ebx
- addl -28(%r13),%eax
- leal (%rax,%rbx,1),%eax
- rorxl $27,%ebp,%r12d
- rorxl $2,%ebp,%ebx
- xorl %ecx,%ebp
- addl %r12d,%eax
- xorl %edx,%ebp
- addl -24(%r13),%esi
- leal (%rsi,%rbp,1),%esi
- rorxl $27,%eax,%r12d
- rorxl $2,%eax,%ebp
- xorl %ebx,%eax
- addl %r12d,%esi
- xorl %ecx,%eax
- addl -20(%r13),%edx
- leal (%rdx,%rax,1),%edx
- rorxl $27,%esi,%r12d
- addl %r12d,%edx
- leaq 128(%rsp),%r13
-
-
- addl 0(%r8),%edx
- addl 4(%r8),%esi
- addl 8(%r8),%ebp
- movl %edx,0(%r8)
- addl 12(%r8),%ebx
- movl %esi,4(%r8)
- movl %edx,%eax
- addl 16(%r8),%ecx
- movl %ebp,%r12d
- movl %ebp,8(%r8)
- movl %ebx,%edx
-
- movl %ebx,12(%r8)
- movl %esi,%ebp
- movl %ecx,16(%r8)
-
- movl %ecx,%esi
- movl %r12d,%ecx
-
-
- cmpq %r10,%r9
- jbe .Loop_avx2
-
-.Ldone_avx2:
- vzeroupper
- leaq (%r14),%rsi
- movq -40(%rsi),%r14
- movq -32(%rsi),%r13
- movq -24(%rsi),%r12
- movq -16(%rsi),%rbp
- movq -8(%rsi),%rbx
- leaq (%rsi),%rsp
-.Lepilogue_avx2:
- .byte 0xf3,0xc3
-.size sha1_block_data_order_avx2,.-sha1_block_data_order_avx2
.align 64
K_XX_XX:
.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
-.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
-.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
-.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
-.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
-.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
-.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
Index: src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/x86_64cpuid.S
diff -u src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/x86_64cpuid.S:1.5 src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/x86_64cpuid.S:1.6
--- src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/x86_64cpuid.S:1.5 Sun Mar 20 18:27:44 2016
+++ src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64/x86_64cpuid.S Mon Mar 21 15:13:15 2016
@@ -5,7 +5,7 @@
call PIC_PLT(OPENSSL_cpuid_setup)
.hidden OPENSSL_ia32cap_P
-.comm OPENSSL_ia32cap_P,16,4
+.comm OPENSSL_ia32cap_P,8,4
.text
@@ -40,7 +40,6 @@ OPENSSL_ia32_cpuid:
movq %rbx,%r8
xorl %eax,%eax
- movl %eax,8(%rdi)
cpuid
movl %eax,%r11d
@@ -108,14 +107,6 @@ OPENSSL_ia32_cpuid:
shrl $14,%r10d
andl $4095,%r10d
- cmpl $7,%r11d
- jb .Lnocacheinfo
-
- movl $7,%eax
- xorl %ecx,%ecx
- cpuid
- movl %ebx,8(%rdi)
-
.Lnocacheinfo:
movl $1,%eax
cpuid
@@ -155,7 +146,6 @@ OPENSSL_ia32_cpuid:
.Lclear_avx:
movl $4026525695,%eax
andl %eax,%r9d
- andl $4294967263,8(%rdi)
.Ldone:
shlq $32,%r9
movl %r10d,%eax
@@ -229,85 +219,6 @@ OPENSSL_wipe_cpu:
leaq 8(%rsp),%rax
.byte 0xf3,0xc3
.size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu
-.globl OPENSSL_instrument_bus
-.type OPENSSL_instrument_bus,@function
-.align 16
-OPENSSL_instrument_bus:
- movq %rdi,%r10
- movq %rsi,%rcx
- movq %rsi,%r11
-
- rdtsc
- movl %eax,%r8d
- movl $0,%r9d
- clflush (%r10)
-.byte 0xf0
- addl %r9d,(%r10)
- jmp .Loop
-.align 16
-.Loop: rdtsc
- movl %eax,%edx
- subl %r8d,%eax
- movl %edx,%r8d
- movl %eax,%r9d
- clflush (%r10)
-.byte 0xf0
- addl %eax,(%r10)
- leaq 4(%r10),%r10
- subq $1,%rcx
- jnz .Loop
-
- movq %r11,%rax
- .byte 0xf3,0xc3
-.size OPENSSL_instrument_bus,.-OPENSSL_instrument_bus
-
-.globl OPENSSL_instrument_bus2
-.type OPENSSL_instrument_bus2,@function
-.align 16
-OPENSSL_instrument_bus2:
- movq %rdi,%r10
- movq %rsi,%rcx
- movq %rdx,%r11
- movq %rcx,8(%rsp)
-
- rdtsc
- movl %eax,%r8d
- movl $0,%r9d
-
- clflush (%r10)
-.byte 0xf0
- addl %r9d,(%r10)
-
- rdtsc
- movl %eax,%edx
- subl %r8d,%eax
- movl %edx,%r8d
- movl %eax,%r9d
-.Loop2:
- clflush (%r10)
-.byte 0xf0
- addl %eax,(%r10)
-
- subq $1,%r11
- jz .Ldone2
-
- rdtsc
- movl %eax,%edx
- subl %r8d,%eax
- movl %edx,%r8d
- cmpl %r9d,%eax
- movl %eax,%r9d
- movl $0,%edx
- setne %dl
- subq %rdx,%rcx
- leaq (%r10,%rdx,4),%r10
- jnz .Loop2
-
-.Ldone2:
- movq 8(%rsp),%rax
- subq %rcx,%rax
- .byte 0xf3,0xc3
-.size OPENSSL_instrument_bus2,.-OPENSSL_instrument_bus2
.globl OPENSSL_ia32_rdrand
.type OPENSSL_ia32_rdrand,@function
.align 16
@@ -322,18 +233,3 @@ OPENSSL_ia32_rdrand:
cmoveq %rcx,%rax
.byte 0xf3,0xc3
.size OPENSSL_ia32_rdrand,.-OPENSSL_ia32_rdrand
-
-.globl OPENSSL_ia32_rdseed
-.type OPENSSL_ia32_rdseed,@function
-.align 16
-OPENSSL_ia32_rdseed:
- movl $8,%ecx
-.Loop_rdseed:
- rdseed %rax
- jc .Lbreak_rdseed
- loop .Loop_rdseed
-.Lbreak_rdseed:
- cmpq $0,%rax
- cmoveq %rcx,%rax
- .byte 0xf3,0xc3
-.size OPENSSL_ia32_rdseed,.-OPENSSL_ia32_rdseed