Changeset 59285 in vbox
- Timestamp:
- Jan 8, 2016 12:02:39 AM (9 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/x86.h
r59238 r59285 3636 3636 * and the end of the interrupt redirection bitmap. */ 3637 3637 uint16_t offIoBitmap; 3638 /** 32 bytes for the virtual interrupt redirection bitmap. (VME) */3639 uint8_t IntRedirBitmap[32];3640 3638 } X86TSS32; 3641 3639 #pragma pack() … … 3644 3642 /** Pointer to const task segment. */ 3645 3643 typedef const X86TSS32 *PCX86TSS32; 3644 #ifndef VBOX_FOR_DTRACE_LIB 3645 AssertCompileSize(X86TSS32, X86_SEL_TYPE_SYS_386_TSS_LIMIT_MIN + 1); 3646 AssertCompileMemberOffset(X86TSS32, cr3, 28); 3647 AssertCompileMemberOffset(X86TSS32, offIoBitmap, 102); 3648 #endif 3646 3649 3647 3650 /** … … 3674 3677 * and the end of the interrupt redirection bitmap. */ 3675 3678 uint16_t offIoBitmap; 3676 /** 32 bytes for the virtual interrupt redirection bitmap. (VME) */3677 uint8_t IntRedirBitmap[32];3678 3679 } X86TSS64; 3679 3680 #pragma pack() … … 3683 3684 typedef const X86TSS64 *PCX86TSS64; 3684 3685 #ifndef VBOX_FOR_DTRACE_LIB 3685 AssertCompileSize(X86TSS64, 136);3686 AssertCompileSize(X86TSS64, X86_SEL_TYPE_SYS_386_TSS_LIMIT_MIN + 1); 3686 3687 #endif 3687 3688 -
trunk/src/VBox/Debugger/DBGCEmulateCodeView.cpp
r59246 r59285 3464 3464 { 3465 3465 case kTss16: 3466 cbTssMin = cbTssMax = sizeof(X86TSS16);3466 cbTssMin = cbTssMax = X86_SEL_TYPE_SYS_286_TSS_LIMIT_MIN + 1; 3467 3467 break; 3468 3468 case kTss32: 3469 cbTssMin = RT_OFFSETOF(X86TSS32, IntRedirBitmap);3469 cbTssMin = X86_SEL_TYPE_SYS_386_TSS_LIMIT_MIN + 1; 3470 3470 cbTssMax = _64K; 3471 3471 break; 3472 3472 case kTss64: 3473 cbTssMin = RT_OFFSETOF(X86TSS64, IntRedirBitmap);3473 cbTssMin = X86_SEL_TYPE_SYS_386_TSS_LIMIT_MIN + 1; 3474 3474 cbTssMax = _64K; 3475 3475 break; … … 3541 3541 DBGCCmdHlpPrintf(pCmdHlp, "TSS32 at %Dv (min=%04x)\n", &VarTssAddr, cbTssMin); 3542 3542 DBGCCmdHlpPrintf(pCmdHlp, 3543 "eax=%08x bx=%08x ecx=%08x edx=%08x esi=%08x edi=%08x\n"3543 "eax=%08x ebx=%08x ecx=%08x edx=%08x esi=%08x edi=%08x\n" 3544 3544 "eip=%08x esp=%08x ebp=%08x\n" 3545 3545 "cs=%04x ss=%04x ds=%04x es=%04x fs=%04x gs=%04x eflags=%08x\n" -
trunk/src/VBox/VMM/VMMAll/IEMAll.cpp
r58934 r59285 2556 2556 uint32_t cbNewTSS = uNewTSSLimitMin + 1; 2557 2557 RTGCPTR GCPtrNewTSS = X86DESC_BASE(&pNewDescTSS->Legacy); 2558 AssertCompile( RTASSERT_OFFSET_OF(X86TSS32, IntRedirBitmap) == X86_SEL_TYPE_SYS_386_TSS_LIMIT_MIN + 1);2558 AssertCompile(sizeof(X86TSS32) == X86_SEL_TYPE_SYS_386_TSS_LIMIT_MIN + 1); 2559 2559 /** @todo Handle if the TSS crosses a page boundary. Intel specifies that it may 2560 2560 * not perform correct translation if this happens. See Intel spec. 7.2.1
Note:
See TracChangeset
for help on using the changeset viewer.