diff options
| author | Eric Biggers <ebiggers@kernel.org> | 2026-09-27 15:42:54 -0700 |
|---|---|---|
| committer | Eric Biggers <ebiggers@kernel.org> | 2026-09-30 09:42:09 -0700 |
| commit | 7a0c7b6afeeba25195f101849345b17dbe0a3ead (patch) | |
| tree | 8dac04789e77ae46658b3fcf35aa8332df0cbb14 /tools/perf/scripts/python/stackcollapse.py | |
| parent | 4a6b1a175a0b866af58801c9c1541a2367feae64 (diff) | |
| download | linux-7a0c7b6afeeba25195f101849345b17dbe0a3ead.tar.gz linux-7a0c7b6afeeba25195f101849345b17dbe0a3ead.zip | |
lib/crypto: x86/aes: Clean up aes-aesni.S in preparation for AES modes
Various miscellaneous updates to the assembly code in preparation for
adding implementations of AES modes to the same file:
- Define macros for the function argument registers, function prologues,
and function epilogues to centralize some of the handling of 32-bit vs
64-bit.
- Refactor the actual AES encryption and AES decryption logic into
macros _do_aes and _do_aes_ecb so that some of the modes can reuse it.
- Rename mask to expandkey_mask to differentiate it from the bswap_mask
that will be added.
- Update the prototypes of aes_encrypt_aesni() and aes_decrypt_aesni()
to be dst, src, key so that they will match the mode functions.
Note that this means passing a pointer to the key struct instead of a
(nrounds, rndkeys) pair, similar to what arch/x86/crypto/aes*.S do.
Although this makes the assembly code depend on the format of the key
struct, having one fewer argument makes it easier to accommodate
32-bit mode, and the C glue code becomes slightly simpler.
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://patch.msgid.link/20260927224418.109759-4-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions
