Commit 075afd79 authored by Niels Möller's avatar Niels Möller
Browse files

* x86/aes.m4 (AES_FINAL_ROUND): Do the substitution on the least

significant byte here.

Rev: nettle/x86/aes.m4:1.5
parent b60efb20
...@@ -59,22 +59,22 @@ define(<AES_ROUND>, < ...@@ -59,22 +59,22 @@ define(<AES_ROUND>, <
shrl <$>24,$7 shrl <$>24,$7
xorl AES_TABLE3 ($1, $7, 4),$6>)dnl xorl AES_TABLE3 ($1, $7, 4),$6>)dnl
dnl AES_FINAL_ROUND(a, b, c, d, out, tmp) dnl AES_FINAL_ROUND(a, b, c, d, table, out, tmp)
dnl Computes one word of the final round. Leaves result in %edi. dnl Computes one word of the final round.
dnl Note that we have to quote $ in constants. dnl Note that we have to quote $ in constants.
define(<AES_FINAL_ROUND>, < define(<AES_FINAL_ROUND>, <
C FIXME: Perform substitution on least significant byte here, movzbl LREG($1),$6
C to save work later. movzbl ($5, $6), $6
movzbl LREG($1),$5 movl $2,$7
movl $2,$6 andl <$>0x0000ff00,$7
andl <$>0x0000ff00,$6 orl $7, $6
orl $6, $5 movl $3,$7
movl $3,$6 andl <$>0x00ff0000,$7
andl <$>0x00ff0000,$6 orl $7, $6
orl $6, $5 movl $4,$7
movl $4,$6 andl <$>0xff000000,$7
andl <$>0xff000000,$6 orl $7, $6
orl $6, $5>)dnl roll <$>8, $6>)dnl
dnl AES_SUBST_BYTE(A, B, C, D, table, ptr) dnl AES_SUBST_BYTE(A, B, C, D, table, ptr)
dnl Substitutes the least significant byte of dnl Substitutes the least significant byte of
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment