VirtualBox

Changeset 102780 in vbox for trunk/src


Ignore:
Timestamp:
Jan 7, 2024 2:05:10 AM (13 months ago)
Author:
vboxsync
Message:

ValKit/bs3-cpu-weird-1: Made the PUSH/POP test pass on AMD host (3990X). bugref:10371

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-weird-1-x0.c

    r102779 r102780  
    14291429    uint16_t const          uInitialSel  = bTestMode != BS3_MODE_RM ? BS3_SEL_R3_DS16 : 0x8080;
    14301430    uint16_t const          uPopSel      = BS3_SEL_R3_SS16;
    1431     bool const              fFullWrite   = BS3_MODE_IS_64BIT_CODE(bTestMode);   /* 64-bit mode writes are full (10980XE). */
    1432     bool const              fFullRead    = false; /* But, 64-bit mode reads are word sized (10980XE). */
    1433     bool const              fInRmWrHiEfl = true; /* 10890XE writes EFLAGS[31:16] in the high word of a 'o32 PUSH FS'. */
     1431    bool const              fFullWrite   = BS3_MODE_IS_64BIT_CODE(bTestMode) /* 64-bit mode writes are full (10980XE). */
     1432                                        || (g_enmCpuVendor = Bs3GetCpuVendor()) == BS3CPUVENDOR_AMD
     1433                                        || g_enmCpuVendor == BS3CPUVENDOR_HYGON;
     1434    bool const              fFullRead    = false /* But, 64-bit mode reads are word sized (10980XE). */
     1435                                        || (g_enmCpuVendor = Bs3GetCpuVendor()) == BS3CPUVENDOR_AMD
     1436                                        || g_enmCpuVendor == BS3CPUVENDOR_HYGON;
     1437    bool const              fInRmWrHiEfl = true /* 10890XE writes EFLAGS[31:16] in the high word of a 'o32 PUSH FS'. */
     1438                                        && !fFullWrite;
    14341439    uint8_t const           cTestBits    = BS3_MODE_IS_16BIT_CODE(bTestMode) ? 16
    14351440                                         : BS3_MODE_IS_32BIT_CODE(bTestMode) ? 32 : 64;
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