fix doc build fix autogen
[platform/upstream/gstreamer.git] / gst / gstcpuid_i386.s
1         .text
2 .globl gst_cpuid_i386
3         .type    gst_cpuid_i386,@function
4 gst_cpuid_i386:
5         pushl %ebp
6         movl %esp,%ebp
7         pushl %edi
8         pushl %ebx
9         pushl %ecx
10         pushl %edx
11         movl 8(%ebp),%eax
12         cpuid
13         movl 12(%ebp),%edi
14         test %edi,%edi
15         jz L1   
16         movl %eax,(%edi)
17 L1:     movl 16(%ebp),%edi
18         test %edi,%edi
19         jz L2
20         movl %ebx,(%edi)
21 L2:     movl 20(%ebp),%edi
22         test %edi,%edi
23         jz L3
24         movl %ecx,(%edi)
25 L3:     movl 24(%ebp),%edi
26         test %edi,%edi
27         jz L4
28         movl %edx,(%edi)
29 L4:     popl %edx
30         popl %ecx
31         popl %ebx
32         popl %edi
33         movl %ebp,%esp
34         popl %ebp
35         ret
36
37 / doesn't work in user mode (MSRs are privileged)
38 .globl siddisable
39 siddisable:
40         movl 0x119,%ecx
41         rdmsr
42         orl 0x200000,%eax
43         wrmsr
44         ret
45