diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2012-02-05 15:09:28 +1100 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2012-02-05 15:09:28 +1100 |
commit | 3a92d687c8015860a19213e3c102cad6b722f83c (patch) | |
tree | 9f133af75426149336883da050848c4024ef2928 /crypto/rmd160.c | |
parent | 58d7d18b5268febb8b1391c6dffc8e2aaa751fcd (diff) | |
download | blackbird-op-linux-3a92d687c8015860a19213e3c102cad6b722f83c.tar.gz blackbird-op-linux-3a92d687c8015860a19213e3c102cad6b722f83c.zip |
crypto: sha512 - Avoid stack bloat on i386
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.
Cc: stable@vger.kernel.org
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/rmd160.c')
0 files changed, 0 insertions, 0 deletions