faster and faster

This commit is contained in:
bg 2009-01-14 19:16:36 +00:00
parent 398d051849
commit 6805745010
1 changed files with 48 additions and 72 deletions

View File

@ -185,28 +185,25 @@ aes_encrypt_core:
brtc 2f brtc 2f
rjmp 1b rjmp 1b
2: 2:
/* mixrow 1*/
mov r1, ST00 mov r1, ST02
eor r1, ST01
eor r1, ST02
eor r1, ST03 eor r1, ST03
mov T0, ST00 mov T0, ST00
eor T0, ST01 eor ST00, ST01
lsl T0 eor r1, ST00
lsl ST00
brcc 3f brcc 3f
eor T0, xREDUCER eor ST00, xREDUCER
3: 3: eor ST00, r1
eor T0, r1 eor ST00, T0
eor T0, ST00
mov T1, ST01 mov T1, ST01
eor T1, ST02 eor T1, ST02
lsl T1 lsl T1
brcc 3f brcc 3f
eor T1, xREDUCER eor T1, xREDUCER
3: 3: eor T1, r1
eor T1, r1
eor ST01, T1 eor ST01, T1
mov T2, ST02 mov T2, ST02
@ -214,42 +211,36 @@ aes_encrypt_core:
lsl T2 lsl T2
brcc 3f brcc 3f
eor T2, xREDUCER eor T2, xREDUCER
3: 3: eor T2, r1
eor T2, r1
eor ST02, T2 eor ST02, T2
mov T3, ST03 mov T3, ST03
eor T3, ST00 eor T3, T0
lsl T3 lsl T3
brcc 3f brcc 3f
eor T3, xREDUCER eor T3, xREDUCER
3: 3: eor T3, r1
eor T3, r1
eor ST03, T3 eor ST03, T3
mov ST00, T0 /* mixrow 2 */
mov r1, ST12
mov r1, ST10
eor r1, ST11
eor r1, ST12
eor r1, ST13 eor r1, ST13
mov T0, ST10 mov T0, ST10
eor T0, ST11 eor ST10, ST11
lsl T0 eor r1, ST10
lsl ST10
brcc 3f brcc 3f
eor T0, xREDUCER eor ST10, xREDUCER
3: 3: eor ST10, r1
eor T0, r1 eor ST10, T0
eor T0, ST10
mov T1, ST11 mov T1, ST11
eor T1, ST12 eor T1, ST12
lsl T1 lsl T1
brcc 3f brcc 3f
eor T1, xREDUCER eor T1, xREDUCER
3: 3: eor T1, r1
eor T1, r1
eor ST11, T1 eor ST11, T1
mov T2, ST12 mov T2, ST12
@ -257,42 +248,36 @@ aes_encrypt_core:
lsl T2 lsl T2
brcc 3f brcc 3f
eor T2, xREDUCER eor T2, xREDUCER
3: 3: eor T2, r1
eor T2, r1
eor ST12, T2 eor ST12, T2
mov T3, ST13 mov T3, ST13
eor T3, ST10 eor T3, T0
lsl T3 lsl T3
brcc 3f brcc 3f
eor T3, xREDUCER eor T3, xREDUCER
3: 3: eor T3, r1
eor T3, r1
eor ST13, T3 eor ST13, T3
mov ST10, T0 /* mixrow 3*/
mov r1, ST22
mov r1, ST20
eor r1, ST21
eor r1, ST22
eor r1, ST23 eor r1, ST23
mov T0, ST20 mov T0, ST20
eor T0, ST21 eor ST20, ST21
lsl T0 eor r1, ST20
lsl ST20
brcc 3f brcc 3f
eor T0, xREDUCER eor ST20, xREDUCER
3: 3: eor ST20, r1
eor T0, r1 eor ST20, T0
eor T0, ST20
mov T1, ST21 mov T1, ST21
eor T1, ST22 eor T1, ST22
lsl T1 lsl T1
brcc 3f brcc 3f
eor T1, xREDUCER eor T1, xREDUCER
3: 3: eor T1, r1
eor T1, r1
eor ST21, T1 eor ST21, T1
mov T2, ST22 mov T2, ST22
@ -300,42 +285,36 @@ aes_encrypt_core:
lsl T2 lsl T2
brcc 3f brcc 3f
eor T2, xREDUCER eor T2, xREDUCER
3: 3: eor T2, r1
eor T2, r1
eor ST22, T2 eor ST22, T2
mov T3, ST23 mov T3, ST23
eor T3, ST20 eor T3, T0
lsl T3 lsl T3
brcc 3f brcc 3f
eor T3, xREDUCER eor T3, xREDUCER
3: 3: eor T3, r1
eor T3, r1
eor ST23, T3 eor ST23, T3
mov ST20, T0 /* mixrow 4 */
mov r1, ST32
mov r1, ST30
eor r1, ST31
eor r1, ST32
eor r1, ST33 eor r1, ST33
mov T0, ST30 mov T0, ST30
eor T0, ST31 eor ST30, ST31
lsl T0 eor r1, ST30
lsl ST30
brcc 3f brcc 3f
eor T0, xREDUCER eor ST30, xREDUCER
3: 3: eor ST30, r1
eor T0, r1 eor ST30, T0
eor T0, ST30
mov T1, ST31 mov T1, ST31
eor T1, ST32 eor T1, ST32
lsl T1 lsl T1
brcc 3f brcc 3f
eor T1, xREDUCER eor T1, xREDUCER
3: 3: eor T1, r1
eor T1, r1
eor ST31, T1 eor ST31, T1
mov T2, ST32 mov T2, ST32
@ -343,20 +322,17 @@ aes_encrypt_core:
lsl T2 lsl T2
brcc 3f brcc 3f
eor T2, xREDUCER eor T2, xREDUCER
3: 3: eor T2, r1
eor T2, r1
eor ST32, T2 eor ST32, T2
mov T3, ST33 mov T3, ST33
eor T3, ST30 eor T3, T0
lsl T3 lsl T3
brcc 3f brcc 3f
eor T3, xREDUCER eor T3, xREDUCER
3: 3: eor T3, r1
eor T3, r1
eor ST33, T3 eor ST33, T3
mov ST30, T0
/* mix colums (rows) done */ /* mix colums (rows) done */