1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
Index: cputest.c
===================================================================
RCS file: adm_lavcodec/i386/cputest.c,v
retrieving revision 1.4
diff -u -r1.4 cputest.c
--- cputest.c 12 Oct 2004 18:28:41 -0000 1.4
+++ cputest.c 19 Oct 2004 17:48:07 -0000
@@ -27,29 +27,30 @@
{
int rval;
int eax, ebx, ecx, edx;
+ long a,c;
__asm__ __volatile__ (
/* See if CPUID instruction is supported ... */
/* ... Get copies of EFLAGS into eax and ecx */
"pushf\n\t"
"pop %0\n\t"
- "movl %0, %1\n\t"
+ "mov %0, %1\n\t"
/* ... Toggle the ID bit in one copy and store */
/* to the EFLAGS reg */
- "xorl $0x200000, %0\n\t"
+ "xor $0x200000, %0\n\t"
"push %0\n\t"
"popf\n\t"
/* ... Get the (hopefully modified) EFLAGS */
"pushf\n\t"
"pop %0\n\t"
- : "=a" (eax), "=c" (ecx)
+ : "=a" (a), "=c" (c)
:
: "cc"
);
- if (eax == ecx)
+ if (a == c)
return 0; /* CPUID not supported */
cpuid(0, eax, ebx, ecx, edx);
|