diff options
Diffstat (limited to 'modules/sha_x86')
-rw-r--r-- | modules/sha_x86/sha1core.S | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/modules/sha_x86/sha1core.S b/modules/sha_x86/sha1core.S index 9aecec355..f5551c0c7 100644 --- a/modules/sha_x86/sha1core.S +++ b/modules/sha_x86/sha1core.S @@ -17,19 +17,25 @@ sha160_core: .p2align 4,,7 .LOAD_INPUT_LOOP: - movl 0(%ecx), %eax - incl %esi + movl 0(%ecx), %eax bswapl %eax - movl %eax, -4(%edi,%esi,4) + movl %eax, 0(%edi,%esi,4) movl 4(%ecx), %eax - addl $8, %ecx - incl %esi + bswapl %eax + movl %eax, 4(%edi,%esi,4) + movl 8(%ecx), %eax bswapl %eax - movl %eax, -4(%edi,%esi,4) + movl %eax, 8(%edi,%esi,4) + movl 12(%ecx), %eax + bswapl %eax + movl %eax, 12(%edi,%esi,4) + + addl $4, %esi + addl $16, %ecx cmpl $16, %esi jne .LOAD_INPUT_LOOP |