VirtualBox

Changeset 105292 in vbox for trunk/src/VBox/ValidationKit


Ignore:
Timestamp:
Jul 12, 2024 10:16:16 AM (7 months ago)
Author:
vboxsync
Message:

ValidationKit/bootsectors: bugref:10658 SIMD FP testcase: [v]mulpd.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-instr-4.c32

    r105287 r105292  
    178178#define BS3_FP64_NORMAL_VAL_1(a_Sign)         RTFLOAT64U_INIT_C(a_Sign, 0xf10a7ab1ec01a, 0x4bc)
    179179#define BS3_FP64_NORMAL_VAL_2(a_Sign)         RTFLOAT64U_INIT_C(a_Sign, 0xca5cadea1b1ed, 0x3ae)
    180 #define BS3_FP64_NORMAL_VAL_3(a_Sign)         RTFLOAT64U_INIT_C(a_Sign, 0xb5b5b5b5b5b5b, 0xffe)
     180#define BS3_FP64_NORMAL_VAL_3(a_Sign)         RTFLOAT64U_INIT_C(a_Sign, 0xb5b5b5b5b5b5b, 0x7fe)
    181181/* The maximum integer value (all 52 + 1 implied bit of the fraction part set) without losing precision. */
    182182#define BS3_FP64_NORMAL_SAFE_INT_MAX(a_Sign)  RTFLOAT64U_INIT_C(a_Sign, BS3_FP64_FRACTION_NORMAL_MAX, BS3_FP64_EXP_SAFE_INT_MAX)
     
    35383538             /*daz,fz,rc*/ X86_MXCSR_DAZ, X86_MXCSR_FZ, X86_MXCSR_RC_DOWN,
    35393539             /*flags    */ 0, 0 },
     3540    /*
     3541     * Infinity.
     3542     */
     3543    /* 7*/{ { /*src2     */ { BS3_FP64_INF(0), BS3_FP64_ZERO(0), BS3_FP64_INF(1), BS3_FP64_ZERO(0) } },
     3544            { /*src1     */ { BS3_FP64_INF(1), BS3_FP64_ZERO(0), BS3_FP64_INF(0), BS3_FP64_ZERO(0) } },
     3545            { /* =>      */ { BS3_FP64_INF(1), BS3_FP64_ZERO(0), BS3_FP64_INF(1), BS3_FP64_ZERO(0) } },
     3546              /*mask     */ ~X86_MXCSR_IM,
     3547              /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST,
     3548              /*flags    */ 0, 0 },
     3549          { { /*src2     */ { BS3_FP64_INF(0), BS3_FP64_INF(0), BS3_FP64_INF(1), BS3_FP64_INF(1) } },
     3550            { /*src1     */ { BS3_FP64_INF(1), BS3_FP64_INF(0), BS3_FP64_INF(1), BS3_FP64_INF(0) } },
     3551            { /* =>      */ { BS3_FP64_INF(1), BS3_FP64_INF(0), BS3_FP64_INF(0), BS3_FP64_INF(1) } },
     3552              /*mask     */ X86_MXCSR_XCPT_MASK,
     3553              /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST,
     3554              /*flags    */ 0, 0 },
     3555          { { /*src2     */ { BS3_FP64_INF(0), BS3_FP64_INF(1), BS3_FP64_ZERO(1), BS3_FP64_INF(0) } },
     3556            { /*src1     */ { BS3_FP64_INF(1), BS3_FP64_INF(0), BS3_FP64_ZERO(1), BS3_FP64_INF(0) } },
     3557            { /* =>      */ { BS3_FP64_INF(1), BS3_FP64_INF(1), BS3_FP64_ZERO(0), BS3_FP64_INF(0) } },
     3558              /*mask     */ ~X86_MXCSR_XCPT_MASK,
     3559              /*daz,fz,rc*/ 0, X86_MXCSR_FZ, X86_MXCSR_RC_ZERO,
     3560              /*flags    */ 0, 0 },
     3561          { { /*src2     */ { BS3_FP64_INF(0), BS3_FP64_INF(1), BS3_FP64_ZERO(1), BS3_FP64_INF(0) } },
     3562            { /*src1     */ { BS3_FP64_INF(1), BS3_FP64_INF(0), BS3_FP64_ZERO(1), BS3_FP64_INF(0) } },
     3563            { /* =>      */ { BS3_FP64_INF(1), BS3_FP64_INF(1), BS3_FP64_ZERO(0), BS3_FP64_INF(0) } },
     3564              /*mask     */ X86_MXCSR_XCPT_MASK,
     3565              /*daz,fz,rc*/ X86_MXCSR_DAZ, X86_MXCSR_FZ, X86_MXCSR_RC_ZERO,
     3566              /*flags    */ 0, 0 },
     3567          { { /*src2     */ { BS3_FP64_INF(0), BS3_FP64_INF(0),          BS3_FP64_ONE(0), BS3_FP64_INF(0)          } },
     3568            { /*src1     */ { BS3_FP64_ONE(0), BS3_FP64_NORMAL_VAL_0(0), BS3_FP64_INF(0), BS3_FP64_NORMAL_VAL_1(0) } },
     3569            { /* =>      */ { BS3_FP64_INF(0), BS3_FP64_INF(0),          BS3_FP64_INF(0), BS3_FP64_INF(0)          } },
     3570              /*mask     */ X86_MXCSR_XCPT_MASK,
     3571              /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_DOWN,
     3572              /*flags    */ 0, 0 },
     3573          { { /*src2     */ { BS3_FP64_INF(1), BS3_FP64_INF(0),          BS3_FP64_NORMAL_VAL_3(0), BS3_FP64_INF(1)          } },
     3574            { /*src1     */ { BS3_FP64_ONE(1), BS3_FP64_NORMAL_VAL_3(1), BS3_FP64_INF(1),          BS3_FP64_NORMAL_VAL_1(1) } },
     3575            { /* =>      */ { BS3_FP64_INF(0), BS3_FP64_INF(1),          BS3_FP64_INF(1),          BS3_FP64_INF(0)          } },
     3576              /*mask     */ X86_MXCSR_XCPT_MASK,
     3577              /*daz,fz,rc*/ X86_MXCSR_DAZ, X86_MXCSR_FZ, X86_MXCSR_RC_UP,
     3578              /*flags    */ 0, 0 },
    35403579    };
    35413580
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