VirtualBox

Changeset 7097 in vbox for trunk/include/VBox


Ignore:
Timestamp:
Feb 22, 2008 1:28:35 PM (17 years ago)
Author:
vboxsync
Message:

Removed the anonymous struct

Location:
trunk/include/VBox
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/cpum.h

    r7095 r7097  
    117117        uint64_t        rcx;
    118118    };
    119     union
    120     {
    121         /* Note: we rely on the exact layout, because we use lss esp, [] in the switcher */
    122         struct
    123         {
    124             uint32_t        esp;
    125             RTSEL           ss;
    126             RTSEL           ssPadding;
    127         };
    128         struct
    129         {
    130             uint64_t        rsp;
    131             RTSEL           ss64;
    132             RTSEL           ss64Padding;
    133         };
    134     };
     119    /* Note: we rely on the exact layout, because we use lss esp, [] in the switcher */
     120    uint32_t        esp;
     121    RTSEL           ss;
     122    RTSEL           ssPadding;
     123    /* Note: no overlap with esp here. */
     124    uint64_t        rsp;
    135125
    136126    RTSEL           gs;
     
    143133    RTSEL           dsPadding;
    144134    RTSEL           cs;
    145     RTSEL           csPadding;
     135    RTSEL           csPadding[3];  /* 3 words to force 8 byte alignment for the remainder */
    146136
    147137    union
     
    230220        uint64_t        rcx;
    231221    };
    232     union
    233     {
    234         /* Note: we rely on the exact layout, because we use lss esp, [] in the switcher */
    235         struct
    236         {
    237             uint32_t        esp;
    238             RTSEL           ss;
    239             RTSEL           ssPadding;
    240         };
    241         struct
    242         {
    243             uint64_t        rsp;
    244             RTSEL           ss64;
    245             RTSEL           ss64Padding;
    246         };
    247     };
     222    /* Note: we rely on the exact layout, because we use lss esp, [] in the switcher */
     223    uint32_t        esp;
     224    RTSEL           ss;
     225    RTSEL           ssPadding;
     226    /* Note: no overlap with esp here. */
     227    uint64_t        rsp;
    248228
    249229    RTSEL           gs;
     
    256236    RTSEL           dsPadding;
    257237    RTSEL           cs;
    258     RTSEL           csPadding;
     238    RTSEL           csPadding[3];  /* 3 words to force 8 byte alignment for the remainder */
    259239
    260240    union
     
    340320
    341321    /* padding to get 32byte aligned size */
    342     uint32_t        padding[6];
     322    uint32_t        padding[4];
    343323} CPUMCTX;
    344324#pragma pack()
  • trunk/include/VBox/cpum.mac

    r7095 r7097  
    4343    .esp            resd    1
    4444    .ss             resw    1
    45     .ssPadding      resw    3
     45    .ssPadding      resw    1
     46    .rsp            resq    1
    4647    .gs             resw    1
    4748    .gsPadding      resw    1
     
    5354    .dsPadding      resw    1
    5455    .cs             resw    1
    55     .csPadding      resw    1
     56    .csPadding      resw    3
    5657    .eflags         resq    1
    5758    .eip            resq    1
     
    105106    .esp            resd    1
    106107    .ss             resw    1
    107     .ssPadding      resw    3
     108    .ssPadding      resw    1
     109    .rsp            resq    1
    108110    .gs             resw    1
    109111    .gsPadding      resw    1
     
    115117    .dsPadding      resw    1
    116118    .cs             resw    1
    117     .csPadding      resw    1
     119    .csPadding      resw    3
    118120    .eflags         resq    1
    119121    .eip            resq    1
     
    179181    .trPadding      resw    1
    180182
    181     .SysEnter.cs    resb    8
    182     .SysEnter.eip   resb    8
    183     .SysEnter.esp   resb    8
     183    .SysEnter.cs        resb    8
     184    .SysEnter.eip       resb    8
     185    .SysEnter.esp       resb    8
    184186
    185187    .ldtrHid.u32Base    resd    1
     
    192194
    193195    ; padding
    194     .padding            resd    6
     196    .padding            resd    4
    195197endstruc
    196198
Note: See TracChangeset for help on using the changeset viewer.

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