VirtualBox

Changeset 87387 in vbox


Ignore:
Timestamp:
Jan 22, 2021 11:12:45 PM (4 years ago)
Author:
vboxsync
Message:

Moved the hmR0SvmVmRun* prototypes to HMInternal.h.

Location:
trunk/src/VBox/VMM
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp

    r87373 r87387  
    712712 *      - CPUMCTX_WSF_IBPB_ENTRY in pVCpu->cpum.GstCtx.fWorldSwitcher
    713713 *      - CPUMCTX_WSF_IBPB_EXIT  in pVCpu->cpum.GstCtx.fWorldSwitcher
    714  *      - CPUMIsGuestFPUStateActive() (windows only)
    715  *      - CPUMCTX.fXStateMask (windows only)
     714 *      - Perhaps: CPUMIsGuestFPUStateActive() (windows only)
     715 *      - Perhaps: CPUMCTX.fXStateMask (windows only)
    716716 *
    717717 * We currently ASSUME that neither CPUMCTX_WSF_IBPB_ENTRY nor
  • trunk/src/VBox/VMM/VMMR0/HMSVMR0.h

    r87359 r87387  
    5454
    5555/**
    56  * Prepares for and executes VMRUN (64-bit register context).
    57  *
    58  * @returns VBox status code.
    59  * @param   pVM             The cross context VM structure. (Not used.)
    60  * @param   pVCpu           The cross context virtual CPU structure.
    61  * @param   HCPhyspVMCB     Physical address of the VMCB.
    62  *
    63  * @remarks With spectre mitigations and the usual need for speed (/ micro
    64  *          optimizations), we have a bunch of variations of this code depending
    65  *          on a few precoditions.  In release builds, the code is entirely
    66  *          without conditionals.  Debug builds have a couple of assertions that
    67  *          shouldn't ever be triggered.
    68  *
    69  * @{
    70  */
    71 DECLASM(int) hmR0SvmVmRun_SansXcr0_SansIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    72 DECLASM(int) hmR0SvmVmRun_WithXcr0_SansIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    73 DECLASM(int) hmR0SvmVmRun_SansXcr0_WithIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    74 DECLASM(int) hmR0SvmVmRun_WithXcr0_WithIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    75 DECLASM(int) hmR0SvmVmRun_SansXcr0_SansIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    76 DECLASM(int) hmR0SvmVmRun_WithXcr0_SansIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    77 DECLASM(int) hmR0SvmVmRun_SansXcr0_WithIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    78 DECLASM(int) hmR0SvmVmRun_WithXcr0_WithIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    79 /** @} */
    80 
    81 
    82 /**
    8356 * Executes INVLPGA.
    8457 *
    85  * @param   pPageGC         Virtual page to invalidate.
     58 * @param   GCVirt          Virtual page to invalidate.
    8659 * @param   u32ASID         Tagged TLB id.
    8760 */
    88 DECLASM(void) SVMR0InvlpgA(RTGCPTR pPageGC, uint32_t u32ASID);
     61DECLASM(void) SVMR0InvlpgA(RTGCPTR GCVirt, uint32_t u32ASID);
    8962
    9063#endif /* IN_RING0 */
  • trunk/src/VBox/VMM/include/HMInternal.h

    r87372 r87387  
    12411241VMM_INT_DECL(PVMXVMCSINFO)  hmGetVmxActiveVmcsInfo(PVMCPU pVCpu);
    12421242
     1243/**
     1244 * Prepares for and executes VMRUN (64-bit register context).
     1245 *
     1246 * @returns VBox status code.
     1247 * @param   pVM             The cross context VM structure. (Not used.)
     1248 * @param   pVCpu           The cross context virtual CPU structure.
     1249 * @param   HCPhyspVMCB     Physical address of the VMCB.
     1250 *
     1251 * @remarks With spectre mitigations and the usual need for speed (/ micro
     1252 *          optimizations), we have a bunch of variations of this code depending
     1253 *          on a few precoditions.  In release builds, the code is entirely
     1254 *          without conditionals.  Debug builds have a couple of assertions that
     1255 *          shouldn't ever be triggered.
     1256 *
     1257 * @{
     1258 */
     1259DECLASM(int) hmR0SvmVmRun_SansXcr0_SansIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
     1260DECLASM(int) hmR0SvmVmRun_WithXcr0_SansIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
     1261DECLASM(int) hmR0SvmVmRun_SansXcr0_WithIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
     1262DECLASM(int) hmR0SvmVmRun_WithXcr0_WithIbpbEntry_SansIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
     1263DECLASM(int) hmR0SvmVmRun_SansXcr0_SansIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
     1264DECLASM(int) hmR0SvmVmRun_WithXcr0_SansIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
     1265DECLASM(int) hmR0SvmVmRun_SansXcr0_WithIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
     1266DECLASM(int) hmR0SvmVmRun_WithXcr0_WithIbpbEntry_WithIbpbExit(PVMCC pVM, PVMCPUCC pVCpu, RTHCPHYS HCPhyspVMCB);
    12431267/** @} */
    12441268
     1269
     1270/** @} */
     1271
    12451272RT_C_DECLS_END
    12461273
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