summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authoranton <>2023-04-04 18:14:32 +0000
committeranton <>2023-04-04 18:14:32 +0000
commit4345f8303debe1136a051fff16c81a93dae95807 (patch)
treeec6198c7c88cfe78ab4e8fa0ffd37b8c7f73ce18 /src/lib
parenta842b1fc304364a2fcb5f261f0682291b3ff3dcc (diff)
downloadopenbsd-4345f8303debe1136a051fff16c81a93dae95807.tar.gz
openbsd-4345f8303debe1136a051fff16c81a93dae95807.tar.bz2
openbsd-4345f8303debe1136a051fff16c81a93dae95807.zip
A refactoring back in 2016 in which magic numbers where extracted into
named constants accidentally dropped an instruction causing detection of eXtended operations (XOP) on AMD hardware to break. ok miod@ tb@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libcrypto/x86_64cpuid.pl1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lib/libcrypto/x86_64cpuid.pl b/src/lib/libcrypto/x86_64cpuid.pl
index 2780b0f8ce..1b67d1110f 100644
--- a/src/lib/libcrypto/x86_64cpuid.pl
+++ b/src/lib/libcrypto/x86_64cpuid.pl
@@ -66,6 +66,7 @@ OPENSSL_ia32_cpuid:
66 mov %eax,%r10d 66 mov %eax,%r10d
67 mov \$0x80000001,%eax 67 mov \$0x80000001,%eax
68 cpuid 68 cpuid
69 or %ecx,%r9d
69 and \$IA32CAP_MASK1_AMD_XOP,%r9d # isolate AMD XOP bit 70 and \$IA32CAP_MASK1_AMD_XOP,%r9d # isolate AMD XOP bit
70 or \$1,%r9d # make sure %r9d is not zero 71 or \$1,%r9d # make sure %r9d is not zero
71 72