-/* threefish_mix.S */
+/* threefish256_enc_asm.S */
/*
This file is part of the AVR-Crypto-Lib.
Copyright (C) 2009 Daniel Otte (daniel.otte@rub.de)
st Z+, A6
st Z+, A7
/* now the tweak */
+ tst r23
+ brne 3f
+ tst r22
+ brne 3f
+ ldi r26, 3*8
+2:
+ st Z+, r1
+ dec r26
+ brne 2b
+ rjmp 9f
+3:
movw r26, r22
ld A0, X+
ld A1, X+
ld r0, X+
eor A7, r0
st Z+, r0
+
st Z+, A0
st Z+, A1
st Z+, A2
st Z+, A5
st Z+, A6
st Z+, A7
+9:
pop_range 14, 17
ret
2:
ldi r30, lo8(threefish256_slut5)
ldi r31, hi8(threefish256_slut5)
- mov r26, S
- add r30, r26
+ add r30, S
adc r31, r1
lpm IDX0, Z+
lpm IDX1, Z+