VirtualBox

Changeset 52465 in vbox for trunk/include/iprt


Ignore:
Timestamp:
Aug 22, 2014 11:39:08 AM (10 years ago)
Author:
vboxsync
Message:

VMM: Fix IEM FXSAVE implementation to match the logic in HM/raw-mode FPU handling.

Location:
trunk/include/iprt
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/x86.h

    r51182 r52465  
    23442344    } aXMM[16]; /* 8 registers in 32 bits mode; 16 in long mode */
    23452345    /* - offset 416 - */
    2346     uint32_t    au32RsrvdRest[(512 - 416) / sizeof(uint32_t)];
     2346    uint32_t    au32RsrvdRest[(464 - 416) / sizeof(uint32_t)];
     2347    /* - offset 464 - Software usable reserved bits. */
     2348    uint32_t    au32RsrvdForSoftware[(512 - 464) / sizeof(uint32_t)];
    23472349} X86FXSTATE;
    23482350#pragma pack()
     
    23512353/** Pointer to a const FPU Extended state. */
    23522354typedef const X86FXSTATE *PCX86FXSTATE;
     2355
     2356/** Offset for software usable reserved bits (464:511) where we store a 32-bit
     2357 *  magic. Don't forget to update x86.mac if you change this! */
     2358#define X86_OFF_FXSTATE_RSVD            0x1d0
     2359/** The 32-bit magic used to recognize if this a 32-bit FPU state. Don't
     2360 *  forget to update x86.mac if you change this! */
     2361#define X86_FXSTATE_RSVD_32BIT_MAGIC    0x32b3232b
     2362AssertCompileSize(X86FXSTATE, 512);
     2363AssertCompileMemberOffset(X86FXSTATE, au32RsrvdForSoftware, 0x1d0);
    23532364
    23542365/** @name FPU status word flags.
  • trunk/include/iprt/x86.mac

    r50765 r52465  
    271271%define X86_DR7_RW_LEN_ALL_MASKS            0xffff0000
    272272%define X86_DR7_INIT_VAL                    0x400
     273%define X86_OFF_FXSTATE_RSVD                0x1d0
     274%define X86_FXSTATE_RSVD_32BIT_MAGIC        0x32b3232b
    273275%define MSR_P5_MC_ADDR                      0x00000000
    274276%define MSR_P5_MC_TYPE                      0x00000001
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