10 #ifndef HWLOC_PRIVATE_CPUID_H
11 #define HWLOC_PRIVATE_CPUID_H
13 #ifdef HWLOC_X86_32_ARCH
14 static __hwloc_inline
int hwloc_have_cpuid(
void)
27 "xor $0x00200000,%1\n\t" \
44 :
"=r" (ret),
"=&r" (tmp),
"=&r" (tmp2));
48 #ifdef HWLOC_X86_64_ARCH
49 static __hwloc_inline
int hwloc_have_cpuid(
void) {
return 1; }
52 static __hwloc_inline
void hwloc_cpuid(
unsigned *eax,
unsigned *ebx,
unsigned *ecx,
unsigned *edx)
54 #ifdef HWLOC_X86_64_ARCH
55 unsigned long sav_ebx;
58 #ifdef HWLOC_X86_32_ARCH
64 #ifdef HWLOC_X86_32_ARCH
71 :
"+a" (*eax),
"=r" (*ebx),
"=r"(sav_ebx),
"+c" (*ecx),
"=d" (*edx));