Index: kernel/arch/ia32/src/boot/boot.S
===================================================================
--- kernel/arch/ia32/src/boot/boot.S	(revision eada065ed94f5f5b588f03c3685cfed92a7987e8)
+++ kernel/arch/ia32/src/boot/boot.S	(revision 58d5a7e7f52a72c963da8a40b5a38494bd631044)
@@ -32,4 +32,5 @@
 #include <arch/mm/page.h>
 #include <arch/pm.h>
+#include <arch/cpuid.h>
 
 #define START_STACK (BOOT_OFFSET - BOOT_STACK_SIZE)
@@ -68,11 +69,12 @@
 	movl %ebx, grub_ebx
 	
-	xorl %eax, %eax
+	movl $(INTEL_CPUID_LEVEL), %eax
 	cpuid
 	cmp $0x0, %eax              # any function > 0?
 	jbe pse_unsupported
-	movl $0x1, %eax             # basic function code 1
+	
+	movl $(INTEL_CPUID_STANDARD), %eax
 	cpuid
-	bt $3, %edx                 # test if PSE is supported
+	bt $(INTEL_PSE), %edx
 	jc pse_supported
 	
@@ -82,4 +84,12 @@
 	
 	pse_supported:
+	
+	bt $(INTEL_SEP), %edx
+	jc sep_supported
+	
+		movl $sep_msg, %esi
+		jmp error_halt
+	
+	sep_supported:
 
 #include "vesa_prot.inc"
@@ -214,2 +224,5 @@
 pse_msg:
 	.asciz "Page Size Extension not supported. System halted."
+
+sep_msg:
+	.asciz "SYSENTER/SYSEXIT not supported. System halted."
