Changeset 95986 in vbox
- Timestamp:
- Aug 2, 2022 1:19:54 PM (3 years ago)
- svn:sync-xref-src-repo-rev:
- 152746
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllAImpl.asm
r95951 r95986 4086 4086 IEMIMPL_MEDIA_F3 vpshufb 4087 4087 IEMIMPL_MEDIA_F3 vpand 4088 IEMIMPL_MEDIA_F3 vpmaxub 4088 4089 IEMIMPL_MEDIA_F3 vpandn 4089 4090 IEMIMPL_MEDIA_F3 vpor -
trunk/src/VBox/VMM/VMMAll/IEMAllAImplC.cpp
r95951 r95986 9555 9555 #endif 9556 9556 9557 IEM_DECL_IMPL_DEF(void, iemAImpl_vpmaxub_u128_fallback,(PX86XSAVEAREA pExtState, PRTUINT128U puDst, 9558 PCRTUINT128U puSrc1, PCRTUINT128U puSrc2)) 9559 { 9560 puDst->au8[ 0] = RT_MAX(puSrc1->au8[ 0], puSrc2->au8[ 0]); 9561 puDst->au8[ 1] = RT_MAX(puSrc1->au8[ 1], puSrc2->au8[ 1]); 9562 puDst->au8[ 2] = RT_MAX(puSrc1->au8[ 2], puSrc2->au8[ 2]); 9563 puDst->au8[ 3] = RT_MAX(puSrc1->au8[ 3], puSrc2->au8[ 3]); 9564 puDst->au8[ 4] = RT_MAX(puSrc1->au8[ 4], puSrc2->au8[ 4]); 9565 puDst->au8[ 5] = RT_MAX(puSrc1->au8[ 5], puSrc2->au8[ 5]); 9566 puDst->au8[ 6] = RT_MAX(puSrc1->au8[ 6], puSrc2->au8[ 6]); 9567 puDst->au8[ 7] = RT_MAX(puSrc1->au8[ 7], puSrc2->au8[ 7]); 9568 puDst->au8[ 8] = RT_MAX(puSrc1->au8[ 8], puSrc2->au8[ 8]); 9569 puDst->au8[ 9] = RT_MAX(puSrc1->au8[ 9], puSrc2->au8[ 9]); 9570 puDst->au8[10] = RT_MAX(puSrc1->au8[10], puSrc2->au8[10]); 9571 puDst->au8[11] = RT_MAX(puSrc1->au8[11], puSrc2->au8[11]); 9572 puDst->au8[12] = RT_MAX(puSrc1->au8[12], puSrc2->au8[12]); 9573 puDst->au8[13] = RT_MAX(puSrc1->au8[13], puSrc2->au8[13]); 9574 puDst->au8[14] = RT_MAX(puSrc1->au8[14], puSrc2->au8[14]); 9575 puDst->au8[15] = RT_MAX(puSrc1->au8[15], puSrc2->au8[15]); 9576 RT_NOREF(pExtState); 9577 } 9578 9579 9580 IEM_DECL_IMPL_DEF(void, iemAImpl_vpmaxub_u256_fallback,(PX86XSAVEAREA pExtState, PRTUINT256U puDst, 9581 PCRTUINT256U puSrc1, PCRTUINT256U puSrc2)) 9582 { 9583 puDst->au8[ 0] = RT_MAX(puSrc1->au8[ 0], puSrc2->au8[ 0]); 9584 puDst->au8[ 1] = RT_MAX(puSrc1->au8[ 1], puSrc2->au8[ 1]); 9585 puDst->au8[ 2] = RT_MAX(puSrc1->au8[ 2], puSrc2->au8[ 2]); 9586 puDst->au8[ 3] = RT_MAX(puSrc1->au8[ 3], puSrc2->au8[ 3]); 9587 puDst->au8[ 4] = RT_MAX(puSrc1->au8[ 4], puSrc2->au8[ 4]); 9588 puDst->au8[ 5] = RT_MAX(puSrc1->au8[ 5], puSrc2->au8[ 5]); 9589 puDst->au8[ 6] = RT_MAX(puSrc1->au8[ 6], puSrc2->au8[ 6]); 9590 puDst->au8[ 7] = RT_MAX(puSrc1->au8[ 7], puSrc2->au8[ 7]); 9591 puDst->au8[ 8] = RT_MAX(puSrc1->au8[ 8], puSrc2->au8[ 8]); 9592 puDst->au8[ 9] = RT_MAX(puSrc1->au8[ 9], puSrc2->au8[ 9]); 9593 puDst->au8[10] = RT_MAX(puSrc1->au8[10], puSrc2->au8[10]); 9594 puDst->au8[11] = RT_MAX(puSrc1->au8[11], puSrc2->au8[11]); 9595 puDst->au8[12] = RT_MAX(puSrc1->au8[12], puSrc2->au8[12]); 9596 puDst->au8[13] = RT_MAX(puSrc1->au8[13], puSrc2->au8[13]); 9597 puDst->au8[14] = RT_MAX(puSrc1->au8[14], puSrc2->au8[14]); 9598 puDst->au8[15] = RT_MAX(puSrc1->au8[15], puSrc2->au8[15]); 9599 puDst->au8[16] = RT_MAX(puSrc1->au8[16], puSrc2->au8[16]); 9600 puDst->au8[17] = RT_MAX(puSrc1->au8[17], puSrc2->au8[17]); 9601 puDst->au8[18] = RT_MAX(puSrc1->au8[18], puSrc2->au8[18]); 9602 puDst->au8[19] = RT_MAX(puSrc1->au8[19], puSrc2->au8[19]); 9603 puDst->au8[20] = RT_MAX(puSrc1->au8[20], puSrc2->au8[20]); 9604 puDst->au8[21] = RT_MAX(puSrc1->au8[21], puSrc2->au8[21]); 9605 puDst->au8[22] = RT_MAX(puSrc1->au8[22], puSrc2->au8[22]); 9606 puDst->au8[23] = RT_MAX(puSrc1->au8[23], puSrc2->au8[23]); 9607 puDst->au8[24] = RT_MAX(puSrc1->au8[24], puSrc2->au8[24]); 9608 puDst->au8[25] = RT_MAX(puSrc1->au8[25], puSrc2->au8[25]); 9609 puDst->au8[26] = RT_MAX(puSrc1->au8[26], puSrc2->au8[26]); 9610 puDst->au8[27] = RT_MAX(puSrc1->au8[27], puSrc2->au8[27]); 9611 puDst->au8[28] = RT_MAX(puSrc1->au8[28], puSrc2->au8[28]); 9612 puDst->au8[29] = RT_MAX(puSrc1->au8[29], puSrc2->au8[29]); 9613 puDst->au8[30] = RT_MAX(puSrc1->au8[30], puSrc2->au8[30]); 9614 puDst->au8[31] = RT_MAX(puSrc1->au8[31], puSrc2->au8[31]); 9615 RT_NOREF(pExtState); 9616 } 9617 9557 9618 9558 9619 /* -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsVexMap1.cpp.h
r95554 r95986 4062 4062 4063 4063 /* Opcode VEX.0F 0xde - invalid */ 4064 /** Opcode VEX.66.0F 0xde - vpmaxub Vx, Hx, W */ 4065 FNIEMOP_STUB(iemOp_vpmaxub_Vx_Hx_W); 4064 4065 4066 /** Opcode VEX.66.0F 0xde - vpmaxub Vx, Hx, Wx */ 4067 FNIEMOP_DEF(iemOp_vpmaxub_Vx_Hx_Wx) 4068 { 4069 IEMOP_MNEMONIC3(VEX_RVM, VPMAXUB, vpmaxub, Vx, Hx, Wx, DISOPTYPE_HARMLESS, 0); 4070 IEMOPMEDIAF3_INIT_VARS(vpmaxub); 4071 return FNIEMOP_CALL_1(iemOpCommonAvxAvx2_Vx_Hx_Wx, IEM_SELECT_HOST_OR_FALLBACK(fAvx2, &s_Host, &s_Fallback)); 4072 } 4073 4074 4066 4075 /* Opcode VEX.F3.0F 0xde - invalid */ 4067 4076 /* Opcode VEX.F2.0F 0xde - invalid */ … … 4675 4684 /* 0xdc */ iemOp_InvalidNeedRM, iemOp_vpaddusb_Vx_Hx_Wx, iemOp_InvalidNeedRM, iemOp_InvalidNeedRM, 4676 4685 /* 0xdd */ iemOp_InvalidNeedRM, iemOp_vpaddusw_Vx_Hx_Wx, iemOp_InvalidNeedRM, iemOp_InvalidNeedRM, 4677 /* 0xde */ iemOp_InvalidNeedRM, iemOp_vpmaxub_Vx_Hx_W ,iemOp_InvalidNeedRM, iemOp_InvalidNeedRM,4686 /* 0xde */ iemOp_InvalidNeedRM, iemOp_vpmaxub_Vx_Hx_Wx, iemOp_InvalidNeedRM, iemOp_InvalidNeedRM, 4678 4687 /* 0xdf */ iemOp_InvalidNeedRM, iemOp_vpandn_Vx_Hx_Wx, iemOp_InvalidNeedRM, iemOp_InvalidNeedRM, 4679 4688 -
trunk/src/VBox/VMM/include/IEMInternal.h
r95951 r95986 1828 1828 FNIEMAIMPLMEDIAF3U128 iemAImpl_vpsubd_u128, iemAImpl_vpsubd_u128_fallback; 1829 1829 FNIEMAIMPLMEDIAF3U128 iemAImpl_vpsubq_u128, iemAImpl_vpsubq_u128_fallback; 1830 FNIEMAIMPLMEDIAF3U128 iemAImpl_vpmaxub_u128, iemAImpl_vpmaxub_u128_fallback; 1830 1831 FNIEMAIMPLMEDIAOPTF3U128 iemAImpl_vpacksswb_u128, iemAImpl_vpacksswb_u128_fallback; 1831 1832 FNIEMAIMPLMEDIAOPTF3U128 iemAImpl_vpackssdw_u128, iemAImpl_vpackssdw_u128_fallback; … … 1854 1855 FNIEMAIMPLMEDIAF3U256 iemAImpl_vpsubd_u256, iemAImpl_vpsubd_u256_fallback; 1855 1856 FNIEMAIMPLMEDIAF3U256 iemAImpl_vpsubq_u256, iemAImpl_vpsubq_u256_fallback; 1857 FNIEMAIMPLMEDIAF3U256 iemAImpl_vpmaxub_u256, iemAImpl_vpmaxub_u256_fallback; 1856 1858 FNIEMAIMPLMEDIAOPTF3U256 iemAImpl_vpacksswb_u256, iemAImpl_vpacksswb_u256_fallback; 1857 1859 FNIEMAIMPLMEDIAOPTF3U256 iemAImpl_vpackssdw_u256, iemAImpl_vpackssdw_u256_fallback;
Note:
See TracChangeset
for help on using the changeset viewer.