a83e4d7
diff -up openssl-1.0.2d/crypto/aes/asm/aesni-sha256-x86_64.pl.sigill openssl-1.0.2d/crypto/aes/asm/aesni-sha256-x86_64.pl
a83e4d7
--- openssl-1.0.2d/crypto/aes/asm/aesni-sha256-x86_64.pl.sigill	2015-07-09 16:51:25.000000000 +0200
a83e4d7
+++ openssl-1.0.2d/crypto/aes/asm/aesni-sha256-x86_64.pl	2015-11-16 17:43:52.554826505 +0100
a83e4d7
@@ -139,11 +139,8 @@ $code.=<<___ if ($avx>1);
a83e4d7
 	je	${func}_avx2
a83e4d7
 ___
a83e4d7
 $code.=<<___;
a83e4d7
-	and	\$`1<<30`,%eax			# mask "Intel CPU" bit
a83e4d7
-	and	\$`1<<28|1<<9`,%r10d		# mask AVX+SSSE3 bits
a83e4d7
-	or	%eax,%r10d
a83e4d7
-	cmp	\$`1<<28|1<<9|1<<30`,%r10d
a83e4d7
-	je	${func}_avx
a83e4d7
+	and	\$`1<<28`,%r10d			# check for AVX
a83e4d7
+	jnz	${func}_avx
a83e4d7
 	ud2
a83e4d7
 ___
a83e4d7
 						}