summaryrefslogtreecommitdiffstats
path: root/arch/x86/cpuinfo/CpuidCheck.s
diff options
context:
space:
mode:
authorAlexey Gavrilov <rebovas@yahoo.com>2024-02-22 15:21:36 +0700
committerAlexey Gavrilov <rebovas@yahoo.com>2024-02-22 15:21:36 +0700
commit976575c12b5da66996a3204ec711e4937a3ef240 (patch)
tree3172b43bf6c8dc67dd4d286a1246f47fbe0e7610 /arch/x86/cpuinfo/CpuidCheck.s
parent70aae8bb9ecd19ee197145771643d5fc1a45117d (diff)
Some updates
Diffstat (limited to 'arch/x86/cpuinfo/CpuidCheck.s')
-rw-r--r--arch/x86/cpuinfo/CpuidCheck.s21
1 files changed, 21 insertions, 0 deletions
diff --git a/arch/x86/cpuinfo/CpuidCheck.s b/arch/x86/cpuinfo/CpuidCheck.s
new file mode 100644
index 0000000..67bc9eb
--- /dev/null
+++ b/arch/x86/cpuinfo/CpuidCheck.s
@@ -0,0 +1,21 @@
+global CPUIDCHK:function
+CPUIDCHK:
+ push ebx
+ pushfd
+ pop eax
+ mov ebx, eax
+ xor eax, 0x200000
+ push eax
+ popfd
+ pushfd
+ pop eax
+ xor eax, ebx
+ je nocpuid
+ mov eax, 1
+ jmp restore
+nocpuid:
+ mov eax, 0
+restore:
+ pop ebx
+ ret
+.endchk: