Commit 37de2b5c authored by Andy Polyakov's avatar Andy Polyakov
Browse files

bn/bn_exp.c: prefer MULX/AD*X over AVX2.

parent 2d752737
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -691,7 +691,8 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p,
	 * RSAZ exponentiation. For further information see
	 * crypto/bn/rsaz_exp.c and accompanying assembly modules.
	 */
	if ((16 == a->top) && (16 == p->top) && (BN_num_bits(m) == 1024)
	if (((OPENSSL_ia32cap_P[2]&0x80100) != 0x80100) /* check for MULX/AD*X */
	    && (16 == a->top) && (16 == p->top) && (BN_num_bits(m) == 1024)
	    && rsaz_avx2_eligible())
	    	{
		if (NULL == bn_wexpand(rr, 16)) goto err;