diff options
author | Andy Polyakov <appro@openssl.org> | 2007-05-19 17:52:51 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2007-05-19 17:52:51 +0000 |
commit | b1e8b4e65d7a17e3c4c9293143a9535c51bb56c3 (patch) | |
tree | adfd2ca7d2d2ab5e8718110eb76115911e0feebb | |
parent | c6149e2f02dde61b6fd16c6ec9962f65d7eb37d8 (diff) |
x86cpuid fixes.
PR: 1526
-rw-r--r-- | crypto/perlasm/x86unix.pl | 1 | ||||
-rw-r--r-- | crypto/x86cpuid.pl | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/crypto/perlasm/x86unix.pl b/crypto/perlasm/x86unix.pl index e3f24f860b..2b9e96c8db 100644 --- a/crypto/perlasm/x86unix.pl +++ b/crypto/perlasm/x86unix.pl @@ -51,6 +51,7 @@ sub ::generic if ($#_==0) { &::emit($opcode); } elsif ($opcode =~ m/^j/o && $#_==1) { &::emit($opcode,@arg); } elsif ($opcode eq "call" && $#_==1) { &::emit($opcode,@arg); } + elsif ($opcode =~ m/^set/&& $#_==1) { &::emit($opcode,@arg); } else { &::emit($opcode.$suffix,@arg);} 1; diff --git a/crypto/x86cpuid.pl b/crypto/x86cpuid.pl index 13828d5633..ce9b8ea4dd 100644 --- a/crypto/x86cpuid.pl +++ b/crypto/x86cpuid.pl @@ -43,7 +43,7 @@ for (@ARGV) { $sse2=1 if (/-DOPENSSL_IA32_SSE2/); } &shr ("ebx",16); &cmp (&LB("ebx"),1); # see if cache is shared(*) &ja (&label("nocpuid")); - &and ("edx",~(1<<28)); # clear hyper-threading bit if not + &and ("edx",0xefffffff); # clear hyper-threading bit if not &set_label("nocpuid"); &mov ("eax","edx"); &mov ("edx","ecx"); |