Fix cpuid PIC ebx register clobbering on i386

cpuid on i386 PIC builds clobbers the ebx register which is used
as the PIC register for this specific arch. gcc will warn that
the ebx is used when building on Debian and this breaks the build.

Rather than using inline assembler, it is easier just to use the
gcc __cpuid macro as this handles the i386 PIC case by doing
a ebx register save/restore and fixes the debian build issue.

Signed-off-by: Colin Ian King <colin.king@canonical.com>