From 075afd79e451ec55b7d4db99356a7e36871ce56d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= Date: Sat, 13 Sep 2008 21:41:04 +0200 Subject: * x86/aes.m4 (AES_FINAL_ROUND): Do the substitution on the least significant byte here. Rev: nettle/x86/aes.m4:1.5 --- x86/aes.m4 | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) (limited to 'x86') diff --git a/x86/aes.m4 b/x86/aes.m4 index 5059a3ef..ad311a7d 100644 --- a/x86/aes.m4 +++ b/x86/aes.m4 @@ -59,22 +59,22 @@ define(, < shrl <$>24,$7 xorl AES_TABLE3 ($1, $7, 4),$6>)dnl -dnl AES_FINAL_ROUND(a, b, c, d, out, tmp) -dnl Computes one word of the final round. Leaves result in %edi. +dnl AES_FINAL_ROUND(a, b, c, d, table, out, tmp) +dnl Computes one word of the final round. dnl Note that we have to quote $ in constants. define(, < - C FIXME: Perform substitution on least significant byte here, - C to save work later. - movzbl LREG($1),$5 - movl $2,$6 - andl <$>0x0000ff00,$6 - orl $6, $5 - movl $3,$6 - andl <$>0x00ff0000,$6 - orl $6, $5 - movl $4,$6 - andl <$>0xff000000,$6 - orl $6, $5>)dnl + movzbl LREG($1),$6 + movzbl ($5, $6), $6 + movl $2,$7 + andl <$>0x0000ff00,$7 + orl $7, $6 + movl $3,$7 + andl <$>0x00ff0000,$7 + orl $7, $6 + movl $4,$7 + andl <$>0xff000000,$7 + orl $7, $6 + roll <$>8, $6>)dnl dnl AES_SUBST_BYTE(A, B, C, D, table, ptr) dnl Substitutes the least significant byte of -- cgit v1.2.1