diff options
author | Niels Möller <nisse@lysator.liu.se> | 2002-05-16 01:29:24 +0200 |
---|---|---|
committer | Niels Möller <nisse@lysator.liu.se> | 2002-05-16 01:29:24 +0200 |
commit | 363883b9a733a7907ad92e1585f71f1e46183d08 (patch) | |
tree | a9422ebf57ea6b7ed8238aa6890a91ddfb049a0f | |
parent | 26912c423ff81e28aedf58e47d088a8a7c46d4aa (diff) | |
download | nettle-363883b9a733a7907ad92e1585f71f1e46183d08.tar.gz |
Work in progress, source loop unrolling.
Rev: src/nettle/sparc/aes.asm:1.113
-rw-r--r-- | sparc/aes.asm | 49 |
1 files changed, 25 insertions, 24 deletions
diff --git a/sparc/aes.asm b/sparc/aes.asm index fd952c5a..f7f87dfa 100644 --- a/sparc/aes.asm +++ b/sparc/aes.asm @@ -66,23 +66,23 @@ define(t3, %o3) C AES_LOAD(i) C Get one word of input, XOR with first subkey, store in wtxt define(<AES_LOAD>, < - ldub [src+3], t3 - ldub [src+2], t2 + ldub [src+$1+3], t3 + ldub [src+$1+2], t2 sll t3, 24, t3 - ldub [src+1], t1 + ldub [src+$1+1], t1 sll t2, 16, t2 or t3, t2, t3 - ldub [src], t0 + ldub [src+$1], t0 sll t1, 8, t1 ! Get subkey - ld [ctx + 0], t2 + ld [ctx + $1], t2 or t3, t1, t3 or t3, t0, t3 xor t3, t2, t3 - st t3, [wtxt+0] + st t3, [wtxt+$1] add src, 4, src C ldub [src + $1], t0 @@ -233,24 +233,25 @@ _aes_crypt: C .Lsource_loop: C Begin loop C i = 0 - ldub [src+3], t3 - ldub [src+2], t2 - sll t3, 24, t3 - ldub [src+1], t1 - - sll t2, 16, t2 - or t3, t2, t3 - ldub [src], t0 - sll t1, 8, t1 - - ! Get subkey - ld [ctx + 0], t2 - or t3, t1, t3 - or t3, t0, t3 - xor t3, t2, t3 - - st t3, [wtxt+0] - add src, 4, src + AES_LOAD(0) + C ldub [src+3], t3 + C ldub [src+2], t2 + C sll t3, 24, t3 + C ldub [src+1], t1 + C + C sll t2, 16, t2 + C or t3, t2, t3 + C ldub [src], t0 + C sll t1, 8, t1 + C + C ! Get subkey + C ld [ctx + 0], t2 + C or t3, t1, t3 + C or t3, t0, t3 + C xor t3, t2, t3 + C + C st t3, [wtxt+0] + C add src, 4, src C i = 1 ldub [src+3], t3 |