summaryrefslogtreecommitdiff
path: root/x86
diff options
context:
space:
mode:
authorNiels Möller <nisse@lysator.liu.se>2002-05-15 11:27:34 +0200
committerNiels Möller <nisse@lysator.liu.se>2002-05-15 11:27:34 +0200
commit0610aa4bc7106a49acbee90065dca0fd8d63dc73 (patch)
tree44a7c3c2962431af97c7e1e23cf4fd7c90170c09 /x86
parentb093a922b56eac0f6c48e0cbb160572a39389f30 (diff)
downloadnettle-0610aa4bc7106a49acbee90065dca0fd8d63dc73.tar.gz
(aes_decrypt): Start using AES_ROUND. Fourth word.
Rev: src/nettle/x86/aes-decrypt.asm:1.7
Diffstat (limited to 'x86')
-rw-r--r--x86/aes-decrypt.asm37
1 files changed, 1 insertions, 36 deletions
diff --git a/x86/aes-decrypt.asm b/x86/aes-decrypt.asm
index 373f8866..b98e4912 100644
--- a/x86/aes-decrypt.asm
+++ b/x86/aes-decrypt.asm
@@ -66,44 +66,9 @@ aes_decrypt:
pushl %edi
AES_ROUND(_aes_decrypt_table,c,d,a,b)
-C C // Third column
-C C c d a b
-C movl %ecx,%esi C copy first in
-C andl $0x000000ff,%esi C clear all but offset
-C shll $2,%esi C index in itbl1
-C movl AES_TABLE0 + _aes_decrypt_table (%esi),%edi
-C movl %edx,%esi C second one
-C shrl $6,%esi
-C andl $0x000003fc,%esi C clear all but offset bytes
-C xorl AES_TABLE1 + _aes_decrypt_table (%esi),%edi
-C movl %eax,%esi C third one
-C shrl $14,%esi
-C andl $0x000003fc,%esi
-C xorl AES_TABLE2 + _aes_decrypt_table (%esi),%edi
-C movl %ebx,%esi C fourth one
-C shrl $22,%esi
-C andl $0x000003fc,%esi
-C xorl AES_TABLE3 + _aes_decrypt_table (%esi),%edi
pushl %edi C save first on stack
- C // Fourth column
- C b c d a
- movl %ebx,%esi C copy first in
- andl $0x000000ff,%esi C clear all but offset
- shll $2,%esi C index in itbl1
- movl AES_TABLE0 + _aes_decrypt_table (%esi),%edi
- movl %ecx,%esi C second one
- shrl $6,%esi
- andl $0x000003fc,%esi C clear all but offset bytes
- xorl AES_TABLE1 + _aes_decrypt_table (%esi),%edi
- movl %edx,%esi C third one
- shrl $14,%esi
- andl $0x000003fc,%esi
- xorl AES_TABLE2 + _aes_decrypt_table (%esi),%edi
- movl %eax,%esi C fourth one
- shrl $22,%esi
- andl $0x000003fc,%esi
- xorl AES_TABLE3 + _aes_decrypt_table (%esi),%edi
+ AES_ROUND(_aes_decrypt_table,b,c,d,a)
movl %edi,%edx
popl %ecx