Changeset 80054 in vbox for trunk/src/VBox/VMM/include
- Timestamp:
- Jul 29, 2019 9:05:53 PM (6 years ago)
- svn:sync-xref-src-repo-rev:
- 132491
- Location:
- trunk/src/VBox/VMM/include
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/include/CPUMInternal.h
r78220 r80054 382 382 383 383 /** 384 * The hypervisor context CPU state (just DRx left now). 385 */ 386 typedef struct CPUMHYPERCTX 387 { 388 /** Debug registers. 389 * @remarks DR4 and DR5 should not be used since they are aliases for 390 * DR6 and DR7 respectively on both AMD and Intel CPUs. 391 * @remarks DR8-15 are currently not supported by AMD or Intel, so 392 * neither do we. 393 */ 394 uint64_t dr[8]; 395 /** @todo eliminiate the rest. */ 396 uint64_t cr3; 397 uint64_t au64Padding[7]; 398 } CPUMHYPERCTX; 399 #ifndef VBOX_FOR_DTRACE_LIB 400 AssertCompileSizeAlignment(CPUMHYPERCTX, 64); 401 #endif 402 /** Pointer to the hypervisor context CPU state. */ 403 typedef CPUMHYPERCTX *PCPUMHYPERCTX; 404 405 406 /** 384 407 * CPUM Data (part of VM) 385 408 */ … … 517 540 * Must be aligned on a 64-byte boundary. */ 518 541 CPUMHOSTCTX Host; 519 /** Hypervisor context. Must be aligned on a 64-byte boundary. */ 520 CPUMCTX Hyper; 542 /** Old hypervisor context, only used for combined DRx values now. 543 * Must be aligned on a 64-byte boundary. */ 544 CPUMHYPERCTX Hyper; 521 545 522 546 #ifdef VBOX_WITH_CRASHDUMP_MAGIC -
trunk/src/VBox/VMM/include/CPUMInternal.mac
r79713 r80054 408 408 409 409 ; 410 ; Hypervisor Context (same as .Guest above).410 ; Hypervisor Context. 411 411 ; 412 412 alignb 64 413 413 .Hyper resq 0 414 .Hyper.eax resq 1 415 .Hyper.ecx resq 1 416 .Hyper.edx resq 1 417 .Hyper.ebx resq 1 418 .Hyper.esp resq 1 419 .Hyper.ebp resq 1 420 .Hyper.esi resq 1 421 .Hyper.edi resq 1 422 .Hyper.r8 resq 1 423 .Hyper.r9 resq 1 424 .Hyper.r10 resq 1 425 .Hyper.r11 resq 1 426 .Hyper.r12 resq 1 427 .Hyper.r13 resq 1 428 .Hyper.r14 resq 1 429 .Hyper.r15 resq 1 430 .Hyper.es.Sel resw 1 431 .Hyper.es.PaddingSel resw 1 432 .Hyper.es.ValidSel resw 1 433 .Hyper.es.fFlags resw 1 434 .Hyper.es.u64Base resq 1 435 .Hyper.es.u32Limit resd 1 436 .Hyper.es.Attr resd 1 437 .Hyper.cs.Sel resw 1 438 .Hyper.cs.PaddingSel resw 1 439 .Hyper.cs.ValidSel resw 1 440 .Hyper.cs.fFlags resw 1 441 .Hyper.cs.u64Base resq 1 442 .Hyper.cs.u32Limit resd 1 443 .Hyper.cs.Attr resd 1 444 .Hyper.ss.Sel resw 1 445 .Hyper.ss.PaddingSel resw 1 446 .Hyper.ss.ValidSel resw 1 447 .Hyper.ss.fFlags resw 1 448 .Hyper.ss.u64Base resq 1 449 .Hyper.ss.u32Limit resd 1 450 .Hyper.ss.Attr resd 1 451 .Hyper.ds.Sel resw 1 452 .Hyper.ds.PaddingSel resw 1 453 .Hyper.ds.ValidSel resw 1 454 .Hyper.ds.fFlags resw 1 455 .Hyper.ds.u64Base resq 1 456 .Hyper.ds.u32Limit resd 1 457 .Hyper.ds.Attr resd 1 458 .Hyper.fs.Sel resw 1 459 .Hyper.fs.PaddingSel resw 1 460 .Hyper.fs.ValidSel resw 1 461 .Hyper.fs.fFlags resw 1 462 .Hyper.fs.u64Base resq 1 463 .Hyper.fs.u32Limit resd 1 464 .Hyper.fs.Attr resd 1 465 .Hyper.gs.Sel resw 1 466 .Hyper.gs.PaddingSel resw 1 467 .Hyper.gs.ValidSel resw 1 468 .Hyper.gs.fFlags resw 1 469 .Hyper.gs.u64Base resq 1 470 .Hyper.gs.u32Limit resd 1 471 .Hyper.gs.Attr resd 1 472 .Hyper.eip resq 1 473 .Hyper.eflags resq 1 474 .Hyper.cr0 resq 1 475 .Hyper.cr2 resq 1 414 .Hyper.dr resq 8 476 415 .Hyper.cr3 resq 1 477 .Hyper.cr4 resq 1478 .Hyper.dr resq 8479 .Hyper.gdtrPadding resw 3480 .Hyper.gdtr resw 0481 .Hyper.gdtr.cbGdt resw 1482 .Hyper.gdtr.pGdt resq 1483 .Hyper.idtrPadding resw 3484 .Hyper.idtr resw 0485 .Hyper.idtr.cbIdt resw 1486 .Hyper.idtr.pIdt resq 1487 .Hyper.ldtr.Sel resw 1488 .Hyper.ldtr.PaddingSel resw 1489 .Hyper.ldtr.ValidSel resw 1490 .Hyper.ldtr.fFlags resw 1491 .Hyper.ldtr.u64Base resq 1492 .Hyper.ldtr.u32Limit resd 1493 .Hyper.ldtr.Attr resd 1494 .Hyper.tr.Sel resw 1495 .Hyper.tr.PaddingSel resw 1496 .Hyper.tr.ValidSel resw 1497 .Hyper.tr.fFlags resw 1498 .Hyper.tr.u64Base resq 1499 .Hyper.tr.u32Limit resd 1500 .Hyper.tr.Attr resd 1501 .Hyper.SysEnter.cs resb 8502 .Hyper.SysEnter.eip resb 8503 .Hyper.SysEnter.esp resb 8504 .Hyper.msrEFER resb 8505 .Hyper.msrSTAR resb 8506 .Hyper.msrPAT resb 8507 .Hyper.msrLSTAR resb 8508 .Hyper.msrCSTAR resb 8509 .Hyper.msrSFMASK resb 8510 .Hyper.msrKERNELGSBASE resb 8511 .Hyper.uMsrPadding0 resb 8512 alignb 8513 .Hyper.aXcr resq 2514 .Hyper.fXStateMask resq 1515 .Hyper.pXStateR0 RTR0PTR_RES 1516 alignb 8517 .Hyper.pXStateR3 RTR3PTR_RES 1518 alignb 8519 .Hyper.pXStateRC RTRCPTR_RES 1520 .Hyper.aoffXState resw 64521 .Hyper.fWorldSwitcher resd 1522 .Hyper.fExtrn resq 1523 alignb 8524 .Hyper.hwvirt.svm.uMsrHSavePa resq 1525 .Hyper.hwvirt.svm.GCPhysVmcb resq 1526 .Hyper.hwvirt.svm.pVmcbR0 RTR0PTR_RES 1527 alignb 8528 .Hyper.hwvirt.svm.pVmcbR3 RTR3PTR_RES 1529 alignb 8530 .Hyper.hwvirt.svm.HostState resb 184531 .Hyper.hwvirt.svm.uPrevPauseTick resq 1532 .Hyper.hwvirt.svm.cPauseFilter resw 1533 .Hyper.hwvirt.svm.cPauseFilterThreshold resw 1534 .Hyper.hwvirt.svm.fInterceptEvents resb 1535 alignb 8536 .Hyper.hwvirt.svm.pvMsrBitmapR0 RTR0PTR_RES 1537 alignb 8538 .Hyper.hwvirt.svm.pvMsrBitmapR3 RTR3PTR_RES 1539 alignb 8540 .Hyper.hwvirt.svm.pvIoBitmapR0 RTR0PTR_RES 1541 alignb 8542 .Hyper.hwvirt.svm.pvIoBitmapR3 RTR3PTR_RES 1543 alignb 8544 .Hyper.hwvirt.svm.HCPhysVmcb RTHCPHYS_RES 1545 .Hyper.hwvirt.svm.abPadding0 resb 272546 .Hyper.hwvirt.enmHwvirt resd 1547 .Hyper.hwvirt.fGif resb 1548 alignb 8549 .Hyper.hwvirt.fLocalForcedActions resd 1550 416 alignb 64 551 417
Note:
See TracChangeset
for help on using the changeset viewer.