X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=sha1-asm.S;h=f571685984c5046fd0f4280adbc9a5fe513720a8;hb=53f8a8d7ca5c03120224128e1f8552c99f6af11e;hp=a7a33f7b512e6397eedc96772968f9c623b041d5;hpb=83d0614d8b17eac97f891f7de2bb3ef265751dea;p=avr-crypto-lib.git diff --git a/sha1-asm.S b/sha1-asm.S index a7a33f7..f571685 100644 --- a/sha1-asm.S +++ b/sha1-asm.S @@ -271,21 +271,24 @@ sha1_lastBlock_localSpace = (SHA1_BLOCK_BITS/8+1) sha1_lastBlock: - tst r20 - brne sha1_lastBlock_prolog cpi r21, 0x02 - brne sha1_lastBlock_prolog + brlo sha1_lastBlock_prolog push r25 push r24 push r23 push r22 + push r21 + push r20 rcall sha1_nextBlock + pop r20 + pop r21 pop r22 pop r23 pop r24 pop r25 - clr r21 - clr r22 + subi r21, 2 + subi r23, -2 + rjmp sha1_lastBlock sha1_lastBlock_prolog: /* allocate space on stack */ in r30, SPL