Changeset 9710 in vbox
- Timestamp:
- Jun 16, 2008 11:29:18 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/SELMAll.cpp
r9679 r9710 49 49 * @param Sel Selector part. 50 50 * @param Addr Address part. 51 * @remarks Don't use when in long mode. 51 52 */ 52 53 SELMDECL(RTGCPTR) SELMToFlatBySel(PVM pVM, RTSEL Sel, RTGCPTR Addr) 53 54 { 54 Assert(!CPUMIsGuestInLongMode(pVM)); /* *DON'T USE! */55 Assert(!CPUMIsGuestInLongMode(pVM)); /* DON'T USE! */ 55 56 56 57 /** @todo check the limit. */ … … 61 62 { 62 63 /** @todo handle LDT pages not present! */ 63 64 #ifdef IN_GC 64 65 PVBOXDESC paLDT = (PVBOXDESC)((char *)pVM->selm.s.GCPtrLdt + pVM->selm.s.offLdtHyper); 65 66 #else 66 67 PVBOXDESC paLDT = (PVBOXDESC)((char *)pVM->selm.s.HCPtrLdt + pVM->selm.s.offLdtHyper); 67 68 #endif 68 69 Desc = paLDT[Sel >> X86_SEL_SHIFT]; 69 70 } … … 449 450 * @param pcb Where to store the bytes from *ppvGC which can be accessed according to 450 451 * the selector. NULL is allowed. 452 * @remarks Don't use when in long mode. 451 453 */ 452 454 SELMDECL(int) SELMToFlatBySelEx(PVM pVM, X86EFLAGS eflags, RTSEL Sel, RTGCPTR Addr, CPUMSELREGHID *pHiddenSel, unsigned fFlags, PRTGCPTR ppvGC, uint32_t *pcb) 453 455 { 454 Assert(!CPUMIsGuestInLongMode(pVM)); /* *DON'T USE! */456 Assert(!CPUMIsGuestInLongMode(pVM)); /* DON'T USE! */ 455 457 456 458 /* … … 782 784 783 785 /* 784 * Limit check. Note that the limit in the hidden register is the 786 * Limit check. Note that the limit in the hidden register is the 785 787 * final value. The granularity bit was included in its calculation. 786 788 */ … … 909 911 /* Else compatibility or 32 bits mode. */ 910 912 return (pHiddenSel->Attr.n.u1DefBig) ? CPUMODE_32BIT : CPUMODE_16BIT; 911 913 912 914 } 913 915
Note:
See TracChangeset
for help on using the changeset viewer.