summaryrefslogtreecommitdiff
path: root/crypto/aead.c
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2007-10-26 16:22:57 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2008-01-11 08:16:06 +1100
commit754f09a6827c1fe98d80b0b7cc4f011bbf2a9b95 (patch)
tree89f69991a2b5a371d3320fbab884f175f24cb2dd /crypto/aead.c
parenta94493fa6c6798a55448d411fbd0c2f9f44e6f55 (diff)
downloadlinux-crypto-754f09a6827c1fe98d80b0b7cc4f011bbf2a9b95.tar.gz
linux-crypto-754f09a6827c1fe98d80b0b7cc4f011bbf2a9b95.zip
[CRYPTO] twofish: Do not unroll big stuff in twofish key setup
Currently twofish cipher key setup code has unrolled loops - approximately 70-100 instructions are repeated 40 times. As a result, twofish module is the biggest module in crypto/*. Unrolling produces x2.5 more code (+18k on i386), and speeds up key setup by 7%: unrolled: twofish_setkey/sec: 41128 loop: twofish_setkey/sec: 38148 CALC_K256: ~100 insns each CALC_K192: ~90 insns CALC_K: ~70 insns Attached patch removes this unrolling. $ size */twofish_common.o text data bss dec hex filename 37920 0 0 37920 9420 crypto.org/twofish_common.o 13209 0 0 13209 3399 crypto/twofish_common.o Run tested (modprobe tcrypt reports ok). Please apply. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/aead.c')
0 files changed, 0 insertions, 0 deletions