diff options
Diffstat (limited to 'util/inteltool/cpu.c')
-rw-r--r-- | util/inteltool/cpu.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/util/inteltool/cpu.c b/util/inteltool/cpu.c index bde93dee9d..c1972b77ea 100644 --- a/util/inteltool/cpu.c +++ b/util/inteltool/cpu.c @@ -32,6 +32,7 @@ unsigned int cpuid(unsigned int op) { unsigned int ret; unsigned int dummy2, dummy3, dummy4; +#if DARWIN asm volatile ( "pushl %%ebx \n" "cpuid \n" @@ -41,6 +42,14 @@ unsigned int cpuid(unsigned int op) : "a" (op) : "cc" ); +#else + asm volatile ( + "cpuid" + : "=a" (ret), "=b" (dummy2), "=c" (dummy3), "=d" (dummy4) + : "a" (op) + : "cc" + ); +#endif return ret; } |