Revert "[CRYPTO] cast6: inline bloat--"
authorJussi Kivilinna <jussi.kivilinna@mbnet.fi>
Tue, 28 Aug 2012 13:49:28 +0000 (16:49 +0300)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 6 Sep 2012 20:17:06 +0000 (04:17 +0800)
This reverts commit e6ccc727f30a02670f6a00df6d548942bc988f43.

Above commit caused performance regression for CAST6. Reverting gives
following increase in tcrypt speed tests (revert-vs-old ratios).

AMD Phenom II X6 1055T, x86-64:

size    ecb             cbc             ctr             lrw             xts
        enc     dec     enc     dec     enc     dec     enc     dec     enc     dec
16b     1.15x   1.17x   1.16x   1.17x   1.16x   1.16x   1.14x   1.19x   1.05x   1.07x
64b     1.19x   1.23x   1.20x   1.22x   1.19x   1.19x   1.16x   1.24x   1.12x   1.12x
256b    1.21x   1.24x   1.22x   1.24x   1.20x   1.20x   1.17x   1.21x   1.16x   1.14x
1kb     1.21x   1.25x   1.22x   1.24x   1.21x   1.21x   1.18x   1.22x   1.17x   1.15x
8kb     1.21x   1.25x   1.22x   1.24x   1.21x   1.21x   1.18x   1.22x   1.18x   1.15x

Cc: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/cast6_generic.c

index dc9309d704051f59264c40e4f8c6592b3625d205..1acd2f1c48fcf57966fd99bb414dcfc1eb050efb 100644 (file)
@@ -370,7 +370,7 @@ static const u8 Tr[4][8] = {
 };
 
 /* forward octave */
-static void W(u32 *key, unsigned int i)
+static inline void W(u32 *key, unsigned int i)
 {
        u32 I;
        key[6] ^= F1(key[7], Tr[i % 4][0], Tm[i][0]);
@@ -434,7 +434,7 @@ int cast6_setkey(struct crypto_tfm *tfm, const u8 *key, unsigned int keylen)
 EXPORT_SYMBOL_GPL(cast6_setkey);
 
 /*forward quad round*/
-static void Q(u32 *block, u8 *Kr, u32 *Km)
+static inline void Q(u32 *block, u8 *Kr, u32 *Km)
 {
        u32 I;
        block[2] ^= F1(block[3], Kr[0], Km[0]);
@@ -444,7 +444,7 @@ static void Q(u32 *block, u8 *Kr, u32 *Km)
 }
 
 /*reverse quad round*/
-static void QBAR(u32 *block, u8 *Kr, u32 *Km)
+static inline void QBAR(u32 *block, u8 *Kr, u32 *Km)
 {
        u32 I;
        block[3] ^= F1(block[0], Kr[3], Km[3]);