diff options
author | Andy Polyakov <appro@openssl.org> | 2012-02-28 14:20:21 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2012-02-28 14:20:21 +0000 |
commit | 0f2ece872d6603cda01ed5c0e333b41d28f8c67f (patch) | |
tree | 4497af0fe8ddd9f121f44b7ea5f9e563d81b10da /crypto/x86cpuid.pl | |
parent | 68a7b5ae1ed1d00df3df9d903f751d2c5abad985 (diff) | |
download | openssl-0f2ece872d6603cda01ed5c0e333b41d28f8c67f.zip openssl-0f2ece872d6603cda01ed5c0e333b41d28f8c67f.tar.gz openssl-0f2ece872d6603cda01ed5c0e333b41d28f8c67f.tar.bz2 |
x86cpuid.pl: fix processor capability detection on pre-586.
Diffstat (limited to 'crypto/x86cpuid.pl')
-rw-r--r-- | crypto/x86cpuid.pl | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/crypto/x86cpuid.pl b/crypto/x86cpuid.pl index e8eaef7..a1285b9 100644 --- a/crypto/x86cpuid.pl +++ b/crypto/x86cpuid.pl @@ -19,9 +19,9 @@ for (@ARGV) { $sse2=1 if (/-DOPENSSL_IA32_SSE2/); } &pushf (); &pop ("eax"); &xor ("ecx","eax"); - &bt ("ecx",21); - &jnc (&label("generic")); &xor ("eax","eax"); + &bt ("ecx",21); + &jnc (&label("nocpuid")); &cpuid (); &mov ("edi","eax"); # max value for standard query level @@ -136,6 +136,7 @@ for (@ARGV) { $sse2=1 if (/-DOPENSSL_IA32_SSE2/); } &set_label("done"); &mov ("eax","esi"); &mov ("edx","ebp"); +&set_label("nocpuid"); &function_end("OPENSSL_ia32_cpuid"); &external_label("OPENSSL_ia32cap_P"); |