Changeset 106781 in vbox
- Timestamp:
- Oct 30, 2024 5:25:17 AM (5 months ago)
- svn:sync-xref-src-repo-rev:
- 165673
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-instr-3.c32
r106738 r106781 642 642 #undef BS3_SKIPIT_DO_ARGS 643 643 644 static unsigned g_cSeen, g_cSkipped ;644 static unsigned g_cSeen, g_cSkipped, g_cAvgSkip = BS3_SKIPIT_AVG_SKIP; 645 645 646 646 static void bs3CpuInstrX_ShowTallies(bool always) … … 663 663 /* Cache calls to the relatively expensive random routine */ 664 664 if (!s_uTimes) 665 s_uTimes = bs3CpuInstrX_SimpleRand() % ( BS3_SKIPIT_AVG_SKIP* 2 + 1) + 1;665 s_uTimes = bs3CpuInstrX_SimpleRand() % (g_cAvgSkip * 2 + 1) + 1; 666 666 fSkip = --s_uTimes > 0; 667 667 if (fSkip) … … 1537 1537 { bs3CpuInstr3_vpcmpgtd_YMM10_YMM8_YMM15_icebp_c64, 255, RM_REG, T_AVX_256, 10, 8, 15, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 1538 1538 1539 { bs3CpuInstr3_pcmpgtq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_2, 1, 1, 2, RT_ELEMENTS(s_aValues D), s_aValuesQ },1540 { bs3CpuInstr3_pcmpgtq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_2, 1, 1, 255, RT_ELEMENTS(s_aValues D), s_aValuesQ },1541 { bs3CpuInstr3_vpcmpgtq_XMM2_XMM1_XMM0_icebp_c64, 255, RM_REG, T_AVX_128, 2, 1, 0, RT_ELEMENTS(s_aValues D), s_aValuesQ },1542 { bs3CpuInstr3_vpcmpgtq_XMM2_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 2, 1, 255, RT_ELEMENTS(s_aValues D), s_aValuesQ },1543 { bs3CpuInstr3_vpcmpgtq_YMM2_YMM1_YMM0_icebp_c64, 255, RM_REG, T_AVX_256, 2, 1, 0, RT_ELEMENTS(s_aValues D), s_aValuesQ },1544 { bs3CpuInstr3_vpcmpgtq_YMM2_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 2, 1, 255, RT_ELEMENTS(s_aValues D), s_aValuesQ },1545 { bs3CpuInstr3_vpcmpgtq_YMM10_YMM8_YMM15_icebp_c64, 255, RM_REG, T_AVX_256, 10, 8, 15, RT_ELEMENTS(s_aValues D), s_aValuesQ },1539 { bs3CpuInstr3_pcmpgtq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_2, 1, 1, 2, RT_ELEMENTS(s_aValuesQ), s_aValuesQ }, 1540 { bs3CpuInstr3_pcmpgtq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_2, 1, 1, 255, RT_ELEMENTS(s_aValuesQ), s_aValuesQ }, 1541 { bs3CpuInstr3_vpcmpgtq_XMM2_XMM1_XMM0_icebp_c64, 255, RM_REG, T_AVX_128, 2, 1, 0, RT_ELEMENTS(s_aValuesQ), s_aValuesQ }, 1542 { bs3CpuInstr3_vpcmpgtq_XMM2_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 2, 1, 255, RT_ELEMENTS(s_aValuesQ), s_aValuesQ }, 1543 { bs3CpuInstr3_vpcmpgtq_YMM2_YMM1_YMM0_icebp_c64, 255, RM_REG, T_AVX_256, 2, 1, 0, RT_ELEMENTS(s_aValuesQ), s_aValuesQ }, 1544 { bs3CpuInstr3_vpcmpgtq_YMM2_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 2, 1, 255, RT_ELEMENTS(s_aValuesQ), s_aValuesQ }, 1545 { bs3CpuInstr3_vpcmpgtq_YMM10_YMM8_YMM15_icebp_c64, 255, RM_REG, T_AVX_256, 10, 8, 15, RT_ELEMENTS(s_aValuesQ), s_aValuesQ }, 1546 1546 }; 1547 1547 static BS3CPUINSTR3_TEST1_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST1_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 4204 4204 4205 4205 { bs3CpuInstr3_vmovlps_XMM1_XMM2_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4206 { bs3CpuInstr3_vmovlps_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4206 { bs3CpuInstr3_vmovlps_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4207 4207 { bs3CpuInstr3_vmovlpd_XMM1_XMM2_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4208 { bs3CpuInstr3_vmovlpd_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4208 { bs3CpuInstr3_vmovlpd_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4209 4209 }; 4210 4210 static BS3CPUINSTR3_TEST1_T const s_aTests32[] = … … 4216 4216 4217 4217 { bs3CpuInstr3_vmovlps_XMM1_XMM2_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4218 { bs3CpuInstr3_vmovlps_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4218 { bs3CpuInstr3_vmovlps_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4219 4219 { bs3CpuInstr3_vmovlpd_XMM1_XMM2_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4220 { bs3CpuInstr3_vmovlpd_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4220 { bs3CpuInstr3_vmovlpd_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4221 4221 }; 4222 4222 static BS3CPUINSTR3_TEST1_T const s_aTests64[] = … … 4233 4233 { bs3CpuInstr3_vmovlps_XMM1_XMM2_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4234 4234 { bs3CpuInstr3_vmovlps_XMM10_XMM14_FSxBX_icebp_c64,X86_XCPT_AC, RM_MEM64, T_AVX_128, 10, 14, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4235 { bs3CpuInstr3_vmovlps_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4236 { bs3CpuInstr3_vmovlps_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4235 { bs3CpuInstr3_vmovlps_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4236 { bs3CpuInstr3_vmovlps_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4237 4237 { bs3CpuInstr3_vmovlpd_XMM1_XMM2_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4238 4238 { bs3CpuInstr3_vmovlpd_XMM10_XMM14_FSxBX_icebp_c64,X86_XCPT_AC, RM_MEM64, T_AVX_128, 10, 14, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4239 { bs3CpuInstr3_vmovlpd_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4240 { bs3CpuInstr3_vmovlpd_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4239 { bs3CpuInstr3_vmovlpd_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4240 { bs3CpuInstr3_vmovlpd_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4241 4241 }; 4242 4242 static BS3CPUINSTR3_TEST1_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST1_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 4295 4295 4296 4296 { bs3CpuInstr3_vmovhps_XMM1_XMM2_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4297 { bs3CpuInstr3_vmovhps_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4297 { bs3CpuInstr3_vmovhps_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4298 4298 { bs3CpuInstr3_vmovhpd_XMM1_XMM2_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4299 { bs3CpuInstr3_vmovhpd_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4299 { bs3CpuInstr3_vmovhpd_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4300 4300 }; 4301 4301 static BS3CPUINSTR3_TEST1_T const s_aTests32[] = … … 4307 4307 4308 4308 { bs3CpuInstr3_vmovhps_XMM1_XMM2_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4309 { bs3CpuInstr3_vmovhps_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4309 { bs3CpuInstr3_vmovhps_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4310 4310 { bs3CpuInstr3_vmovhpd_XMM1_XMM2_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4311 { bs3CpuInstr3_vmovhpd_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4311 { bs3CpuInstr3_vmovhpd_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4312 4312 }; 4313 4313 static BS3CPUINSTR3_TEST1_T const s_aTests64[] = … … 4324 4324 { bs3CpuInstr3_vmovhps_XMM1_XMM2_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4325 4325 { bs3CpuInstr3_vmovhps_XMM10_XMM14_FSxBX_icebp_c64,X86_XCPT_AC, RM_MEM64, T_AVX_128, 10, 14, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4326 { bs3CpuInstr3_vmovhps_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4327 { bs3CpuInstr3_vmovhps_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4326 { bs3CpuInstr3_vmovhps_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4327 { bs3CpuInstr3_vmovhps_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4328 4328 { bs3CpuInstr3_vmovhpd_XMM1_XMM2_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 1, 2, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4329 4329 { bs3CpuInstr3_vmovhpd_XMM10_XMM14_FSxBX_icebp_c64,X86_XCPT_AC, RM_MEM64, T_AVX_128, 10, 14, 255, RT_ELEMENTS(s_aValuesLd), s_aValuesLd }, 4330 { bs3CpuInstr3_vmovhpd_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4331 { bs3CpuInstr3_vmovhpd_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt },4330 { bs3CpuInstr3_vmovhpd_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 1, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4331 { bs3CpuInstr3_vmovhpd_FSxBX_XMM9_icebp_c64, X86_XCPT_AC, RM_MEM64, T_AVX_128, 255, 128, 9, RT_ELEMENTS(s_aValuesSt), s_aValuesSt }, 4332 4332 }; 4333 4333 static BS3CPUINSTR3_TEST1_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST1_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 10608 10608 10609 10609 /** 10610 * Test type # 1worker.10610 * Test type #3 worker. 10611 10611 */ 10612 10612 static uint8_t bs3CpuInstr3_WorkerTestType3(uint8_t bMode, BS3CPUINSTR3_TEST3_T const BS3_FAR *paTests, unsigned cTests, … … 10621 10621 PBS3EXTCTX pExtCtxOut; 10622 10622 PBS3EXTCTX pExtCtx = bs3CpuInstr3AllocExtCtxs(&pExtCtxOut); 10623 BS3SETREGCTX pSetRegCtx; 10623 10624 if (!pExtCtx) 10624 10625 return 0; … … 10634 10635 bs3CpuInstr3SetupSseAndAvx(&Ctx, pExtCtx); 10635 10636 pbBuf = bs3CpuInstr3BufSetup(pbBuf, &cbBuf, bMode); 10637 10638 pSetRegCtx.pExtCtx = pExtCtx; 10639 pSetRegCtx.pCtx = &Ctx; 10640 pSetRegCtx.bMode = bMode; 10636 10641 10637 10642 /* … … 10663 10668 bool const fSseInstr = paTests[iTest].enmType >= T_SSE && paTests[iTest].enmType < T_AVX_128; 10664 10669 bool const fAvxInstr = paTests[iTest].enmType >= T_AVX_128; 10670 bool const fMemOp = paTests[iTest].enmRm >= RM_MEM; 10665 10671 uint8_t const cbOperand = paTests[iTest].enmType < T_128BITS ? 64/8 10666 10672 : paTests[iTest].enmType < T_256BITS ? 128/8 : 256/8; … … 10683 10689 continue; 10684 10690 10691 BS3_ASSERT(!fMemOp || BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegDst) || BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegSrc)); 10692 BS3_ASSERT(!(BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegDst) && BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegSrc))); 10693 10694 pSetRegCtx.fZeroYMMHi = fSseInstr; 10695 10685 10696 /* #AC is only raised in ring-3.: */ 10686 10697 if (bXcptExpect == X86_XCPT_AC) … … 10713 10724 */ 10714 10725 /* dest */ 10715 if ( paTests[iTest].iRegDst == UINT8_MAX)10726 if (BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegDst)) 10716 10727 { 10717 BS3_ASSERT(paTests[iTest].enmRm >= RM_MEM);10718 10728 Bs3MemSet(puMemOpAlias, 0xcc, cbMemOp); 10719 10729 if (bXcptExpect == X86_XCPT_DB) … … 10723 10733 } 10724 10734 else if (fMmxInstr) 10725 Bs3ExtCtxSetMm(pExtCtx, paTests[iTest].iRegSrc, ~paValues[iVal].uDstOut.QWords.qw0, BS3EXTCTXTOPMM_ZERO); 10735 { 10736 uint64_t uInverted = ~paValues[iVal].uDstOut.QWords.qw0; 10737 Bs3ExtCtxSetReg(&pSetRegCtx, paTests[iTest].iRegSrc, (PCRTUINT256U)&uInverted); 10738 } 10726 10739 10727 10740 /* source */ 10728 if ( paTests[iTest].iRegSrc == UINT8_MAX)10741 if (BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegSrc)) 10729 10742 { 10730 BS3_ASSERT(paTests[iTest].enmRm >= RM_MEM);10731 BS3_ASSERT(paTests[iTest].iRegDst != UINT8_MAX);10732 10743 Bs3MemCpy(puMemOpAlias, &paValues[iVal].uSrc, cbMemOp); 10733 10744 uMemOpExpect = paValues[iVal].uSrc; 10734 10745 } 10735 else if (fMmxInstr)10736 Bs3ExtCtxSetMm(pExtCtx, paTests[iTest].iRegSrc, paValues[iVal].uSrc.QWords.qw0, BS3EXTCTXTOPMM_ZERO);10737 else if (fSseInstr)10738 Bs3ExtCtxSetXmm(pExtCtx, paTests[iTest].iRegSrc, &paValues[iVal].uSrc.DQWords.dqw0);10739 10746 else 10740 Bs3ExtCtxSet Ymm(pExtCtx, paTests[iTest].iRegSrc, &paValues[iVal].uSrc, 32);10747 Bs3ExtCtxSetReg(&pSetRegCtx, paTests[iTest].iRegSrc, &paValues[iVal].uSrc); 10741 10748 10742 10749 /* Memory pointer. */ 10743 if (paTests[iTest].enmRm >= RM_MEM) 10744 { 10745 BS3_ASSERT( paTests[iTest].iRegDst == UINT8_MAX 10746 || paTests[iTest].iRegSrc == UINT8_MAX); 10750 if (fMemOp) 10747 10751 Bs3RegCtxSetGrpSegFromCurPtr(&Ctx, &Ctx.rbx, &Ctx.fs, puMemOp); 10748 }10749 10752 10750 10753 /* … … 10764 10767 Bs3ExtCtxSetAbridgedFtw(pExtCtx, 0xff); 10765 10768 } 10766 if (bXcptExpect == X86_XCPT_DB && paTests[iTest].iRegDst != UINT8_MAX) 10767 { 10768 if (fMmxInstr) 10769 Bs3ExtCtxSetMm(pExtCtx, paTests[iTest].iRegDst, paValues[iVal].uDstOut.QWords.qw0, BS3EXTCTXTOPMM_SET); 10770 else if (fSseInstr) 10771 Bs3ExtCtxSetXmm(pExtCtx, paTests[iTest].iRegDst, &paValues[iVal].uDstOut.DQWords.dqw0); 10772 else 10773 Bs3ExtCtxSetYmm(pExtCtx, paTests[iTest].iRegDst, &paValues[iVal].uDstOut, cbOperand); 10774 } 10769 if (bXcptExpect == X86_XCPT_DB && !BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegDst)) 10770 Bs3ExtCtxSetReg(&pSetRegCtx, paTests[iTest].iRegDst, &paValues[iVal].uDstOut); 10775 10771 10776 10772 Bs3TestCheckExtCtx(pExtCtxOut, pExtCtx, 0 /*fFlags*/, pszMode, idTestStep); … … 10793 10789 Ctx.cr2.u = 0; 10794 10790 10795 if ( paTests[iTest].enmRm >= RM_MEM10791 if ( fMemOp 10796 10792 && Bs3MemCmp(puMemOpAlias, &uMemOpExpect, cbMemOp) != 0) 10797 10793 Bs3TestFailedF("Expected uMemOp %.*Rhxs, got %.*Rhxs", cbMemOp, &uMemOpExpect, cbMemOp, puMemOpAlias); … … 10866 10862 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 10867 10863 { 10868 { bs3CpuInstr3_pshufw_MM1_MM2_0FFh_icebp_c16, 255, RM_REG, T_AXMMX_OR_SSE, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10869 { bs3CpuInstr3_pshufw_MM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_AXMMX_OR_SSE, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10870 { bs3CpuInstr3_pshufw_MM1_MM2_01Bh_icebp_c16, 255, RM_REG, T_AXMMX_OR_SSE, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10871 { bs3CpuInstr3_pshufw_MM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_AXMMX_OR_SSE, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10864 { bs3CpuInstr3_pshufw_MM1_MM2_0FFh_icebp_c16, 255, RM_REG, T_AXMMX_OR_SSE, MM1, MM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10865 { bs3CpuInstr3_pshufw_MM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_AXMMX_OR_SSE, MM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10866 { bs3CpuInstr3_pshufw_MM1_MM2_01Bh_icebp_c16, 255, RM_REG, T_AXMMX_OR_SSE, MM1, MM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10867 { bs3CpuInstr3_pshufw_MM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_AXMMX_OR_SSE, MM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10872 10868 }; 10873 10869 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 10874 10870 { 10875 { bs3CpuInstr3_pshufw_MM1_MM2_0FFh_icebp_c32, 255, RM_REG, T_AXMMX_OR_SSE, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10876 { bs3CpuInstr3_pshufw_MM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_AXMMX_OR_SSE, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10877 { bs3CpuInstr3_pshufw_MM1_MM2_01Bh_icebp_c32, 255, RM_REG, T_AXMMX_OR_SSE, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10878 { bs3CpuInstr3_pshufw_MM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_AXMMX_OR_SSE, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10871 { bs3CpuInstr3_pshufw_MM1_MM2_0FFh_icebp_c32, 255, RM_REG, T_AXMMX_OR_SSE, MM1, MM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10872 { bs3CpuInstr3_pshufw_MM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_AXMMX_OR_SSE, MM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10873 { bs3CpuInstr3_pshufw_MM1_MM2_01Bh_icebp_c32, 255, RM_REG, T_AXMMX_OR_SSE, MM1, MM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10874 { bs3CpuInstr3_pshufw_MM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_AXMMX_OR_SSE, MM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10879 10875 }; 10880 10876 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 10881 10877 { 10882 { bs3CpuInstr3_pshufw_MM1_MM2_0FFh_icebp_c64, 255, RM_REG, T_AXMMX_OR_SSE, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10883 { bs3CpuInstr3_pshufw_MM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_AXMMX_OR_SSE, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10884 { bs3CpuInstr3_pshufw_MM1_MM2_01Bh_icebp_c64, 255, RM_REG, T_AXMMX_OR_SSE, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10885 { bs3CpuInstr3_pshufw_MM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_AXMMX_OR_SSE, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10878 { bs3CpuInstr3_pshufw_MM1_MM2_0FFh_icebp_c64, 255, RM_REG, T_AXMMX_OR_SSE, MM1, MM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10879 { bs3CpuInstr3_pshufw_MM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_AXMMX_OR_SSE, MM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10880 { bs3CpuInstr3_pshufw_MM1_MM2_01Bh_icebp_c64, 255, RM_REG, T_AXMMX_OR_SSE, MM1, MM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10881 { bs3CpuInstr3_pshufw_MM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_AXMMX_OR_SSE, MM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10886 10882 }; 10887 10883 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 10923 10919 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 10924 10920 { 10925 { bs3CpuInstr3_pshufhw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10926 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10927 { bs3CpuInstr3_pshufhw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10928 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10929 10930 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10931 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10932 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10933 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10934 10935 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10936 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10937 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10938 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10921 { bs3CpuInstr3_pshufhw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10922 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10923 { bs3CpuInstr3_pshufhw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10924 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10925 10926 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10927 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10928 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10929 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10930 10931 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10932 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10933 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10934 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10939 10935 }; 10940 10936 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 10941 10937 { 10942 { bs3CpuInstr3_pshufhw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10943 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10944 { bs3CpuInstr3_pshufhw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10945 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10946 10947 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10948 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10949 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10950 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10951 10952 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10953 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10954 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10955 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10938 { bs3CpuInstr3_pshufhw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10939 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10940 { bs3CpuInstr3_pshufhw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10941 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10942 10943 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10944 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10945 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10946 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10947 10948 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10949 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10950 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10951 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10956 10952 }; 10957 10953 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 10958 10954 { 10959 { bs3CpuInstr3_pshufhw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10960 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10961 { bs3CpuInstr3_pshufhw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10962 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10963 10964 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10965 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10966 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10967 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10968 10969 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10970 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10971 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },10972 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },10973 { bs3CpuInstr3_vpshufhw_YMM12_YMM7_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, 12, 7,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },10974 { bs3CpuInstr3_vpshufhw_YMM9_YMM12_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, 9,12, RT_ELEMENTS(s_aValues1B), s_aValues1B },10955 { bs3CpuInstr3_pshufhw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10956 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10957 { bs3CpuInstr3_pshufhw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10958 { bs3CpuInstr3_pshufhw_XMM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10959 10960 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10961 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10962 { bs3CpuInstr3_vpshufhw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10963 { bs3CpuInstr3_vpshufhw_XMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10964 10965 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10966 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10967 { bs3CpuInstr3_vpshufhw_YMM1_YMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10968 { bs3CpuInstr3_vpshufhw_YMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10969 { bs3CpuInstr3_vpshufhw_YMM12_YMM7_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM12, YMM7, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 10970 { bs3CpuInstr3_vpshufhw_YMM9_YMM12_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, YMM12, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 10975 10971 }; 10976 10972 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11012 11008 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11013 11009 { 11014 { bs3CpuInstr3_pshuflw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11015 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11016 { bs3CpuInstr3_pshuflw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11017 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11018 11019 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11020 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11021 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11022 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11023 11024 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11025 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11026 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11027 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11010 { bs3CpuInstr3_pshuflw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11011 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11012 { bs3CpuInstr3_pshuflw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11013 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11014 11015 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11016 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11017 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11018 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11019 11020 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11021 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11022 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11023 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11028 11024 }; 11029 11025 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11030 11026 { 11031 { bs3CpuInstr3_pshuflw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11032 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11033 { bs3CpuInstr3_pshuflw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11034 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11035 11036 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11037 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11038 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11039 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11040 11041 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11042 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11043 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11044 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11027 { bs3CpuInstr3_pshuflw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11028 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11029 { bs3CpuInstr3_pshuflw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11030 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11031 11032 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11033 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11034 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11035 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11036 11037 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11038 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11039 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11040 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11045 11041 }; 11046 11042 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11047 11043 { 11048 { bs3CpuInstr3_pshuflw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11049 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11050 { bs3CpuInstr3_pshuflw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11051 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11052 11053 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11054 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11055 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11056 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11057 11058 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11059 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11060 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11061 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11062 { bs3CpuInstr3_vpshuflw_YMM12_YMM7_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, 12, 7,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11063 { bs3CpuInstr3_vpshuflw_YMM9_YMM12_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, 9,12, RT_ELEMENTS(s_aValues1B), s_aValues1B },11044 { bs3CpuInstr3_pshuflw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11045 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11046 { bs3CpuInstr3_pshuflw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11047 { bs3CpuInstr3_pshuflw_XMM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11048 11049 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11050 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11051 { bs3CpuInstr3_vpshuflw_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11052 { bs3CpuInstr3_vpshuflw_XMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11053 11054 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11055 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11056 { bs3CpuInstr3_vpshuflw_YMM1_YMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11057 { bs3CpuInstr3_vpshuflw_YMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11058 { bs3CpuInstr3_vpshuflw_YMM12_YMM7_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM12, YMM7, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11059 { bs3CpuInstr3_vpshuflw_YMM9_YMM12_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, YMM12, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11064 11060 }; 11065 11061 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11101 11097 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11102 11098 { 11103 { bs3CpuInstr3_pshufd_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11104 { bs3CpuInstr3_pshufd_XMM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11105 { bs3CpuInstr3_pshufd_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11106 { bs3CpuInstr3_pshufd_XMM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11107 11108 { bs3CpuInstr3_vpshufd_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11109 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11110 { bs3CpuInstr3_vpshufd_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11111 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11112 11113 { bs3CpuInstr3_vpshufd_YMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11114 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11115 { bs3CpuInstr3_vpshufd_YMM1_YMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11116 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11099 { bs3CpuInstr3_pshufd_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11100 { bs3CpuInstr3_pshufd_XMM1_FSxBX_0FFh_icebp_c16, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11101 { bs3CpuInstr3_pshufd_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11102 { bs3CpuInstr3_pshufd_XMM1_FSxBX_01Bh_icebp_c16, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11103 11104 { bs3CpuInstr3_vpshufd_XMM1_XMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11105 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11106 { bs3CpuInstr3_vpshufd_XMM1_XMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11107 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11108 11109 { bs3CpuInstr3_vpshufd_YMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11110 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11111 { bs3CpuInstr3_vpshufd_YMM1_YMM2_01Bh_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11112 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_01Bh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11117 11113 }; 11118 11114 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11119 11115 { 11120 { bs3CpuInstr3_pshufd_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11121 { bs3CpuInstr3_pshufd_XMM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11122 { bs3CpuInstr3_pshufd_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11123 { bs3CpuInstr3_pshufd_XMM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11124 11125 { bs3CpuInstr3_vpshufd_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11126 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11127 { bs3CpuInstr3_vpshufd_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11128 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11129 11130 { bs3CpuInstr3_vpshufd_YMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11131 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11132 { bs3CpuInstr3_vpshufd_YMM1_YMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11133 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11116 { bs3CpuInstr3_pshufd_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11117 { bs3CpuInstr3_pshufd_XMM1_FSxBX_0FFh_icebp_c32, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11118 { bs3CpuInstr3_pshufd_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11119 { bs3CpuInstr3_pshufd_XMM1_FSxBX_01Bh_icebp_c32, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11120 11121 { bs3CpuInstr3_vpshufd_XMM1_XMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11122 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11123 { bs3CpuInstr3_vpshufd_XMM1_XMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11124 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11125 11126 { bs3CpuInstr3_vpshufd_YMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11127 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11128 { bs3CpuInstr3_vpshufd_YMM1_YMM2_01Bh_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11129 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_01Bh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11134 11130 }; 11135 11131 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11136 11132 { 11137 { bs3CpuInstr3_pshufd_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11138 { bs3CpuInstr3_pshufd_XMM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11139 { bs3CpuInstr3_pshufd_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_SSE2, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11140 { bs3CpuInstr3_pshufd_XMM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_SSE2, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11141 11142 { bs3CpuInstr3_vpshufd_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11143 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11144 { bs3CpuInstr3_vpshufd_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11145 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11146 11147 { bs3CpuInstr3_vpshufd_YMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11148 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11149 { bs3CpuInstr3_vpshufd_YMM1_YMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues1B), s_aValues1B },11150 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues1B), s_aValues1B },11151 { bs3CpuInstr3_vpshufd_YMM12_YMM7_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, 12, 7,RT_ELEMENTS(s_aValuesFF), s_aValuesFF },11152 { bs3CpuInstr3_vpshufd_YMM9_YMM12_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, 9,12, RT_ELEMENTS(s_aValues1B), s_aValues1B },11133 { bs3CpuInstr3_pshufd_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11134 { bs3CpuInstr3_pshufd_XMM1_FSxBX_0FFh_icebp_c64, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11135 { bs3CpuInstr3_pshufd_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_SSE2, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11136 { bs3CpuInstr3_pshufd_XMM1_FSxBX_01Bh_icebp_c64, 255, RM_MEM, T_SSE2, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11137 11138 { bs3CpuInstr3_vpshufd_XMM1_XMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11139 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11140 { bs3CpuInstr3_vpshufd_XMM1_XMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11141 { bs3CpuInstr3_vpshufd_XMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11142 11143 { bs3CpuInstr3_vpshufd_YMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11144 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11145 { bs3CpuInstr3_vpshufd_YMM1_YMM2_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, YMM2, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11146 { bs3CpuInstr3_vpshufd_YMM1_FSxBX_01Bh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11147 { bs3CpuInstr3_vpshufd_YMM12_YMM7_0FFh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM12, YMM7, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 11148 { bs3CpuInstr3_vpshufd_YMM9_YMM12_01Bh_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, YMM12, RT_ELEMENTS(s_aValues1B), s_aValues1B }, 11153 11149 }; 11154 11150 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11182 11178 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11183 11179 { 11184 { bs3CpuInstr3_movntdqa_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11185 { bs3CpuInstr3_vmovntdqa_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11186 { bs3CpuInstr3_vmovntdqa_YMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11180 { bs3CpuInstr3_movntdqa_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11181 { bs3CpuInstr3_vmovntdqa_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11182 { bs3CpuInstr3_vmovntdqa_YMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11187 11183 }; 11188 11184 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11189 11185 { 11190 { bs3CpuInstr3_movntdqa_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11191 { bs3CpuInstr3_vmovntdqa_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11192 { bs3CpuInstr3_vmovntdqa_YMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11186 { bs3CpuInstr3_movntdqa_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11187 { bs3CpuInstr3_vmovntdqa_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11188 { bs3CpuInstr3_vmovntdqa_YMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11193 11189 }; 11194 11190 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11195 11191 { 11196 { bs3CpuInstr3_movntdqa_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11197 { bs3CpuInstr3_movntdqa_XMM10_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE4_1, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11198 { bs3CpuInstr3_vmovntdqa_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11199 { bs3CpuInstr3_vmovntdqa_XMM11_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11200 { bs3CpuInstr3_vmovntdqa_YMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11201 { bs3CpuInstr3_vmovntdqa_YMM12_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX2_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11192 { bs3CpuInstr3_movntdqa_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11193 { bs3CpuInstr3_movntdqa_XMM10_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE4_1, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11194 { bs3CpuInstr3_vmovntdqa_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11195 { bs3CpuInstr3_vmovntdqa_XMM11_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11196 { bs3CpuInstr3_vmovntdqa_YMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11197 { bs3CpuInstr3_vmovntdqa_YMM12_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX2_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11202 11198 }; 11203 11199 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11215 11211 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11216 11212 { 11217 { bs3CpuInstr3_movntdq_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE2, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11218 { bs3CpuInstr3_vmovntdq_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11219 { bs3CpuInstr3_vmovntdq_FSxBX_YMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11213 { bs3CpuInstr3_movntdq_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE2, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11214 { bs3CpuInstr3_vmovntdq_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11215 { bs3CpuInstr3_vmovntdq_FSxBX_YMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11220 11216 }; 11221 11217 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11222 11218 { 11223 { bs3CpuInstr3_movntdq_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE2, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11224 { bs3CpuInstr3_vmovntdq_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11225 { bs3CpuInstr3_vmovntdq_FSxBX_YMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11219 { bs3CpuInstr3_movntdq_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE2, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11220 { bs3CpuInstr3_vmovntdq_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11221 { bs3CpuInstr3_vmovntdq_FSxBX_YMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11226 11222 }; 11227 11223 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11228 11224 { 11229 { bs3CpuInstr3_movntdq_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE2, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11230 { bs3CpuInstr3_movntdq_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE2, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11231 { bs3CpuInstr3_vmovntdq_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11232 { bs3CpuInstr3_vmovntdq_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11233 { bs3CpuInstr3_vmovntdq_FSxBX_YMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11234 { bs3CpuInstr3_vmovntdq_FSxBX_YMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11225 { bs3CpuInstr3_movntdq_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE2, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11226 { bs3CpuInstr3_movntdq_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE2, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11227 { bs3CpuInstr3_vmovntdq_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11228 { bs3CpuInstr3_vmovntdq_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11229 { bs3CpuInstr3_vmovntdq_FSxBX_YMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11230 { bs3CpuInstr3_vmovntdq_FSxBX_YMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11235 11231 }; 11236 11232 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11249 11245 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11250 11246 { 11251 { bs3CpuInstr3_movntps_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11252 { bs3CpuInstr3_vmovntps_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11253 { bs3CpuInstr3_vmovntps_FSxBX_YMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11254 11255 { bs3CpuInstr3_movntpd_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11256 { bs3CpuInstr3_vmovntpd_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11257 { bs3CpuInstr3_vmovntpd_FSxBX_YMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11247 { bs3CpuInstr3_movntps_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11248 { bs3CpuInstr3_vmovntps_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11249 { bs3CpuInstr3_vmovntps_FSxBX_YMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11250 11251 { bs3CpuInstr3_movntpd_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11252 { bs3CpuInstr3_vmovntpd_FSxBX_XMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11253 { bs3CpuInstr3_vmovntpd_FSxBX_YMM1_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11258 11254 }; 11259 11255 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11260 11256 { 11261 { bs3CpuInstr3_movntps_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11262 { bs3CpuInstr3_vmovntps_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11263 { bs3CpuInstr3_vmovntps_FSxBX_YMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11264 11265 { bs3CpuInstr3_movntpd_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11266 { bs3CpuInstr3_vmovntpd_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11267 { bs3CpuInstr3_vmovntpd_FSxBX_YMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11257 { bs3CpuInstr3_movntps_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11258 { bs3CpuInstr3_vmovntps_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11259 { bs3CpuInstr3_vmovntps_FSxBX_YMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11260 11261 { bs3CpuInstr3_movntpd_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11262 { bs3CpuInstr3_vmovntpd_FSxBX_XMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11263 { bs3CpuInstr3_vmovntpd_FSxBX_YMM1_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11268 11264 }; 11269 11265 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11270 11266 { 11271 { bs3CpuInstr3_movntps_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11272 { bs3CpuInstr3_movntps_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11273 { bs3CpuInstr3_vmovntps_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11274 { bs3CpuInstr3_vmovntps_FSxBX_XMM11_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 255,11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11275 { bs3CpuInstr3_vmovntps_FSxBX_YMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11276 { bs3CpuInstr3_vmovntps_FSxBX_YMM12_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 255,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11277 11278 { bs3CpuInstr3_movntpd_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11279 { bs3CpuInstr3_movntpd_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11280 { bs3CpuInstr3_vmovntpd_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11281 { bs3CpuInstr3_vmovntpd_FSxBX_XMM11_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 255,11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11282 { bs3CpuInstr3_vmovntpd_FSxBX_YMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11283 { bs3CpuInstr3_vmovntpd_FSxBX_YMM12_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 255,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11267 { bs3CpuInstr3_movntps_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11268 { bs3CpuInstr3_movntps_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11269 { bs3CpuInstr3_vmovntps_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11270 { bs3CpuInstr3_vmovntps_FSxBX_XMM11_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11271 { bs3CpuInstr3_vmovntps_FSxBX_YMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11272 { bs3CpuInstr3_vmovntps_FSxBX_YMM12_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11273 11274 { bs3CpuInstr3_movntpd_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11275 { bs3CpuInstr3_movntpd_FSxBX_XMM10_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11276 { bs3CpuInstr3_vmovntpd_FSxBX_XMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11277 { bs3CpuInstr3_vmovntpd_FSxBX_XMM11_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, FSxBX, XMM11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11278 { bs3CpuInstr3_vmovntpd_FSxBX_YMM1_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11279 { bs3CpuInstr3_vmovntpd_FSxBX_YMM12_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, FSxBX, YMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11284 11280 }; 11285 11281 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11300 11296 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11301 11297 { 11302 { bs3CpuInstr3_movups_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11303 { bs3CpuInstr3_movups_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11304 { bs3CpuInstr3_movups_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11305 11306 { bs3CpuInstr3_vmovups_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11307 { bs3CpuInstr3_vmovups_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11308 { bs3CpuInstr3_vmovups_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11309 11310 { bs3CpuInstr3_vmovups_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11311 { bs3CpuInstr3_vmovups_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11312 { bs3CpuInstr3_vmovups_FSxBX_YMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11298 { bs3CpuInstr3_movups_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11299 { bs3CpuInstr3_movups_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11300 { bs3CpuInstr3_movups_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11301 11302 { bs3CpuInstr3_vmovups_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11303 { bs3CpuInstr3_vmovups_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11304 { bs3CpuInstr3_vmovups_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11305 11306 { bs3CpuInstr3_vmovups_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11307 { bs3CpuInstr3_vmovups_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11308 { bs3CpuInstr3_vmovups_FSxBX_YMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11313 11309 }; 11314 11310 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11315 11311 { 11316 { bs3CpuInstr3_movups_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11317 { bs3CpuInstr3_movups_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11318 { bs3CpuInstr3_movups_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11319 11320 { bs3CpuInstr3_vmovups_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11321 { bs3CpuInstr3_vmovups_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11322 { bs3CpuInstr3_vmovups_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11323 11324 { bs3CpuInstr3_vmovups_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11325 { bs3CpuInstr3_vmovups_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11326 { bs3CpuInstr3_vmovups_FSxBX_YMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11312 { bs3CpuInstr3_movups_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11313 { bs3CpuInstr3_movups_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11314 { bs3CpuInstr3_movups_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11315 11316 { bs3CpuInstr3_vmovups_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11317 { bs3CpuInstr3_vmovups_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11318 { bs3CpuInstr3_vmovups_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11319 11320 { bs3CpuInstr3_vmovups_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11321 { bs3CpuInstr3_vmovups_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11322 { bs3CpuInstr3_vmovups_FSxBX_YMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11327 11323 }; 11328 11324 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11329 11325 { 11330 { bs3CpuInstr3_movups_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11331 { bs3CpuInstr3_movups_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11332 { bs3CpuInstr3_movups_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11333 { bs3CpuInstr3_movups_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11334 { bs3CpuInstr3_movups_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11335 { bs3CpuInstr3_movups_FSxBX_XMM10_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11336 11337 { bs3CpuInstr3_vmovups_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11338 { bs3CpuInstr3_vmovups_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11339 { bs3CpuInstr3_vmovups_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11340 { bs3CpuInstr3_vmovups_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11341 { bs3CpuInstr3_vmovups_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11342 { bs3CpuInstr3_vmovups_FSxBX_XMM11_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 255,11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11343 11344 { bs3CpuInstr3_vmovups_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11345 { bs3CpuInstr3_vmovups_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11346 { bs3CpuInstr3_vmovups_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11347 { bs3CpuInstr3_vmovups_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11348 { bs3CpuInstr3_vmovups_FSxBX_YMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11349 { bs3CpuInstr3_vmovups_FSxBX_YMM12_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 255,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11326 { bs3CpuInstr3_movups_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11327 { bs3CpuInstr3_movups_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11328 { bs3CpuInstr3_movups_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11329 { bs3CpuInstr3_movups_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11330 { bs3CpuInstr3_movups_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11331 { bs3CpuInstr3_movups_FSxBX_XMM10_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11332 11333 { bs3CpuInstr3_vmovups_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11334 { bs3CpuInstr3_vmovups_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11335 { bs3CpuInstr3_vmovups_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11336 { bs3CpuInstr3_vmovups_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11337 { bs3CpuInstr3_vmovups_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11338 { bs3CpuInstr3_vmovups_FSxBX_XMM11_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11339 11340 { bs3CpuInstr3_vmovups_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11341 { bs3CpuInstr3_vmovups_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11342 { bs3CpuInstr3_vmovups_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11343 { bs3CpuInstr3_vmovups_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11344 { bs3CpuInstr3_vmovups_FSxBX_YMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11345 { bs3CpuInstr3_vmovups_FSxBX_YMM12_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11350 11346 }; 11351 11347 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11366 11362 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11367 11363 { 11368 { bs3CpuInstr3_movupd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11369 { bs3CpuInstr3_movupd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11370 { bs3CpuInstr3_movupd_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11371 11372 { bs3CpuInstr3_vmovupd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11373 { bs3CpuInstr3_vmovupd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11374 { bs3CpuInstr3_vmovupd_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11375 11376 { bs3CpuInstr3_vmovupd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11377 { bs3CpuInstr3_vmovupd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11378 { bs3CpuInstr3_vmovupd_FSxBX_YMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11364 { bs3CpuInstr3_movupd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11365 { bs3CpuInstr3_movupd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11366 { bs3CpuInstr3_movupd_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11367 11368 { bs3CpuInstr3_vmovupd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11369 { bs3CpuInstr3_vmovupd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11370 { bs3CpuInstr3_vmovupd_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11371 11372 { bs3CpuInstr3_vmovupd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11373 { bs3CpuInstr3_vmovupd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11374 { bs3CpuInstr3_vmovupd_FSxBX_YMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11379 11375 }; 11380 11376 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11381 11377 { 11382 { bs3CpuInstr3_movupd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11383 { bs3CpuInstr3_movupd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11384 { bs3CpuInstr3_movupd_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11385 11386 { bs3CpuInstr3_vmovupd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11387 { bs3CpuInstr3_vmovupd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11388 { bs3CpuInstr3_vmovupd_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11389 11390 { bs3CpuInstr3_vmovupd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11391 { bs3CpuInstr3_vmovupd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11392 { bs3CpuInstr3_vmovupd_FSxBX_YMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11378 { bs3CpuInstr3_movupd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11379 { bs3CpuInstr3_movupd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11380 { bs3CpuInstr3_movupd_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11381 11382 { bs3CpuInstr3_vmovupd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11383 { bs3CpuInstr3_vmovupd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11384 { bs3CpuInstr3_vmovupd_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11385 11386 { bs3CpuInstr3_vmovupd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11387 { bs3CpuInstr3_vmovupd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11388 { bs3CpuInstr3_vmovupd_FSxBX_YMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11393 11389 }; 11394 11390 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11395 11391 { 11396 { bs3CpuInstr3_movupd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11397 { bs3CpuInstr3_movupd_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11398 { bs3CpuInstr3_movupd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11399 { bs3CpuInstr3_movupd_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11400 { bs3CpuInstr3_movupd_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11401 { bs3CpuInstr3_movupd_FSxBX_XMM10_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11402 11403 { bs3CpuInstr3_vmovupd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11404 { bs3CpuInstr3_vmovupd_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11405 { bs3CpuInstr3_vmovupd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11406 { bs3CpuInstr3_vmovupd_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11407 { bs3CpuInstr3_vmovupd_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11408 { bs3CpuInstr3_vmovupd_FSxBX_XMM11_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 255,11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11409 11410 { bs3CpuInstr3_vmovupd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11411 { bs3CpuInstr3_vmovupd_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11412 { bs3CpuInstr3_vmovupd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11413 { bs3CpuInstr3_vmovupd_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11414 { bs3CpuInstr3_vmovupd_FSxBX_YMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11415 { bs3CpuInstr3_vmovupd_FSxBX_YMM12_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 255,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11392 { bs3CpuInstr3_movupd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11393 { bs3CpuInstr3_movupd_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11394 { bs3CpuInstr3_movupd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11395 { bs3CpuInstr3_movupd_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11396 { bs3CpuInstr3_movupd_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11397 { bs3CpuInstr3_movupd_FSxBX_XMM10_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11398 11399 { bs3CpuInstr3_vmovupd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11400 { bs3CpuInstr3_vmovupd_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11401 { bs3CpuInstr3_vmovupd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11402 { bs3CpuInstr3_vmovupd_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11403 { bs3CpuInstr3_vmovupd_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11404 { bs3CpuInstr3_vmovupd_FSxBX_XMM11_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11405 11406 { bs3CpuInstr3_vmovupd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11407 { bs3CpuInstr3_vmovupd_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11408 { bs3CpuInstr3_vmovupd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11409 { bs3CpuInstr3_vmovupd_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11410 { bs3CpuInstr3_vmovupd_FSxBX_YMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11411 { bs3CpuInstr3_vmovupd_FSxBX_YMM12_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11416 11412 }; 11417 11413 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11441 11437 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11442 11438 { 11443 { bs3CpuInstr3_movsldup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11444 { bs3CpuInstr3_movsldup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11445 11446 { bs3CpuInstr3_vmovsldup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11447 { bs3CpuInstr3_vmovsldup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11448 11449 { bs3CpuInstr3_vmovsldup_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11450 { bs3CpuInstr3_vmovsldup_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11439 { bs3CpuInstr3_movsldup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11440 { bs3CpuInstr3_movsldup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11441 11442 { bs3CpuInstr3_vmovsldup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11443 { bs3CpuInstr3_vmovsldup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11444 11445 { bs3CpuInstr3_vmovsldup_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11446 { bs3CpuInstr3_vmovsldup_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11451 11447 }; 11452 11448 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11453 11449 { 11454 { bs3CpuInstr3_movsldup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11455 { bs3CpuInstr3_movsldup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11456 11457 { bs3CpuInstr3_vmovsldup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11458 { bs3CpuInstr3_vmovsldup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11459 11460 { bs3CpuInstr3_vmovsldup_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11461 { bs3CpuInstr3_vmovsldup_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11450 { bs3CpuInstr3_movsldup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11451 { bs3CpuInstr3_movsldup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11452 11453 { bs3CpuInstr3_vmovsldup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11454 { bs3CpuInstr3_vmovsldup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11455 11456 { bs3CpuInstr3_vmovsldup_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11457 { bs3CpuInstr3_vmovsldup_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11462 11458 }; 11463 11459 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11464 11460 { 11465 { bs3CpuInstr3_movsldup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11466 { bs3CpuInstr3_movsldup_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE3, 8,12, RT_ELEMENTS(s_aValues), s_aValues },11467 { bs3CpuInstr3_movsldup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11468 { bs3CpuInstr3_movsldup_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 10, 255, RT_ELEMENTS(s_aValues), s_aValues },11469 11470 { bs3CpuInstr3_vmovsldup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11471 { bs3CpuInstr3_vmovsldup_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(s_aValues), s_aValues },11472 { bs3CpuInstr3_vmovsldup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11473 { bs3CpuInstr3_vmovsldup_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(s_aValues), s_aValues },11474 11475 { bs3CpuInstr3_vmovsldup_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11476 { bs3CpuInstr3_vmovsldup_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(s_aValues), s_aValues },11477 { bs3CpuInstr3_vmovsldup_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11478 { bs3CpuInstr3_vmovsldup_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(s_aValues), s_aValues },11461 { bs3CpuInstr3_movsldup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11462 { bs3CpuInstr3_movsldup_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE3, XMM8, XMM12, RT_ELEMENTS(s_aValues), s_aValues }, 11463 { bs3CpuInstr3_movsldup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11464 { bs3CpuInstr3_movsldup_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM10, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11465 11466 { bs3CpuInstr3_vmovsldup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11467 { bs3CpuInstr3_vmovsldup_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(s_aValues), s_aValues }, 11468 { bs3CpuInstr3_vmovsldup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11469 { bs3CpuInstr3_vmovsldup_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11470 11471 { bs3CpuInstr3_vmovsldup_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11472 { bs3CpuInstr3_vmovsldup_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(s_aValues), s_aValues }, 11473 { bs3CpuInstr3_vmovsldup_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11474 { bs3CpuInstr3_vmovsldup_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11479 11475 }; 11480 11476 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11504 11500 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11505 11501 { 11506 { bs3CpuInstr3_movshdup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11507 { bs3CpuInstr3_movshdup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11508 11509 { bs3CpuInstr3_vmovshdup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11510 { bs3CpuInstr3_vmovshdup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11511 11512 { bs3CpuInstr3_vmovshdup_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11513 { bs3CpuInstr3_vmovshdup_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11502 { bs3CpuInstr3_movshdup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11503 { bs3CpuInstr3_movshdup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11504 11505 { bs3CpuInstr3_vmovshdup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11506 { bs3CpuInstr3_vmovshdup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11507 11508 { bs3CpuInstr3_vmovshdup_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11509 { bs3CpuInstr3_vmovshdup_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11514 11510 }; 11515 11511 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11516 11512 { 11517 { bs3CpuInstr3_movshdup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11518 { bs3CpuInstr3_movshdup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11519 11520 { bs3CpuInstr3_vmovshdup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11521 { bs3CpuInstr3_vmovshdup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11522 11523 { bs3CpuInstr3_vmovshdup_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11524 { bs3CpuInstr3_vmovshdup_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11513 { bs3CpuInstr3_movshdup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11514 { bs3CpuInstr3_movshdup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11515 11516 { bs3CpuInstr3_vmovshdup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11517 { bs3CpuInstr3_vmovshdup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11518 11519 { bs3CpuInstr3_vmovshdup_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11520 { bs3CpuInstr3_vmovshdup_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11525 11521 }; 11526 11522 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11527 11523 { 11528 { bs3CpuInstr3_movshdup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11529 { bs3CpuInstr3_movshdup_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE3, 8,12, RT_ELEMENTS(s_aValues), s_aValues },11530 { bs3CpuInstr3_movshdup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11531 { bs3CpuInstr3_movshdup_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 10, 255, RT_ELEMENTS(s_aValues), s_aValues },11532 11533 { bs3CpuInstr3_vmovshdup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11534 { bs3CpuInstr3_vmovshdup_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(s_aValues), s_aValues },11535 { bs3CpuInstr3_vmovshdup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11536 { bs3CpuInstr3_vmovshdup_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(s_aValues), s_aValues },11537 11538 { bs3CpuInstr3_vmovshdup_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11539 { bs3CpuInstr3_vmovshdup_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(s_aValues), s_aValues },11540 { bs3CpuInstr3_vmovshdup_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11541 { bs3CpuInstr3_vmovshdup_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(s_aValues), s_aValues },11524 { bs3CpuInstr3_movshdup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11525 { bs3CpuInstr3_movshdup_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE3, XMM8, XMM12, RT_ELEMENTS(s_aValues), s_aValues }, 11526 { bs3CpuInstr3_movshdup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11527 { bs3CpuInstr3_movshdup_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM10, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11528 11529 { bs3CpuInstr3_vmovshdup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11530 { bs3CpuInstr3_vmovshdup_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(s_aValues), s_aValues }, 11531 { bs3CpuInstr3_vmovshdup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11532 { bs3CpuInstr3_vmovshdup_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11533 11534 { bs3CpuInstr3_vmovshdup_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11535 { bs3CpuInstr3_vmovshdup_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(s_aValues), s_aValues }, 11536 { bs3CpuInstr3_vmovshdup_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11537 { bs3CpuInstr3_vmovshdup_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11542 11538 }; 11543 11539 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11570 11566 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11571 11567 { 11572 { bs3CpuInstr3_movddup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11573 { bs3CpuInstr3_movddup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11574 11575 { bs3CpuInstr3_vmovddup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11576 { bs3CpuInstr3_vmovddup_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11577 11578 { bs3CpuInstr3_vmovddup_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11579 { bs3CpuInstr3_vmovddup_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11568 { bs3CpuInstr3_movddup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11569 { bs3CpuInstr3_movddup_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11570 11571 { bs3CpuInstr3_vmovddup_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11572 { bs3CpuInstr3_vmovddup_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11573 11574 { bs3CpuInstr3_vmovddup_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11575 { bs3CpuInstr3_vmovddup_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11580 11576 }; 11581 11577 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11582 11578 { 11583 { bs3CpuInstr3_movddup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11584 { bs3CpuInstr3_movddup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11585 11586 { bs3CpuInstr3_vmovddup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11587 { bs3CpuInstr3_vmovddup_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11588 11589 { bs3CpuInstr3_vmovddup_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11590 { bs3CpuInstr3_vmovddup_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11579 { bs3CpuInstr3_movddup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11580 { bs3CpuInstr3_movddup_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11581 11582 { bs3CpuInstr3_vmovddup_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11583 { bs3CpuInstr3_vmovddup_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11584 11585 { bs3CpuInstr3_vmovddup_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11586 { bs3CpuInstr3_vmovddup_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11591 11587 }; 11592 11588 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11593 11589 { 11594 { bs3CpuInstr3_movddup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE3, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11595 { bs3CpuInstr3_movddup_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE3, 8,12, RT_ELEMENTS(s_aValues), s_aValues },11596 { bs3CpuInstr3_movddup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11597 { bs3CpuInstr3_movddup_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 10, 255, RT_ELEMENTS(s_aValues), s_aValues },11598 11599 { bs3CpuInstr3_vmovddup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11600 { bs3CpuInstr3_vmovddup_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(s_aValues), s_aValues },11601 { bs3CpuInstr3_vmovddup_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11602 { bs3CpuInstr3_vmovddup_XMM11_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(s_aValues), s_aValues },11603 11604 { bs3CpuInstr3_vmovddup_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },11605 { bs3CpuInstr3_vmovddup_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(s_aValues), s_aValues },11606 { bs3CpuInstr3_vmovddup_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },11607 { bs3CpuInstr3_vmovddup_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(s_aValues), s_aValues },11590 { bs3CpuInstr3_movddup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE3, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11591 { bs3CpuInstr3_movddup_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE3, XMM8, XMM12, RT_ELEMENTS(s_aValues), s_aValues }, 11592 { bs3CpuInstr3_movddup_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11593 { bs3CpuInstr3_movddup_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM10, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11594 11595 { bs3CpuInstr3_vmovddup_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11596 { bs3CpuInstr3_vmovddup_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(s_aValues), s_aValues }, 11597 { bs3CpuInstr3_vmovddup_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11598 { bs3CpuInstr3_vmovddup_XMM11_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11599 11600 { bs3CpuInstr3_vmovddup_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 11601 { bs3CpuInstr3_vmovddup_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(s_aValues), s_aValues }, 11602 { bs3CpuInstr3_vmovddup_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11603 { bs3CpuInstr3_vmovddup_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 11608 11604 }; 11609 11605 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11622 11618 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11623 11619 { 11624 { bs3CpuInstr3_movaps_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11625 { bs3CpuInstr3_movaps_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11626 { bs3CpuInstr3_movapd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11627 { bs3CpuInstr3_movapd_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11628 11629 { bs3CpuInstr3_vmovaps_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11630 { bs3CpuInstr3_vmovaps_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11631 { bs3CpuInstr3_vmovapd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11632 { bs3CpuInstr3_vmovapd_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11633 11634 { bs3CpuInstr3_vmovaps_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11635 { bs3CpuInstr3_vmovaps_YMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11636 { bs3CpuInstr3_vmovapd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11637 { bs3CpuInstr3_vmovapd_YMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11620 { bs3CpuInstr3_movaps_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11621 { bs3CpuInstr3_movaps_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11622 { bs3CpuInstr3_movapd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11623 { bs3CpuInstr3_movapd_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11624 11625 { bs3CpuInstr3_vmovaps_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11626 { bs3CpuInstr3_vmovaps_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11627 { bs3CpuInstr3_vmovapd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11628 { bs3CpuInstr3_vmovapd_XMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11629 11630 { bs3CpuInstr3_vmovaps_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11631 { bs3CpuInstr3_vmovaps_YMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11632 { bs3CpuInstr3_vmovapd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11633 { bs3CpuInstr3_vmovapd_YMM1_FSxBX_icebp_c16, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11638 11634 }; 11639 11635 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11640 11636 { 11641 { bs3CpuInstr3_movaps_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11642 { bs3CpuInstr3_movaps_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11643 { bs3CpuInstr3_movapd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11644 { bs3CpuInstr3_movapd_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11645 11646 { bs3CpuInstr3_vmovaps_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11647 { bs3CpuInstr3_vmovaps_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11648 { bs3CpuInstr3_vmovapd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11649 { bs3CpuInstr3_vmovapd_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11650 11651 { bs3CpuInstr3_vmovaps_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11652 { bs3CpuInstr3_vmovaps_YMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11653 { bs3CpuInstr3_vmovapd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11654 { bs3CpuInstr3_vmovapd_YMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11637 { bs3CpuInstr3_movaps_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11638 { bs3CpuInstr3_movaps_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11639 { bs3CpuInstr3_movapd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11640 { bs3CpuInstr3_movapd_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11641 11642 { bs3CpuInstr3_vmovaps_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11643 { bs3CpuInstr3_vmovaps_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11644 { bs3CpuInstr3_vmovapd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11645 { bs3CpuInstr3_vmovapd_XMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11646 11647 { bs3CpuInstr3_vmovaps_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11648 { bs3CpuInstr3_vmovaps_YMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11649 { bs3CpuInstr3_vmovapd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11650 { bs3CpuInstr3_vmovapd_YMM1_FSxBX_icebp_c32, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11655 11651 }; 11656 11652 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11657 11653 { 11658 { bs3CpuInstr3_movaps_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11659 { bs3CpuInstr3_movaps_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11660 { bs3CpuInstr3_movaps_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11661 { bs3CpuInstr3_movaps_XMM10_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11662 { bs3CpuInstr3_movapd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11663 { bs3CpuInstr3_movapd_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11664 { bs3CpuInstr3_movapd_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11665 { bs3CpuInstr3_movapd_XMM10_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11666 11667 { bs3CpuInstr3_vmovaps_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11668 { bs3CpuInstr3_vmovaps_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11669 { bs3CpuInstr3_vmovaps_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11670 { bs3CpuInstr3_vmovaps_XMM11_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11671 { bs3CpuInstr3_vmovapd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11672 { bs3CpuInstr3_vmovapd_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11673 { bs3CpuInstr3_vmovapd_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11674 { bs3CpuInstr3_vmovapd_XMM11_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11675 11676 { bs3CpuInstr3_vmovaps_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11677 { bs3CpuInstr3_vmovaps_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11678 { bs3CpuInstr3_vmovaps_YMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11679 { bs3CpuInstr3_vmovaps_YMM12_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11680 { bs3CpuInstr3_vmovapd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11681 { bs3CpuInstr3_vmovapd_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11682 { bs3CpuInstr3_vmovapd_YMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11683 { bs3CpuInstr3_vmovapd_YMM12_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11654 { bs3CpuInstr3_movaps_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11655 { bs3CpuInstr3_movaps_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11656 { bs3CpuInstr3_movaps_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11657 { bs3CpuInstr3_movaps_XMM10_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11658 { bs3CpuInstr3_movapd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11659 { bs3CpuInstr3_movapd_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11660 { bs3CpuInstr3_movapd_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11661 { bs3CpuInstr3_movapd_XMM10_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_SSE, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11662 11663 { bs3CpuInstr3_vmovaps_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11664 { bs3CpuInstr3_vmovaps_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11665 { bs3CpuInstr3_vmovaps_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11666 { bs3CpuInstr3_vmovaps_XMM11_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11667 { bs3CpuInstr3_vmovapd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11668 { bs3CpuInstr3_vmovapd_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11669 { bs3CpuInstr3_vmovapd_XMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11670 { bs3CpuInstr3_vmovapd_XMM11_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11671 11672 { bs3CpuInstr3_vmovaps_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11673 { bs3CpuInstr3_vmovaps_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11674 { bs3CpuInstr3_vmovaps_YMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11675 { bs3CpuInstr3_vmovaps_YMM12_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11676 { bs3CpuInstr3_vmovapd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11677 { bs3CpuInstr3_vmovapd_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11678 { bs3CpuInstr3_vmovapd_YMM1_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11679 { bs3CpuInstr3_vmovapd_YMM12_FSxBX_icebp_c64, X86_XCPT_GP, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11684 11680 }; 11685 11681 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11697 11693 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11698 11694 { 11699 { bs3CpuInstr3_movdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11700 { bs3CpuInstr3_07f_movdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11701 { bs3CpuInstr3_movdqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11702 { bs3CpuInstr3_movdqu_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11703 11704 { bs3CpuInstr3_vmovdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11705 { bs3CpuInstr3_07f_vmovdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11706 { bs3CpuInstr3_vmovdqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11707 { bs3CpuInstr3_vmovdqu_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11708 11709 { bs3CpuInstr3_vmovdqu_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11710 { bs3CpuInstr3_07f_vmovdqu_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11711 { bs3CpuInstr3_vmovdqu_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11712 { bs3CpuInstr3_vmovdqu_FSxBX_YMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11695 { bs3CpuInstr3_movdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11696 { bs3CpuInstr3_07f_movdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11697 { bs3CpuInstr3_movdqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11698 { bs3CpuInstr3_movdqu_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11699 11700 { bs3CpuInstr3_vmovdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11701 { bs3CpuInstr3_07f_vmovdqu_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11702 { bs3CpuInstr3_vmovdqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11703 { bs3CpuInstr3_vmovdqu_FSxBX_XMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11704 11705 { bs3CpuInstr3_vmovdqu_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11706 { bs3CpuInstr3_07f_vmovdqu_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11707 { bs3CpuInstr3_vmovdqu_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11708 { bs3CpuInstr3_vmovdqu_FSxBX_YMM1_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11713 11709 }; 11714 11710 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11715 11711 { 11716 { bs3CpuInstr3_movdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11717 { bs3CpuInstr3_07f_movdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11718 { bs3CpuInstr3_movdqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11719 { bs3CpuInstr3_movdqu_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11720 11721 { bs3CpuInstr3_vmovdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11722 { bs3CpuInstr3_07f_vmovdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11723 { bs3CpuInstr3_vmovdqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11724 { bs3CpuInstr3_vmovdqu_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11725 11726 { bs3CpuInstr3_vmovdqu_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11727 { bs3CpuInstr3_07f_vmovdqu_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11728 { bs3CpuInstr3_vmovdqu_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11729 { bs3CpuInstr3_vmovdqu_FSxBX_YMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11712 { bs3CpuInstr3_movdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11713 { bs3CpuInstr3_07f_movdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11714 { bs3CpuInstr3_movdqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11715 { bs3CpuInstr3_movdqu_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11716 11717 { bs3CpuInstr3_vmovdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11718 { bs3CpuInstr3_07f_vmovdqu_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11719 { bs3CpuInstr3_vmovdqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11720 { bs3CpuInstr3_vmovdqu_FSxBX_XMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11721 11722 { bs3CpuInstr3_vmovdqu_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11723 { bs3CpuInstr3_07f_vmovdqu_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11724 { bs3CpuInstr3_vmovdqu_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11725 { bs3CpuInstr3_vmovdqu_FSxBX_YMM1_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11730 11726 }; 11731 11727 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11732 11728 { 11733 { bs3CpuInstr3_movdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11734 { bs3CpuInstr3_07f_movdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11735 { bs3CpuInstr3_movdqu_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11736 { bs3CpuInstr3_07f_movdqu_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11737 { bs3CpuInstr3_movdqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11738 { bs3CpuInstr3_movdqu_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11739 { bs3CpuInstr3_movdqu_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11740 { bs3CpuInstr3_movdqu_FSxBX_XMM10_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11741 11742 { bs3CpuInstr3_vmovdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11743 { bs3CpuInstr3_07f_vmovdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11744 { bs3CpuInstr3_vmovdqu_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 7,14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11745 { bs3CpuInstr3_vmovdqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11746 { bs3CpuInstr3_vmovdqu_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11747 { bs3CpuInstr3_vmovdqu_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11748 { bs3CpuInstr3_vmovdqu_FSxBX_XMM11_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 255,11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11749 11750 { bs3CpuInstr3_vmovdqu_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11751 { bs3CpuInstr3_07f_vmovdqu_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11752 { bs3CpuInstr3_vmovdqu_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11753 { bs3CpuInstr3_vmovdqu_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11754 { bs3CpuInstr3_vmovdqu_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11755 { bs3CpuInstr3_vmovdqu_FSxBX_YMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11756 { bs3CpuInstr3_vmovdqu_FSxBX_YMM12_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 255,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11729 { bs3CpuInstr3_movdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11730 { bs3CpuInstr3_07f_movdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11731 { bs3CpuInstr3_movdqu_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11732 { bs3CpuInstr3_07f_movdqu_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11733 { bs3CpuInstr3_movdqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11734 { bs3CpuInstr3_movdqu_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11735 { bs3CpuInstr3_movdqu_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11736 { bs3CpuInstr3_movdqu_FSxBX_XMM10_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11737 11738 { bs3CpuInstr3_vmovdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11739 { bs3CpuInstr3_07f_vmovdqu_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11740 { bs3CpuInstr3_vmovdqu_XMM7_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM7, XMM14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11741 { bs3CpuInstr3_vmovdqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11742 { bs3CpuInstr3_vmovdqu_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11743 { bs3CpuInstr3_vmovdqu_FSxBX_XMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11744 { bs3CpuInstr3_vmovdqu_FSxBX_XMM11_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, FSxBX, XMM11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11745 11746 { bs3CpuInstr3_vmovdqu_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11747 { bs3CpuInstr3_07f_vmovdqu_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11748 { bs3CpuInstr3_vmovdqu_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11749 { bs3CpuInstr3_vmovdqu_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11750 { bs3CpuInstr3_vmovdqu_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11751 { bs3CpuInstr3_vmovdqu_FSxBX_YMM1_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11752 { bs3CpuInstr3_vmovdqu_FSxBX_YMM12_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, FSxBX, YMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11757 11753 }; 11758 11754 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11770 11766 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11771 11767 { 11772 { bs3CpuInstr3_movdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11773 { bs3CpuInstr3_07f_movdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11774 { bs3CpuInstr3_movdqa_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11775 { bs3CpuInstr3_movdqa_FSxBX_XMM1_icebp_c16, 255, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11776 11777 { bs3CpuInstr3_vmovdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11778 { bs3CpuInstr3_07f_vmovdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11779 { bs3CpuInstr3_vmovdqa_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11780 { bs3CpuInstr3_vmovdqa_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11781 11782 { bs3CpuInstr3_vmovdqa_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11783 { bs3CpuInstr3_07f_vmovdqa_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11784 { bs3CpuInstr3_vmovdqa_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11785 { bs3CpuInstr3_vmovdqa_FSxBX_YMM1_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11768 { bs3CpuInstr3_movdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11769 { bs3CpuInstr3_07f_movdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11770 { bs3CpuInstr3_movdqa_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11771 { bs3CpuInstr3_movdqa_FSxBX_XMM1_icebp_c16, 255, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11772 11773 { bs3CpuInstr3_vmovdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11774 { bs3CpuInstr3_07f_vmovdqa_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11775 { bs3CpuInstr3_vmovdqa_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11776 { bs3CpuInstr3_vmovdqa_FSxBX_XMM1_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11777 11778 { bs3CpuInstr3_vmovdqa_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11779 { bs3CpuInstr3_07f_vmovdqa_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11780 { bs3CpuInstr3_vmovdqa_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11781 { bs3CpuInstr3_vmovdqa_FSxBX_YMM1_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11786 11782 }; 11787 11783 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11788 11784 { 11789 { bs3CpuInstr3_movdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11790 { bs3CpuInstr3_07f_movdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11791 { bs3CpuInstr3_movdqa_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11792 { bs3CpuInstr3_movdqa_FSxBX_XMM1_icebp_c32, 255, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11793 11794 { bs3CpuInstr3_vmovdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11795 { bs3CpuInstr3_07f_vmovdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11796 { bs3CpuInstr3_vmovdqa_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11797 { bs3CpuInstr3_vmovdqa_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11798 11799 { bs3CpuInstr3_vmovdqa_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11800 { bs3CpuInstr3_07f_vmovdqa_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11801 { bs3CpuInstr3_vmovdqa_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11802 { bs3CpuInstr3_vmovdqa_FSxBX_YMM1_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11785 { bs3CpuInstr3_movdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11786 { bs3CpuInstr3_07f_movdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11787 { bs3CpuInstr3_movdqa_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11788 { bs3CpuInstr3_movdqa_FSxBX_XMM1_icebp_c32, 255, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11789 11790 { bs3CpuInstr3_vmovdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11791 { bs3CpuInstr3_07f_vmovdqa_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11792 { bs3CpuInstr3_vmovdqa_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11793 { bs3CpuInstr3_vmovdqa_FSxBX_XMM1_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11794 11795 { bs3CpuInstr3_vmovdqa_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11796 { bs3CpuInstr3_07f_vmovdqa_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11797 { bs3CpuInstr3_vmovdqa_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11798 { bs3CpuInstr3_vmovdqa_FSxBX_YMM1_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11803 11799 }; 11804 11800 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11805 11801 { 11806 { bs3CpuInstr3_movdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11807 { bs3CpuInstr3_07f_movdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11808 { bs3CpuInstr3_movdqa_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11809 { bs3CpuInstr3_07f_movdqa_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, 8,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11810 { bs3CpuInstr3_movdqa_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11811 { bs3CpuInstr3_movdqa_XMM10_FSxBX_icebp_c64, 255, RM_MEM, T_SSE, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11812 { bs3CpuInstr3_movdqa_FSxBX_XMM1_icebp_c64, 255, RM_MEM, T_SSE, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11813 { bs3CpuInstr3_movdqa_FSxBX_XMM10_icebp_c64, 255, RM_MEM, T_SSE, 255,10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11814 11815 { bs3CpuInstr3_vmovdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11816 { bs3CpuInstr3_07f_vmovdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11817 { bs3CpuInstr3_vmovdqa_XMM8_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 8,14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11818 { bs3CpuInstr3_07f_vmovdqa_XMM8_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, 8,14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11819 { bs3CpuInstr3_vmovdqa_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11820 { bs3CpuInstr3_vmovdqa_XMM11_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11821 { bs3CpuInstr3_vmovdqa_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11822 { bs3CpuInstr3_vmovdqa_FSxBX_XMM11_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 255,11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11823 11824 { bs3CpuInstr3_vmovdqa_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11825 { bs3CpuInstr3_07f_vmovdqa_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11826 { bs3CpuInstr3_vmovdqa_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11827 { bs3CpuInstr3_07f_vmovdqa_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 12, 8,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11828 { bs3CpuInstr3_vmovdqa_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11829 { bs3CpuInstr3_vmovdqa_YMM12_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11830 { bs3CpuInstr3_vmovdqa_FSxBX_YMM1_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 255, 1,RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11831 { bs3CpuInstr3_vmovdqa_FSxBX_YMM12_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 255,12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },11802 { bs3CpuInstr3_movdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11803 { bs3CpuInstr3_07f_movdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11804 { bs3CpuInstr3_movdqa_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11805 { bs3CpuInstr3_07f_movdqa_XMM8_XMM12_icebp_c64, 255, RM_REG, T_SSE, XMM8, XMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11806 { bs3CpuInstr3_movdqa_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11807 { bs3CpuInstr3_movdqa_XMM10_FSxBX_icebp_c64, 255, RM_MEM, T_SSE, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11808 { bs3CpuInstr3_movdqa_FSxBX_XMM1_icebp_c64, 255, RM_MEM, T_SSE, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11809 { bs3CpuInstr3_movdqa_FSxBX_XMM10_icebp_c64, 255, RM_MEM, T_SSE, FSxBX, XMM10, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11810 11811 { bs3CpuInstr3_vmovdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11812 { bs3CpuInstr3_07f_vmovdqa_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11813 { bs3CpuInstr3_vmovdqa_XMM8_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM8, XMM14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11814 { bs3CpuInstr3_07f_vmovdqa_XMM8_XMM14_icebp_c64, 255, RM_REG, T_AVX_128, XMM8, XMM14, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11815 { bs3CpuInstr3_vmovdqa_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11816 { bs3CpuInstr3_vmovdqa_XMM11_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11817 { bs3CpuInstr3_vmovdqa_FSxBX_XMM1_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, FSxBX, XMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11818 { bs3CpuInstr3_vmovdqa_FSxBX_XMM11_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, FSxBX, XMM11, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11819 11820 { bs3CpuInstr3_vmovdqa_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11821 { bs3CpuInstr3_07f_vmovdqa_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11822 { bs3CpuInstr3_vmovdqa_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11823 { bs3CpuInstr3_07f_vmovdqa_YMM12_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM12, YMM8, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11824 { bs3CpuInstr3_vmovdqa_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11825 { bs3CpuInstr3_vmovdqa_YMM12_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11826 { bs3CpuInstr3_vmovdqa_FSxBX_YMM1_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, FSxBX, YMM1, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11827 { bs3CpuInstr3_vmovdqa_FSxBX_YMM12_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, FSxBX, YMM12, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 11832 11828 }; 11833 11829 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 11879 11875 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 11880 11876 { 11881 { bs3CpuInstr3_pabsb_MM1_MM2_icebp_c16, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11882 { bs3CpuInstr3_pabsb_MM1_FSxBX_icebp_c16, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11883 { bs3CpuInstr3_pabsb_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11884 { bs3CpuInstr3_pabsb_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11885 { bs3CpuInstr3_vpabsb_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11886 { bs3CpuInstr3_vpabsb_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11887 { bs3CpuInstr3_vpabsb_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11888 { bs3CpuInstr3_vpabsb_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11889 11890 { bs3CpuInstr3_pabsw_MM1_MM2_icebp_c16, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11891 { bs3CpuInstr3_pabsw_MM1_FSxBX_icebp_c16, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11892 { bs3CpuInstr3_pabsw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11893 { bs3CpuInstr3_pabsw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11894 { bs3CpuInstr3_vpabsw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11895 { bs3CpuInstr3_vpabsw_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11896 { bs3CpuInstr3_vpabsw_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11897 { bs3CpuInstr3_vpabsw_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11898 11899 { bs3CpuInstr3_pabsd_MM1_MM2_icebp_c16, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11900 { bs3CpuInstr3_pabsd_MM1_FSxBX_icebp_c16, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11901 { bs3CpuInstr3_pabsd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11902 { bs3CpuInstr3_pabsd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11903 { bs3CpuInstr3_vpabsd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11904 { bs3CpuInstr3_vpabsd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11905 { bs3CpuInstr3_vpabsd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11906 { bs3CpuInstr3_vpabsd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11877 { bs3CpuInstr3_pabsb_MM1_MM2_icebp_c16, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11878 { bs3CpuInstr3_pabsb_MM1_FSxBX_icebp_c16, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11879 { bs3CpuInstr3_pabsb_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11880 { bs3CpuInstr3_pabsb_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11881 { bs3CpuInstr3_vpabsb_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11882 { bs3CpuInstr3_vpabsb_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11883 { bs3CpuInstr3_vpabsb_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11884 { bs3CpuInstr3_vpabsb_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11885 11886 { bs3CpuInstr3_pabsw_MM1_MM2_icebp_c16, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11887 { bs3CpuInstr3_pabsw_MM1_FSxBX_icebp_c16, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11888 { bs3CpuInstr3_pabsw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11889 { bs3CpuInstr3_pabsw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11890 { bs3CpuInstr3_vpabsw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11891 { bs3CpuInstr3_vpabsw_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11892 { bs3CpuInstr3_vpabsw_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11893 { bs3CpuInstr3_vpabsw_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11894 11895 { bs3CpuInstr3_pabsd_MM1_MM2_icebp_c16, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11896 { bs3CpuInstr3_pabsd_MM1_FSxBX_icebp_c16, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11897 { bs3CpuInstr3_pabsd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11898 { bs3CpuInstr3_pabsd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11899 { bs3CpuInstr3_vpabsd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11900 { bs3CpuInstr3_vpabsd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11901 { bs3CpuInstr3_vpabsd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11902 { bs3CpuInstr3_vpabsd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11907 11903 }; 11908 11904 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 11909 11905 { 11910 { bs3CpuInstr3_pabsb_MM1_MM2_icebp_c32, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11911 { bs3CpuInstr3_pabsb_MM1_FSxBX_icebp_c32, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11912 { bs3CpuInstr3_pabsb_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11913 { bs3CpuInstr3_pabsb_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11914 { bs3CpuInstr3_vpabsb_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11915 { bs3CpuInstr3_vpabsb_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11916 { bs3CpuInstr3_vpabsb_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11917 { bs3CpuInstr3_vpabsb_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11918 11919 { bs3CpuInstr3_pabsw_MM1_MM2_icebp_c32, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11920 { bs3CpuInstr3_pabsw_MM1_FSxBX_icebp_c32, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11921 { bs3CpuInstr3_pabsw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11922 { bs3CpuInstr3_pabsw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11923 { bs3CpuInstr3_vpabsw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11924 { bs3CpuInstr3_vpabsw_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11925 { bs3CpuInstr3_vpabsw_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11926 { bs3CpuInstr3_vpabsw_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11927 11928 { bs3CpuInstr3_pabsd_MM1_MM2_icebp_c32, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11929 { bs3CpuInstr3_pabsd_MM1_FSxBX_icebp_c32, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11930 { bs3CpuInstr3_pabsd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11931 { bs3CpuInstr3_pabsd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11932 { bs3CpuInstr3_vpabsd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11933 { bs3CpuInstr3_vpabsd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11934 { bs3CpuInstr3_vpabsd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11935 { bs3CpuInstr3_vpabsd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11906 { bs3CpuInstr3_pabsb_MM1_MM2_icebp_c32, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11907 { bs3CpuInstr3_pabsb_MM1_FSxBX_icebp_c32, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11908 { bs3CpuInstr3_pabsb_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11909 { bs3CpuInstr3_pabsb_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11910 { bs3CpuInstr3_vpabsb_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11911 { bs3CpuInstr3_vpabsb_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11912 { bs3CpuInstr3_vpabsb_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11913 { bs3CpuInstr3_vpabsb_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11914 11915 { bs3CpuInstr3_pabsw_MM1_MM2_icebp_c32, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11916 { bs3CpuInstr3_pabsw_MM1_FSxBX_icebp_c32, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11917 { bs3CpuInstr3_pabsw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11918 { bs3CpuInstr3_pabsw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11919 { bs3CpuInstr3_vpabsw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11920 { bs3CpuInstr3_vpabsw_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11921 { bs3CpuInstr3_vpabsw_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11922 { bs3CpuInstr3_vpabsw_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11923 11924 { bs3CpuInstr3_pabsd_MM1_MM2_icebp_c32, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11925 { bs3CpuInstr3_pabsd_MM1_FSxBX_icebp_c32, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11926 { bs3CpuInstr3_pabsd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11927 { bs3CpuInstr3_pabsd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11928 { bs3CpuInstr3_vpabsd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11929 { bs3CpuInstr3_vpabsd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11930 { bs3CpuInstr3_vpabsd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11931 { bs3CpuInstr3_vpabsd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11936 11932 }; 11937 11933 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 11938 11934 { 11939 { bs3CpuInstr3_pabsb_MM1_MM2_icebp_c64, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11940 { bs3CpuInstr3_pabsb_MM1_FSxBX_icebp_c64, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11941 { bs3CpuInstr3_pabsb_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11942 { bs3CpuInstr3_pabsb_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11943 { bs3CpuInstr3_pabsb_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSSE3, 9, 8,RT_ELEMENTS(s_aValuesB), s_aValuesB },11944 { bs3CpuInstr3_pabsb_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, 9, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11945 { bs3CpuInstr3_vpabsb_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11946 { bs3CpuInstr3_vpabsb_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11947 { bs3CpuInstr3_vpabsb_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesB), s_aValuesB },11948 { bs3CpuInstr3_vpabsb_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11949 { bs3CpuInstr3_vpabsb_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesB), s_aValuesB },11950 { bs3CpuInstr3_vpabsb_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11951 { bs3CpuInstr3_vpabsb_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesB), s_aValuesB },11952 { bs3CpuInstr3_vpabsb_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesB), s_aValuesB },11953 11954 { bs3CpuInstr3_pabsw_MM1_MM2_icebp_c64, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11955 { bs3CpuInstr3_pabsw_MM1_FSxBX_icebp_c64, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11956 { bs3CpuInstr3_pabsw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11957 { bs3CpuInstr3_pabsw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11958 { bs3CpuInstr3_pabsw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSSE3, 9, 8,RT_ELEMENTS(s_aValuesW), s_aValuesW },11959 { bs3CpuInstr3_pabsw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, 9, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11960 { bs3CpuInstr3_vpabsw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11961 { bs3CpuInstr3_vpabsw_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11962 { bs3CpuInstr3_vpabsw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesW), s_aValuesW },11963 { bs3CpuInstr3_vpabsw_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11964 { bs3CpuInstr3_vpabsw_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesW), s_aValuesW },11965 { bs3CpuInstr3_vpabsw_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11966 { bs3CpuInstr3_vpabsw_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesW), s_aValuesW },11967 { bs3CpuInstr3_vpabsw_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesW), s_aValuesW },11968 11969 { bs3CpuInstr3_pabsd_MM1_MM2_icebp_c64, 255, RM_REG, T_MMX_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11970 { bs3CpuInstr3_pabsd_MM1_FSxBX_icebp_c64, 255, RM_MEM, T_MMX_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11971 { bs3CpuInstr3_pabsd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSSE3, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11972 { bs3CpuInstr3_pabsd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11973 { bs3CpuInstr3_pabsd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSSE3, 9, 8,RT_ELEMENTS(s_aValuesD), s_aValuesD },11974 { bs3CpuInstr3_pabsd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, 9, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11975 { bs3CpuInstr3_vpabsd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11976 { bs3CpuInstr3_vpabsd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11977 { bs3CpuInstr3_vpabsd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesD), s_aValuesD },11978 { bs3CpuInstr3_vpabsd_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11979 { bs3CpuInstr3_vpabsd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesD), s_aValuesD },11980 { bs3CpuInstr3_vpabsd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11981 { bs3CpuInstr3_vpabsd_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesD), s_aValuesD },11982 { bs3CpuInstr3_vpabsd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesD), s_aValuesD },11935 { bs3CpuInstr3_pabsb_MM1_MM2_icebp_c64, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11936 { bs3CpuInstr3_pabsb_MM1_FSxBX_icebp_c64, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11937 { bs3CpuInstr3_pabsb_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11938 { bs3CpuInstr3_pabsb_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11939 { bs3CpuInstr3_pabsb_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSSE3, XMM9, XMM8, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11940 { bs3CpuInstr3_pabsb_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, XMM9, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11941 { bs3CpuInstr3_vpabsb_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11942 { bs3CpuInstr3_vpabsb_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11943 { bs3CpuInstr3_vpabsb_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11944 { bs3CpuInstr3_vpabsb_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11945 { bs3CpuInstr3_vpabsb_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11946 { bs3CpuInstr3_vpabsb_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11947 { bs3CpuInstr3_vpabsb_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, YMM8, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11948 { bs3CpuInstr3_vpabsb_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesB), s_aValuesB }, 11949 11950 { bs3CpuInstr3_pabsw_MM1_MM2_icebp_c64, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11951 { bs3CpuInstr3_pabsw_MM1_FSxBX_icebp_c64, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11952 { bs3CpuInstr3_pabsw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11953 { bs3CpuInstr3_pabsw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11954 { bs3CpuInstr3_pabsw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSSE3, XMM9, XMM8, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11955 { bs3CpuInstr3_pabsw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, XMM9, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11956 { bs3CpuInstr3_vpabsw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11957 { bs3CpuInstr3_vpabsw_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11958 { bs3CpuInstr3_vpabsw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11959 { bs3CpuInstr3_vpabsw_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11960 { bs3CpuInstr3_vpabsw_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11961 { bs3CpuInstr3_vpabsw_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11962 { bs3CpuInstr3_vpabsw_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, YMM8, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11963 { bs3CpuInstr3_vpabsw_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesW), s_aValuesW }, 11964 11965 { bs3CpuInstr3_pabsd_MM1_MM2_icebp_c64, 255, RM_REG, T_MMX_SSSE3, MM1, MM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11966 { bs3CpuInstr3_pabsd_MM1_FSxBX_icebp_c64, 255, RM_MEM, T_MMX_SSSE3, MM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11967 { bs3CpuInstr3_pabsd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSSE3, XMM1, XMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11968 { bs3CpuInstr3_pabsd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, XMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11969 { bs3CpuInstr3_pabsd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSSE3, XMM9, XMM8, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11970 { bs3CpuInstr3_pabsd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSSE3, XMM9, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11971 { bs3CpuInstr3_vpabsd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11972 { bs3CpuInstr3_vpabsd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11973 { bs3CpuInstr3_vpabsd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11974 { bs3CpuInstr3_vpabsd_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11975 { bs3CpuInstr3_vpabsd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11976 { bs3CpuInstr3_vpabsd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11977 { bs3CpuInstr3_vpabsd_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, YMM8, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11978 { bs3CpuInstr3_vpabsd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesD), s_aValuesD }, 11983 11979 }; 11984 11980 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12063 12059 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 12064 12060 { 12065 { bs3CpuInstr3_pmovsxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12066 { bs3CpuInstr3_pmovsxbw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12067 { bs3CpuInstr3_vpmovsxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12068 { bs3CpuInstr3_vpmovsxbw_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12069 { bs3CpuInstr3_vpmovsxbw_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12070 { bs3CpuInstr3_vpmovsxbw_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12071 12072 { bs3CpuInstr3_pmovsxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12073 { bs3CpuInstr3_pmovsxbd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12074 { bs3CpuInstr3_vpmovsxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12075 { bs3CpuInstr3_vpmovsxbd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12076 { bs3CpuInstr3_vpmovsxbd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12077 { bs3CpuInstr3_vpmovsxbd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12078 12079 { bs3CpuInstr3_pmovsxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12080 { bs3CpuInstr3_pmovsxbq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12081 { bs3CpuInstr3_vpmovsxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12082 { bs3CpuInstr3_vpmovsxbq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12083 { bs3CpuInstr3_vpmovsxbq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12084 { bs3CpuInstr3_vpmovsxbq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12085 12086 { bs3CpuInstr3_pmovsxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12087 { bs3CpuInstr3_pmovsxwd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12088 { bs3CpuInstr3_vpmovsxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12089 { bs3CpuInstr3_vpmovsxwd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12090 { bs3CpuInstr3_vpmovsxwd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12091 { bs3CpuInstr3_vpmovsxwd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12092 12093 { bs3CpuInstr3_pmovsxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12094 { bs3CpuInstr3_pmovsxwq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12095 { bs3CpuInstr3_vpmovsxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12096 { bs3CpuInstr3_vpmovsxwq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12097 { bs3CpuInstr3_vpmovsxwq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12098 { bs3CpuInstr3_vpmovsxwq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12099 12100 { bs3CpuInstr3_pmovsxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12101 { bs3CpuInstr3_pmovsxdq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12102 { bs3CpuInstr3_vpmovsxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12103 { bs3CpuInstr3_vpmovsxdq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12104 { bs3CpuInstr3_vpmovsxdq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12105 { bs3CpuInstr3_vpmovsxdq_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12061 { bs3CpuInstr3_pmovsxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12062 { bs3CpuInstr3_pmovsxbw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12063 { bs3CpuInstr3_vpmovsxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12064 { bs3CpuInstr3_vpmovsxbw_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12065 { bs3CpuInstr3_vpmovsxbw_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12066 { bs3CpuInstr3_vpmovsxbw_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12067 12068 { bs3CpuInstr3_pmovsxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12069 { bs3CpuInstr3_pmovsxbd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12070 { bs3CpuInstr3_vpmovsxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12071 { bs3CpuInstr3_vpmovsxbd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12072 { bs3CpuInstr3_vpmovsxbd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12073 { bs3CpuInstr3_vpmovsxbd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12074 12075 { bs3CpuInstr3_pmovsxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12076 { bs3CpuInstr3_pmovsxbq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12077 { bs3CpuInstr3_vpmovsxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12078 { bs3CpuInstr3_vpmovsxbq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12079 { bs3CpuInstr3_vpmovsxbq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12080 { bs3CpuInstr3_vpmovsxbq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12081 12082 { bs3CpuInstr3_pmovsxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12083 { bs3CpuInstr3_pmovsxwd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12084 { bs3CpuInstr3_vpmovsxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12085 { bs3CpuInstr3_vpmovsxwd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12086 { bs3CpuInstr3_vpmovsxwd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12087 { bs3CpuInstr3_vpmovsxwd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12088 12089 { bs3CpuInstr3_pmovsxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12090 { bs3CpuInstr3_pmovsxwq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12091 { bs3CpuInstr3_vpmovsxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12092 { bs3CpuInstr3_vpmovsxwq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12093 { bs3CpuInstr3_vpmovsxwq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12094 { bs3CpuInstr3_vpmovsxwq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12095 12096 { bs3CpuInstr3_pmovsxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12097 { bs3CpuInstr3_pmovsxdq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12098 { bs3CpuInstr3_vpmovsxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12099 { bs3CpuInstr3_vpmovsxdq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12100 { bs3CpuInstr3_vpmovsxdq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12101 { bs3CpuInstr3_vpmovsxdq_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12106 12102 }; 12107 12103 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 12108 12104 { 12109 { bs3CpuInstr3_pmovsxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12110 { bs3CpuInstr3_pmovsxbw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12111 { bs3CpuInstr3_vpmovsxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12112 { bs3CpuInstr3_vpmovsxbw_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12113 { bs3CpuInstr3_vpmovsxbw_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12114 { bs3CpuInstr3_vpmovsxbw_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12115 12116 { bs3CpuInstr3_pmovsxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12117 { bs3CpuInstr3_pmovsxbd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12118 { bs3CpuInstr3_vpmovsxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12119 { bs3CpuInstr3_vpmovsxbd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12120 { bs3CpuInstr3_vpmovsxbd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12121 { bs3CpuInstr3_vpmovsxbd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12122 12123 { bs3CpuInstr3_pmovsxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12124 { bs3CpuInstr3_pmovsxbq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12125 { bs3CpuInstr3_vpmovsxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12126 { bs3CpuInstr3_vpmovsxbq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12127 { bs3CpuInstr3_vpmovsxbq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12128 { bs3CpuInstr3_vpmovsxbq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12129 12130 { bs3CpuInstr3_pmovsxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12131 { bs3CpuInstr3_pmovsxwd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12132 { bs3CpuInstr3_vpmovsxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12133 { bs3CpuInstr3_vpmovsxwd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12134 { bs3CpuInstr3_vpmovsxwd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12135 { bs3CpuInstr3_vpmovsxwd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12136 12137 { bs3CpuInstr3_pmovsxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12138 { bs3CpuInstr3_pmovsxwq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12139 { bs3CpuInstr3_vpmovsxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12140 { bs3CpuInstr3_vpmovsxwq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12141 { bs3CpuInstr3_vpmovsxwq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12142 { bs3CpuInstr3_vpmovsxwq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12143 12144 { bs3CpuInstr3_pmovsxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12145 { bs3CpuInstr3_pmovsxdq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12146 { bs3CpuInstr3_vpmovsxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12147 { bs3CpuInstr3_vpmovsxdq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12148 { bs3CpuInstr3_vpmovsxdq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12149 { bs3CpuInstr3_vpmovsxdq_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12105 { bs3CpuInstr3_pmovsxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12106 { bs3CpuInstr3_pmovsxbw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12107 { bs3CpuInstr3_vpmovsxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12108 { bs3CpuInstr3_vpmovsxbw_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12109 { bs3CpuInstr3_vpmovsxbw_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12110 { bs3CpuInstr3_vpmovsxbw_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12111 12112 { bs3CpuInstr3_pmovsxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12113 { bs3CpuInstr3_pmovsxbd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12114 { bs3CpuInstr3_vpmovsxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12115 { bs3CpuInstr3_vpmovsxbd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12116 { bs3CpuInstr3_vpmovsxbd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12117 { bs3CpuInstr3_vpmovsxbd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12118 12119 { bs3CpuInstr3_pmovsxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12120 { bs3CpuInstr3_pmovsxbq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12121 { bs3CpuInstr3_vpmovsxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12122 { bs3CpuInstr3_vpmovsxbq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12123 { bs3CpuInstr3_vpmovsxbq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12124 { bs3CpuInstr3_vpmovsxbq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12125 12126 { bs3CpuInstr3_pmovsxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12127 { bs3CpuInstr3_pmovsxwd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12128 { bs3CpuInstr3_vpmovsxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12129 { bs3CpuInstr3_vpmovsxwd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12130 { bs3CpuInstr3_vpmovsxwd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12131 { bs3CpuInstr3_vpmovsxwd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12132 12133 { bs3CpuInstr3_pmovsxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12134 { bs3CpuInstr3_pmovsxwq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12135 { bs3CpuInstr3_vpmovsxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12136 { bs3CpuInstr3_vpmovsxwq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12137 { bs3CpuInstr3_vpmovsxwq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12138 { bs3CpuInstr3_vpmovsxwq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12139 12140 { bs3CpuInstr3_pmovsxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12141 { bs3CpuInstr3_pmovsxdq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12142 { bs3CpuInstr3_vpmovsxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12143 { bs3CpuInstr3_vpmovsxdq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12144 { bs3CpuInstr3_vpmovsxdq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12145 { bs3CpuInstr3_vpmovsxdq_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12150 12146 }; 12151 12147 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 12152 12148 { 12153 { bs3CpuInstr3_pmovsxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12154 { bs3CpuInstr3_pmovsxbw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12155 { bs3CpuInstr3_pmovsxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12156 { bs3CpuInstr3_pmovsxbw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12157 { bs3CpuInstr3_vpmovsxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12158 { bs3CpuInstr3_vpmovsxbw_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12159 { bs3CpuInstr3_vpmovsxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12160 { bs3CpuInstr3_vpmovsxbw_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12161 { bs3CpuInstr3_vpmovsxbw_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12162 { bs3CpuInstr3_vpmovsxbw_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12163 { bs3CpuInstr3_vpmovsxbw_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12164 { bs3CpuInstr3_vpmovsxbw_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12165 12166 { bs3CpuInstr3_pmovsxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12167 { bs3CpuInstr3_pmovsxbd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12168 { bs3CpuInstr3_pmovsxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12169 { bs3CpuInstr3_pmovsxbd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12170 { bs3CpuInstr3_vpmovsxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12171 { bs3CpuInstr3_vpmovsxbd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12172 { bs3CpuInstr3_vpmovsxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12173 { bs3CpuInstr3_vpmovsxbd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12174 { bs3CpuInstr3_vpmovsxbd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12175 { bs3CpuInstr3_vpmovsxbd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12176 { bs3CpuInstr3_vpmovsxbd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12177 { bs3CpuInstr3_vpmovsxbd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12178 12179 { bs3CpuInstr3_pmovsxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12180 { bs3CpuInstr3_pmovsxbq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12181 { bs3CpuInstr3_pmovsxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12182 { bs3CpuInstr3_pmovsxbq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12183 { bs3CpuInstr3_vpmovsxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12184 { bs3CpuInstr3_vpmovsxbq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12185 { bs3CpuInstr3_vpmovsxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12186 { bs3CpuInstr3_vpmovsxbq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12187 { bs3CpuInstr3_vpmovsxbq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12188 { bs3CpuInstr3_vpmovsxbq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12189 { bs3CpuInstr3_vpmovsxbq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12190 { bs3CpuInstr3_vpmovsxbq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12191 12192 { bs3CpuInstr3_pmovsxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12193 { bs3CpuInstr3_pmovsxwd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12194 { bs3CpuInstr3_pmovsxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12195 { bs3CpuInstr3_pmovsxwd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12196 { bs3CpuInstr3_vpmovsxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12197 { bs3CpuInstr3_vpmovsxwd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12198 { bs3CpuInstr3_vpmovsxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12199 { bs3CpuInstr3_vpmovsxwd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12200 { bs3CpuInstr3_vpmovsxwd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12201 { bs3CpuInstr3_vpmovsxwd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12202 { bs3CpuInstr3_vpmovsxwd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12203 { bs3CpuInstr3_vpmovsxwd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12204 12205 { bs3CpuInstr3_pmovsxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12206 { bs3CpuInstr3_pmovsxwq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12207 { bs3CpuInstr3_pmovsxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12208 { bs3CpuInstr3_pmovsxwq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12209 { bs3CpuInstr3_vpmovsxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12210 { bs3CpuInstr3_vpmovsxwq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12211 { bs3CpuInstr3_vpmovsxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12212 { bs3CpuInstr3_vpmovsxwq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12213 { bs3CpuInstr3_vpmovsxwq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12214 { bs3CpuInstr3_vpmovsxwq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12215 { bs3CpuInstr3_vpmovsxwq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12216 { bs3CpuInstr3_vpmovsxwq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12217 12218 { bs3CpuInstr3_pmovsxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12219 { bs3CpuInstr3_pmovsxdq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12220 { bs3CpuInstr3_pmovsxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12221 { bs3CpuInstr3_pmovsxdq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12222 { bs3CpuInstr3_vpmovsxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12223 { bs3CpuInstr3_vpmovsxdq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12224 { bs3CpuInstr3_vpmovsxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12225 { bs3CpuInstr3_vpmovsxdq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12226 { bs3CpuInstr3_vpmovsxdq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12227 { bs3CpuInstr3_vpmovsxdq_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12228 { bs3CpuInstr3_vpmovsxdq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12229 { bs3CpuInstr3_vpmovsxdq_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12149 { bs3CpuInstr3_pmovsxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12150 { bs3CpuInstr3_pmovsxbw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12151 { bs3CpuInstr3_pmovsxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12152 { bs3CpuInstr3_pmovsxbw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12153 { bs3CpuInstr3_vpmovsxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12154 { bs3CpuInstr3_vpmovsxbw_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12155 { bs3CpuInstr3_vpmovsxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12156 { bs3CpuInstr3_vpmovsxbw_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12157 { bs3CpuInstr3_vpmovsxbw_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12158 { bs3CpuInstr3_vpmovsxbw_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12159 { bs3CpuInstr3_vpmovsxbw_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12160 { bs3CpuInstr3_vpmovsxbw_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12161 12162 { bs3CpuInstr3_pmovsxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12163 { bs3CpuInstr3_pmovsxbd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12164 { bs3CpuInstr3_pmovsxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12165 { bs3CpuInstr3_pmovsxbd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12166 { bs3CpuInstr3_vpmovsxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12167 { bs3CpuInstr3_vpmovsxbd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12168 { bs3CpuInstr3_vpmovsxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12169 { bs3CpuInstr3_vpmovsxbd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12170 { bs3CpuInstr3_vpmovsxbd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12171 { bs3CpuInstr3_vpmovsxbd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12172 { bs3CpuInstr3_vpmovsxbd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12173 { bs3CpuInstr3_vpmovsxbd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12174 12175 { bs3CpuInstr3_pmovsxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12176 { bs3CpuInstr3_pmovsxbq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12177 { bs3CpuInstr3_pmovsxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12178 { bs3CpuInstr3_pmovsxbq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12179 { bs3CpuInstr3_vpmovsxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12180 { bs3CpuInstr3_vpmovsxbq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12181 { bs3CpuInstr3_vpmovsxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12182 { bs3CpuInstr3_vpmovsxbq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12183 { bs3CpuInstr3_vpmovsxbq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12184 { bs3CpuInstr3_vpmovsxbq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12185 { bs3CpuInstr3_vpmovsxbq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12186 { bs3CpuInstr3_vpmovsxbq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12187 12188 { bs3CpuInstr3_pmovsxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12189 { bs3CpuInstr3_pmovsxwd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12190 { bs3CpuInstr3_pmovsxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12191 { bs3CpuInstr3_pmovsxwd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12192 { bs3CpuInstr3_vpmovsxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12193 { bs3CpuInstr3_vpmovsxwd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12194 { bs3CpuInstr3_vpmovsxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12195 { bs3CpuInstr3_vpmovsxwd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12196 { bs3CpuInstr3_vpmovsxwd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12197 { bs3CpuInstr3_vpmovsxwd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12198 { bs3CpuInstr3_vpmovsxwd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12199 { bs3CpuInstr3_vpmovsxwd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12200 12201 { bs3CpuInstr3_pmovsxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12202 { bs3CpuInstr3_pmovsxwq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12203 { bs3CpuInstr3_pmovsxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12204 { bs3CpuInstr3_pmovsxwq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12205 { bs3CpuInstr3_vpmovsxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12206 { bs3CpuInstr3_vpmovsxwq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12207 { bs3CpuInstr3_vpmovsxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12208 { bs3CpuInstr3_vpmovsxwq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12209 { bs3CpuInstr3_vpmovsxwq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12210 { bs3CpuInstr3_vpmovsxwq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12211 { bs3CpuInstr3_vpmovsxwq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12212 { bs3CpuInstr3_vpmovsxwq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12213 12214 { bs3CpuInstr3_pmovsxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12215 { bs3CpuInstr3_pmovsxdq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12216 { bs3CpuInstr3_pmovsxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12217 { bs3CpuInstr3_pmovsxdq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12218 { bs3CpuInstr3_vpmovsxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12219 { bs3CpuInstr3_vpmovsxdq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12220 { bs3CpuInstr3_vpmovsxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12221 { bs3CpuInstr3_vpmovsxdq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12222 { bs3CpuInstr3_vpmovsxdq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12223 { bs3CpuInstr3_vpmovsxdq_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12224 { bs3CpuInstr3_vpmovsxdq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12225 { bs3CpuInstr3_vpmovsxdq_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12230 12226 }; 12231 12227 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12310 12306 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 12311 12307 { 12312 { bs3CpuInstr3_pmovzxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12313 { bs3CpuInstr3_pmovzxbw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12314 { bs3CpuInstr3_vpmovzxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12315 { bs3CpuInstr3_vpmovzxbw_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12316 { bs3CpuInstr3_vpmovzxbw_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12317 { bs3CpuInstr3_vpmovzxbw_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12318 12319 { bs3CpuInstr3_pmovzxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12320 { bs3CpuInstr3_pmovzxbd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12321 { bs3CpuInstr3_vpmovzxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12322 { bs3CpuInstr3_vpmovzxbd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12323 { bs3CpuInstr3_vpmovzxbd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12324 { bs3CpuInstr3_vpmovzxbd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12325 12326 { bs3CpuInstr3_pmovzxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12327 { bs3CpuInstr3_pmovzxbq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12328 { bs3CpuInstr3_vpmovzxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12329 { bs3CpuInstr3_vpmovzxbq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12330 { bs3CpuInstr3_vpmovzxbq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12331 { bs3CpuInstr3_vpmovzxbq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12332 12333 { bs3CpuInstr3_pmovzxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12334 { bs3CpuInstr3_pmovzxwd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12335 { bs3CpuInstr3_vpmovzxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12336 { bs3CpuInstr3_vpmovzxwd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12337 { bs3CpuInstr3_vpmovzxwd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12338 { bs3CpuInstr3_vpmovzxwd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12339 12340 { bs3CpuInstr3_pmovzxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12341 { bs3CpuInstr3_pmovzxwq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12342 { bs3CpuInstr3_vpmovzxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12343 { bs3CpuInstr3_vpmovzxwq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12344 { bs3CpuInstr3_vpmovzxwq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12345 { bs3CpuInstr3_vpmovzxwq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12346 12347 { bs3CpuInstr3_pmovzxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12348 { bs3CpuInstr3_pmovzxdq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12349 { bs3CpuInstr3_vpmovzxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12350 { bs3CpuInstr3_vpmovzxdq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12351 { bs3CpuInstr3_vpmovzxdq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12352 { bs3CpuInstr3_vpmovzxdq_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12308 { bs3CpuInstr3_pmovzxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12309 { bs3CpuInstr3_pmovzxbw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12310 { bs3CpuInstr3_vpmovzxbw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12311 { bs3CpuInstr3_vpmovzxbw_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12312 { bs3CpuInstr3_vpmovzxbw_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12313 { bs3CpuInstr3_vpmovzxbw_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12314 12315 { bs3CpuInstr3_pmovzxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12316 { bs3CpuInstr3_pmovzxbd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12317 { bs3CpuInstr3_vpmovzxbd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12318 { bs3CpuInstr3_vpmovzxbd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12319 { bs3CpuInstr3_vpmovzxbd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12320 { bs3CpuInstr3_vpmovzxbd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12321 12322 { bs3CpuInstr3_pmovzxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12323 { bs3CpuInstr3_pmovzxbq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12324 { bs3CpuInstr3_vpmovzxbq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12325 { bs3CpuInstr3_vpmovzxbq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12326 { bs3CpuInstr3_vpmovzxbq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12327 { bs3CpuInstr3_vpmovzxbq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12328 12329 { bs3CpuInstr3_pmovzxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12330 { bs3CpuInstr3_pmovzxwd_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12331 { bs3CpuInstr3_vpmovzxwd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12332 { bs3CpuInstr3_vpmovzxwd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12333 { bs3CpuInstr3_vpmovzxwd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12334 { bs3CpuInstr3_vpmovzxwd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12335 12336 { bs3CpuInstr3_pmovzxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12337 { bs3CpuInstr3_pmovzxwq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12338 { bs3CpuInstr3_vpmovzxwq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12339 { bs3CpuInstr3_vpmovzxwq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12340 { bs3CpuInstr3_vpmovzxwq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12341 { bs3CpuInstr3_vpmovzxwq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12342 12343 { bs3CpuInstr3_pmovzxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12344 { bs3CpuInstr3_pmovzxdq_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12345 { bs3CpuInstr3_vpmovzxdq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12346 { bs3CpuInstr3_vpmovzxdq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12347 { bs3CpuInstr3_vpmovzxdq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12348 { bs3CpuInstr3_vpmovzxdq_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12353 12349 }; 12354 12350 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 12355 12351 { 12356 { bs3CpuInstr3_pmovzxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12357 { bs3CpuInstr3_pmovzxbw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12358 { bs3CpuInstr3_vpmovzxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12359 { bs3CpuInstr3_vpmovzxbw_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12360 { bs3CpuInstr3_vpmovzxbw_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12361 { bs3CpuInstr3_vpmovzxbw_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12362 12363 { bs3CpuInstr3_pmovzxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12364 { bs3CpuInstr3_pmovzxbd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12365 { bs3CpuInstr3_vpmovzxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12366 { bs3CpuInstr3_vpmovzxbd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12367 { bs3CpuInstr3_vpmovzxbd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12368 { bs3CpuInstr3_vpmovzxbd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12369 12370 { bs3CpuInstr3_pmovzxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12371 { bs3CpuInstr3_pmovzxbq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12372 { bs3CpuInstr3_vpmovzxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12373 { bs3CpuInstr3_vpmovzxbq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12374 { bs3CpuInstr3_vpmovzxbq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12375 { bs3CpuInstr3_vpmovzxbq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12376 12377 { bs3CpuInstr3_pmovzxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12378 { bs3CpuInstr3_pmovzxwd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12379 { bs3CpuInstr3_vpmovzxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12380 { bs3CpuInstr3_vpmovzxwd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12381 { bs3CpuInstr3_vpmovzxwd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12382 { bs3CpuInstr3_vpmovzxwd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12383 12384 { bs3CpuInstr3_pmovzxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12385 { bs3CpuInstr3_pmovzxwq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12386 { bs3CpuInstr3_vpmovzxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12387 { bs3CpuInstr3_vpmovzxwq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12388 { bs3CpuInstr3_vpmovzxwq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12389 { bs3CpuInstr3_vpmovzxwq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12390 12391 { bs3CpuInstr3_pmovzxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12392 { bs3CpuInstr3_pmovzxdq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12393 { bs3CpuInstr3_vpmovzxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12394 { bs3CpuInstr3_vpmovzxdq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12395 { bs3CpuInstr3_vpmovzxdq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12396 { bs3CpuInstr3_vpmovzxdq_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12352 { bs3CpuInstr3_pmovzxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12353 { bs3CpuInstr3_pmovzxbw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12354 { bs3CpuInstr3_vpmovzxbw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12355 { bs3CpuInstr3_vpmovzxbw_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12356 { bs3CpuInstr3_vpmovzxbw_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12357 { bs3CpuInstr3_vpmovzxbw_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12358 12359 { bs3CpuInstr3_pmovzxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12360 { bs3CpuInstr3_pmovzxbd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12361 { bs3CpuInstr3_vpmovzxbd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12362 { bs3CpuInstr3_vpmovzxbd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12363 { bs3CpuInstr3_vpmovzxbd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12364 { bs3CpuInstr3_vpmovzxbd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12365 12366 { bs3CpuInstr3_pmovzxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12367 { bs3CpuInstr3_pmovzxbq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12368 { bs3CpuInstr3_vpmovzxbq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12369 { bs3CpuInstr3_vpmovzxbq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12370 { bs3CpuInstr3_vpmovzxbq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12371 { bs3CpuInstr3_vpmovzxbq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12372 12373 { bs3CpuInstr3_pmovzxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12374 { bs3CpuInstr3_pmovzxwd_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12375 { bs3CpuInstr3_vpmovzxwd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12376 { bs3CpuInstr3_vpmovzxwd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12377 { bs3CpuInstr3_vpmovzxwd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12378 { bs3CpuInstr3_vpmovzxwd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12379 12380 { bs3CpuInstr3_pmovzxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12381 { bs3CpuInstr3_pmovzxwq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12382 { bs3CpuInstr3_vpmovzxwq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12383 { bs3CpuInstr3_vpmovzxwq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12384 { bs3CpuInstr3_vpmovzxwq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12385 { bs3CpuInstr3_vpmovzxwq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12386 12387 { bs3CpuInstr3_pmovzxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12388 { bs3CpuInstr3_pmovzxdq_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12389 { bs3CpuInstr3_vpmovzxdq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12390 { bs3CpuInstr3_vpmovzxdq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12391 { bs3CpuInstr3_vpmovzxdq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12392 { bs3CpuInstr3_vpmovzxdq_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12397 12393 }; 12398 12394 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 12399 12395 { 12400 { bs3CpuInstr3_pmovzxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12401 { bs3CpuInstr3_pmovzxbw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12402 { bs3CpuInstr3_pmovzxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12403 { bs3CpuInstr3_pmovzxbw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12404 { bs3CpuInstr3_vpmovzxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12405 { bs3CpuInstr3_vpmovzxbw_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12406 { bs3CpuInstr3_vpmovzxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12407 { bs3CpuInstr3_vpmovzxbw_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12408 { bs3CpuInstr3_vpmovzxbw_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12409 { bs3CpuInstr3_vpmovzxbw_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12410 { bs3CpuInstr3_vpmovzxbw_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12411 { bs3CpuInstr3_vpmovzxbw_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesBW), s_aValuesBW },12412 12413 { bs3CpuInstr3_pmovzxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12414 { bs3CpuInstr3_pmovzxbd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12415 { bs3CpuInstr3_pmovzxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12416 { bs3CpuInstr3_pmovzxbd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12417 { bs3CpuInstr3_vpmovzxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12418 { bs3CpuInstr3_vpmovzxbd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12419 { bs3CpuInstr3_vpmovzxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12420 { bs3CpuInstr3_vpmovzxbd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12421 { bs3CpuInstr3_vpmovzxbd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12422 { bs3CpuInstr3_vpmovzxbd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12423 { bs3CpuInstr3_vpmovzxbd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12424 { bs3CpuInstr3_vpmovzxbd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesBD), s_aValuesBD },12425 12426 { bs3CpuInstr3_pmovzxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12427 { bs3CpuInstr3_pmovzxbq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12428 { bs3CpuInstr3_pmovzxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12429 { bs3CpuInstr3_pmovzxbq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12430 { bs3CpuInstr3_vpmovzxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12431 { bs3CpuInstr3_vpmovzxbq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12432 { bs3CpuInstr3_vpmovzxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12433 { bs3CpuInstr3_vpmovzxbq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12434 { bs3CpuInstr3_vpmovzxbq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12435 { bs3CpuInstr3_vpmovzxbq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12436 { bs3CpuInstr3_vpmovzxbq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12437 { bs3CpuInstr3_vpmovzxbq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ },12438 12439 { bs3CpuInstr3_pmovzxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12440 { bs3CpuInstr3_pmovzxwd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12441 { bs3CpuInstr3_pmovzxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12442 { bs3CpuInstr3_pmovzxwd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12443 { bs3CpuInstr3_vpmovzxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12444 { bs3CpuInstr3_vpmovzxwd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12445 { bs3CpuInstr3_vpmovzxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12446 { bs3CpuInstr3_vpmovzxwd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12447 { bs3CpuInstr3_vpmovzxwd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12448 { bs3CpuInstr3_vpmovzxwd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12449 { bs3CpuInstr3_vpmovzxwd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12450 { bs3CpuInstr3_vpmovzxwd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesWD), s_aValuesWD },12451 12452 { bs3CpuInstr3_pmovzxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12453 { bs3CpuInstr3_pmovzxwq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12454 { bs3CpuInstr3_pmovzxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12455 { bs3CpuInstr3_pmovzxwq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12456 { bs3CpuInstr3_vpmovzxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12457 { bs3CpuInstr3_vpmovzxwq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12458 { bs3CpuInstr3_vpmovzxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12459 { bs3CpuInstr3_vpmovzxwq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12460 { bs3CpuInstr3_vpmovzxwq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12461 { bs3CpuInstr3_vpmovzxwq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12462 { bs3CpuInstr3_vpmovzxwq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12463 { bs3CpuInstr3_vpmovzxwq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ },12464 12465 { bs3CpuInstr3_pmovzxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12466 { bs3CpuInstr3_pmovzxdq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12467 { bs3CpuInstr3_pmovzxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12468 { bs3CpuInstr3_pmovzxdq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12469 { bs3CpuInstr3_vpmovzxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12470 { bs3CpuInstr3_vpmovzxdq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12471 { bs3CpuInstr3_vpmovzxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12472 { bs3CpuInstr3_vpmovzxdq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12473 { bs3CpuInstr3_vpmovzxdq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12474 { bs3CpuInstr3_vpmovzxdq_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12475 { bs3CpuInstr3_vpmovzxdq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12476 { bs3CpuInstr3_vpmovzxdq_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ },12396 { bs3CpuInstr3_pmovzxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12397 { bs3CpuInstr3_pmovzxbw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12398 { bs3CpuInstr3_pmovzxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12399 { bs3CpuInstr3_pmovzxbw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12400 { bs3CpuInstr3_vpmovzxbw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12401 { bs3CpuInstr3_vpmovzxbw_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12402 { bs3CpuInstr3_vpmovzxbw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12403 { bs3CpuInstr3_vpmovzxbw_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12404 { bs3CpuInstr3_vpmovzxbw_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12405 { bs3CpuInstr3_vpmovzxbw_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12406 { bs3CpuInstr3_vpmovzxbw_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12407 { bs3CpuInstr3_vpmovzxbw_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesBW), s_aValuesBW }, 12408 12409 { bs3CpuInstr3_pmovzxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12410 { bs3CpuInstr3_pmovzxbd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12411 { bs3CpuInstr3_pmovzxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12412 { bs3CpuInstr3_pmovzxbd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12413 { bs3CpuInstr3_vpmovzxbd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12414 { bs3CpuInstr3_vpmovzxbd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12415 { bs3CpuInstr3_vpmovzxbd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12416 { bs3CpuInstr3_vpmovzxbd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12417 { bs3CpuInstr3_vpmovzxbd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12418 { bs3CpuInstr3_vpmovzxbd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12419 { bs3CpuInstr3_vpmovzxbd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12420 { bs3CpuInstr3_vpmovzxbd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesBD), s_aValuesBD }, 12421 12422 { bs3CpuInstr3_pmovzxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12423 { bs3CpuInstr3_pmovzxbq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12424 { bs3CpuInstr3_pmovzxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12425 { bs3CpuInstr3_pmovzxbq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12426 { bs3CpuInstr3_vpmovzxbq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12427 { bs3CpuInstr3_vpmovzxbq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12428 { bs3CpuInstr3_vpmovzxbq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12429 { bs3CpuInstr3_vpmovzxbq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12430 { bs3CpuInstr3_vpmovzxbq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12431 { bs3CpuInstr3_vpmovzxbq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12432 { bs3CpuInstr3_vpmovzxbq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12433 { bs3CpuInstr3_vpmovzxbq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesBQ), s_aValuesBQ }, 12434 12435 { bs3CpuInstr3_pmovzxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12436 { bs3CpuInstr3_pmovzxwd_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12437 { bs3CpuInstr3_pmovzxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12438 { bs3CpuInstr3_pmovzxwd_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12439 { bs3CpuInstr3_vpmovzxwd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12440 { bs3CpuInstr3_vpmovzxwd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12441 { bs3CpuInstr3_vpmovzxwd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12442 { bs3CpuInstr3_vpmovzxwd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12443 { bs3CpuInstr3_vpmovzxwd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12444 { bs3CpuInstr3_vpmovzxwd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12445 { bs3CpuInstr3_vpmovzxwd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12446 { bs3CpuInstr3_vpmovzxwd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesWD), s_aValuesWD }, 12447 12448 { bs3CpuInstr3_pmovzxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12449 { bs3CpuInstr3_pmovzxwq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12450 { bs3CpuInstr3_pmovzxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12451 { bs3CpuInstr3_pmovzxwq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12452 { bs3CpuInstr3_vpmovzxwq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12453 { bs3CpuInstr3_vpmovzxwq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12454 { bs3CpuInstr3_vpmovzxwq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12455 { bs3CpuInstr3_vpmovzxwq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12456 { bs3CpuInstr3_vpmovzxwq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12457 { bs3CpuInstr3_vpmovzxwq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12458 { bs3CpuInstr3_vpmovzxwq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12459 { bs3CpuInstr3_vpmovzxwq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesWQ), s_aValuesWQ }, 12460 12461 { bs3CpuInstr3_pmovzxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12462 { bs3CpuInstr3_pmovzxdq_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12463 { bs3CpuInstr3_pmovzxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12464 { bs3CpuInstr3_pmovzxdq_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12465 { bs3CpuInstr3_vpmovzxdq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12466 { bs3CpuInstr3_vpmovzxdq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12467 { bs3CpuInstr3_vpmovzxdq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12468 { bs3CpuInstr3_vpmovzxdq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12469 { bs3CpuInstr3_vpmovzxdq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, XMM2, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12470 { bs3CpuInstr3_vpmovzxdq_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12471 { bs3CpuInstr3_vpmovzxdq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, XMM8, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12472 { bs3CpuInstr3_vpmovzxdq_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValuesDQ), s_aValuesDQ }, 12477 12473 }; 12478 12474 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12490 12486 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 12491 12487 { 12492 { bs3CpuInstr3_lddqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12493 12494 { bs3CpuInstr3_vlddqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12495 { bs3CpuInstr3_vlddqu_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12488 { bs3CpuInstr3_lddqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12489 12490 { bs3CpuInstr3_vlddqu_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12491 12492 { bs3CpuInstr3_vlddqu_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12496 12493 }; 12497 12494 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 12498 12495 { 12499 { bs3CpuInstr3_lddqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12500 12501 { bs3CpuInstr3_vlddqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12502 12503 { bs3CpuInstr3_vlddqu_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12496 { bs3CpuInstr3_lddqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12497 12498 { bs3CpuInstr3_vlddqu_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12499 12500 { bs3CpuInstr3_vlddqu_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12504 12501 }; 12505 12502 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 12506 12503 { 12507 { bs3CpuInstr3_lddqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12508 { bs3CpuInstr3_lddqu_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, 10, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12509 12510 { bs3CpuInstr3_vlddqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12511 { bs3CpuInstr3_vlddqu_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 11, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12512 12513 { bs3CpuInstr3_vlddqu_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12514 { bs3CpuInstr3_vlddqu_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 12, 255, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 },12504 { bs3CpuInstr3_lddqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12505 { bs3CpuInstr3_lddqu_XMM10_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_SSE3, XMM10, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12506 12507 { bs3CpuInstr3_vlddqu_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12508 { bs3CpuInstr3_vlddqu_XMM11_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM11, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12509 12510 { bs3CpuInstr3_vlddqu_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12511 { bs3CpuInstr3_vlddqu_YMM12_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM12, FSxBX, RT_ELEMENTS(g_aMoveValues3), g_aMoveValues3 }, 12515 12512 }; 12516 12513 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12540 12537 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 12541 12538 { 12542 { bs3CpuInstr3_phminposuw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },12543 { bs3CpuInstr3_phminposuw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },12544 { bs3CpuInstr3_vphminposuw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },12545 { bs3CpuInstr3_vphminposuw_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },12539 { bs3CpuInstr3_phminposuw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 12540 { bs3CpuInstr3_phminposuw_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12541 { bs3CpuInstr3_vphminposuw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 12542 { bs3CpuInstr3_vphminposuw_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12546 12543 }; 12547 12544 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 12548 12545 { 12549 { bs3CpuInstr3_phminposuw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },12550 { bs3CpuInstr3_phminposuw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },12551 { bs3CpuInstr3_vphminposuw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },12552 { bs3CpuInstr3_vphminposuw_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },12546 { bs3CpuInstr3_phminposuw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 12547 { bs3CpuInstr3_phminposuw_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12548 { bs3CpuInstr3_vphminposuw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 12549 { bs3CpuInstr3_vphminposuw_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12553 12550 }; 12554 12551 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 12555 12552 { 12556 { bs3CpuInstr3_phminposuw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },12557 { bs3CpuInstr3_phminposuw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },12558 { bs3CpuInstr3_phminposuw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },12559 { bs3CpuInstr3_phminposuw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },12560 { bs3CpuInstr3_vphminposuw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },12561 { bs3CpuInstr3_vphminposuw_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },12562 { bs3CpuInstr3_vphminposuw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },12563 { bs3CpuInstr3_vphminposuw_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },12553 { bs3CpuInstr3_phminposuw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 12554 { bs3CpuInstr3_phminposuw_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12555 { bs3CpuInstr3_phminposuw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValues), s_aValues }, 12556 { bs3CpuInstr3_phminposuw_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12557 { bs3CpuInstr3_vphminposuw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 12558 { bs3CpuInstr3_vphminposuw_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12559 { bs3CpuInstr3_vphminposuw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValues), s_aValues }, 12560 { bs3CpuInstr3_vphminposuw_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 12564 12561 }; 12565 12562 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12571 12568 12572 12569 /* 12573 * VBROADCASTSS/VBROADCASTSD 12570 * VBROADCASTSS/VBROADCASTSD/VBROADCASTF128 12574 12571 */ 12575 12572 BS3_DECL_FAR(uint8_t) bs3CpuInstr3_vbroadcastss_vbroadcastsd_vbroadcastf128(uint8_t bMode) … … 12601 12598 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 12602 12599 { 12603 { bs3CpuInstr3_vbroadcastss_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12604 { bs3CpuInstr3_vbroadcastss_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12605 { bs3CpuInstr3_vbroadcastss_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12606 { bs3CpuInstr3_vbroadcastss_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12607 12608 { bs3CpuInstr3_vbroadcastsd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12609 { bs3CpuInstr3_vbroadcastsd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12610 12611 { bs3CpuInstr3_vbroadcastf128_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues128), s_aValues128 },12600 { bs3CpuInstr3_vbroadcastss_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12601 { bs3CpuInstr3_vbroadcastss_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12602 { bs3CpuInstr3_vbroadcastss_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12603 { bs3CpuInstr3_vbroadcastss_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12604 12605 { bs3CpuInstr3_vbroadcastsd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12606 { bs3CpuInstr3_vbroadcastsd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12607 12608 { bs3CpuInstr3_vbroadcastf128_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12612 12609 }; 12613 12610 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 12614 12611 { 12615 { bs3CpuInstr3_vbroadcastss_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12616 { bs3CpuInstr3_vbroadcastss_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12617 { bs3CpuInstr3_vbroadcastss_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12618 { bs3CpuInstr3_vbroadcastss_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12619 12620 { bs3CpuInstr3_vbroadcastsd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12621 { bs3CpuInstr3_vbroadcastsd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12622 12623 { bs3CpuInstr3_vbroadcastf128_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues128), s_aValues128 },12612 { bs3CpuInstr3_vbroadcastss_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12613 { bs3CpuInstr3_vbroadcastss_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12614 { bs3CpuInstr3_vbroadcastss_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12615 { bs3CpuInstr3_vbroadcastss_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12616 12617 { bs3CpuInstr3_vbroadcastsd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12618 { bs3CpuInstr3_vbroadcastsd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12619 12620 { bs3CpuInstr3_vbroadcastf128_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12624 12621 }; 12625 12622 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 12626 12623 { 12627 { bs3CpuInstr3_vbroadcastss_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, 1, 2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12628 { bs3CpuInstr3_vbroadcastss_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12629 { bs3CpuInstr3_vbroadcastss_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, 9, 8, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12630 { bs3CpuInstr3_vbroadcastss_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12631 { bs3CpuInstr3_vbroadcastss_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12632 { bs3CpuInstr3_vbroadcastss_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12633 { bs3CpuInstr3_vbroadcastss_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, 9, 8, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12634 { bs3CpuInstr3_vbroadcastss_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12635 12636 { bs3CpuInstr3_vbroadcastsd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12637 { bs3CpuInstr3_vbroadcastsd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12638 { bs3CpuInstr3_vbroadcastsd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, 9, 8, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12639 { bs3CpuInstr3_vbroadcastsd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12640 12641 { bs3CpuInstr3_vbroadcastf128_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12642 { bs3CpuInstr3_vbroadcastf128_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12643 12624 { bs3CpuInstr3_vbroadcastss_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12625 { bs3CpuInstr3_vbroadcastss_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12626 { bs3CpuInstr3_vbroadcastss_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, XMM9, XMM8, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12627 { bs3CpuInstr3_vbroadcastss_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12628 { bs3CpuInstr3_vbroadcastss_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12629 { bs3CpuInstr3_vbroadcastss_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12630 { bs3CpuInstr3_vbroadcastss_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, XMM8, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12631 { bs3CpuInstr3_vbroadcastss_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12632 12633 { bs3CpuInstr3_vbroadcastsd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12634 { bs3CpuInstr3_vbroadcastsd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12635 { bs3CpuInstr3_vbroadcastsd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, XMM8, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12636 { bs3CpuInstr3_vbroadcastsd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12637 12638 { bs3CpuInstr3_vbroadcastf128_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12639 { bs3CpuInstr3_vbroadcastf128_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12644 12640 }; 12645 12641 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12697 12693 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 12698 12694 { 12699 { bs3CpuInstr3_vpbroadcastb_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues8), s_aValues8 },12700 { bs3CpuInstr3_vpbroadcastb_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12701 { bs3CpuInstr3_vpbroadcastb_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues8), s_aValues8 },12702 { bs3CpuInstr3_vpbroadcastb_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12703 12704 { bs3CpuInstr3_vpbroadcastw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues16), s_aValues16 },12705 { bs3CpuInstr3_vpbroadcastw_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12706 { bs3CpuInstr3_vpbroadcastw_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues16), s_aValues16 },12707 { bs3CpuInstr3_vpbroadcastw_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12708 12709 { bs3CpuInstr3_vpbroadcastd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12710 { bs3CpuInstr3_vpbroadcastd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12711 { bs3CpuInstr3_vpbroadcastd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12712 { bs3CpuInstr3_vpbroadcastd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12713 12714 { bs3CpuInstr3_vpbroadcastq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12715 { bs3CpuInstr3_vpbroadcastq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12716 { bs3CpuInstr3_vpbroadcastq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12717 { bs3CpuInstr3_vpbroadcastq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12718 12719 { bs3CpuInstr3_vbroadcasti128_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX _256, 1, 255, RT_ELEMENTS(s_aValues128), s_aValues128 },12695 { bs3CpuInstr3_vpbroadcastb_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12696 { bs3CpuInstr3_vpbroadcastb_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12697 { bs3CpuInstr3_vpbroadcastb_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12698 { bs3CpuInstr3_vpbroadcastb_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12699 12700 { bs3CpuInstr3_vpbroadcastw_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12701 { bs3CpuInstr3_vpbroadcastw_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12702 { bs3CpuInstr3_vpbroadcastw_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12703 { bs3CpuInstr3_vpbroadcastw_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12704 12705 { bs3CpuInstr3_vpbroadcastd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12706 { bs3CpuInstr3_vpbroadcastd_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12707 { bs3CpuInstr3_vpbroadcastd_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12708 { bs3CpuInstr3_vpbroadcastd_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12709 12710 { bs3CpuInstr3_vpbroadcastq_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12711 { bs3CpuInstr3_vpbroadcastq_XMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12712 { bs3CpuInstr3_vpbroadcastq_YMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12713 { bs3CpuInstr3_vpbroadcastq_YMM1_FSxBX_icebp_c16, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12714 12715 { bs3CpuInstr3_vbroadcasti128_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12720 12716 }; 12721 12717 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 12722 12718 { 12723 { bs3CpuInstr3_vpbroadcastb_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues8), s_aValues8 },12724 { bs3CpuInstr3_vpbroadcastb_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12725 { bs3CpuInstr3_vpbroadcastb_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues8), s_aValues8 },12726 { bs3CpuInstr3_vpbroadcastb_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12727 12728 { bs3CpuInstr3_vpbroadcastw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues16), s_aValues16 },12729 { bs3CpuInstr3_vpbroadcastw_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12730 { bs3CpuInstr3_vpbroadcastw_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues16), s_aValues16 },12731 { bs3CpuInstr3_vpbroadcastw_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12732 12733 { bs3CpuInstr3_vpbroadcastd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12734 { bs3CpuInstr3_vpbroadcastd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12735 { bs3CpuInstr3_vpbroadcastd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12736 { bs3CpuInstr3_vpbroadcastd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12737 12738 { bs3CpuInstr3_vpbroadcastq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12739 { bs3CpuInstr3_vpbroadcastq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12740 { bs3CpuInstr3_vpbroadcastq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12741 { bs3CpuInstr3_vpbroadcastq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12742 12743 { bs3CpuInstr3_vbroadcasti128_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX _256, 1, 255, RT_ELEMENTS(s_aValues128), s_aValues128 },12719 { bs3CpuInstr3_vpbroadcastb_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12720 { bs3CpuInstr3_vpbroadcastb_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12721 { bs3CpuInstr3_vpbroadcastb_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12722 { bs3CpuInstr3_vpbroadcastb_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12723 12724 { bs3CpuInstr3_vpbroadcastw_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12725 { bs3CpuInstr3_vpbroadcastw_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12726 { bs3CpuInstr3_vpbroadcastw_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12727 { bs3CpuInstr3_vpbroadcastw_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12728 12729 { bs3CpuInstr3_vpbroadcastd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12730 { bs3CpuInstr3_vpbroadcastd_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12731 { bs3CpuInstr3_vpbroadcastd_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12732 { bs3CpuInstr3_vpbroadcastd_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12733 12734 { bs3CpuInstr3_vpbroadcastq_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12735 { bs3CpuInstr3_vpbroadcastq_XMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12736 { bs3CpuInstr3_vpbroadcastq_YMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12737 { bs3CpuInstr3_vpbroadcastq_YMM1_FSxBX_icebp_c32, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12738 12739 { bs3CpuInstr3_vbroadcasti128_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12744 12740 }; 12745 12741 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 12746 12742 { 12747 { bs3CpuInstr3_vpbroadcastb_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues8), s_aValues8 },12748 { bs3CpuInstr3_vpbroadcastb_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12749 { bs3CpuInstr3_vpbroadcastb_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, 9, 8,RT_ELEMENTS(s_aValues8), s_aValues8 },12750 { bs3CpuInstr3_vpbroadcastb_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 9, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12751 { bs3CpuInstr3_vpbroadcastb_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues8), s_aValues8 },12752 { bs3CpuInstr3_vpbroadcastb_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12753 { bs3CpuInstr3_vpbroadcastb_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, 9, 8,RT_ELEMENTS(s_aValues8), s_aValues8 },12754 { bs3CpuInstr3_vpbroadcastb_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 9, 255, RT_ELEMENTS(s_aValues8), s_aValues8 },12755 12756 { bs3CpuInstr3_vpbroadcastw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues16), s_aValues16 },12757 { bs3CpuInstr3_vpbroadcastw_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12758 { bs3CpuInstr3_vpbroadcastw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, 9, 8,RT_ELEMENTS(s_aValues16), s_aValues16 },12759 { bs3CpuInstr3_vpbroadcastw_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, 9, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12760 { bs3CpuInstr3_vpbroadcastw_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues16), s_aValues16 },12761 { bs3CpuInstr3_vpbroadcastw_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12762 { bs3CpuInstr3_vpbroadcastw_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, 9, 8,RT_ELEMENTS(s_aValues16), s_aValues16 },12763 { bs3CpuInstr3_vpbroadcastw_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, 9, 255, RT_ELEMENTS(s_aValues16), s_aValues16 },12764 12765 { bs3CpuInstr3_vpbroadcastd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12766 { bs3CpuInstr3_vpbroadcastd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12767 { bs3CpuInstr3_vpbroadcastd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, 9, 8,RT_ELEMENTS(s_aValues32), s_aValues32 },12768 { bs3CpuInstr3_vpbroadcastd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, 9, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12769 { bs3CpuInstr3_vpbroadcastd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues32), s_aValues32 },12770 { bs3CpuInstr3_vpbroadcastd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12771 { bs3CpuInstr3_vpbroadcastd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, 9, 8,RT_ELEMENTS(s_aValues32), s_aValues32 },12772 { bs3CpuInstr3_vpbroadcastd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, 9, 255, RT_ELEMENTS(s_aValues32), s_aValues32 },12773 12774 { bs3CpuInstr3_vpbroadcastq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12775 { bs3CpuInstr3_vpbroadcastq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12776 { bs3CpuInstr3_vpbroadcastq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, 9, 8,RT_ELEMENTS(s_aValues64), s_aValues64 },12777 { bs3CpuInstr3_vpbroadcastq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, 9, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12778 { bs3CpuInstr3_vpbroadcastq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, 1, 2,RT_ELEMENTS(s_aValues64), s_aValues64 },12779 { bs3CpuInstr3_vpbroadcastq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12780 { bs3CpuInstr3_vpbroadcastq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, 9, 8,RT_ELEMENTS(s_aValues64), s_aValues64 },12781 { bs3CpuInstr3_vpbroadcastq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, 9, 255, RT_ELEMENTS(s_aValues64), s_aValues64 },12782 12783 { bs3CpuInstr3_vbroadcasti128_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 1, 255, RT_ELEMENTS(s_aValues128), s_aValues128 },12784 { bs3CpuInstr3_vbroadcasti128_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, 9, 255, RT_ELEMENTS(s_aValues128), s_aValues128 },12743 { bs3CpuInstr3_vpbroadcastb_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12744 { bs3CpuInstr3_vpbroadcastb_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12745 { bs3CpuInstr3_vpbroadcastb_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, XMM9, XMM8, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12746 { bs3CpuInstr3_vpbroadcastb_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12747 { bs3CpuInstr3_vpbroadcastb_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12748 { bs3CpuInstr3_vpbroadcastb_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12749 { bs3CpuInstr3_vpbroadcastb_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, XMM8, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12750 { bs3CpuInstr3_vpbroadcastb_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues8), s_aValues8 }, 12751 12752 { bs3CpuInstr3_vpbroadcastw_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12753 { bs3CpuInstr3_vpbroadcastw_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12754 { bs3CpuInstr3_vpbroadcastw_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, XMM9, XMM8, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12755 { bs3CpuInstr3_vpbroadcastw_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12756 { bs3CpuInstr3_vpbroadcastw_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12757 { bs3CpuInstr3_vpbroadcastw_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12758 { bs3CpuInstr3_vpbroadcastw_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, XMM8, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12759 { bs3CpuInstr3_vpbroadcastw_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues16), s_aValues16 }, 12760 12761 { bs3CpuInstr3_vpbroadcastd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12762 { bs3CpuInstr3_vpbroadcastd_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12763 { bs3CpuInstr3_vpbroadcastd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, XMM9, XMM8, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12764 { bs3CpuInstr3_vpbroadcastd_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12765 { bs3CpuInstr3_vpbroadcastd_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12766 { bs3CpuInstr3_vpbroadcastd_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12767 { bs3CpuInstr3_vpbroadcastd_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, XMM8, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12768 { bs3CpuInstr3_vpbroadcastd_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues32), s_aValues32 }, 12769 12770 { bs3CpuInstr3_vpbroadcastq_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12771 { bs3CpuInstr3_vpbroadcastq_XMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12772 { bs3CpuInstr3_vpbroadcastq_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_128, XMM9, XMM8, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12773 { bs3CpuInstr3_vpbroadcastq_XMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12774 { bs3CpuInstr3_vpbroadcastq_YMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX2_256, YMM1, XMM2, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12775 { bs3CpuInstr3_vpbroadcastq_YMM1_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12776 { bs3CpuInstr3_vpbroadcastq_YMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX2_256, YMM9, XMM8, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12777 { bs3CpuInstr3_vpbroadcastq_YMM9_FSxBX_icebp_c64, X86_XCPT_AC, RM_MEM, T_AVX2_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues64), s_aValues64 }, 12778 12779 { bs3CpuInstr3_vbroadcasti128_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12780 { bs3CpuInstr3_vbroadcasti128_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues128), s_aValues128 }, 12785 12781 }; 12786 12782 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12822 12818 static BS3CPUINSTR3_TEST3_T const s_aTests16[] = 12823 12819 { 12824 { bs3CpuInstr3_vextracti128_XMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12825 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12826 { bs3CpuInstr3_vextracti128_XMM1_YMM2_000h_icebp_c16, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12827 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_000h_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12828 12829 { bs3CpuInstr3_vextractf128_XMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12830 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12831 { bs3CpuInstr3_vextractf128_XMM1_YMM2_000h_icebp_c16, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12832 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_000h_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12820 { bs3CpuInstr3_vextracti128_XMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12821 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12822 { bs3CpuInstr3_vextracti128_XMM1_YMM2_000h_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12823 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_000h_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12824 12825 { bs3CpuInstr3_vextractf128_XMM1_YMM2_0FFh_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12826 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_0FFh_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12827 { bs3CpuInstr3_vextractf128_XMM1_YMM2_000h_icebp_c16, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12828 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_000h_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12833 12829 }; 12834 12830 static BS3CPUINSTR3_TEST3_T const s_aTests32[] = 12835 12831 { 12836 { bs3CpuInstr3_vextracti128_XMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12837 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12838 { bs3CpuInstr3_vextracti128_XMM1_YMM2_000h_icebp_c32, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12839 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_000h_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12840 12841 { bs3CpuInstr3_vextractf128_XMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12842 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12843 { bs3CpuInstr3_vextractf128_XMM1_YMM2_000h_icebp_c32, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12844 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_000h_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12832 { bs3CpuInstr3_vextracti128_XMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12833 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12834 { bs3CpuInstr3_vextracti128_XMM1_YMM2_000h_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12835 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_000h_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12836 12837 { bs3CpuInstr3_vextractf128_XMM1_YMM2_0FFh_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12838 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_0FFh_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12839 { bs3CpuInstr3_vextractf128_XMM1_YMM2_000h_icebp_c32, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12840 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_000h_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12845 12841 }; 12846 12842 static BS3CPUINSTR3_TEST3_T const s_aTests64[] = 12847 12843 { 12848 { bs3CpuInstr3_vextracti128_XMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12849 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12850 { bs3CpuInstr3_vextracti128_XMM1_YMM2_000h_icebp_c64, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12851 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12852 12853 { bs3CpuInstr3_vextracti128_XMM8_YMM9_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, 8,9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12854 { bs3CpuInstr3_vextracti128_FSxBX_YMM9_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12855 { bs3CpuInstr3_vextracti128_XMM8_YMM9_000h_icebp_c64, 255, RM_REG, T_AVX2_128, 8,9, RT_ELEMENTS(s_aValues00), s_aValues00 },12856 { bs3CpuInstr3_vextracti128_FSxBX_YMM9_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,9, RT_ELEMENTS(s_aValues00), s_aValues00 },12857 12858 { bs3CpuInstr3_vextractf128_XMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12859 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12860 { bs3CpuInstr3_vextractf128_XMM1_YMM2_000h_icebp_c64, 255, RM_REG, T_AVX2_128, 1,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12861 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,2, RT_ELEMENTS(s_aValues00), s_aValues00 },12862 12863 { bs3CpuInstr3_vextractf128_XMM8_YMM9_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, 8,9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12864 { bs3CpuInstr3_vextractf128_FSxBX_YMM9_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF },12865 { bs3CpuInstr3_vextractf128_XMM8_YMM9_000h_icebp_c64, 255, RM_REG, T_AVX2_128, 8,9, RT_ELEMENTS(s_aValues00), s_aValues00 },12866 { bs3CpuInstr3_vextractf128_FSxBX_YMM9_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, 255,9, RT_ELEMENTS(s_aValues00), s_aValues00 },12844 { bs3CpuInstr3_vextracti128_XMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12845 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12846 { bs3CpuInstr3_vextracti128_XMM1_YMM2_000h_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12847 { bs3CpuInstr3_vextracti128_FSxBX_YMM2_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12848 12849 { bs3CpuInstr3_vextracti128_XMM8_YMM9_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, XMM8, YMM9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12850 { bs3CpuInstr3_vextracti128_FSxBX_YMM9_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12851 { bs3CpuInstr3_vextracti128_XMM8_YMM9_000h_icebp_c64, 255, RM_REG, T_AVX2_128, XMM8, YMM9, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12852 { bs3CpuInstr3_vextracti128_FSxBX_YMM9_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM9, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12853 12854 { bs3CpuInstr3_vextractf128_XMM1_YMM2_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12855 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12856 { bs3CpuInstr3_vextractf128_XMM1_YMM2_000h_icebp_c64, 255, RM_REG, T_AVX2_128, XMM1, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12857 { bs3CpuInstr3_vextractf128_FSxBX_YMM2_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM2, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12858 12859 { bs3CpuInstr3_vextractf128_XMM8_YMM9_0FFh_icebp_c64, 255, RM_REG, T_AVX2_128, XMM8, YMM9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12860 { bs3CpuInstr3_vextractf128_FSxBX_YMM9_0FFh_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM9, RT_ELEMENTS(s_aValuesFF), s_aValuesFF }, 12861 { bs3CpuInstr3_vextractf128_XMM8_YMM9_000h_icebp_c64, 255, RM_REG, T_AVX2_128, XMM8, YMM9, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12862 { bs3CpuInstr3_vextractf128_FSxBX_YMM9_000h_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX2_128, FSxBX, YMM9, RT_ELEMENTS(s_aValues00), s_aValues00 }, 12867 12863 }; 12868 12864 static BS3CPUINSTR3_TEST3_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST3_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 12923 12919 PBS3EXTCTX pExtCtxOut; 12924 12920 PBS3EXTCTX pExtCtx = bs3CpuInstr3AllocExtCtxs(&pExtCtxOut); 12921 BS3SETREGCTX pSetRegCtx; 12925 12922 if (!pExtCtx) 12926 12923 return 0; … … 12936 12933 bs3CpuInstr3SetupSseAndAvx(&Ctx, pExtCtx); 12937 12934 pbBuf = bs3CpuInstr3BufSetup(pbBuf, &cbBuf, bMode); 12935 12936 pSetRegCtx.pExtCtx = pExtCtx; 12937 pSetRegCtx.pCtx = &Ctx; 12938 pSetRegCtx.bMode = bMode; 12938 12939 12939 12940 /* … … 12962 12963 uint8_t const cbInstr = ((uint8_t const BS3_FAR *)(uintptr_t)paTests[iTest].pfnWorker)[-1]; 12963 12964 unsigned const cValues = paTests[iTest].cValues; 12964 bool const fMmxInstr = paTests[iTest].enmType < T_SSE;12965 12965 bool const fSseInstr = paTests[iTest].enmType >= T_SSE && paTests[iTest].enmType < T_AVX_128; 12966 12966 bool const fAvxInstr = paTests[iTest].enmType >= T_AVX_128; 12967 bool const fMemOp = paTests[iTest].enmRm >= RM_MEM; 12967 12968 uint8_t const cbOperand = paTests[iTest].enmType < T_128BITS ? 64/8 12968 12969 : paTests[iTest].enmType < T_256BITS ? 128/8 : 256/8; … … 12973 12974 uint8_t const idxEflOut = cbOperand == 32 ? 2 : cbOperand == 16 ? 1 : 0; 12974 12975 uint8_t bXcptExpect = !g_afTypeSupports[paTests[iTest].enmType] ? X86_XCPT_UD 12975 : fMmxInstr ? paConfigs[iCfg].bXcptMmx12976 12976 : fSseInstr ? paConfigs[iCfg].bXcptSse 12977 12977 : BS3_MODE_IS_RM_OR_V86(bMode) ? X86_XCPT_UD : paConfigs[iCfg].bXcptAvx; … … 12985 12985 if ((paTests[iTest].enmRm == RM_REG || paTests[iTest].enmRm == RM_MEM8) && (!paConfigs[iCfg].fAligned || paConfigs[iCfg].fAlignCheck || fPf)) 12986 12986 continue; 12987 12988 BS3_ASSERT(fMemOp || !BS3_REGISTER_IS_MEMREF(paTests[iTest].iRegSrc2)); 12989 12990 pSetRegCtx.fZeroYMMHi = fSseInstr; 12987 12991 12988 12992 /* #AC is only raised in ring-3.: */ … … 13026 13030 13027 13031 /* source1 */ 13028 if (paTests[iTest].iRegSrc1 == UINT8_MAX) 13032 Bs3ExtCtxSetReg(&pSetRegCtx, paTests[iTest].iRegSrc1, &paValues[iVal].uSrc1); 13033 13034 /* source2 */ 13035 if (fMemOp) 13029 13036 { 13030 BS3_ASSERT(paTests[iTest].enmRm >= RM_MEM);13031 BS3_ASSERT(paTests[iTest].iRegSrc2 != UINT8_MAX);13032 Bs3MemCpy(puMemOpAlias, &paValues[iVal].uSrc1, cbMemOp);13033 uMemOpExpect = paValues[iVal].uSrc1;13034 }13035 else if (fMmxInstr)13036 Bs3ExtCtxSetMm(pExtCtx, paTests[iTest].iRegSrc1, paValues[iVal].uSrc1.QWords.qw0, BS3EXTCTXTOPMM_ZERO);13037 else if (fSseInstr)13038 Bs3ExtCtxSetXmm(pExtCtx, paTests[iTest].iRegSrc1, &paValues[iVal].uSrc1.DQWords.dqw0);13039 else13040 Bs3ExtCtxSetYmm(pExtCtx, paTests[iTest].iRegSrc1, &paValues[iVal].uSrc1, 32);13041 13042 /* source2 */13043 if (paTests[iTest].iRegSrc2 == UINT8_MAX)13044 {13045 BS3_ASSERT(paTests[iTest].enmRm >= RM_MEM);13046 BS3_ASSERT(paTests[iTest].iRegSrc1 != UINT8_MAX);13047 13037 Bs3MemCpy(puMemOpAlias, &paValues[iVal].uSrc2, cbMemOp); 13048 13038 uMemOpExpect = paValues[iVal].uSrc2; 13049 }13050 else if (fMmxInstr)13051 Bs3ExtCtxSetMm(pExtCtx, paTests[iTest].iRegSrc2, paValues[iVal].uSrc2.QWords.qw0, BS3EXTCTXTOPMM_ZERO);13052 else if (fSseInstr)13053 Bs3ExtCtxSetXmm(pExtCtx, paTests[iTest].iRegSrc2, &paValues[iVal].uSrc2.DQWords.dqw0);13054 else13055 Bs3ExtCtxSetYmm(pExtCtx, paTests[iTest].iRegSrc2, &paValues[iVal].uSrc2, 32);13056 13057 /* Memory pointer. */13058 if (paTests[iTest].enmRm >= RM_MEM)13059 {13060 BS3_ASSERT( paTests[iTest].iRegSrc1 == UINT8_MAX13061 || paTests[iTest].iRegSrc2 == UINT8_MAX);13062 13039 Bs3RegCtxSetGrpSegFromCurPtr(&Ctx, &Ctx.rbx, &Ctx.fs, puMemOp); 13063 13040 } 13041 else 13042 Bs3ExtCtxSetReg(&pSetRegCtx, paTests[iTest].iRegSrc2, &paValues[iVal].uSrc2); 13064 13043 13065 13044 /* … … 13074 13053 cErrors = Bs3TestSubErrorCount(); 13075 13054 13076 if (bXcptExpect == X86_XCPT_DB && fMmxInstr)13077 {13078 uSavedFtw = Bs3ExtCtxGetAbridgedFtw(pExtCtx);13079 Bs3ExtCtxSetAbridgedFtw(pExtCtx, 0xff);13080 }13081 13055 Bs3TestCheckExtCtx(pExtCtxOut, pExtCtx, 0 /*fFlags*/, pszMode, idTestStep); 13082 13056 … … 13100 13074 Ctx.cr2.u = 0; 13101 13075 13102 if ( paTests[iTest].enmRm >= RM_MEM13076 if ( fMemOp 13103 13077 && Bs3MemCmp(puMemOpAlias, &uMemOpExpect, cbMemOp) != 0) 13104 13078 Bs3TestFailedF("Expected uMemOp %.*Rhxs, got %.*Rhxs", cbMemOp, &uMemOpExpect, cbMemOp, puMemOpAlias); … … 13174 13148 static BS3CPUINSTR3_TEST4_T const s_aTests16[] = 13175 13149 { 13176 { bs3CpuInstr3_ptest_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13177 { bs3CpuInstr3_ptest_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13178 { bs3CpuInstr3_vptest_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13179 { bs3CpuInstr3_vptest_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13180 { bs3CpuInstr3_vptest_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13181 { bs3CpuInstr3_vptest_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13150 { bs3CpuInstr3_ptest_XMM1_XMM2_icebp_c16, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13151 { bs3CpuInstr3_ptest_XMM1_FSxBX_icebp_c16, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13152 { bs3CpuInstr3_vptest_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13153 { bs3CpuInstr3_vptest_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13154 { bs3CpuInstr3_vptest_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13155 { bs3CpuInstr3_vptest_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13182 13156 }; 13183 13157 static BS3CPUINSTR3_TEST4_T const s_aTests32[] = 13184 13158 { 13185 { bs3CpuInstr3_ptest_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13186 { bs3CpuInstr3_ptest_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13187 { bs3CpuInstr3_vptest_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13188 { bs3CpuInstr3_vptest_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13189 { bs3CpuInstr3_vptest_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13190 { bs3CpuInstr3_vptest_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13159 { bs3CpuInstr3_ptest_XMM1_XMM2_icebp_c32, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13160 { bs3CpuInstr3_ptest_XMM1_FSxBX_icebp_c32, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13161 { bs3CpuInstr3_vptest_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13162 { bs3CpuInstr3_vptest_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13163 { bs3CpuInstr3_vptest_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13164 { bs3CpuInstr3_vptest_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13191 13165 }; 13192 13166 static BS3CPUINSTR3_TEST4_T const s_aTests64[] = 13193 13167 { 13194 { bs3CpuInstr3_ptest_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13195 { bs3CpuInstr3_ptest_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13196 { bs3CpuInstr3_ptest_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },13197 { bs3CpuInstr3_ptest_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },13198 { bs3CpuInstr3_vptest_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13199 { bs3CpuInstr3_vptest_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13200 { bs3CpuInstr3_vptest_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },13201 { bs3CpuInstr3_vptest_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },13202 { bs3CpuInstr3_vptest_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13203 { bs3CpuInstr3_vptest_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13204 { bs3CpuInstr3_vptest_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },13205 { bs3CpuInstr3_vptest_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },13168 { bs3CpuInstr3_ptest_XMM1_XMM2_icebp_c64, 255, RM_REG, T_SSE4_1, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13169 { bs3CpuInstr3_ptest_XMM1_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13170 { bs3CpuInstr3_ptest_XMM9_XMM8_icebp_c64, 255, RM_REG, T_SSE4_1, XMM9, XMM8, RT_ELEMENTS(s_aValues), s_aValues }, 13171 { bs3CpuInstr3_ptest_XMM9_FSxBX_icebp_c64, 255, RM_MEM, T_SSE4_1, XMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13172 { bs3CpuInstr3_vptest_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13173 { bs3CpuInstr3_vptest_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13174 { bs3CpuInstr3_vptest_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValues), s_aValues }, 13175 { bs3CpuInstr3_vptest_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13176 { bs3CpuInstr3_vptest_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13177 { bs3CpuInstr3_vptest_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13178 { bs3CpuInstr3_vptest_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, YMM8, RT_ELEMENTS(s_aValues), s_aValues }, 13179 { bs3CpuInstr3_vptest_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13206 13180 }; 13207 13181 static BS3CPUINSTR3_TEST4_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST4_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 13253 13227 static BS3CPUINSTR3_TEST4_T const s_aTests16[] = 13254 13228 { 13255 { bs3CpuInstr3_vtestps_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13256 { bs3CpuInstr3_vtestps_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13257 { bs3CpuInstr3_vtestps_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13258 { bs3CpuInstr3_vtestps_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13229 { bs3CpuInstr3_vtestps_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13230 { bs3CpuInstr3_vtestps_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13231 { bs3CpuInstr3_vtestps_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13232 { bs3CpuInstr3_vtestps_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13259 13233 }; 13260 13234 static BS3CPUINSTR3_TEST4_T const s_aTests32[] = 13261 13235 { 13262 { bs3CpuInstr3_vtestps_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13263 { bs3CpuInstr3_vtestps_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13264 { bs3CpuInstr3_vtestps_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13265 { bs3CpuInstr3_vtestps_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13236 { bs3CpuInstr3_vtestps_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13237 { bs3CpuInstr3_vtestps_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13238 { bs3CpuInstr3_vtestps_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13239 { bs3CpuInstr3_vtestps_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13266 13240 }; 13267 13241 static BS3CPUINSTR3_TEST4_T const s_aTests64[] = 13268 13242 { 13269 { bs3CpuInstr3_vtestps_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13270 { bs3CpuInstr3_vtestps_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13271 { bs3CpuInstr3_vtestps_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13272 { bs3CpuInstr3_vtestps_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13273 { bs3CpuInstr3_vtestps_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },13274 { bs3CpuInstr3_vtestps_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },13275 { bs3CpuInstr3_vtestps_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },13276 { bs3CpuInstr3_vtestps_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },13243 { bs3CpuInstr3_vtestps_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13244 { bs3CpuInstr3_vtestps_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13245 { bs3CpuInstr3_vtestps_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13246 { bs3CpuInstr3_vtestps_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13247 { bs3CpuInstr3_vtestps_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValues), s_aValues }, 13248 { bs3CpuInstr3_vtestps_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13249 { bs3CpuInstr3_vtestps_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, YMM8, RT_ELEMENTS(s_aValues), s_aValues }, 13250 { bs3CpuInstr3_vtestps_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13277 13251 }; 13278 13252 static BS3CPUINSTR3_TEST4_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST4_MODES_INIT(s_aTests16, s_aTests32, s_aTests64); … … 13324 13298 static BS3CPUINSTR3_TEST4_T const s_aTests16[] = 13325 13299 { 13326 { bs3CpuInstr3_vtestpd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13327 { bs3CpuInstr3_vtestpd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13328 { bs3CpuInstr3_vtestpd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13329 { bs3CpuInstr3_vtestpd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13300 { bs3CpuInstr3_vtestpd_XMM1_XMM2_icebp_c16, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13301 { bs3CpuInstr3_vtestpd_XMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13302 { bs3CpuInstr3_vtestpd_YMM1_YMM2_icebp_c16, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13303 { bs3CpuInstr3_vtestpd_YMM1_FSxBX_icebp_c16, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13330 13304 }; 13331 13305 static BS3CPUINSTR3_TEST4_T const s_aTests32[] = 13332 13306 { 13333 { bs3CpuInstr3_vtestpd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13334 { bs3CpuInstr3_vtestpd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13335 { bs3CpuInstr3_vtestpd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13336 { bs3CpuInstr3_vtestpd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13307 { bs3CpuInstr3_vtestpd_XMM1_XMM2_icebp_c32, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13308 { bs3CpuInstr3_vtestpd_XMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13309 { bs3CpuInstr3_vtestpd_YMM1_YMM2_icebp_c32, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13310 { bs3CpuInstr3_vtestpd_YMM1_FSxBX_icebp_c32, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13337 13311 }; 13338 13312 static BS3CPUINSTR3_TEST4_T const s_aTests64[] = 13339 13313 { 13340 { bs3CpuInstr3_vtestpd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13341 { bs3CpuInstr3_vtestpd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13342 { bs3CpuInstr3_vtestpd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },13343 { bs3CpuInstr3_vtestpd_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },13344 { bs3CpuInstr3_vtestpd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, 1, 2,RT_ELEMENTS(s_aValues), s_aValues },13345 { bs3CpuInstr3_vtestpd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 1, 255, RT_ELEMENTS(s_aValues), s_aValues },13346 { bs3CpuInstr3_vtestpd_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, 9, 8,RT_ELEMENTS(s_aValues), s_aValues },13347 { bs3CpuInstr3_vtestpd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, 9, 255, RT_ELEMENTS(s_aValues), s_aValues },13314 { bs3CpuInstr3_vtestpd_XMM1_XMM2_icebp_c64, 255, RM_REG, T_AVX_128, XMM1, XMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13315 { bs3CpuInstr3_vtestpd_XMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13316 { bs3CpuInstr3_vtestpd_XMM9_XMM8_icebp_c64, 255, RM_REG, T_AVX_128, XMM9, XMM8, RT_ELEMENTS(s_aValues), s_aValues }, 13317 { bs3CpuInstr3_vtestpd_XMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_128, XMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13318 { bs3CpuInstr3_vtestpd_YMM1_YMM2_icebp_c64, 255, RM_REG, T_AVX_256, YMM1, YMM2, RT_ELEMENTS(s_aValues), s_aValues }, 13319 { bs3CpuInstr3_vtestpd_YMM1_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM1, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13320 { bs3CpuInstr3_vtestpd_YMM9_YMM8_icebp_c64, 255, RM_REG, T_AVX_256, YMM9, YMM8, RT_ELEMENTS(s_aValues), s_aValues }, 13321 { bs3CpuInstr3_vtestpd_YMM9_FSxBX_icebp_c64, X86_XCPT_DB, RM_MEM, T_AVX_256, YMM9, FSxBX, RT_ELEMENTS(s_aValues), s_aValues }, 13348 13322 }; 13349 13323 static BS3CPUINSTR3_TEST4_MODE_T const s_aTests[3] = BS3CPUINSTR3_TEST4_MODES_INIT(s_aTests16, s_aTests32, s_aTests64);
Note:
See TracChangeset
for help on using the changeset viewer.