From: Denys Vlasenko <vda.linux@googlemail.com>
To: Denys Vlasenko <vda.linux@googlemail.com>,
herbert@gondor.apana.org.au,
Noriaki TAKAMIYA <takamiya@linux-ipv6.org>,
davem@davemloft.net, linux-crypto@vger.kernel.org
Subject: [PATCH 0/5] camellia: code shrink and 64-bit optimization
Date: Thu, 22 Nov 2007 14:41:44 -0800 [thread overview]
Message-ID: <200711221441.45027.vda.linux@googlemail.com> (raw)
Patches start from 5 because pathches 1..4 are already
in cryptodev-2.6.
camellia5:
Remove unused macro params.
Use (u8)(expr) instead of (expr) & 0xff,
helps gcc to realize how to use simpler commands.
Move CAMELLIA_FLS macro closer to encrypt/decrypt routines.
camellia6:
unifies encrypt/decrypt routines for different key lengths.
This reduces module size by ~25%, with tiny (less than 1%)
speed impact.
Also collapses encrypt/decrypt into more readable
(visually shorter) form using macros.
camellia7:
Move "key XOR is end of F-function" code part into
camellia_setup_tail(), it is sufficiently similar
between camellia_setup128 and camellia_setup256.
camellia8:
Analogously to camellia7 patch, move
"absorb kw2 to other subkeys" and "absorb kw4 to other subkeys"
code parts into camellia_setup_tail(). This further reduces
source and object code size at the cost of two brances
in key setup code.
camellia9:
Adds 64-bit key setup, it is used if BITS_PER_LONG is 64.
30% faster key setup and 1k (7%) smaller module on amd64.
Code sizes:
64-bit:
dec hex filename
22786 5902 2.6.23.1.camellia4.t64/crypto/camellia.o
15670 3d36 2.6.23.1.camellia9.t64/crypto/camellia.o
32-bit:
29948 74fc 2.6.23.1.camellia4.t/crypto/camellia.o
18454 4816 2.6.23.1.camellia9.t/crypto/camellia.o
These patches apply cleanly to current cryptodev-2.6.
They should be applied in order.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
--
vda
next reply other threads:[~2007-11-22 22:41 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-22 22:41 Denys Vlasenko [this message]
2007-11-22 22:43 ` [PATCH 2/5] camellia: code shrink #2 Denys Vlasenko
2007-11-23 13:12 ` Herbert Xu
2007-11-22 22:43 ` [PATCH 3/5] camellia: code shrink #3 Denys Vlasenko
2007-11-23 13:14 ` Herbert Xu
2007-11-22 22:44 ` [PATCH 4/5] camellia: code shrink #4 Denys Vlasenko
2007-11-23 13:22 ` Herbert Xu
2007-11-22 22:44 ` [PATCH 5/5] camellia: 64-bit optimization Denys Vlasenko
2007-11-22 22:45 ` [PATCH 1/5] camellia: code shrink Denys Vlasenko
2007-11-23 13:06 ` Herbert Xu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200711221441.45027.vda.linux@googlemail.com \
--to=vda.linux@googlemail.com \
--cc=davem@davemloft.net \
--cc=herbert@gondor.apana.org.au \
--cc=linux-crypto@vger.kernel.org \
--cc=takamiya@linux-ipv6.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.