From 49c91fe653d7f937c193b769f324d100196df591 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se> Date: Wed, 15 May 2002 16:15:14 +0200 Subject: [PATCH] (aes_decrypt): Deleted first xchgl instruction into, permuting the AES_ROUND calls instead. (aes_decrypt): Likewise for the final round. Rev: src/nettle/x86/aes-decrypt.asm:1.14 --- x86/aes-decrypt.asm | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/x86/aes-decrypt.asm b/x86/aes-decrypt.asm index 6faec7a6..09eba870 100644 --- a/x86/aes-decrypt.asm +++ b/x86/aes-decrypt.asm @@ -56,9 +56,6 @@ aes_decrypt: .Lround_loop: pushl %esi C save this first: we'll clobber it later - C Why??? - C xchgl %ebx,%edx - AES_ROUND(_aes_decrypt_table,a,d,c,b) pushl %edi C save first on stack @@ -85,21 +82,18 @@ aes_decrypt: decl %ebp jnz .Lround_loop - C Foo? - xchgl %ebx,%edx - C last round - AES_FINAL_ROUND(a,b,c,d) + AES_FINAL_ROUND(a,d,c,b) pushl %edi - AES_FINAL_ROUND(b,c,d,a) + AES_FINAL_ROUND(d,c,b,a) pushl %edi - AES_FINAL_ROUND(c,d,a,b) + AES_FINAL_ROUND(c,b,a,d) pushl %edi - AES_FINAL_ROUND(d,a,b,c) + AES_FINAL_ROUND(b,a,d,c) movl %edi,%edx popl %ecx -- GitLab