Leaked source code of windows server 2003
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.

107 lines
2.5 KiB

  1. /*++
  2. Copyright (c) 1995 Microsoft Corporation
  3. Module Name:
  4. fragmisc.h
  5. Abstract:
  6. Prototypes for misc. instruction fragments.
  7. Author:
  8. 12-Jun-1995 BarryBo, Created
  9. Revision History:
  10. --*/
  11. FRAG0(CbwFrag16);
  12. FRAG0(CbwFrag32);
  13. FRAG0(PushEsFrag);
  14. FRAG0(PopEsFrag);
  15. FRAG0(PushFsFrag);
  16. FRAG0(PopFsFrag);
  17. FRAG0(PushGsFrag);
  18. FRAG0(PopGsFrag);
  19. FRAG0(PushCsFrag);
  20. FRAG0(AasFrag);
  21. FRAG0(PushSsFrag);
  22. FRAG0(PopSsFrag);
  23. FRAG0(PushDsFrag);
  24. FRAG0(PopDsFrag);
  25. FRAG0(DaaFrag);
  26. FRAG0(DasFrag);
  27. FRAG0(AaaFrag);
  28. FRAG1IMM(AadFrag, BYTE);
  29. FRAG2(ImulFrag16, USHORT);
  30. FRAG2(ImulFrag16A, USHORT);
  31. FRAG3(Imul3ArgFrag16, USHORT, USHORT, USHORT);
  32. FRAG3(Imul3ArgFrag16A, USHORT, USHORT, USHORT);
  33. FRAG2(ImulNoFlagsFrag16, USHORT);
  34. FRAG2(ImulNoFlagsFrag16A, USHORT);
  35. FRAG3(Imul3ArgNoFlagsFrag16, USHORT, USHORT, USHORT);
  36. FRAG3(Imul3ArgNoFlagsFrag16A, USHORT, USHORT, USHORT);
  37. FRAG2(ImulFrag32, DWORD);
  38. FRAG2(ImulFrag32A, DWORD);
  39. FRAG3(Imul3ArgFrag32, DWORD, DWORD, DWORD);
  40. FRAG3(Imul3ArgFrag32A, DWORD, DWORD, DWORD);
  41. FRAG2(ImulNoFlagsFrag32, DWORD);
  42. FRAG2(ImulNoFlagsFrag32A, DWORD);
  43. FRAG3(Imul3ArgNoFlagsFrag32, DWORD, DWORD, DWORD);
  44. FRAG3(Imul3ArgNoFlagsFrag32A, DWORD, DWORD, DWORD);
  45. FRAG0(SahfFrag);
  46. FRAG0(LahfFrag);
  47. FRAG1IMM(AamFrag, BYTE);
  48. FRAG0(XlatFrag);
  49. FRAG0(CmcFrag);
  50. FRAG0(ClcFrag);
  51. FRAG0(StcFrag);
  52. FRAG0(CldFrag);
  53. FRAG0(StdFrag);
  54. FRAG1(SetoFrag, BYTE);
  55. FRAG1(SetnoFrag, BYTE);
  56. FRAG1(SetbFrag, BYTE);
  57. FRAG1(SetaeFrag, BYTE);
  58. FRAG1(SeteFrag, BYTE);
  59. FRAG1(SetneFrag, BYTE);
  60. FRAG1(SetbeFrag, BYTE);
  61. FRAG1(SetaFrag, BYTE);
  62. FRAG1(SetsFrag, BYTE);
  63. FRAG1(SetnsFrag, BYTE);
  64. FRAG1(SetpFrag, BYTE);
  65. FRAG1(SetnpFrag, BYTE);
  66. FRAG1(SetlFrag, BYTE);
  67. FRAG1(SetgeFrag, BYTE);
  68. FRAG1(SetleFrag, BYTE);
  69. FRAG1(SetgFrag, BYTE);
  70. FRAG2(Movzx8ToFrag16, USHORT);
  71. FRAG2(Movzx8ToFrag16A, USHORT);
  72. FRAG2(Movsx8ToFrag16, USHORT);
  73. FRAG2(Movsx8ToFrag16A, USHORT);
  74. FRAG2(Movzx8ToFrag32, DWORD);
  75. FRAG2(Movzx8ToFrag32A, DWORD);
  76. FRAG2(Movsx8ToFrag32, DWORD);
  77. FRAG2(Movsx8ToFrag32A, DWORD);
  78. FRAG2(Movzx16ToFrag32, DWORD);
  79. FRAG2(Movzx16ToFrag32A, DWORD);
  80. FRAG2(Movsx16ToFrag32, DWORD);
  81. FRAG2(Movsx16ToFrag32A, DWORD);
  82. FRAG1(BswapFrag32, DWORD);
  83. FRAG2(ArplFrag, USHORT);
  84. FRAG1(VerrFrag, USHORT);
  85. FRAG1(VerwFrag, USHORT);
  86. FRAG1(SmswFrag, USHORT);
  87. FRAG2REF(CmpXchg8bFrag32, ULONGLONG);
  88. #if MSCPU
  89. FRAG0(IntFrag);
  90. FRAG0(IntOFrag);
  91. FRAG0(NopFrag);
  92. FRAG0(PrivilegedInstructionFrag);
  93. FRAG0(BadInstructionFrag);
  94. FRAG2(FaultFrag, DWORD);
  95. FRAG0(CPUID);
  96. #endif //MSCPU
  97. FRAG0(Rdtsc);