Changeset 5605 in vbox for trunk/src/VBox/VMM/PATM
- Timestamp:
- Nov 1, 2007 4:09:26 PM (17 years ago)
- Location:
- trunk/src/VBox/VMM/PATM
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/PATM/CSAMInternal.h
r5221 r5605 36 36 /** Scanned and approved by CSAM (tm). */ 37 37 /** NOTE: Must be identical to the one defined in PGMInternal.h!! */ 38 #define PGM_PTFLAGS_CSAM_VALIDATED BIT64(11)38 #define PGM_PTFLAGS_CSAM_VALIDATED RT_BIT_64(11) 39 39 #endif 40 40 -
trunk/src/VBox/VMM/PATM/PATMA.h
r5285 r5605 98 98 99 99 /** PATM_TEMP_RESTORE_FLAGS */ 100 #define PATM_RESTORE_EAX BIT(0)101 #define PATM_RESTORE_ECX BIT(1)102 #define PATM_RESTORE_EDI BIT(2)100 #define PATM_RESTORE_EAX RT_BIT(0) 101 #define PATM_RESTORE_ECX RT_BIT(1) 102 #define PATM_RESTORE_EDI RT_BIT(2) 103 103 104 104 typedef struct -
trunk/src/VBox/VMM/PATM/PATMA.mac
r5285 r5605 95 95 %define PATM_ACTION_MAGIC 0xABCD4321 96 96 97 %define PATM_RESTORE_EAX BIT(0)98 %define PATM_RESTORE_ECX BIT(1)99 %define PATM_RESTORE_EDI BIT(2)97 %define PATM_RESTORE_EAX RT_BIT(0) 98 %define PATM_RESTORE_ECX RT_BIT(1) 99 %define PATM_RESTORE_EDI RT_BIT(2) 100 100 101 101 -
trunk/src/VBox/VMM/PATM/PATMInternal.h
r4953 r5605 41 41 42 42 /* 43 * Internal patch type flags (starts at BIT(11))44 */ 45 46 #define PATMFL_CHECK_SIZE BIT64(11)47 #define PATMFL_FOUND_PATCHEND BIT64(12)48 #define PATMFL_SINGLE_INSTRUCTION BIT64(13)49 #define PATMFL_SYSENTER_XP BIT64(14)50 #define PATMFL_JUMP_CONFLICT BIT64(15)51 #define PATMFL_READ_ORIGINAL_BYTES BIT64(16) /** opcode might have already been patched */52 #define PATMFL_INT3_REPLACEMENT BIT64(17)53 #define PATMFL_SUPPORT_CALLS BIT64(18)54 #define PATMFL_SUPPORT_INDIRECT_CALLS BIT64(19)55 #define PATMFL_IDTHANDLER_WITHOUT_ENTRYPOINT BIT64(20) /** internal flag to avoid duplicate entrypoints */56 #define PATMFL_INHIBIT_IRQS BIT64(21) /** temporary internal flag */57 #define PATMFL_GENERATE_JUMPTOGUEST BIT64(22) /** temporary internal flag */58 #define PATMFL_RECOMPILE_NEXT BIT64(23) /** for recompilation of the next instruction */59 #define PATMFL_CODE_MONITORED BIT64(24) /** code pages of guest monitored for self-modifying code. */60 #define PATMFL_CALLABLE_AS_FUNCTION BIT64(25) /** cli and pushf blocks can be used as callable functions. */61 #define PATMFL_GLOBAL_FUNCTIONS BIT64(26) /** fake patch for global patm functions. */62 #define PATMFL_TRAMPOLINE BIT64(27) /** trampoline patch that clears PATM_INTERRUPTFLAG and jumps to patch destination */63 #define PATMFL_GENERATE_SETPIF BIT64(28) /** generate set PIF for the next instruction */64 #define PATMFL_INSTR_HINT BIT64(29) /** Generate patch, but don't activate it. */65 #define PATMFL_PATCHED_GUEST_CODE BIT64(30) /** Patched guest code. */66 #define PATMFL_MUST_INSTALL_PATCHJMP BIT64(31) /** Need to patch guest code in order to activate patch. */67 #define PATMFL_INT3_REPLACEMENT_BLOCK BIT64(32) /** int 3 replacement block */68 #define PATMFL_EXTERNAL_JUMP_INSIDE BIT64(33) /** A trampoline patch was created that jumps to an instruction in the patch block */43 * Internal patch type flags (starts at RT_BIT(11)) 44 */ 45 46 #define PATMFL_CHECK_SIZE RT_BIT_64(11) 47 #define PATMFL_FOUND_PATCHEND RT_BIT_64(12) 48 #define PATMFL_SINGLE_INSTRUCTION RT_BIT_64(13) 49 #define PATMFL_SYSENTER_XP RT_BIT_64(14) 50 #define PATMFL_JUMP_CONFLICT RT_BIT_64(15) 51 #define PATMFL_READ_ORIGINAL_BYTES RT_BIT_64(16) /** opcode might have already been patched */ 52 #define PATMFL_INT3_REPLACEMENT RT_BIT_64(17) 53 #define PATMFL_SUPPORT_CALLS RT_BIT_64(18) 54 #define PATMFL_SUPPORT_INDIRECT_CALLS RT_BIT_64(19) 55 #define PATMFL_IDTHANDLER_WITHOUT_ENTRYPOINT RT_BIT_64(20) /** internal flag to avoid duplicate entrypoints */ 56 #define PATMFL_INHIBIT_IRQS RT_BIT_64(21) /** temporary internal flag */ 57 #define PATMFL_GENERATE_JUMPTOGUEST RT_BIT_64(22) /** temporary internal flag */ 58 #define PATMFL_RECOMPILE_NEXT RT_BIT_64(23) /** for recompilation of the next instruction */ 59 #define PATMFL_CODE_MONITORED RT_BIT_64(24) /** code pages of guest monitored for self-modifying code. */ 60 #define PATMFL_CALLABLE_AS_FUNCTION RT_BIT_64(25) /** cli and pushf blocks can be used as callable functions. */ 61 #define PATMFL_GLOBAL_FUNCTIONS RT_BIT_64(26) /** fake patch for global patm functions. */ 62 #define PATMFL_TRAMPOLINE RT_BIT_64(27) /** trampoline patch that clears PATM_INTERRUPTFLAG and jumps to patch destination */ 63 #define PATMFL_GENERATE_SETPIF RT_BIT_64(28) /** generate set PIF for the next instruction */ 64 #define PATMFL_INSTR_HINT RT_BIT_64(29) /** Generate patch, but don't activate it. */ 65 #define PATMFL_PATCHED_GUEST_CODE RT_BIT_64(30) /** Patched guest code. */ 66 #define PATMFL_MUST_INSTALL_PATCHJMP RT_BIT_64(31) /** Need to patch guest code in order to activate patch. */ 67 #define PATMFL_INT3_REPLACEMENT_BLOCK RT_BIT_64(32) /** int 3 replacement block */ 68 #define PATMFL_EXTERNAL_JUMP_INSIDE RT_BIT_64(33) /** A trampoline patch was created that jumps to an instruction in the patch block */ 69 69 70 70 #define SIZEOF_NEARJUMP8 2 //opcode byte + 1 byte relative offset
Note:
See TracChangeset
for help on using the changeset viewer.