cpuid_s.S revision c4fe430c41766b18dae84cea8bc8f9b8b01e378c
1#include "tests/asm.h"
2
3	.file	"oneparam.c"
4#if defined(VGO_linux)
5	.version	"01.01"
6#endif
7gcc2_compiled.:
8.text
9	.align 4
10
11.globl VG_SYM_ASM(get_cpuid0)
12VG_SYM_ASM(get_cpuid0):
13	pushl	%ebp
14	movl	%esp, %ebp
15	movl	8(%ebp), %eax
16
17	pushl	%edi
18	pushl	%eax
19	pushl	%ebx
20	pushl	%ecx
21	pushl	%edx
22
23	movl	%eax, %edi
24	movl	$0, %eax
25	cpuid
26	movl	%eax, (%edi)
27	movl	%ebx, 4(%edi)
28	movl	%ecx, 8(%edi)
29	movl	%edx, 12(%edi)
30
31	popl	%edx
32	popl	%ecx
33	popl	%ebx
34	popl	%eax
35	popl	%edi
36
37	popl	%ebp
38	ret
39
40
41.globl VG_SYM_ASM(get_cpuid1)
42VG_SYM_ASM(get_cpuid1):
43	pushl	%ebp
44	movl	%esp, %ebp
45	movl	8(%ebp), %eax
46
47	pushl	%edi
48	pushl	%eax
49	pushl	%ebx
50	pushl	%ecx
51	pushl	%edx
52
53	movl	%eax, %edi
54	movl	$1, %eax
55	cpuid
56	movl	%eax, (%edi)
57	movl	%ebx, 4(%edi)
58	movl	%ecx, 8(%edi)
59	movl	%edx, 12(%edi)
60
61	popl	%edx
62	popl	%ecx
63	popl	%ebx
64	popl	%eax
65	popl	%edi
66
67	popl	%ebp
68	ret
69
70
71
72
73	.ident	"GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.1 2.96-98)"
74