VirtualBox

Changeset 44375 in vbox for trunk/include/VBox/vmm/em.h


Ignore:
Timestamp:
Jan 25, 2013 12:41:24 PM (12 years ago)
Author:
vboxsync
Message:

EM: pVM -> pUVM for main, mark as many as possible interfaces module internal.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/em.h

    r44373 r44375  
    9595} EMCODETYPE;
    9696
    97 VMMDECL(EMSTATE) EMGetState(PVMCPU pVCpu);
    98 VMMDECL(void)    EMSetState(PVMCPU pVCpu, EMSTATE enmNewState);
     97VMM_INT_DECL(EMSTATE)          EMGetState(PVMCPU pVCpu);
     98VMM_INT_DECL(void)              EMSetState(PVMCPU pVCpu, EMSTATE enmNewState);
    9999
    100100/** @name Callback handlers for instruction emulation functions.
     
    152152#define EMIsSupervisorCodeRecompiled(pVM) ((pVM)->fRecompileSupervisor)
    153153
    154 VMMDECL(void)           EMSetInhibitInterruptsPC(PVMCPU pVCpu, RTGCUINTPTR PC);
    155 VMMDECL(RTGCUINTPTR)    EMGetInhibitInterruptsPC(PVMCPU pVCpu);
    156 VMMDECL(int)            EMInterpretDisasCurrent(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pCpu, unsigned *pcbInstr);
    157 VMMDECL(int)            EMInterpretDisasOneEx(PVM pVM, PVMCPU pVCpu, RTGCUINTPTR GCPtrInstr, PCCPUMCTXCORE pCtxCore,
    158                                               PDISCPUSTATE pDISState, unsigned *pcbInstr);
    159 VMMDECL(VBOXSTRICTRC)   EMInterpretInstruction(PVMCPU pVCpu, PCPUMCTXCORE pCoreCtx, RTGCPTR pvFault);
    160 VMMDECL(VBOXSTRICTRC)   EMInterpretInstructionEx(PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbWritten);
    161 VMMDECL(VBOXSTRICTRC)   EMInterpretInstructionDisasState(PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pCoreCtx, RTGCPTR pvFault, EMCODETYPE enmCodeType);
     154VMMDECL(void)                   EMSetInhibitInterruptsPC(PVMCPU pVCpu, RTGCUINTPTR PC);
     155VMMDECL(RTGCUINTPTR)            EMGetInhibitInterruptsPC(PVMCPU pVCpu);
     156VMM_INT_DECL(int)               EMInterpretDisasCurrent(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pCpu, unsigned *pcbInstr);
     157VMM_INT_DECL(int)               EMInterpretDisasOneEx(PVM pVM, PVMCPU pVCpu, RTGCUINTPTR GCPtrInstr, PCCPUMCTXCORE pCtxCore,
     158                                                      PDISCPUSTATE pDISState, unsigned *pcbInstr);
     159VMM_INT_DECL(VBOXSTRICTRC)      EMInterpretInstruction(PVMCPU pVCpu, PCPUMCTXCORE pCoreCtx, RTGCPTR pvFault);
     160VMM_INT_DECL(VBOXSTRICTRC)      EMInterpretInstructionEx(PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbWritten);
     161VMM_INT_DECL(VBOXSTRICTRC)      EMInterpretInstructionDisasState(PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pCoreCtx,
     162                                                                 RTGCPTR pvFault, EMCODETYPE enmCodeType);
    162163
    163164#ifdef IN_RC
    164 VMMDECL(int)            EMInterpretIretV86ForPatm(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     165VMM_INT_DECL(int)               EMInterpretIretV86ForPatm(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    165166#endif
    166167
    167 VMMDECL(int)            EMInterpretCpuId(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    168 VMMDECL(int)            EMInterpretRdtsc(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    169 VMMDECL(int)            EMInterpretRdpmc(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    170 VMMDECL(int)            EMInterpretRdtscp(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx);
    171 VMMDECL(VBOXSTRICTRC)   EMInterpretInvlpg(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, RTGCPTR pAddrGC);
    172 VMMDECL(VBOXSTRICTRC)   EMInterpretMWait(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    173 VMMDECL(int)            EMInterpretMonitor(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    174 VMMDECL(int)            EMInterpretDRxWrite(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegDrx, uint32_t SrcRegGen);
    175 VMMDECL(int)            EMInterpretDRxRead(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegGen, uint32_t SrcRegDrx);
    176 VMMDECL(int)            EMInterpretCRxWrite(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegCrx, uint32_t SrcRegGen);
    177 VMMDECL(int)            EMInterpretCRxRead(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegGen, uint32_t SrcRegCrx);
    178 VMMDECL(int)            EMInterpretLMSW(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint16_t u16Data);
    179 VMMDECL(int)            EMInterpretCLTS(PVM pVM, PVMCPU pVCpu);
     168VMM_INT_DECL(int)               EMInterpretCpuId(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     169VMM_INT_DECL(int)               EMInterpretRdtsc(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     170VMM_INT_DECL(int)               EMInterpretRdpmc(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     171VMM_INT_DECL(int)               EMInterpretRdtscp(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx);
     172VMM_INT_DECL(VBOXSTRICTRC)      EMInterpretInvlpg(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, RTGCPTR pAddrGC);
     173VMM_INT_DECL(VBOXSTRICTRC)      EMInterpretMWait(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     174VMM_INT_DECL(int)               EMInterpretMonitor(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     175VMM_INT_DECL(int)               EMInterpretDRxWrite(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegDrx, uint32_t SrcRegGen);
     176VMM_INT_DECL(int)               EMInterpretDRxRead(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegGen, uint32_t SrcRegDrx);
     177VMM_INT_DECL(int)               EMInterpretCRxWrite(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegCrx, uint32_t SrcRegGen);
     178VMM_INT_DECL(int)               EMInterpretCRxRead(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint32_t DestRegGen, uint32_t SrcRegCrx);
     179VMM_INT_DECL(int)               EMInterpretLMSW(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, uint16_t u16Data);
     180VMM_INT_DECL(int)               EMInterpretCLTS(PVM pVM, PVMCPU pVCpu);
    180181#ifndef VBOX_WITH_IEM
    181 VMMDECL(int)            EMInterpretRdmsr(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    182 VMMDECL(int)            EMInterpretWrmsr(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     182VMM_INT_DECL(int)               EMInterpretRdmsr(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
     183VMM_INT_DECL(int)               EMInterpretWrmsr(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame);
    183184#endif /* !VBOX_WITH_IEM */
    184 VMM_INT_DECL(bool)      EMShouldContinueAfterHalt(PVMCPU pVCpu, PCPUMCTX pCtx);
    185 VMM_INT_DECL(int)       EMMonitorWaitPrepare(PVMCPU pVCpu, uint64_t rax, uint64_t rcx, uint64_t rdx);
    186 VMM_INT_DECL(int)       EMMonitorWaitPerform(PVMCPU pVCpu, uint64_t rax, uint64_t rcx);
     185VMM_INT_DECL(bool)              EMShouldContinueAfterHalt(PVMCPU pVCpu, PCPUMCTX pCtx);
     186VMM_INT_DECL(int)               EMMonitorWaitPrepare(PVMCPU pVCpu, uint64_t rax, uint64_t rcx, uint64_t rdx);
     187VMM_INT_DECL(int)               EMMonitorWaitPerform(PVMCPU pVCpu, uint64_t rax, uint64_t rcx);
    187188
    188189/** @name Assembly routines
     
    214215/** @name REM locking routines
    215216 * @{ */
    216 VMMDECL(void)       EMRemUnlock(PVM pVM);
    217 VMMDECL(void)       EMRemLock(PVM pVM);
    218 VMMDECL(bool)       EMRemIsLockOwner(PVM pVM);
    219 VMMDECL(int)        EMRemTryLock(PVM pVM);
     217VMMDECL(void)                   EMRemUnlock(PVM pVM);
     218VMMDECL(void)                   EMRemLock(PVM pVM);
     219VMMDECL(bool)                   EMRemIsLockOwner(PVM pVM);
     220VMM_INT_DECL(int)               EMRemTryLock(PVM pVM);
    220221/** @} */
    221222
     
    225226 * @{
    226227 */
    227 
    228 VMMR3DECL(bool) EMR3IsRawRing3Enabled(PUVM pUVM);
    229 VMMR3DECL(bool) EMR3IsRawRing0Enabled(PUVM pUVM);
    230 
    231 VMMR3DECL(int)          EMR3Init(PVM pVM);
    232 VMMR3DECL(void)         EMR3Relocate(PVM pVM);
    233 VMMR3DECL(void)         EMR3ResetCpu(PVMCPU pVCpu);
    234 VMMR3DECL(void)         EMR3Reset(PVM pVM);
    235 VMMR3DECL(int)          EMR3Term(PVM pVM);
    236 VMMR3DECL(DECLNORETURN(void)) EMR3FatalError(PVMCPU pVCpu, int rc);
    237 VMMR3DECL(int)          EMR3ExecuteVM(PVM pVM, PVMCPU pVCpu);
    238 VMMR3DECL(int)          EMR3CheckRawForcedActions(PVM pVM, PVMCPU pVCpu);
    239 VMMR3DECL(int)          EMR3Interpret(PVM pVM);
    240 VMMR3_INT_DECL(int)     EMR3NotifyResume(PVM pVM);
    241 VMMR3_INT_DECL(int)     EMR3NotifySuspend(PVM pVM);
    242 VMMR3_INT_DECL(bool)    EMR3IsExecutionAllowed(PVM pVM, PVMCPU pVCpu);
    243228
    244229/**
     
    261246    EMEXECPOLICY_32BIT_HACK = 0x7fffffff
    262247} EMEXECPOLICY;
    263 
    264 VMMR3DECL(int)      EMR3SetExecutionPolicy(PVM pVM, EMEXECPOLICY enmPolicy, bool fEnforce);
     248VMMR3DECL(int)                  EMR3SetExecutionPolicy(PUVM pUVM, EMEXECPOLICY enmPolicy, bool fEnforce);
     249VMMR3DECL(bool)                 EMR3IsRawRing3Enabled(PUVM pUVM);
     250VMMR3DECL(bool)                 EMR3IsRawRing0Enabled(PUVM pUVM);
     251
     252VMMR3_INT_DECL(int)             EMR3Init(PVM pVM);
     253VMMR3_INT_DECL(void)            EMR3Relocate(PVM pVM);
     254VMMR3_INT_DECL(void)            EMR3ResetCpu(PVMCPU pVCpu);
     255VMMR3_INT_DECL(void)            EMR3Reset(PVM pVM);
     256VMMR3_INT_DECL(int)             EMR3Term(PVM pVM);
     257VMMR3DECL(DECLNORETURN(void))   EMR3FatalError(PVMCPU pVCpu, int rc);
     258VMMR3_INT_DECL(int)             EMR3ExecuteVM(PVM pVM, PVMCPU pVCpu);
     259VMMR3_INT_DECL(int)             EMR3CheckRawForcedActions(PVM pVM, PVMCPU pVCpu);
     260VMMR3_INT_DECL(int)             EMR3NotifyResume(PVM pVM);
     261VMMR3_INT_DECL(int)             EMR3NotifySuspend(PVM pVM);
     262VMMR3_INT_DECL(bool)            EMR3IsExecutionAllowed(PVM pVM, PVMCPU pVCpu);
    265263/** @} */
    266264#endif /* IN_RING3 */
    267265
    268 
    269 #ifdef IN_RC
    270 /** @defgroup grp_em_gc     The EM Guest Context API
    271  * @ingroup grp_em
    272  * @{
    273  */
    274 VMMRCDECL(int)      EMGCTrap(PVM pVM, unsigned uTrap, PCPUMCTXCORE pRegFrame);
    275 /** @} */
    276 #endif /* IN_RC */
    277 
    278266/** @} */
    279267
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette