Changeset 100109 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- Jun 7, 2023 8:21:40 PM (21 months ago)
- svn:sync-xref-src-repo-rev:
- 157802
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllCImplVmxInstr.cpp
r100052 r100109 9841 9841 9842 9842 9843 #if def VBOX_WITH_NESTED_HWVIRT_VMX_EPT9843 #if defined(VBOX_WITH_NESTED_HWVIRT_VMX_EPT) || defined(VBOX_WITH_IEM_RECOMPILER) /* HACK ALERT: Linking trick. */ 9844 9844 /** 9845 9845 * Implements 'INVEPT'. … … 9847 9847 IEM_CIMPL_DEF_3(iemCImpl_invept, uint8_t, iEffSeg, RTGCPTR, GCPtrInveptDesc, uint64_t, uInveptType) 9848 9848 { 9849 # ifdef VBOX_WITH_NESTED_HWVIRT_VMX_EPT 9849 9850 return iemVmxInvept(pVCpu, cbInstr, iEffSeg, GCPtrInveptDesc, uInveptType, NULL /* pExitInfo */); 9851 # else 9852 RT_NOREF(pVCpu, cbInstr, iEffSeg, GCPtrInveptDesc, uInveptType); 9853 AssertFailedReturn(VERR_IEM_ASPECT_NOT_IMPLEMENTED); 9854 # endif 9850 9855 } 9851 9856 #endif -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsThreadedRecompiler.cpp
r100072 r100109 268 268 */ 269 269 270 static VBOXSTRICTRC iemThreadedCompile(PVMCC VpVM, PVMCPUCC pVCpu)271 { 272 RT_NOREF(pVM, pVCpu , pTb);270 static VBOXSTRICTRC iemThreadedCompile(PVMCC pVM, PVMCPUCC pVCpu) 271 { 272 RT_NOREF(pVM, pVCpu); 273 273 return VERR_NOT_IMPLEMENTED; 274 274 } 275 275 276 276 277 static VBOXSTRICTRC iemThreadedCompileLongJumped(PVMCC VpVM, PVMCPUCC pVCpu, VBOXSTRICTRC rcStrict)277 static VBOXSTRICTRC iemThreadedCompileLongJumped(PVMCC pVM, PVMCPUCC pVCpu, VBOXSTRICTRC rcStrict) 278 278 { 279 279 RT_NOREF(pVM, pVCpu); … … 282 282 283 283 284 static PIEMTB iemThreadedTbLookup(PVMCC VpVM, PVMCPUCC pVCpu, RTGCPHYS GCPhysPC, uint64_t uPc)284 static PIEMTB iemThreadedTbLookup(PVMCC pVM, PVMCPUCC pVCpu, RTGCPHYS GCPhysPC, uint64_t uPc) 285 285 { 286 286 RT_NOREF(pVM, pVCpu, GCPhysPC, uPc); … … 289 289 290 290 291 static VBOXSTRICTRC iemThreadedTbExec(PVMCC VpVM, PVMCPUCC pVCpu, PIEMTB pTb)291 static VBOXSTRICTRC iemThreadedTbExec(PVMCC pVM, PVMCPUCC pVCpu, PIEMTB pTb) 292 292 { 293 293 RT_NOREF(pVM, pVCpu, pTb); … … 309 309 pVCpu->iem.s.cbInstrBufTotal = 0; 310 310 311 RT_NOREF(uPc, pPhys); 312 return 0; 311 313 } 312 314 … … 315 317 DECL_INLINE_THROW(uint64_t) iemGetPcWithPhysAndCode(PVMCPUCC pVCpu, PRTGCPHYS pPhys) 316 318 { 317 Assert(pVCpu->cpum.GstCtx.cs.u64Base == 0 || pVCpu->iem.s.enmCpuMode != IEMMODE_64BIT);319 Assert(pVCpu->cpum.GstCtx.cs.u64Base == 0 || !IEM_IS_64BIT_CODE(pVCpu)); 318 320 uint64_t const uPc = pVCpu->cpum.GstCtx.rip + pVCpu->cpum.GstCtx.cs.u64Base; 319 321 if (pVCpu->iem.s.pbInstrBuf) … … 361 363 { 362 364 /* Translate PC to physical address, we'll need this for both lookup and compilation. */ 363 RTGCPHYS GCPhysP C;364 uint64_t const uP C = iemGetPcWithPhysAndCode(pVCpu, &GCPhysPC);365 366 pTb = iemThreadedTbLookup(pVM, pVCpu, GCPhysP C, uPc);365 RTGCPHYS GCPhysPc; 366 uint64_t const uPc = iemGetPcWithPhysAndCode(pVCpu, &GCPhysPc); 367 368 pTb = iemThreadedTbLookup(pVM, pVCpu, GCPhysPc, uPc); 367 369 if (pTb) 368 370 rcStrict = iemThreadedTbExec(pVM, pVCpu, pTb); 369 371 else 370 rcStrict = iemThreadedCompile(pVM, pVCpu , GCPhysPC, uPc);372 rcStrict = iemThreadedCompile(pVM, pVCpu /*, GCPhysPc, uPc*/); 371 373 if (rcStrict == VINF_SUCCESS) 372 374 { /* likely */ }
Note:
See TracChangeset
for help on using the changeset viewer.