VirtualBox

Changeset 53618 in vbox


Ignore:
Timestamp:
Dec 31, 2014 1:12:37 PM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
97387
Message:

hmsvm.h: Dropped a few unnecessary pragma packs.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/hm_svm.h

    r53615 r53618  
    446446 * SVM Selector type; includes hidden parts.
    447447 */
    448 #pragma pack(1)
    449448typedef struct
    450449{
     
    454453    uint64_t    u64Base;        /**< Only lower 32 bits are implemented for CS, DS, ES & SS. */
    455454} SVMSEL;
    456 #pragma pack()
     455AssertCompileSize(SVMSEL, 16);
    457456
    458457/**
    459458 * SVM GDTR/IDTR type.
    460459 */
    461 #pragma pack(1)
    462460typedef struct
    463461{
     
    467465    uint64_t    u64Base;
    468466} SVMGDTR;
    469 #pragma pack()
     467AssertCompileSize(SVMGDTR, 16);
    470468typedef SVMGDTR SVMIDTR;
    471469
     
    602600 * SVM VM Control Block. (VMCB)
    603601 */
    604 #pragma pack(1)
    605602typedef struct SVMVMCB
    606603{
     
    620617        /** Offset 0x0C - Intercept control field 1. */
    621618        uint32_t    u32InterceptCtrl1;
    622         /** Offset 0x0C - Intercept control field 2. */
     619        /** Offset 0x10 - Intercept control field 2. */
    623620        uint32_t    u32InterceptCtrl2;
    624621        /** Offset 0x14-0x3F - Reserved. */
     
    666663        /** Offset 0xD0 - Number of bytes fetched. */
    667664        uint8_t     cbInstrFetched;
    668         /** Offset 0xD1 - Number of bytes fetched. */
     665        /** Offset 0xD1 - Fetched bytes. */
    669666        uint8_t     abInstr[15];
    670667        /** Offset 0xE0 - AVIC APIC_BACKING_PAGE pointer. */
     
    773770    uint8_t     u8Reserved10[0x1000-0x698];
    774771} SVMVMCB;
    775 #pragma pack()
    776772/** Pointer to the SVMVMCB structure. */
    777773typedef SVMVMCB *PSVMVMCB;
    778 AssertCompileMemberOffset(SVMVMCB, ctrl.u16InterceptRdCRx,    0x000);
    779 AssertCompileMemberOffset(SVMVMCB, ctrl.u16PauseFilterCount,  0x03e);
    780 AssertCompileMemberOffset(SVMVMCB, ctrl.TLBCtrl,              0x058);
    781 AssertCompileMemberOffset(SVMVMCB, ctrl.ExitIntInfo,          0x088);
    782 AssertCompileMemberOffset(SVMVMCB, ctrl.EventInject,          0x0A8);
    783 AssertCompileMemberOffset(SVMVMCB, ctrl.abInstr,              0x0D1);
    784 AssertCompileMemberOffset(SVMVMCB, ctrl.AvicBackingPagePtr,   0x0E0);
    785 AssertCompileMemberOffset(SVMVMCB, ctrl.AvicLogicalTablePtr,  0x0F0);
    786 AssertCompileMemberOffset(SVMVMCB, ctrl.AvicPhysicalTablePtr, 0x0F8);
    787 AssertCompileMemberOffset(SVMVMCB, guest,                     0x400);
    788 AssertCompileMemberOffset(SVMVMCB, guest.ES,                  0x400);
    789 AssertCompileMemberOffset(SVMVMCB, guest.TR,                  0x490);
    790 AssertCompileMemberOffset(SVMVMCB, guest.u64EFER,             0x4D0);
    791 AssertCompileMemberOffset(SVMVMCB, guest.u64CR4,              0x548);
    792 AssertCompileMemberOffset(SVMVMCB, guest.u64RIP,              0x578);
    793 AssertCompileMemberOffset(SVMVMCB, guest.u64RSP,              0x5D8);
    794 AssertCompileMemberOffset(SVMVMCB, guest.u64CR2,              0x640);
    795 AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved4,         0x4A0);
    796 AssertCompileMemberOffset(SVMVMCB, guest.u8CPL,               0x4CB);
    797 AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved6,         0x4D8);
    798 AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved7,         0x580);
    799 AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved9,         0x648);
    800 AssertCompileMemberOffset(SVMVMCB, guest.u64GPAT,             0x668);
    801 AssertCompileMemberOffset(SVMVMCB, guest.u64LASTEXCPTO,       0x690);
    802 AssertCompileMemberOffset(SVMVMCB, u8Reserved10,              0x698);
     774AssertCompileMemberOffset(SVMVMCB, ctrl, 0x00);
     775AssertCompileMemberOffset(SVMVMCB, ctrl.u16InterceptRdCRx, 0x00);
     776AssertCompileMemberOffset(SVMVMCB, ctrl.u16InterceptWrCRx, 0x02);
     777AssertCompileMemberOffset(SVMVMCB, ctrl.u16InterceptRdDRx, 0x04);
     778AssertCompileMemberOffset(SVMVMCB, ctrl.u16InterceptWrDRx, 0x06);
     779AssertCompileMemberOffset(SVMVMCB, ctrl.u32InterceptException, 0x08);
     780AssertCompileMemberOffset(SVMVMCB, ctrl.u32InterceptCtrl1, 0x0C);
     781AssertCompileMemberOffset(SVMVMCB, ctrl.u32InterceptCtrl2, 0x10);
     782AssertCompileMemberOffset(SVMVMCB, ctrl.u8Reserved, 0x14);
     783AssertCompileMemberOffset(SVMVMCB, ctrl.u16PauseFilterThreshold, 0x3c);
     784AssertCompileMemberOffset(SVMVMCB, ctrl.u16PauseFilterCount, 0x3e);
     785AssertCompileMemberOffset(SVMVMCB, ctrl.u64IOPMPhysAddr, 0x40);
     786AssertCompileMemberOffset(SVMVMCB, ctrl.u64MSRPMPhysAddr, 0x48);
     787AssertCompileMemberOffset(SVMVMCB, ctrl.u64TSCOffset, 0x50);
     788AssertCompileMemberOffset(SVMVMCB, ctrl.TLBCtrl, 0x58);
     789AssertCompileMemberOffset(SVMVMCB, ctrl.IntCtrl, 0x60);
     790AssertCompileMemberOffset(SVMVMCB, ctrl.u64IntShadow, 0x68);
     791AssertCompileMemberOffset(SVMVMCB, ctrl.u64ExitCode, 0x70);
     792AssertCompileMemberOffset(SVMVMCB, ctrl.u64ExitInfo1, 0x78);
     793AssertCompileMemberOffset(SVMVMCB, ctrl.u64ExitInfo2, 0x80);
     794AssertCompileMemberOffset(SVMVMCB, ctrl.ExitIntInfo, 0x88);
     795AssertCompileMemberOffset(SVMVMCB, ctrl.NestedPaging, 0x90);
     796AssertCompileMemberOffset(SVMVMCB, ctrl.AvicBar, 0x98);
     797AssertCompileMemberOffset(SVMVMCB, ctrl.u8Reserved2, 0xA0);
     798AssertCompileMemberOffset(SVMVMCB, ctrl.EventInject, 0xA8);
     799AssertCompileMemberOffset(SVMVMCB, ctrl.u64NestedPagingCR3, 0xB0);
     800AssertCompileMemberOffset(SVMVMCB, ctrl.u64LBRVirt, 0xB8);
     801AssertCompileMemberOffset(SVMVMCB, ctrl.u64VmcbCleanBits, 0xC0);
     802AssertCompileMemberOffset(SVMVMCB, ctrl.u64NextRIP, 0xC8);
     803AssertCompileMemberOffset(SVMVMCB, ctrl.cbInstrFetched, 0xD0);
     804AssertCompileMemberOffset(SVMVMCB, ctrl.abInstr, 0xD1);
     805AssertCompileMemberOffset(SVMVMCB, ctrl.AvicBackingPagePtr, 0xE0);
     806AssertCompileMemberOffset(SVMVMCB, ctrl.u8Reserved3, 0xE8);
     807AssertCompileMemberOffset(SVMVMCB, ctrl.AvicLogicalTablePtr, 0xF0);
     808AssertCompileMemberOffset(SVMVMCB, ctrl.AvicPhysicalTablePtr, 0xF8);
     809AssertCompileMemberOffset(SVMVMCB, u8Reserved3, 0x100);
     810AssertCompileMemberOffset(SVMVMCB, guest, 0x400);
     811AssertCompileMemberOffset(SVMVMCB, guest.ES, 0x400);
     812AssertCompileMemberOffset(SVMVMCB, guest.CS, 0x410);
     813AssertCompileMemberOffset(SVMVMCB, guest.SS, 0x420);
     814AssertCompileMemberOffset(SVMVMCB, guest.DS, 0x430);
     815AssertCompileMemberOffset(SVMVMCB, guest.FS, 0x440);
     816AssertCompileMemberOffset(SVMVMCB, guest.GS, 0x450);
     817AssertCompileMemberOffset(SVMVMCB, guest.GDTR, 0x460);
     818AssertCompileMemberOffset(SVMVMCB, guest.LDTR, 0x470);
     819AssertCompileMemberOffset(SVMVMCB, guest.IDTR, 0x480);
     820AssertCompileMemberOffset(SVMVMCB, guest.TR, 0x490);
     821AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved4, 0x4A0);
     822AssertCompileMemberOffset(SVMVMCB, guest.u8CPL, 0x4CB);
     823AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved5, 0x4CC);
     824AssertCompileMemberOffset(SVMVMCB, guest.u64EFER, 0x4D0);
     825AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved6, 0x4D8);
     826AssertCompileMemberOffset(SVMVMCB, guest.u64CR4, 0x548);
     827AssertCompileMemberOffset(SVMVMCB, guest.u64CR3, 0x550);
     828AssertCompileMemberOffset(SVMVMCB, guest.u64CR0, 0x558);
     829AssertCompileMemberOffset(SVMVMCB, guest.u64DR7, 0x560);
     830AssertCompileMemberOffset(SVMVMCB, guest.u64DR6, 0x568);
     831AssertCompileMemberOffset(SVMVMCB, guest.u64RFlags, 0x570);
     832AssertCompileMemberOffset(SVMVMCB, guest.u64RIP, 0x578);
     833AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved7, 0x580);
     834AssertCompileMemberOffset(SVMVMCB, guest.u64RSP, 0x5D8);
     835AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved8, 0x5E0);
     836AssertCompileMemberOffset(SVMVMCB, guest.u64RAX, 0x5F8);
     837AssertCompileMemberOffset(SVMVMCB, guest.u64STAR, 0x600);
     838AssertCompileMemberOffset(SVMVMCB, guest.u64LSTAR, 0x608);
     839AssertCompileMemberOffset(SVMVMCB, guest.u64CSTAR, 0x610);
     840AssertCompileMemberOffset(SVMVMCB, guest.u64SFMASK, 0x618);
     841AssertCompileMemberOffset(SVMVMCB, guest.u64KernelGSBase, 0x620);
     842AssertCompileMemberOffset(SVMVMCB, guest.u64SysEnterCS, 0x628);
     843AssertCompileMemberOffset(SVMVMCB, guest.u64SysEnterESP, 0x630);
     844AssertCompileMemberOffset(SVMVMCB, guest.u64SysEnterEIP, 0x638);
     845AssertCompileMemberOffset(SVMVMCB, guest.u64CR2, 0x640);
     846AssertCompileMemberOffset(SVMVMCB, guest.u8Reserved9, 0x648);
     847AssertCompileMemberOffset(SVMVMCB, guest.u64GPAT, 0x668);
     848AssertCompileMemberOffset(SVMVMCB, guest.u64DBGCTL, 0x670);
     849AssertCompileMemberOffset(SVMVMCB, guest.u64BR_FROM, 0x678);
     850AssertCompileMemberOffset(SVMVMCB, guest.u64BR_TO, 0x680);
     851AssertCompileMemberOffset(SVMVMCB, guest.u64LASTEXCPFROM, 0x688);
     852AssertCompileMemberOffset(SVMVMCB, guest.u64LASTEXCPTO, 0x690);
     853AssertCompileMemberOffset(SVMVMCB, u8Reserved10,                0x698);
    803854AssertCompileSize(SVMVMCB, 0x1000);
    804855
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette