]> git.ipfire.org Git - thirdparty/openssl.git/blobdiff - crypto/bn/rsaz_exp.h
Dual 1024-bit exponentiation optimization for Intel IceLake CPU
[thirdparty/openssl.git] / crypto / bn / rsaz_exp.h
index c05a5d937e94692bb9cdc3dae8828480cd056d83..7d3a24b0d825b34b3fd1381885c28b1b12c24711 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Copyright 2013-2018 The OpenSSL Project Authors. All Rights Reserved.
- * Copyright (c) 2012, Intel Corporation. All Rights Reserved.
+ * Copyright 2013-2020 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright (c) 2020, Intel Corporation. All Rights Reserved.
  *
  * Licensed under the Apache License 2.0 (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -35,6 +35,23 @@ void RSAZ_512_mod_exp(BN_ULONG result[8],
                       const BN_ULONG m_norm[8], BN_ULONG k0,
                       const BN_ULONG RR[8]);
 
+
+int rsaz_avx512ifma_eligible(void);
+
+int RSAZ_mod_exp_avx512_x2(BN_ULONG *res1,
+                           const BN_ULONG *base1,
+                           const BN_ULONG *exponent1,
+                           const BN_ULONG *m1,
+                           const BN_ULONG *RR1,
+                           BN_ULONG k0_1,
+                           BN_ULONG *res2,
+                           const BN_ULONG *base2,
+                           const BN_ULONG *exponent2,
+                           const BN_ULONG *m2,
+                           const BN_ULONG *RR2,
+                           BN_ULONG k0_2,
+                           int factor_size);
+
 # endif
 
 #endif