| Index: third_party/boringssl/mac-x86_64/crypto/sha/sha512-x86_64.S
|
| diff --git a/third_party/boringssl/mac-x86_64/crypto/sha/sha512-x86_64.S b/third_party/boringssl/mac-x86_64/crypto/sha/sha512-x86_64.S
|
| index 2f5d912425cf32552ee7f7a7da5f3b4e7eb16de1..aeabd3f43a91c026bff29ab93f46683c81db7070 100644
|
| --- a/third_party/boringssl/mac-x86_64/crypto/sha/sha512-x86_64.S
|
| +++ b/third_party/boringssl/mac-x86_64/crypto/sha/sha512-x86_64.S
|
| @@ -7,6 +7,17 @@
|
|
|
| .p2align 4
|
| _sha512_block_data_order:
|
| + leaq _OPENSSL_ia32cap_P(%rip),%r11
|
| + movl 0(%r11),%r9d
|
| + movl 4(%r11),%r10d
|
| + movl 8(%r11),%r11d
|
| + testl $2048,%r10d
|
| + jnz L$xop_shortcut
|
| + andl $1073741824,%r9d
|
| + andl $268435968,%r10d
|
| + orl %r9d,%r10d
|
| + cmpl $1342177792,%r10d
|
| + je L$avx_shortcut
|
| pushq %rbx
|
| pushq %rbp
|
| pushq %r12
|
| @@ -1783,4 +1794,2234 @@ K512:
|
| .quad 0x0001020304050607,0x08090a0b0c0d0e0f
|
| .quad 0x0001020304050607,0x08090a0b0c0d0e0f
|
| .byte 83,72,65,53,49,50,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
|
| +
|
| +.p2align 6
|
| +sha512_block_data_order_xop:
|
| +L$xop_shortcut:
|
| + pushq %rbx
|
| + pushq %rbp
|
| + pushq %r12
|
| + pushq %r13
|
| + pushq %r14
|
| + pushq %r15
|
| + movq %rsp,%r11
|
| + shlq $4,%rdx
|
| + subq $160,%rsp
|
| + leaq (%rsi,%rdx,8),%rdx
|
| + andq $-64,%rsp
|
| + movq %rdi,128+0(%rsp)
|
| + movq %rsi,128+8(%rsp)
|
| + movq %rdx,128+16(%rsp)
|
| + movq %r11,128+24(%rsp)
|
| +L$prologue_xop:
|
| +
|
| + vzeroupper
|
| + movq 0(%rdi),%rax
|
| + movq 8(%rdi),%rbx
|
| + movq 16(%rdi),%rcx
|
| + movq 24(%rdi),%rdx
|
| + movq 32(%rdi),%r8
|
| + movq 40(%rdi),%r9
|
| + movq 48(%rdi),%r10
|
| + movq 56(%rdi),%r11
|
| + jmp L$loop_xop
|
| +.p2align 4
|
| +L$loop_xop:
|
| + vmovdqa K512+1280(%rip),%xmm11
|
| + vmovdqu 0(%rsi),%xmm0
|
| + leaq K512+128(%rip),%rbp
|
| + vmovdqu 16(%rsi),%xmm1
|
| + vmovdqu 32(%rsi),%xmm2
|
| + vpshufb %xmm11,%xmm0,%xmm0
|
| + vmovdqu 48(%rsi),%xmm3
|
| + vpshufb %xmm11,%xmm1,%xmm1
|
| + vmovdqu 64(%rsi),%xmm4
|
| + vpshufb %xmm11,%xmm2,%xmm2
|
| + vmovdqu 80(%rsi),%xmm5
|
| + vpshufb %xmm11,%xmm3,%xmm3
|
| + vmovdqu 96(%rsi),%xmm6
|
| + vpshufb %xmm11,%xmm4,%xmm4
|
| + vmovdqu 112(%rsi),%xmm7
|
| + vpshufb %xmm11,%xmm5,%xmm5
|
| + vpaddq -128(%rbp),%xmm0,%xmm8
|
| + vpshufb %xmm11,%xmm6,%xmm6
|
| + vpaddq -96(%rbp),%xmm1,%xmm9
|
| + vpshufb %xmm11,%xmm7,%xmm7
|
| + vpaddq -64(%rbp),%xmm2,%xmm10
|
| + vpaddq -32(%rbp),%xmm3,%xmm11
|
| + vmovdqa %xmm8,0(%rsp)
|
| + vpaddq 0(%rbp),%xmm4,%xmm8
|
| + vmovdqa %xmm9,16(%rsp)
|
| + vpaddq 32(%rbp),%xmm5,%xmm9
|
| + vmovdqa %xmm10,32(%rsp)
|
| + vpaddq 64(%rbp),%xmm6,%xmm10
|
| + vmovdqa %xmm11,48(%rsp)
|
| + vpaddq 96(%rbp),%xmm7,%xmm11
|
| + vmovdqa %xmm8,64(%rsp)
|
| + movq %rax,%r14
|
| + vmovdqa %xmm9,80(%rsp)
|
| + movq %rbx,%rdi
|
| + vmovdqa %xmm10,96(%rsp)
|
| + xorq %rcx,%rdi
|
| + vmovdqa %xmm11,112(%rsp)
|
| + movq %r8,%r13
|
| + jmp L$xop_00_47
|
| +
|
| +.p2align 4
|
| +L$xop_00_47:
|
| + addq $256,%rbp
|
| + vpalignr $8,%xmm0,%xmm1,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%rax
|
| + vpalignr $8,%xmm4,%xmm5,%xmm11
|
| + movq %r9,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %rax,%r14
|
| + vpaddq %xmm11,%xmm0,%xmm0
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + addq 0(%rsp),%r11
|
| + movq %rax,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %r10,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,223,3
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rbx,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm7,%xmm10
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + vpaddq %xmm8,%xmm0,%xmm0
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%r11
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %r8,%r12
|
| + rorq $5,%r14
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %r11,%r14
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + vpaddq %xmm11,%xmm0,%xmm0
|
| + addq 8(%rsp),%r10
|
| + movq %r11,%rdi
|
| + xorq %r9,%r12
|
| + rorq $6,%r14
|
| + vpaddq -128(%rbp),%xmm0,%xmm10
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + xorq %rax,%r15
|
| + rorq $28,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + vmovdqa %xmm10,0(%rsp)
|
| + vpalignr $8,%xmm1,%xmm2,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%r10
|
| + vpalignr $8,%xmm5,%xmm6,%xmm11
|
| + movq %rdx,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %r10,%r14
|
| + vpaddq %xmm11,%xmm1,%xmm1
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + addq 16(%rsp),%r9
|
| + movq %r10,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %r8,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,216,3
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r11,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm0,%xmm10
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + vpaddq %xmm8,%xmm1,%xmm1
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%r9
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %rcx,%r12
|
| + rorq $5,%r14
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %r9,%r14
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + vpaddq %xmm11,%xmm1,%xmm1
|
| + addq 24(%rsp),%r8
|
| + movq %r9,%rdi
|
| + xorq %rdx,%r12
|
| + rorq $6,%r14
|
| + vpaddq -96(%rbp),%xmm1,%xmm10
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + xorq %r10,%r15
|
| + rorq $28,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + vmovdqa %xmm10,16(%rsp)
|
| + vpalignr $8,%xmm2,%xmm3,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%r8
|
| + vpalignr $8,%xmm6,%xmm7,%xmm11
|
| + movq %rbx,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %r8,%r14
|
| + vpaddq %xmm11,%xmm2,%xmm2
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + addq 32(%rsp),%rdx
|
| + movq %r8,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %rcx,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,217,3
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r9,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm1,%xmm10
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + vpaddq %xmm8,%xmm2,%xmm2
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%rdx
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %rax,%r12
|
| + rorq $5,%r14
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %rdx,%r14
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + vpaddq %xmm11,%xmm2,%xmm2
|
| + addq 40(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + xorq %rbx,%r12
|
| + rorq $6,%r14
|
| + vpaddq -64(%rbp),%xmm2,%xmm10
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + xorq %r8,%r15
|
| + rorq $28,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + vmovdqa %xmm10,32(%rsp)
|
| + vpalignr $8,%xmm3,%xmm4,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%rcx
|
| + vpalignr $8,%xmm7,%xmm0,%xmm11
|
| + movq %r11,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %rcx,%r14
|
| + vpaddq %xmm11,%xmm3,%xmm3
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + addq 48(%rsp),%rbx
|
| + movq %rcx,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %rax,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,218,3
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rdx,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm2,%xmm10
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + vpaddq %xmm8,%xmm3,%xmm3
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%rbx
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %r10,%r12
|
| + rorq $5,%r14
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %rbx,%r14
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + vpaddq %xmm11,%xmm3,%xmm3
|
| + addq 56(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + xorq %r11,%r12
|
| + rorq $6,%r14
|
| + vpaddq -32(%rbp),%xmm3,%xmm10
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + xorq %rcx,%r15
|
| + rorq $28,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + vmovdqa %xmm10,48(%rsp)
|
| + vpalignr $8,%xmm4,%xmm5,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%rax
|
| + vpalignr $8,%xmm0,%xmm1,%xmm11
|
| + movq %r9,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %rax,%r14
|
| + vpaddq %xmm11,%xmm4,%xmm4
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + addq 64(%rsp),%r11
|
| + movq %rax,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %r10,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,219,3
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rbx,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm3,%xmm10
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + vpaddq %xmm8,%xmm4,%xmm4
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%r11
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %r8,%r12
|
| + rorq $5,%r14
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %r11,%r14
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + vpaddq %xmm11,%xmm4,%xmm4
|
| + addq 72(%rsp),%r10
|
| + movq %r11,%rdi
|
| + xorq %r9,%r12
|
| + rorq $6,%r14
|
| + vpaddq 0(%rbp),%xmm4,%xmm10
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + xorq %rax,%r15
|
| + rorq $28,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + vmovdqa %xmm10,64(%rsp)
|
| + vpalignr $8,%xmm5,%xmm6,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%r10
|
| + vpalignr $8,%xmm1,%xmm2,%xmm11
|
| + movq %rdx,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %r10,%r14
|
| + vpaddq %xmm11,%xmm5,%xmm5
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + addq 80(%rsp),%r9
|
| + movq %r10,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %r8,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,220,3
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r11,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm4,%xmm10
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + vpaddq %xmm8,%xmm5,%xmm5
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%r9
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %rcx,%r12
|
| + rorq $5,%r14
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %r9,%r14
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + vpaddq %xmm11,%xmm5,%xmm5
|
| + addq 88(%rsp),%r8
|
| + movq %r9,%rdi
|
| + xorq %rdx,%r12
|
| + rorq $6,%r14
|
| + vpaddq 32(%rbp),%xmm5,%xmm10
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + xorq %r10,%r15
|
| + rorq $28,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + vmovdqa %xmm10,80(%rsp)
|
| + vpalignr $8,%xmm6,%xmm7,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%r8
|
| + vpalignr $8,%xmm2,%xmm3,%xmm11
|
| + movq %rbx,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %r8,%r14
|
| + vpaddq %xmm11,%xmm6,%xmm6
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + addq 96(%rsp),%rdx
|
| + movq %r8,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %rcx,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,221,3
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r9,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm5,%xmm10
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + vpaddq %xmm8,%xmm6,%xmm6
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%rdx
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %rax,%r12
|
| + rorq $5,%r14
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %rdx,%r14
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + vpaddq %xmm11,%xmm6,%xmm6
|
| + addq 104(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + xorq %rbx,%r12
|
| + rorq $6,%r14
|
| + vpaddq 64(%rbp),%xmm6,%xmm10
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + xorq %r8,%r15
|
| + rorq $28,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + vmovdqa %xmm10,96(%rsp)
|
| + vpalignr $8,%xmm7,%xmm0,%xmm8
|
| + rorq $23,%r13
|
| + movq %r14,%rcx
|
| + vpalignr $8,%xmm3,%xmm4,%xmm11
|
| + movq %r11,%r12
|
| + rorq $5,%r14
|
| +.byte 143,72,120,195,200,56
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + vpsrlq $7,%xmm8,%xmm8
|
| + rorq $4,%r13
|
| + xorq %rcx,%r14
|
| + vpaddq %xmm11,%xmm7,%xmm7
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + addq 112(%rsp),%rbx
|
| + movq %rcx,%r15
|
| +.byte 143,72,120,195,209,7
|
| + xorq %rax,%r12
|
| + rorq $6,%r14
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| +.byte 143,104,120,195,222,3
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rdx,%rdi
|
| + rorq $28,%r14
|
| + vpsrlq $6,%xmm6,%xmm10
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + vpaddq %xmm8,%xmm7,%xmm7
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| +.byte 143,72,120,195,203,42
|
| + rorq $23,%r13
|
| + movq %r14,%rbx
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + movq %r10,%r12
|
| + rorq $5,%r14
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + rorq $4,%r13
|
| + xorq %rbx,%r14
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + vpaddq %xmm11,%xmm7,%xmm7
|
| + addq 120(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + xorq %r11,%r12
|
| + rorq $6,%r14
|
| + vpaddq 96(%rbp),%xmm7,%xmm10
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + xorq %rcx,%r15
|
| + rorq $28,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + vmovdqa %xmm10,112(%rsp)
|
| + cmpb $0,135(%rbp)
|
| + jne L$xop_00_47
|
| + rorq $23,%r13
|
| + movq %r14,%rax
|
| + movq %r9,%r12
|
| + rorq $5,%r14
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + rorq $4,%r13
|
| + xorq %rax,%r14
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + addq 0(%rsp),%r11
|
| + movq %rax,%r15
|
| + xorq %r10,%r12
|
| + rorq $6,%r14
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + xorq %rbx,%rdi
|
| + rorq $28,%r14
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r11
|
| + movq %r8,%r12
|
| + rorq $5,%r14
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + rorq $4,%r13
|
| + xorq %r11,%r14
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + addq 8(%rsp),%r10
|
| + movq %r11,%rdi
|
| + xorq %r9,%r12
|
| + rorq $6,%r14
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + xorq %rax,%r15
|
| + rorq $28,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r10
|
| + movq %rdx,%r12
|
| + rorq $5,%r14
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + rorq $4,%r13
|
| + xorq %r10,%r14
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + addq 16(%rsp),%r9
|
| + movq %r10,%r15
|
| + xorq %r8,%r12
|
| + rorq $6,%r14
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + xorq %r11,%rdi
|
| + rorq $28,%r14
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r9
|
| + movq %rcx,%r12
|
| + rorq $5,%r14
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + rorq $4,%r13
|
| + xorq %r9,%r14
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + addq 24(%rsp),%r8
|
| + movq %r9,%rdi
|
| + xorq %rdx,%r12
|
| + rorq $6,%r14
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + xorq %r10,%r15
|
| + rorq $28,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r8
|
| + movq %rbx,%r12
|
| + rorq $5,%r14
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + rorq $4,%r13
|
| + xorq %r8,%r14
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + addq 32(%rsp),%rdx
|
| + movq %r8,%r15
|
| + xorq %rcx,%r12
|
| + rorq $6,%r14
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + xorq %r9,%rdi
|
| + rorq $28,%r14
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%rdx
|
| + movq %rax,%r12
|
| + rorq $5,%r14
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + rorq $4,%r13
|
| + xorq %rdx,%r14
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + addq 40(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + xorq %rbx,%r12
|
| + rorq $6,%r14
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + xorq %r8,%r15
|
| + rorq $28,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%rcx
|
| + movq %r11,%r12
|
| + rorq $5,%r14
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + rorq $4,%r13
|
| + xorq %rcx,%r14
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + addq 48(%rsp),%rbx
|
| + movq %rcx,%r15
|
| + xorq %rax,%r12
|
| + rorq $6,%r14
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + xorq %rdx,%rdi
|
| + rorq $28,%r14
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%rbx
|
| + movq %r10,%r12
|
| + rorq $5,%r14
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + rorq $4,%r13
|
| + xorq %rbx,%r14
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + addq 56(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + xorq %r11,%r12
|
| + rorq $6,%r14
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + xorq %rcx,%r15
|
| + rorq $28,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%rax
|
| + movq %r9,%r12
|
| + rorq $5,%r14
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + rorq $4,%r13
|
| + xorq %rax,%r14
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + addq 64(%rsp),%r11
|
| + movq %rax,%r15
|
| + xorq %r10,%r12
|
| + rorq $6,%r14
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + xorq %rbx,%rdi
|
| + rorq $28,%r14
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r11
|
| + movq %r8,%r12
|
| + rorq $5,%r14
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + rorq $4,%r13
|
| + xorq %r11,%r14
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + addq 72(%rsp),%r10
|
| + movq %r11,%rdi
|
| + xorq %r9,%r12
|
| + rorq $6,%r14
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + xorq %rax,%r15
|
| + rorq $28,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r10
|
| + movq %rdx,%r12
|
| + rorq $5,%r14
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + rorq $4,%r13
|
| + xorq %r10,%r14
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + addq 80(%rsp),%r9
|
| + movq %r10,%r15
|
| + xorq %r8,%r12
|
| + rorq $6,%r14
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + xorq %r11,%rdi
|
| + rorq $28,%r14
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r9
|
| + movq %rcx,%r12
|
| + rorq $5,%r14
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + rorq $4,%r13
|
| + xorq %r9,%r14
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + addq 88(%rsp),%r8
|
| + movq %r9,%rdi
|
| + xorq %rdx,%r12
|
| + rorq $6,%r14
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + xorq %r10,%r15
|
| + rorq $28,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%r8
|
| + movq %rbx,%r12
|
| + rorq $5,%r14
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + rorq $4,%r13
|
| + xorq %r8,%r14
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + addq 96(%rsp),%rdx
|
| + movq %r8,%r15
|
| + xorq %rcx,%r12
|
| + rorq $6,%r14
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + xorq %r9,%rdi
|
| + rorq $28,%r14
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%rdx
|
| + movq %rax,%r12
|
| + rorq $5,%r14
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + rorq $4,%r13
|
| + xorq %rdx,%r14
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + addq 104(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + xorq %rbx,%r12
|
| + rorq $6,%r14
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + xorq %r8,%r15
|
| + rorq $28,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%rcx
|
| + movq %r11,%r12
|
| + rorq $5,%r14
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + rorq $4,%r13
|
| + xorq %rcx,%r14
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + addq 112(%rsp),%rbx
|
| + movq %rcx,%r15
|
| + xorq %rax,%r12
|
| + rorq $6,%r14
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + rorq $14,%r13
|
| + andq %r15,%rdi
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + xorq %rdx,%rdi
|
| + rorq $28,%r14
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| + rorq $23,%r13
|
| + movq %r14,%rbx
|
| + movq %r10,%r12
|
| + rorq $5,%r14
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + rorq $4,%r13
|
| + xorq %rbx,%r14
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + addq 120(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + xorq %r11,%r12
|
| + rorq $6,%r14
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + rorq $14,%r13
|
| + andq %rdi,%r15
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + xorq %rcx,%r15
|
| + rorq $28,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + movq 128+0(%rsp),%rdi
|
| + movq %r14,%rax
|
| +
|
| + addq 0(%rdi),%rax
|
| + leaq 128(%rsi),%rsi
|
| + addq 8(%rdi),%rbx
|
| + addq 16(%rdi),%rcx
|
| + addq 24(%rdi),%rdx
|
| + addq 32(%rdi),%r8
|
| + addq 40(%rdi),%r9
|
| + addq 48(%rdi),%r10
|
| + addq 56(%rdi),%r11
|
| +
|
| + cmpq 128+16(%rsp),%rsi
|
| +
|
| + movq %rax,0(%rdi)
|
| + movq %rbx,8(%rdi)
|
| + movq %rcx,16(%rdi)
|
| + movq %rdx,24(%rdi)
|
| + movq %r8,32(%rdi)
|
| + movq %r9,40(%rdi)
|
| + movq %r10,48(%rdi)
|
| + movq %r11,56(%rdi)
|
| + jb L$loop_xop
|
| +
|
| + movq 128+24(%rsp),%rsi
|
| + vzeroupper
|
| + movq (%rsi),%r15
|
| + movq 8(%rsi),%r14
|
| + movq 16(%rsi),%r13
|
| + movq 24(%rsi),%r12
|
| + movq 32(%rsi),%rbp
|
| + movq 40(%rsi),%rbx
|
| + leaq 48(%rsi),%rsp
|
| +L$epilogue_xop:
|
| + .byte 0xf3,0xc3
|
| +
|
| +
|
| +.p2align 6
|
| +sha512_block_data_order_avx:
|
| +L$avx_shortcut:
|
| + pushq %rbx
|
| + pushq %rbp
|
| + pushq %r12
|
| + pushq %r13
|
| + pushq %r14
|
| + pushq %r15
|
| + movq %rsp,%r11
|
| + shlq $4,%rdx
|
| + subq $160,%rsp
|
| + leaq (%rsi,%rdx,8),%rdx
|
| + andq $-64,%rsp
|
| + movq %rdi,128+0(%rsp)
|
| + movq %rsi,128+8(%rsp)
|
| + movq %rdx,128+16(%rsp)
|
| + movq %r11,128+24(%rsp)
|
| +L$prologue_avx:
|
| +
|
| + vzeroupper
|
| + movq 0(%rdi),%rax
|
| + movq 8(%rdi),%rbx
|
| + movq 16(%rdi),%rcx
|
| + movq 24(%rdi),%rdx
|
| + movq 32(%rdi),%r8
|
| + movq 40(%rdi),%r9
|
| + movq 48(%rdi),%r10
|
| + movq 56(%rdi),%r11
|
| + jmp L$loop_avx
|
| +.p2align 4
|
| +L$loop_avx:
|
| + vmovdqa K512+1280(%rip),%xmm11
|
| + vmovdqu 0(%rsi),%xmm0
|
| + leaq K512+128(%rip),%rbp
|
| + vmovdqu 16(%rsi),%xmm1
|
| + vmovdqu 32(%rsi),%xmm2
|
| + vpshufb %xmm11,%xmm0,%xmm0
|
| + vmovdqu 48(%rsi),%xmm3
|
| + vpshufb %xmm11,%xmm1,%xmm1
|
| + vmovdqu 64(%rsi),%xmm4
|
| + vpshufb %xmm11,%xmm2,%xmm2
|
| + vmovdqu 80(%rsi),%xmm5
|
| + vpshufb %xmm11,%xmm3,%xmm3
|
| + vmovdqu 96(%rsi),%xmm6
|
| + vpshufb %xmm11,%xmm4,%xmm4
|
| + vmovdqu 112(%rsi),%xmm7
|
| + vpshufb %xmm11,%xmm5,%xmm5
|
| + vpaddq -128(%rbp),%xmm0,%xmm8
|
| + vpshufb %xmm11,%xmm6,%xmm6
|
| + vpaddq -96(%rbp),%xmm1,%xmm9
|
| + vpshufb %xmm11,%xmm7,%xmm7
|
| + vpaddq -64(%rbp),%xmm2,%xmm10
|
| + vpaddq -32(%rbp),%xmm3,%xmm11
|
| + vmovdqa %xmm8,0(%rsp)
|
| + vpaddq 0(%rbp),%xmm4,%xmm8
|
| + vmovdqa %xmm9,16(%rsp)
|
| + vpaddq 32(%rbp),%xmm5,%xmm9
|
| + vmovdqa %xmm10,32(%rsp)
|
| + vpaddq 64(%rbp),%xmm6,%xmm10
|
| + vmovdqa %xmm11,48(%rsp)
|
| + vpaddq 96(%rbp),%xmm7,%xmm11
|
| + vmovdqa %xmm8,64(%rsp)
|
| + movq %rax,%r14
|
| + vmovdqa %xmm9,80(%rsp)
|
| + movq %rbx,%rdi
|
| + vmovdqa %xmm10,96(%rsp)
|
| + xorq %rcx,%rdi
|
| + vmovdqa %xmm11,112(%rsp)
|
| + movq %r8,%r13
|
| + jmp L$avx_00_47
|
| +
|
| +.p2align 4
|
| +L$avx_00_47:
|
| + addq $256,%rbp
|
| + vpalignr $8,%xmm0,%xmm1,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rax
|
| + vpalignr $8,%xmm4,%xmm5,%xmm11
|
| + movq %r9,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + vpaddq %xmm11,%xmm0,%xmm0
|
| + shrdq $4,%r13,%r13
|
| + xorq %rax,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 0(%rsp),%r11
|
| + movq %rax,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %r10,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rbx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm7,%xmm11
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| + vpsllq $3,%xmm7,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r11
|
| + vpaddq %xmm8,%xmm0,%xmm0
|
| + movq %r8,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm7,%xmm9
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %r11,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 8(%rsp),%r10
|
| + movq %r11,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %r9,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm0,%xmm0
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + vpaddq -128(%rbp),%xmm0,%xmm10
|
| + xorq %rax,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + vmovdqa %xmm10,0(%rsp)
|
| + vpalignr $8,%xmm1,%xmm2,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r10
|
| + vpalignr $8,%xmm5,%xmm6,%xmm11
|
| + movq %rdx,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + vpaddq %xmm11,%xmm1,%xmm1
|
| + shrdq $4,%r13,%r13
|
| + xorq %r10,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 16(%rsp),%r9
|
| + movq %r10,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %r8,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r11,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm0,%xmm11
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| + vpsllq $3,%xmm0,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r9
|
| + vpaddq %xmm8,%xmm1,%xmm1
|
| + movq %rcx,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm0,%xmm9
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %r9,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 24(%rsp),%r8
|
| + movq %r9,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %rdx,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm1,%xmm1
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + vpaddq -96(%rbp),%xmm1,%xmm10
|
| + xorq %r10,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + vmovdqa %xmm10,16(%rsp)
|
| + vpalignr $8,%xmm2,%xmm3,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r8
|
| + vpalignr $8,%xmm6,%xmm7,%xmm11
|
| + movq %rbx,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + vpaddq %xmm11,%xmm2,%xmm2
|
| + shrdq $4,%r13,%r13
|
| + xorq %r8,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 32(%rsp),%rdx
|
| + movq %r8,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %rcx,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r9,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm1,%xmm11
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| + vpsllq $3,%xmm1,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rdx
|
| + vpaddq %xmm8,%xmm2,%xmm2
|
| + movq %rax,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm1,%xmm9
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %rdx,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 40(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %rbx,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm2,%xmm2
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + vpaddq -64(%rbp),%xmm2,%xmm10
|
| + xorq %r8,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + vmovdqa %xmm10,32(%rsp)
|
| + vpalignr $8,%xmm3,%xmm4,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rcx
|
| + vpalignr $8,%xmm7,%xmm0,%xmm11
|
| + movq %r11,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + vpaddq %xmm11,%xmm3,%xmm3
|
| + shrdq $4,%r13,%r13
|
| + xorq %rcx,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 48(%rsp),%rbx
|
| + movq %rcx,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %rax,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rdx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm2,%xmm11
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| + vpsllq $3,%xmm2,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rbx
|
| + vpaddq %xmm8,%xmm3,%xmm3
|
| + movq %r10,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm2,%xmm9
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %rbx,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 56(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %r11,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm3,%xmm3
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + vpaddq -32(%rbp),%xmm3,%xmm10
|
| + xorq %rcx,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + vmovdqa %xmm10,48(%rsp)
|
| + vpalignr $8,%xmm4,%xmm5,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rax
|
| + vpalignr $8,%xmm0,%xmm1,%xmm11
|
| + movq %r9,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + vpaddq %xmm11,%xmm4,%xmm4
|
| + shrdq $4,%r13,%r13
|
| + xorq %rax,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 64(%rsp),%r11
|
| + movq %rax,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %r10,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rbx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm3,%xmm11
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| + vpsllq $3,%xmm3,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r11
|
| + vpaddq %xmm8,%xmm4,%xmm4
|
| + movq %r8,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm3,%xmm9
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %r11,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 72(%rsp),%r10
|
| + movq %r11,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %r9,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm4,%xmm4
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + vpaddq 0(%rbp),%xmm4,%xmm10
|
| + xorq %rax,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + vmovdqa %xmm10,64(%rsp)
|
| + vpalignr $8,%xmm5,%xmm6,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r10
|
| + vpalignr $8,%xmm1,%xmm2,%xmm11
|
| + movq %rdx,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + vpaddq %xmm11,%xmm5,%xmm5
|
| + shrdq $4,%r13,%r13
|
| + xorq %r10,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 80(%rsp),%r9
|
| + movq %r10,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %r8,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r11,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm4,%xmm11
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| + vpsllq $3,%xmm4,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r9
|
| + vpaddq %xmm8,%xmm5,%xmm5
|
| + movq %rcx,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm4,%xmm9
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %r9,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 88(%rsp),%r8
|
| + movq %r9,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %rdx,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm5,%xmm5
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + vpaddq 32(%rbp),%xmm5,%xmm10
|
| + xorq %r10,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + vmovdqa %xmm10,80(%rsp)
|
| + vpalignr $8,%xmm6,%xmm7,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r8
|
| + vpalignr $8,%xmm2,%xmm3,%xmm11
|
| + movq %rbx,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + vpaddq %xmm11,%xmm6,%xmm6
|
| + shrdq $4,%r13,%r13
|
| + xorq %r8,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 96(%rsp),%rdx
|
| + movq %r8,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %rcx,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %r9,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm5,%xmm11
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| + vpsllq $3,%xmm5,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rdx
|
| + vpaddq %xmm8,%xmm6,%xmm6
|
| + movq %rax,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm5,%xmm9
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %rdx,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 104(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %rbx,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm6,%xmm6
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + vpaddq 64(%rbp),%xmm6,%xmm10
|
| + xorq %r8,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + vmovdqa %xmm10,96(%rsp)
|
| + vpalignr $8,%xmm7,%xmm0,%xmm8
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rcx
|
| + vpalignr $8,%xmm3,%xmm4,%xmm11
|
| + movq %r11,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $1,%xmm8,%xmm10
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + vpaddq %xmm11,%xmm7,%xmm7
|
| + shrdq $4,%r13,%r13
|
| + xorq %rcx,%r14
|
| + vpsrlq $7,%xmm8,%xmm11
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + vpsllq $56,%xmm8,%xmm9
|
| + addq 112(%rsp),%rbx
|
| + movq %rcx,%r15
|
| + vpxor %xmm10,%xmm11,%xmm8
|
| + xorq %rax,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpsrlq $7,%xmm10,%xmm10
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + vpsllq $7,%xmm9,%xmm9
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + vpxor %xmm10,%xmm8,%xmm8
|
| + xorq %rdx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + vpsrlq $6,%xmm6,%xmm11
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + vpxor %xmm9,%xmm8,%xmm8
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| + vpsllq $3,%xmm6,%xmm10
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rbx
|
| + vpaddq %xmm8,%xmm7,%xmm7
|
| + movq %r10,%r12
|
| + shrdq $5,%r14,%r14
|
| + vpsrlq $19,%xmm6,%xmm9
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + shrdq $4,%r13,%r13
|
| + xorq %rbx,%r14
|
| + vpsllq $42,%xmm10,%xmm10
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + addq 120(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + vpsrlq $42,%xmm9,%xmm9
|
| + xorq %r11,%r12
|
| + shrdq $6,%r14,%r14
|
| + vpxor %xmm10,%xmm11,%xmm11
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + vpxor %xmm9,%xmm11,%xmm11
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + vpaddq %xmm11,%xmm7,%xmm7
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + vpaddq 96(%rbp),%xmm7,%xmm10
|
| + xorq %rcx,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + vmovdqa %xmm10,112(%rsp)
|
| + cmpb $0,135(%rbp)
|
| + jne L$avx_00_47
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rax
|
| + movq %r9,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rax,%r14
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + addq 0(%rsp),%r11
|
| + movq %rax,%r15
|
| + xorq %r10,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + xorq %rbx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r11
|
| + movq %r8,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r11,%r14
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + addq 8(%rsp),%r10
|
| + movq %r11,%rdi
|
| + xorq %r9,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + xorq %rax,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r10
|
| + movq %rdx,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r10,%r14
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + addq 16(%rsp),%r9
|
| + movq %r10,%r15
|
| + xorq %r8,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + xorq %r11,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r9
|
| + movq %rcx,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r9,%r14
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + addq 24(%rsp),%r8
|
| + movq %r9,%rdi
|
| + xorq %rdx,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + xorq %r10,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r8
|
| + movq %rbx,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r8,%r14
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + addq 32(%rsp),%rdx
|
| + movq %r8,%r15
|
| + xorq %rcx,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + xorq %r9,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rdx
|
| + movq %rax,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rdx,%r14
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + addq 40(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + xorq %rbx,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + xorq %r8,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rcx
|
| + movq %r11,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rcx,%r14
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + addq 48(%rsp),%rbx
|
| + movq %rcx,%r15
|
| + xorq %rax,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + xorq %rdx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rbx
|
| + movq %r10,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rbx,%r14
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + addq 56(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + xorq %r11,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + xorq %rcx,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rax
|
| + movq %r9,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r8,%r13
|
| + xorq %r10,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rax,%r14
|
| + andq %r8,%r12
|
| + xorq %r8,%r13
|
| + addq 64(%rsp),%r11
|
| + movq %rax,%r15
|
| + xorq %r10,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rbx,%r15
|
| + addq %r12,%r11
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %rax,%r14
|
| + addq %r13,%r11
|
| + xorq %rbx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %r11,%rdx
|
| + addq %rdi,%r11
|
| + movq %rdx,%r13
|
| + addq %r11,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r11
|
| + movq %r8,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rdx,%r13
|
| + xorq %r9,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r11,%r14
|
| + andq %rdx,%r12
|
| + xorq %rdx,%r13
|
| + addq 72(%rsp),%r10
|
| + movq %r11,%rdi
|
| + xorq %r9,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rax,%rdi
|
| + addq %r12,%r10
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %r11,%r14
|
| + addq %r13,%r10
|
| + xorq %rax,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r10,%rcx
|
| + addq %r15,%r10
|
| + movq %rcx,%r13
|
| + addq %r10,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r10
|
| + movq %rdx,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rcx,%r13
|
| + xorq %r8,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r10,%r14
|
| + andq %rcx,%r12
|
| + xorq %rcx,%r13
|
| + addq 80(%rsp),%r9
|
| + movq %r10,%r15
|
| + xorq %r8,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r11,%r15
|
| + addq %r12,%r9
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %r10,%r14
|
| + addq %r13,%r9
|
| + xorq %r11,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %r9,%rbx
|
| + addq %rdi,%r9
|
| + movq %rbx,%r13
|
| + addq %r9,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r9
|
| + movq %rcx,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rbx,%r13
|
| + xorq %rdx,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r9,%r14
|
| + andq %rbx,%r12
|
| + xorq %rbx,%r13
|
| + addq 88(%rsp),%r8
|
| + movq %r9,%rdi
|
| + xorq %rdx,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r10,%rdi
|
| + addq %r12,%r8
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %r9,%r14
|
| + addq %r13,%r8
|
| + xorq %r10,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %r8,%rax
|
| + addq %r15,%r8
|
| + movq %rax,%r13
|
| + addq %r8,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%r8
|
| + movq %rbx,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %rax,%r13
|
| + xorq %rcx,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %r8,%r14
|
| + andq %rax,%r12
|
| + xorq %rax,%r13
|
| + addq 96(%rsp),%rdx
|
| + movq %r8,%r15
|
| + xorq %rcx,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r9,%r15
|
| + addq %r12,%rdx
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %r8,%r14
|
| + addq %r13,%rdx
|
| + xorq %r9,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %rdx,%r11
|
| + addq %rdi,%rdx
|
| + movq %r11,%r13
|
| + addq %rdx,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rdx
|
| + movq %rax,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r11,%r13
|
| + xorq %rbx,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rdx,%r14
|
| + andq %r11,%r12
|
| + xorq %r11,%r13
|
| + addq 104(%rsp),%rcx
|
| + movq %rdx,%rdi
|
| + xorq %rbx,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %r8,%rdi
|
| + addq %r12,%rcx
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %rdx,%r14
|
| + addq %r13,%rcx
|
| + xorq %r8,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rcx,%r10
|
| + addq %r15,%rcx
|
| + movq %r10,%r13
|
| + addq %rcx,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rcx
|
| + movq %r11,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r10,%r13
|
| + xorq %rax,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rcx,%r14
|
| + andq %r10,%r12
|
| + xorq %r10,%r13
|
| + addq 112(%rsp),%rbx
|
| + movq %rcx,%r15
|
| + xorq %rax,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rdx,%r15
|
| + addq %r12,%rbx
|
| + shrdq $14,%r13,%r13
|
| + andq %r15,%rdi
|
| + xorq %rcx,%r14
|
| + addq %r13,%rbx
|
| + xorq %rdx,%rdi
|
| + shrdq $28,%r14,%r14
|
| + addq %rbx,%r9
|
| + addq %rdi,%rbx
|
| + movq %r9,%r13
|
| + addq %rbx,%r14
|
| + shrdq $23,%r13,%r13
|
| + movq %r14,%rbx
|
| + movq %r10,%r12
|
| + shrdq $5,%r14,%r14
|
| + xorq %r9,%r13
|
| + xorq %r11,%r12
|
| + shrdq $4,%r13,%r13
|
| + xorq %rbx,%r14
|
| + andq %r9,%r12
|
| + xorq %r9,%r13
|
| + addq 120(%rsp),%rax
|
| + movq %rbx,%rdi
|
| + xorq %r11,%r12
|
| + shrdq $6,%r14,%r14
|
| + xorq %rcx,%rdi
|
| + addq %r12,%rax
|
| + shrdq $14,%r13,%r13
|
| + andq %rdi,%r15
|
| + xorq %rbx,%r14
|
| + addq %r13,%rax
|
| + xorq %rcx,%r15
|
| + shrdq $28,%r14,%r14
|
| + addq %rax,%r8
|
| + addq %r15,%rax
|
| + movq %r8,%r13
|
| + addq %rax,%r14
|
| + movq 128+0(%rsp),%rdi
|
| + movq %r14,%rax
|
| +
|
| + addq 0(%rdi),%rax
|
| + leaq 128(%rsi),%rsi
|
| + addq 8(%rdi),%rbx
|
| + addq 16(%rdi),%rcx
|
| + addq 24(%rdi),%rdx
|
| + addq 32(%rdi),%r8
|
| + addq 40(%rdi),%r9
|
| + addq 48(%rdi),%r10
|
| + addq 56(%rdi),%r11
|
| +
|
| + cmpq 128+16(%rsp),%rsi
|
| +
|
| + movq %rax,0(%rdi)
|
| + movq %rbx,8(%rdi)
|
| + movq %rcx,16(%rdi)
|
| + movq %rdx,24(%rdi)
|
| + movq %r8,32(%rdi)
|
| + movq %r9,40(%rdi)
|
| + movq %r10,48(%rdi)
|
| + movq %r11,56(%rdi)
|
| + jb L$loop_avx
|
| +
|
| + movq 128+24(%rsp),%rsi
|
| + vzeroupper
|
| + movq (%rsi),%r15
|
| + movq 8(%rsi),%r14
|
| + movq 16(%rsi),%r13
|
| + movq 24(%rsi),%r12
|
| + movq 32(%rsi),%rbp
|
| + movq 40(%rsi),%rbx
|
| + leaq 48(%rsi),%rsp
|
| +L$epilogue_avx:
|
| + .byte 0xf3,0xc3
|
| +
|
| #endif
|
|
|