x86cpuid fixes.

PR: 1526
This commit is contained in:
Andy Polyakov 2007-05-19 17:52:51 +00:00
parent c6149e2f02
commit b1e8b4e65d
2 changed files with 2 additions and 1 deletions

View file

@ -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;

View file

@ -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");