From c781eb1c63c243cb64dbe3066a43dc172aaab3b8 Mon Sep 17 00:00:00 2001 From: Andrey Matyukov Date: Tue, 8 Dec 2020 22:53:39 +0300 Subject: Dual 1024-bit exponentiation optimization for Intel IceLake CPU with AVX512_IFMA + AVX512_VL instructions, primarily for RSA CRT private key operations. It uses 256-bit registers to avoid CPU frequency scaling issues. The performance speedup for RSA2k signature on ICL is ~2x. Reviewed-by: Paul Dale Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/13750) --- util/libcrypto.num | 1 + util/missingcrypto.txt | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) (limited to 'util') diff --git a/util/libcrypto.num b/util/libcrypto.num index 3fd2e665f2..523971f1f4 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -5313,6 +5313,7 @@ EVP_RAND_CTX_gettable_params ? 3_0_0 EXIST::FUNCTION: EVP_RAND_CTX_settable_params ? 3_0_0 EXIST::FUNCTION: RAND_set_DRBG_type ? 3_0_0 EXIST::FUNCTION: RAND_set_seed_source_type ? 3_0_0 EXIST::FUNCTION: +BN_mod_exp_mont_consttime_x2 ? 3_0_0 EXIST::FUNCTION: BIO_f_readbuffer ? 3_0_0 EXIST::FUNCTION: EVP_DigestInit_ex2 ? 3_0_0 EXIST::FUNCTION: EVP_EncryptInit_ex2 ? 3_0_0 EXIST::FUNCTION: diff --git a/util/missingcrypto.txt b/util/missingcrypto.txt index d062ff03c0..bb1f775977 100644 --- a/util/missingcrypto.txt +++ b/util/missingcrypto.txt @@ -261,8 +261,6 @@ BN_is_negative(3) BN_kronecker(3) BN_mod_add_quick(3) BN_mod_exp2_mont(3) -BN_mod_exp_mont(3) -BN_mod_exp_mont_consttime(3) BN_mod_exp_mont_word(3) BN_mod_exp_recp(3) BN_mod_exp_simple(3) -- cgit v1.2.1