+# enable NXE if supported\r
+ .byte 0xb0 # mov al, imm8\r
+ASM_PFX(mXdSupported): .byte 1\r
+ cmpb $0, %al\r
+ jz SkipNxe\r
+#\r
+# Check XD disable bit\r
+#\r
+ movl $MSR_IA32_MISC_ENABLE, %ecx\r
+ rdmsr\r
+ subl $4, %esp\r
+ pushq %rdx # save MSR_IA32_MISC_ENABLE[63-32]\r
+ testl $BIT2, %edx # MSR_IA32_MISC_ENABLE[34]\r
+ jz L13\r
+ andw $0x0FFFB, %dx # clear XD Disable bit if it is set\r
+ wrmsr\r
+L13:\r
+ movl $MSR_EFER, %ecx\r
+ rdmsr\r
+ orw $MSR_EFER_XD,%ax # enable NXE\r
+ wrmsr\r
+ jmp NxeDone\r
+SkipNxe:\r
+ subl $8, %esp\r
+NxeDone:\r
+\r