Files
openssl/crypto
Jerry Shih da8b6308bd Use scalar ALU and vector ALU together for chacha20 stream cipher
Fixes #24070

Use scalar ALU for 1 chacha block with rvv ALU simultaneously.
The tail elements(non-multiple of block length) will be handled by
the scalar logic.

Use rvv path if the input length > chacha_block_size.

And we have about 1.2x improvement comparing with the original code.

Reviewed-by: Hongren Zheng <i@zenithal.me>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24097)
2024-04-17 16:55:03 +02:00
..
2023-09-07 09:59:15 +01:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2023-09-07 09:59:15 +01:00
2023-09-28 14:23:29 +01:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2024-04-09 13:43:26 +02:00
2023-09-28 14:23:29 +01:00
2024-04-09 13:43:26 +02:00
2024-04-15 10:29:14 +02:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-05-03 13:34:51 +01:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-01-12 20:10:21 +11:00
2023-09-28 14:23:29 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-05-03 13:34:51 +01:00
2022-05-03 13:34:51 +01:00
2023-09-07 09:59:15 +01:00
2024-04-09 13:43:26 +02:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-12-01 09:03:04 -05:00
2022-05-03 13:34:51 +01:00
2022-05-03 13:34:51 +01:00
2024-04-09 13:43:26 +02:00
2023-09-07 09:59:15 +01:00
2023-12-29 10:21:10 +01:00
2024-04-09 13:43:26 +02:00
2024-04-09 13:43:26 +02:00
2022-05-03 13:34:51 +01:00
2022-05-03 13:34:51 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2024-04-09 13:43:26 +02:00
2022-09-05 10:20:30 +10:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-05-03 13:34:51 +01:00
2024-04-09 13:43:27 +02:00
2024-04-04 08:34:17 +02:00
2024-04-09 13:43:26 +02:00
2023-09-07 09:59:15 +01:00
2023-09-11 10:15:30 +02:00
2023-09-07 09:59:15 +01:00