crypto: powerpc/sha1 - assembler
authorMarkus Stockhausen <stockhausen@collogia.de>
Tue, 24 Feb 2015 19:36:40 +0000 (20:36 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 2 Mar 2015 10:22:19 +0000 (23:22 +1300)
commit20f1b1f1f3bd594e05941fe9c7f50faab43ddbbf
treeadba99c4879c7e01145aa3d21ee6be3774e2f16e
parent504c6143c53dfd140d42fe76d0faed1309c6d1b6
crypto: powerpc/sha1 - assembler

This is the assembler code for SHA1 implementation with
the SIMD SPE instruction set. With the enhanced instruction
set we can operate on 2 32 bit words in parallel. That helps
reducing the time to calculate W16-W79. For increasing
performance even more the assembler function can compute
hashes for more than one 64 byte input block.

The state of the used SPE registers is preserved via the
stack so we can run from interrupt context. There might
be the case that we interrupt ourselves and push sensitive
data from another context onto our stack. Clear this area
in the stack afterwards to avoid information leakage.

The code is endian independant.

Signed-off-by: Markus Stockhausen <stockhausen@collogia.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/powerpc/sha1-spe-asm.S [new file with mode: 0644]