The original issue with get_cpuid() came while trying to debug bug 99066 and has been forwarded to GCC (see URL above).
Apparently the current implementation of get_cpuid() is violating the red zone (see GCC bugreport) and hence does segfault on x32.
There are several suggestions on the GCC bug report to work around/fix the issue.
Great! Thanks a lot for filing the GCC bug. Using the __cpuid macro seems like the best solution. I'll make a patch.
The patch is now in master.