[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-crypto-vger
Subject:    [PATCH 0/5] camellia: code shrink and 64-bit optimization
From:       Denys Vlasenko <vda.linux () googlemail ! com>
Date:       2007-11-22 22:41:44
Message-ID: 200711221441.45027.vda.linux () googlemail ! com
[Download RAW message or body]

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
-
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic