Source
--- IlmImf/ImfSystemSpecific.cpp.orig 2014-08-09 21:23:57.000000000 -0700
+++ IlmImf/ImfSystemSpecific.cpp 2016-05-24 05:49:44.000000000 -0700
void cpuid(int n, int &eax, int &ebx, int &ecx, int &edx)
{
__asm__ __volatile__ (
- "cpuid"
- : /* Output */ "=a"(eax), "=b"(ebx), "=c"(ecx), "=d"(edx)
+ "mov %%ebx, %%edi\n"
+ "cpuid\n"
+ "xchg %%edi, %%ebx"
+ : /* Output */ "=a"(eax), "=D"(ebx), "=c"(ecx), "=d"(edx)
: /* Input */ "a"(n)
: /* Clobber */);
}