cpu.x86.features: ( int alien-assembly ) c-bool> ==> ( bool alien-assembly )

db4
Joe Groff 2010-05-15 14:33:19 -07:00
parent 009408dd11
commit 3956dd1516
1 changed files with 8 additions and 10 deletions

View File

@ -69,15 +69,6 @@ IN: cpu.x86.features
"end" resolve-label "end" resolve-label
] alien-assembly ; ] alien-assembly ;
: (popcnt?) ( -- n )
int { } cdecl [
int-regs return-reg 1 MOV
CPUID
ECX 23 BT
int-regs return-reg dup XOR
int-regs return-reg SETB
] alien-assembly ;
PRIVATE> PRIVATE>
MEMO: sse-version ( -- n ) MEMO: sse-version ( -- n )
@ -92,7 +83,14 @@ MEMO: sse-version ( -- n )
: sse4.1? ( -- ? ) sse-version 41 >= ; : sse4.1? ( -- ? ) sse-version 41 >= ;
: sse4.2? ( -- ? ) sse-version 42 >= ; : sse4.2? ( -- ? ) sse-version 42 >= ;
: popcnt? ( -- ? ) (popcnt?) c-bool> ; : popcnt? ( -- ? )
bool { } cdecl [
int-regs return-reg 1 MOV
CPUID
ECX 23 BT
int-regs return-reg dup XOR
int-regs return-reg SETB
] alien-assembly ;
: sse-string ( version -- string ) : sse-string ( version -- string )
{ {