Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Marcus Hoffmann
nettle
Commits
88c9cdb3
Commit
88c9cdb3
authored
May 15, 2002
by
Niels Möller
Browse files
(AES_SUBST_BYTE): New macro.
Rev: src/nettle/x86/machine.m4:1.6
parent
93476994
Changes
1
Hide whitespace changes
Inline
Side-by-side
x86/machine.m4
View file @
88c9cdb3
...
@@ -54,6 +54,8 @@ dnl AES_LAST_ROUND(a, b, c, d)
...
@@ -54,6 +54,8 @@ dnl AES_LAST_ROUND(a, b, c, d)
dnl Computes one word of the final round. Leaves result in %edi.
dnl Computes one word of the final round. Leaves result in %edi.
dnl Note that we have to quote $ in constants.
dnl Note that we have to quote $ in constants.
define(<AES_LAST_ROUND>, <
define(<AES_LAST_ROUND>, <
C FIXME: Perform substitution on least significant byte here,
C to save work later.
movl %e<>$1<>x,%edi
movl %e<>$1<>x,%edi
andl <$>0x000000ff,%edi
andl <$>0x000000ff,%edi
movl %e<>$2<>x,%ebp
movl %e<>$2<>x,%ebp
...
@@ -66,3 +68,27 @@ define(<AES_LAST_ROUND>, <
...
@@ -66,3 +68,27 @@ define(<AES_LAST_ROUND>, <
andl <$>0xff000000,%ebp
andl <$>0xff000000,%ebp
orl %ebp,%edi>)dnl
orl %ebp,%edi>)dnl
dnl AES_SUBST_BYTE(table)
dnl Substitutes the least significant byte of
dnl each of eax, ebx, ecx and edx, and also rotates
dnl the words one byte to the left.
define(<AES_SUBST_BYTE>, <
movl %eax,%ebp
andl <$>0x000000ff,%ebp
movb AES_SBOX + $1 (%ebp),%al
roll <$>8,%eax
movl %ebx,%ebp
andl <$>0x000000ff,%ebp
movb AES_SBOX + $1 (%ebp),%bl
roll <$>8,%ebx
movl %ecx,%ebp
andl <$>0x000000ff,%ebp
movb AES_SBOX + $1 (%ebp),%cl
roll <$>8,%ecx
movl %edx,%ebp
andl <$>0x000000ff,%ebp
movb AES_SBOX + $1 (%ebp),%dl
roll <$>8,%edx>)dnl
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment