i386 -fPIC requires `%ebx`
Summary:On i368 (until, I'm lead to believe i686) `%ebx` is used for the PIC register. Thus, when we use cpuid, we clobber that register and gcc loudly complains: folly/CpuId.h: In member function 'virtual void CpuId_Simple_Test::TestBody()': folly/CpuId.h:67:61: error: PIC register clobbered by 'ebx' in 'asm' __asm__("cpuid" : "=a"(n) : "a"(0) : "ebx", "edx", "ecx"); Reviewed By: yfeldblum Differential Revision: D2991229 fb-gh-sync-id: ee8795e36a4c173147d61e26c9590ec5da1d02b5 shipit-source-id: ee8795e36a4c173147d61e26c9590ec5da1d02b5
Showing
Please register or sign in to comment