Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
1.1 KiB

  1. ; /*
  2. ;
  3. ; Copyright (c) 1997 Microsoft Corporation
  4. ;
  5. ; Module Name:
  6. ;
  7. ; fastsys.inc
  8. ;
  9. ; Abstract:
  10. ;
  11. ; This module implements the header for Fast System Calls for Intel
  12. ; x86 family processors.
  13. ;
  14. ; Author:
  15. ;
  16. ; Bryan M. Willman (bryanwi) 09-Jan-1998
  17. ;
  18. ; Environment:
  19. ;
  20. ; kernel mode.
  21. ;
  22. ; Revision History:
  23. ;
  24. ; Peter Johnston (peterj) 07-May-1998
  25. ; Add support for AMD implementation.
  26. ;
  27. ;--
  28. if 0 ; Begin C only code */
  29. // CPUID Feature bit in EDX indicating that fast system calls are supported
  30. #define KI_FAST_SYSCALL_SUPPORTED 0x0800
  31. #define MSR_SYSENTER_CS 0x00000174
  32. #define MSR_SYSENTER_ESP 0x00000175
  33. #define MSR_SYSENTER_EIP 0x00000176
  34. #define MSR_EXT_FEATURE_ENABLE 0xC0000080
  35. #define MSR_SYSCALL_TARGET_ADDR 0xC0000081
  36. //
  37. // Define bits in the Extended Feature Enable Register (EFER) (MSR).
  38. //
  39. #define MSR_EFER_SCE 0x1
  40. /*
  41. endif
  42. ;
  43. ; Begin Assembly definitions
  44. ;
  45. iSYSENTER macro
  46. db 0fH,34H
  47. endm ;; SYSENTER
  48. iSYSEXIT macro
  49. db 0fH,35H
  50. endm ;; SYSEXIT
  51. iSYSCALL macro
  52. db 0fH,05H
  53. endm ;; SYSCALL
  54. iSYSRET macro
  55. db 0fH,07H
  56. endm ;; SYSRET
  57. ; */