aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/aead.c
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2012-02-05 15:09:28 +1100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-02-20 12:48:12 -0800
commitc29e3ddfbd904f0b7cf600c04c4263c71c1f4830 (patch)
treed4c1883696a75ede08765d3ec11f896aab1ccab3 /crypto/aead.c
parentd122aed32ad780e0c337551121c36a5d5e1c2ee0 (diff)
downloadkernel_samsung_smdk4412-c29e3ddfbd904f0b7cf600c04c4263c71c1f4830.zip
kernel_samsung_smdk4412-c29e3ddfbd904f0b7cf600c04c4263c71c1f4830.tar.gz
kernel_samsung_smdk4412-c29e3ddfbd904f0b7cf600c04c4263c71c1f4830.tar.bz2
crypto: sha512 - Avoid stack bloat on i386
commit 3a92d687c8015860a19213e3c102cad6b722f83c upstream. Unfortunately in reducing W from 80 to 16 we ended up unrolling the loop twice. As gcc has issues dealing with 64-bit ops on i386 this means that we end up using even more stack space (>1K). This patch solves the W reduction by moving LOAD_OP/BLEND_OP into the loop itself, thus avoiding the need to duplicate it. While the stack space still isn't great (>0.5K) it is at least in the same ball park as the amount of stack used for our C sha1 implementation. Note that this patch basically reverts to the original code so the diff looks bigger than it really is. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'crypto/aead.c')
0 files changed, 0 insertions, 0 deletions