Fix chacha20 AVX1 assembly to not use register RBX
This commit is contained in:
parent
0555668f2c
commit
7fe4521083
@ -975,24 +975,24 @@ L_chacha20_avx1_partial_crypt_start:
|
||||
vmovdqu %xmm3, 48(%r10)
|
||||
addl $0x01, 48(%rdi)
|
||||
movl %ecx, %r8d
|
||||
xorq %rbx, %rbx
|
||||
xorq %r11, %r11
|
||||
andl $7, %r8d
|
||||
jz L_chacha20_avx1_partial_start64
|
||||
L_chacha20_avx1_partial_start8:
|
||||
movzbl (%r10,%rbx,1), %eax
|
||||
xorb (%rsi,%rbx,1), %al
|
||||
movb %al, (%rdx,%rbx,1)
|
||||
incl %ebx
|
||||
cmpl %r8d, %ebx
|
||||
movzbl (%r10,%r11,1), %eax
|
||||
xorb (%rsi,%r11,1), %al
|
||||
movb %al, (%rdx,%r11,1)
|
||||
incl %r11d
|
||||
cmpl %r8d, %r11d
|
||||
jne L_chacha20_avx1_partial_start8
|
||||
je L_chacha20_avx1_partial_end64
|
||||
L_chacha20_avx1_partial_start64:
|
||||
movq (%r10,%rbx,1), %rax
|
||||
xorq (%rsi,%rbx,1), %rax
|
||||
movq %rax, (%rdx,%rbx,1)
|
||||
addl $8, %ebx
|
||||
movq (%r10,%r11,1), %rax
|
||||
xorq (%rsi,%r11,1), %rax
|
||||
movq %rax, (%rdx,%r11,1)
|
||||
addl $8, %r11d
|
||||
L_chacha20_avx1_partial_end64:
|
||||
cmpl %ecx, %ebx
|
||||
cmpl %ecx, %r11d
|
||||
jne L_chacha20_avx1_partial_start64
|
||||
L_chacha20_avx1_partial_done:
|
||||
addq $0x190, %rsp
|
||||
|
Loading…
x
Reference in New Issue
Block a user