Changeset 36760 in vbox for trunk/include/VBox/x86.h
- Timestamp:
- Apr 20, 2011 4:51:05 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/x86.h
r36642 r36760 2188 2188 /** 32 bit unsigned integer view. */ 2189 2189 uint32_t au32[2]; 2190 /** 64 bit unsigned integer view. */ 2191 uint64_t au64[1]; 2192 /** Unsigned integer view. */ 2193 uint64_t u; 2190 2194 } X86DESC; 2191 2195 AssertCompileSize(X86DESC, 8); … … 2868 2872 #pragma pack() 2869 2873 2874 2875 /** @name ModR/M 2876 * @{ */ 2877 #define X86_MODRM_RM_MASK UINT8_C(0x07) 2878 #define X86_MODRM_REG_MASK UINT8_C(0x38) 2879 #define X86_MODRM_REG_SMASK UINT8_C(0x07) 2880 #define X86_MODRM_REG_SHIFT 3 2881 #define X86_MODRM_MOD_MASK UINT8_C(0xc0) 2882 #define X86_MODRM_MOD_SMASK UINT8_C(0x03) 2883 #define X86_MODRM_MOD_SHIFT 6 2884 AssertCompile((X86_MODRM_RM_MASK | X86_MODRM_REG_MASK | X86_MODRM_MOD_MASK) == 0xff); 2885 AssertCompile((X86_MODRM_REG_MASK >> X86_MODRM_REG_SHIFT) == X86_MODRM_REG_SMASK); 2886 AssertCompile((X86_MODRM_MOD_MASK >> X86_MODRM_MOD_SHIFT) == X86_MODRM_MOD_SMASK); 2887 /** @} */ 2888 2889 /** @name SIB 2890 * @{ */ 2891 #define X86_SIB_BASE_MASK UINT8_C(0x07) 2892 #define X86_SIB_INDEX_MASK UINT8_C(0x38) 2893 #define X86_SIB_INDEX_SMASK UINT8_C(0x07) 2894 #define X86_SIB_INDEX_SHIFT 3 2895 #define X86_SIB_SCALE_MASK UINT8_C(0xc0) 2896 #define X86_SIB_SCALE_SMASK UINT8_C(0x03) 2897 #define X86_SIB_SCALE_SHIFT 6 2898 AssertCompile((X86_SIB_BASE_MASK | X86_SIB_INDEX_MASK | X86_SIB_SCALE_MASK) == 0xff); 2899 AssertCompile((X86_SIB_INDEX_MASK >> X86_SIB_INDEX_SHIFT) == X86_SIB_INDEX_SMASK); 2900 AssertCompile((X86_SIB_SCALE_MASK >> X86_SIB_SCALE_SHIFT) == X86_SIB_SCALE_SMASK); 2901 /** @} */ 2902 2903 /** @name General register indexes 2904 * @{ */ 2905 #define X86_GREG_xAX 0 2906 #define X86_GREG_xCX 1 2907 #define X86_GREG_xDX 2 2908 #define X86_GREG_xBX 3 2909 #define X86_GREG_xSP 4 2910 #define X86_GREG_xBP 5 2911 #define X86_GREG_xSI 6 2912 #define X86_GREG_xDI 7 2913 #define X86_GREG_x8 8 2914 #define X86_GREG_x9 9 2915 #define X86_GREG_x10 10 2916 #define X86_GREG_x11 11 2917 #define X86_GREG_x12 12 2918 #define X86_GREG_x13 13 2919 #define X86_GREG_x14 14 2920 #define X86_GREG_x15 15 2921 /** @} */ 2922 2923 /** @name X86_SREG_XXX - Segment register indexes. 2924 * @{ */ 2925 #define X86_SREG_ES 0 2926 #define X86_SREG_CS 1 2927 #define X86_SREG_SS 2 2928 #define X86_SREG_DS 3 2929 #define X86_SREG_FS 4 2930 #define X86_SREG_GS 5 2931 /** @} */ 2932 2933 2870 2934 /** @} */ 2871 2935
Note:
See TracChangeset
for help on using the changeset viewer.