mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
crypto: x86/sha256-ni - simplify do_4rounds
Instead of loading the message words into both MSG and \m0 and then adding the round constants to MSG, load the message words into \m0 and the round constants into MSG and then add \m0 to MSG. This shortens the source code slightly. It changes the instructions slightly, but it doesn't affect binary code size and doesn't seem to affect performance. Suggested-by: Stefan Kanthak <stefan.kanthak@nexgo.de> Signed-off-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
59e62b20ac
commit
7daba20cc7
@ -78,13 +78,11 @@
|
||||
|
||||
.macro do_4rounds i, m0, m1, m2, m3
|
||||
.if \i < 16
|
||||
movdqu \i*4(DATA_PTR), MSG
|
||||
pshufb SHUF_MASK, MSG
|
||||
movdqa MSG, \m0
|
||||
.else
|
||||
movdqa \m0, MSG
|
||||
movdqu \i*4(DATA_PTR), \m0
|
||||
pshufb SHUF_MASK, \m0
|
||||
.endif
|
||||
paddd (\i-32)*4(SHA256CONSTANTS), MSG
|
||||
movdqa (\i-32)*4(SHA256CONSTANTS), MSG
|
||||
paddd \m0, MSG
|
||||
sha256rnds2 STATE0, STATE1
|
||||
.if \i >= 12 && \i < 60
|
||||
movdqa \m0, TMP
|
||||
|
Loading…
Reference in New Issue
Block a user