All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] lib/crypto: x86/sha512: Partially roll up loops
@ 2026-11-12  8:28 Eric Biggers
  2026-11-12  8:28 ` [PATCH 1/2] lib/crypto: x86/sha512: Partially roll up sha512_transform_avx() Eric Biggers
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Eric Biggers @ 2026-11-12  8:28 UTC (permalink / raw)
  To: linux-crypto
  Cc: Ard Biesheuvel, Jason A . Donenfeld, Herbert Xu, x86,
	Eric Biggers

Some freshly baked loop rolls in the SSSE3 and AVX optimized SHA-512
code.

In each file, SHA-512 rounds 14 through 77 are rolled up into 8 groups
of 8 rounds.  This saves 20.2 KB of text.  It's also likely to increase
performance on the CPUs that actually run this code (i.e., CPUs without
AVX2), due to the improved use of the cache, though the oldest I was
able to confirm that on is Haswell which has AVX2 anyway.

Eric Biggers (2):
  lib/crypto: x86/sha512: Partially roll up sha512_transform_avx()
  lib/crypto: x86/sha512: Partially roll up sha512_transform_ssse3()

 lib/crypto/x86/sha512-avx-asm.S   | 124 +++++++++++++++--------------
 lib/crypto/x86/sha512-ssse3-asm.S | 126 ++++++++++++++++--------------
 2 files changed, 135 insertions(+), 115 deletions(-)


base-commit: 33b4f31b1aea3f62b61c892daefc0e6a77859032
-- 
2.56.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-11-14  4:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-12  8:28 [PATCH 0/2] lib/crypto: x86/sha512: Partially roll up loops Eric Biggers
2026-11-12  8:28 ` [PATCH 1/2] lib/crypto: x86/sha512: Partially roll up sha512_transform_avx() Eric Biggers
2026-11-13  8:33   ` Ard Biesheuvel
2026-11-12  8:28 ` [PATCH 2/2] lib/crypto: x86/sha512: Partially roll up sha512_transform_ssse3() Eric Biggers
2026-11-13  8:34   ` Ard Biesheuvel
2026-11-14  4:25 ` [PATCH 0/2] lib/crypto: x86/sha512: Partially roll up loops Eric Biggers

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.