Lines 28-34
Link Here
|
28 |
{ |
28 |
{ |
29 |
int eax, ecx, edx; |
29 |
int eax, ecx, edx; |
30 |
|
30 |
|
31 |
__asm__("push %%ebx\n\tcpuid\n\tpop %%ebx" |
31 |
__asm__("push %%rbx\n\tcpuid\n\tpop %%rbx" |
32 |
: "=a" (eax), "=c" (ecx), "=d" (edx) |
32 |
: "=a" (eax), "=c" (ecx), "=d" (edx) |
33 |
: "a" (op)); |
33 |
: "a" (op)); |
34 |
return edx; |
34 |
return edx; |
Lines 38-44
Link Here
|
38 |
{ |
38 |
{ |
39 |
int eax, ecx, edx; |
39 |
int eax, ecx, edx; |
40 |
|
40 |
|
41 |
__asm__("push %%ebx\n\tcpuid\n\tpop %%ebx" |
41 |
__asm__("push %%rbx\n\tcpuid\n\tpop %%rbx" |
42 |
: "=a" (eax), "=c" (ecx), "=d" (edx) |
42 |
: "=a" (eax), "=c" (ecx), "=d" (edx) |
43 |
: "a" (op)); |
43 |
: "a" (op)); |
44 |
return eax; |
44 |
return eax; |