blob: 45b81b090f1c6515657b61f78a62b930ee31c489 (
plain)
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
|
SECTION .text
%macro PROC 1
align 16
global %1
%1:
%endmacro
;int
;cpuid_x86(int eax_in, int ecx_in, int *eax, int *ebx, int *ecx, int *edx)
PROC cpuid_x86
; save registers
push ebx
push ecx
push edx
; cpuid
mov eax, [esp + 16]
mov ecx, [esp + 20]
cpuid
mov [esp + 24], eax
mov [esp + 28], ebx
mov [esp + 32], ecx
mov [esp + 36], edx
mov eax, 0
; restore registers
pop edx
pop ecx
pop ebx
ret;
align 16
|