Changeset 100854 in vbox for trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap1.cpp.h
- Timestamp:
- Aug 11, 2023 1:29:04 AM (19 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap1.cpp.h
r100740 r100854 51 51 if (pVCpu->iem.s.uVexLength) 52 52 { 53 IEM_MC_BEGIN(4, 3 );53 IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER); 54 54 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2); 55 55 IEM_MC_LOCAL(RTUINT256U, uDst); … … 71 71 else 72 72 { 73 IEM_MC_BEGIN(4, 0 );73 IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER); 74 74 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 75 75 IEM_MC_IMPLICIT_AVX_AIMPL_ARGS(); … … 95 95 if (pVCpu->iem.s.uVexLength) 96 96 { 97 IEM_MC_BEGIN(4, 4 );97 IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER); 98 98 IEM_MC_LOCAL(RTUINT256U, uDst); 99 99 IEM_MC_LOCAL(RTUINT256U, uSrc1); … … 120 120 else 121 121 { 122 IEM_MC_BEGIN(4, 2 );122 IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER); 123 123 IEM_MC_LOCAL(RTUINT128U, uSrc2); 124 124 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 165 165 if (pVCpu->iem.s.uVexLength) 166 166 { 167 IEM_MC_BEGIN(3, 3 );167 IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER); 168 168 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2); 169 169 IEM_MC_LOCAL(RTUINT256U, uDst); … … 184 184 else 185 185 { 186 IEM_MC_BEGIN(3, 0 );186 IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER); 187 187 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 188 188 IEM_MC_ARG(PRTUINT128U, puDst, 0); … … 207 207 if (pVCpu->iem.s.uVexLength) 208 208 { 209 IEM_MC_BEGIN(3, 4 );209 IEM_MC_BEGIN(3, 4, IEM_MC_F_NOT_286_OR_OLDER); 210 210 IEM_MC_LOCAL(RTUINT256U, uDst); 211 211 IEM_MC_LOCAL(RTUINT256U, uSrc1); … … 231 231 else 232 232 { 233 IEM_MC_BEGIN(3, 2 );233 IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER); 234 234 IEM_MC_LOCAL(RTUINT128U, uSrc2); 235 235 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 307 307 if (pVCpu->iem.s.uVexLength) 308 308 { 309 IEM_MC_BEGIN(2, 2 );309 IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER); 310 310 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2); 311 311 IEM_MC_LOCAL(RTUINT256U, uDst); … … 323 323 else 324 324 { 325 IEM_MC_BEGIN(2, 0 );325 IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER); 326 326 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 327 327 IEM_MC_ARG(PRTUINT128U, puDst, 0); … … 344 344 if (pVCpu->iem.s.uVexLength) 345 345 { 346 IEM_MC_BEGIN(2, 3 );346 IEM_MC_BEGIN(2, 3, IEM_MC_F_NOT_286_OR_OLDER); 347 347 IEM_MC_LOCAL(RTUINT256U, uDst); 348 348 IEM_MC_LOCAL(RTUINT256U, uSrc); … … 365 365 else 366 366 { 367 IEM_MC_BEGIN(2, 2 );367 IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER); 368 368 IEM_MC_LOCAL(RTUINT128U, uSrc); 369 369 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 432 432 * Register, register. 433 433 */ 434 IEM_MC_BEGIN(0, 0 );434 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 435 435 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 436 436 IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT(); … … 450 450 * 128-bit: Register, Memory 451 451 */ 452 IEM_MC_BEGIN(0, 2 );452 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 453 453 IEM_MC_LOCAL(RTUINT128U, uSrc); 454 454 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 470 470 * 256-bit: Register, Memory 471 471 */ 472 IEM_MC_BEGIN(0, 2 );472 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 473 473 IEM_MC_LOCAL(RTUINT256U, uSrc); 474 474 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 507 507 * Register, register. 508 508 */ 509 IEM_MC_BEGIN(0, 0 );509 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 510 510 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 511 511 IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT(); … … 525 525 * 128-bit: Memory, register. 526 526 */ 527 IEM_MC_BEGIN(0, 2 );527 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 528 528 IEM_MC_LOCAL(RTUINT128U, uSrc); 529 529 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 545 545 * 256-bit: Memory, register. 546 546 */ 547 IEM_MC_BEGIN(0, 2 );547 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 548 548 IEM_MC_LOCAL(RTUINT256U, uSrc); 549 549 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 583 583 */ 584 584 IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVSS, vmovss, Vss_WO, HssHi, Uss, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 585 IEM_MC_BEGIN(0, 0 );585 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 586 586 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 587 587 IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT(); … … 608 608 */ 609 609 IEMOP_MNEMONIC2(VEX_RM_MEM, VMOVSS, vmovss, VssZx_WO, Md, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 610 IEM_MC_BEGIN(0, 2 );610 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 611 611 IEM_MC_LOCAL(uint32_t, uSrc); 612 612 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 646 646 */ 647 647 IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVSD, vmovsd, Vsd_WO, HsdHi, Usd, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 648 IEM_MC_BEGIN(0, 0 );648 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 649 649 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 650 650 … … 672 672 */ 673 673 IEMOP_MNEMONIC2(VEX_RM_MEM, VMOVSD, vmovsd, VsdZx_WO, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 674 IEM_MC_BEGIN(0, 2 );674 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 675 675 IEM_MC_LOCAL(uint64_t, uSrc); 676 676 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 709 709 * Register, register. 710 710 */ 711 IEM_MC_BEGIN(0, 0 );711 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 712 712 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 713 713 IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT(); … … 727 727 * 128-bit: Memory, register. 728 728 */ 729 IEM_MC_BEGIN(0, 2 );729 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 730 730 IEM_MC_LOCAL(RTUINT128U, uSrc); 731 731 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 747 747 * 256-bit: Memory, register. 748 748 */ 749 IEM_MC_BEGIN(0, 2 );749 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 750 750 IEM_MC_LOCAL(RTUINT256U, uSrc); 751 751 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 784 784 * Register, register. 785 785 */ 786 IEM_MC_BEGIN(0, 0 );786 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 787 787 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 788 788 IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT(); … … 802 802 * 128-bit: Memory, register. 803 803 */ 804 IEM_MC_BEGIN(0, 2 );804 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 805 805 IEM_MC_LOCAL(RTUINT128U, uSrc); 806 806 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 822 822 * 256-bit: Memory, register. 823 823 */ 824 IEM_MC_BEGIN(0, 2 );824 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 825 825 IEM_MC_LOCAL(RTUINT256U, uSrc); 826 826 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 859 859 */ 860 860 IEMOP_MNEMONIC3(VEX_MVR_REG, VMOVSS, vmovss, Uss_WO, HssHi, Vss, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 861 IEM_MC_BEGIN(0, 0 );861 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 862 862 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 863 863 … … 885 885 */ 886 886 IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVSS, vmovss, Md_WO, Vss, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 887 IEM_MC_BEGIN(0, 2 );887 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 888 888 IEM_MC_LOCAL(uint32_t, uSrc); 889 889 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 923 923 */ 924 924 IEMOP_MNEMONIC3(VEX_MVR_REG, VMOVSD, vmovsd, Usd_WO, HsdHi, Vsd, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 925 IEM_MC_BEGIN(0, 0 );925 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 926 926 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 927 927 … … 949 949 */ 950 950 IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVSD, vmovsd, Mq_WO, Vsd, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED); 951 IEM_MC_BEGIN(0, 2 );951 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 952 952 IEM_MC_LOCAL(uint64_t, uSrc); 953 953 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 986 986 */ 987 987 IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVHLPS, vmovhlps, Vq_WO, HqHi, UqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 988 IEM_MC_BEGIN(0, 0 );988 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 989 989 IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx); 990 990 … … 1016 1016 IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVLPS, vmovlps, Vq_WO, HqHi, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1017 1017 1018 IEM_MC_BEGIN(0, 2 );1018 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1019 1019 IEM_MC_LOCAL(uint64_t, uSrc); 1020 1020 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1055 1055 IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVLPD, vmovlpd, Vq_WO, HqHi, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1056 1056 1057 IEM_MC_BEGIN(0, 2 );1057 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1058 1058 IEM_MC_LOCAL(uint64_t, uSrc); 1059 1059 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1112 1112 if (pVCpu->iem.s.uVexLength == 0) 1113 1113 { 1114 IEM_MC_BEGIN(0, 1 );1114 IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER); 1115 1115 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1116 1116 IEM_MC_LOCAL(RTUINT128U, uSrc); … … 1131 1131 else 1132 1132 { 1133 IEM_MC_BEGIN(3, 0 );1133 IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER); 1134 1134 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1135 1135 IEM_MC_IMPLICIT_AVX_AIMPL_ARGS(); … … 1152 1152 if (pVCpu->iem.s.uVexLength == 0) 1153 1153 { 1154 IEM_MC_BEGIN(0, 2 );1154 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1155 1155 IEM_MC_LOCAL(RTUINT128U, uSrc); 1156 1156 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1173 1173 else 1174 1174 { 1175 IEM_MC_BEGIN(3, 2 );1175 IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER); 1176 1176 IEM_MC_LOCAL(RTUINT256U, uSrc); 1177 1177 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1217 1217 if (pVCpu->iem.s.uVexLength == 0) 1218 1218 { 1219 IEM_MC_BEGIN(1, 0 );1219 IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER); 1220 1220 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1221 1221 IEM_MC_ARG(uint64_t, uSrc, 0); … … 1234 1234 else 1235 1235 { 1236 IEM_MC_BEGIN(3, 0 );1236 IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER); 1237 1237 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1238 1238 IEM_MC_IMPLICIT_AVX_AIMPL_ARGS(); … … 1255 1255 if (pVCpu->iem.s.uVexLength == 0) 1256 1256 { 1257 IEM_MC_BEGIN(1, 1 );1257 IEM_MC_BEGIN(1, 1, IEM_MC_F_NOT_286_OR_OLDER); 1258 1258 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 1259 1259 IEM_MC_ARG(uint64_t, uSrc, 0); … … 1274 1274 else 1275 1275 { 1276 IEM_MC_BEGIN(3, 2 );1276 IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER); 1277 1277 IEM_MC_LOCAL(RTUINT256U, uSrc); 1278 1278 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1313 1313 IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVLPS, vmovlps, Mq_WO, Vq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1314 1314 1315 IEM_MC_BEGIN(0, 2 );1315 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1316 1316 IEM_MC_LOCAL(uint64_t, uSrc); 1317 1317 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1360 1360 { 1361 1361 IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVLPD, vmovlpd, Mq_WO, Vq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1362 IEM_MC_BEGIN(0, 2 );1362 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1363 1363 IEM_MC_LOCAL(uint64_t, uSrc); 1364 1364 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1452 1452 IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVLHPS, vmovlhps, Vq_WO, Hq, Uq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1453 1453 1454 IEM_MC_BEGIN(0, 0 );1454 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 1455 1455 IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx); 1456 1456 … … 1478 1478 IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVHPS, vmovhps, Vq_WO, Hq, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1479 1479 1480 IEM_MC_BEGIN(0, 2 );1480 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1481 1481 IEM_MC_LOCAL(uint64_t, uSrc); 1482 1482 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1513 1513 IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVHPD, vmovhpd, Vq_WO, Hq, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1514 1514 1515 IEM_MC_BEGIN(0, 2 );1515 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1516 1516 IEM_MC_LOCAL(uint64_t, uSrc); 1517 1517 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1566 1566 if (pVCpu->iem.s.uVexLength == 0) 1567 1567 { 1568 IEM_MC_BEGIN(0, 1 );1568 IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER); 1569 1569 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1570 1570 IEM_MC_LOCAL(RTUINT128U, uSrc); … … 1585 1585 else 1586 1586 { 1587 IEM_MC_BEGIN(3, 0 );1587 IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER); 1588 1588 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1589 1589 IEM_MC_IMPLICIT_AVX_AIMPL_ARGS(); … … 1606 1606 if (pVCpu->iem.s.uVexLength == 0) 1607 1607 { 1608 IEM_MC_BEGIN(0, 2 );1608 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1609 1609 IEM_MC_LOCAL(RTUINT128U, uSrc); 1610 1610 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1627 1627 else 1628 1628 { 1629 IEM_MC_BEGIN(3, 2 );1629 IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER); 1630 1630 IEM_MC_LOCAL(RTUINT256U, uSrc); 1631 1631 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1667 1667 IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVHPS, vmovhps, Mq_WO, VqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1668 1668 1669 IEM_MC_BEGIN(0, 2 );1669 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1670 1670 IEM_MC_LOCAL(uint64_t, uSrc); 1671 1671 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1712 1712 { 1713 1713 IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVHPD, vmovhpd, Mq_WO, VqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 1714 IEM_MC_BEGIN(0, 2); 1714 1715 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1715 1716 IEM_MC_LOCAL(uint64_t, uSrc); 1716 1717 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 1785 1786 * Register, register. 1786 1787 */ 1787 IEM_MC_BEGIN(1, 0 );1788 IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER); 1788 1789 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1789 1790 … … 1806 1807 if (pVCpu->iem.s.uVexLength == 0) 1807 1808 { 1808 IEM_MC_BEGIN(0, 2 );1809 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1809 1810 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 1810 1811 IEM_MC_LOCAL(RTUINT128U, uSrc); … … 1823 1824 else 1824 1825 { 1825 IEM_MC_BEGIN(0, 2 );1826 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1826 1827 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 1827 1828 IEM_MC_LOCAL(RTUINT256U, uSrc); … … 1862 1863 * Register, register. 1863 1864 */ 1864 IEM_MC_BEGIN(1, 0 );1865 IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER); 1865 1866 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1866 1867 … … 1883 1884 if (pVCpu->iem.s.uVexLength == 0) 1884 1885 { 1885 IEM_MC_BEGIN(0, 2 );1886 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1886 1887 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 1887 1888 IEM_MC_LOCAL(RTUINT128U, uSrc); … … 1900 1901 else 1901 1902 { 1902 IEM_MC_BEGIN(0, 2 );1903 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1903 1904 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 1904 1905 IEM_MC_LOCAL(RTUINT256U, uSrc); … … 1958 1959 * Register, register. 1959 1960 */ 1960 IEM_MC_BEGIN(1, 0 );1961 IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER); 1961 1962 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 1962 1963 … … 1979 1980 if (pVCpu->iem.s.uVexLength == 0) 1980 1981 { 1981 IEM_MC_BEGIN(0, 2 );1982 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1982 1983 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 1983 1984 IEM_MC_LOCAL(RTUINT128U, uSrc); … … 1996 1997 else 1997 1998 { 1998 IEM_MC_BEGIN(0, 2 );1999 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 1999 2000 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 2000 2001 IEM_MC_LOCAL(RTUINT256U, uSrc); … … 2034 2035 * Register, register. 2035 2036 */ 2036 IEM_MC_BEGIN(1, 0 );2037 IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER); 2037 2038 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 2038 2039 … … 2055 2056 if (pVCpu->iem.s.uVexLength == 0) 2056 2057 { 2057 IEM_MC_BEGIN(0, 2 );2058 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 2058 2059 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 2059 2060 IEM_MC_LOCAL(RTUINT128U, uSrc); … … 2072 2073 else 2073 2074 { 2074 IEM_MC_BEGIN(0, 2 );2075 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 2075 2076 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 2076 2077 IEM_MC_LOCAL(RTUINT256U, uSrc); … … 2143 2144 if (pVCpu->iem.s.uVexLength == 0) 2144 2145 { 2145 IEM_MC_BEGIN(0, 2 );2146 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 2146 2147 IEM_MC_LOCAL(RTUINT128U, uSrc); 2147 2148 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 2160 2161 else 2161 2162 { 2162 IEM_MC_BEGIN(0, 2 );2163 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 2163 2164 IEM_MC_LOCAL(RTUINT256U, uSrc); 2164 2165 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 2204 2205 if (pVCpu->iem.s.uVexLength == 0) 2205 2206 { 2206 IEM_MC_BEGIN(0, 2 );2207 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 2207 2208 IEM_MC_LOCAL(RTUINT128U, uSrc); 2208 2209 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 2221 2222 else 2222 2223 { 2223 IEM_MC_BEGIN(0, 2 );2224 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 2224 2225 IEM_MC_LOCAL(RTUINT256U, uSrc); 2225 2226 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 2288 2289 * Register, register. 2289 2290 */ 2290 IEM_MC_BEGIN(4, 1 );2291 IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER); 2291 2292 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 2292 2293 IEM_MC_LOCAL(uint32_t, fEFlags); … … 2317 2318 * Register, memory. 2318 2319 */ 2319 IEM_MC_BEGIN(4, 3 );2320 IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER); 2320 2321 IEM_MC_LOCAL(uint32_t, fEFlags); 2321 2322 IEM_MC_ARG(uint32_t *, pfMxcsr, 0); … … 2359 2360 * Register, register. 2360 2361 */ 2361 IEM_MC_BEGIN(4, 1 );2362 IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER); 2362 2363 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 2363 2364 IEM_MC_LOCAL(uint32_t, fEFlags); … … 2388 2389 * Register, memory. 2389 2390 */ 2390 IEM_MC_BEGIN(4, 3 );2391 IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER); 2391 2392 IEM_MC_LOCAL(uint32_t, fEFlags); 2392 2393 IEM_MC_ARG(uint32_t *, pfMxcsr, 0); … … 2433 2434 * Register, register. 2434 2435 */ 2435 IEM_MC_BEGIN(4, 1 );2436 IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER); 2436 2437 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 2437 2438 IEM_MC_LOCAL(uint32_t, fEFlags); … … 2462 2463 * Register, memory. 2463 2464 */ 2464 IEM_MC_BEGIN(4, 3 );2465 IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER); 2465 2466 IEM_MC_LOCAL(uint32_t, fEFlags); 2466 2467 IEM_MC_ARG(uint32_t *, pfMxcsr, 0); … … 2504 2505 * Register, register. 2505 2506 */ 2506 IEM_MC_BEGIN(4, 1 );2507 IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER); 2507 2508 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 2508 2509 IEM_MC_LOCAL(uint32_t, fEFlags); … … 2533 2534 * Register, memory. 2534 2535 */ 2535 IEM_MC_BEGIN(4, 3 );2536 IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER); 2536 2537 IEM_MC_LOCAL(uint32_t, fEFlags); 2537 2538 IEM_MC_ARG(uint32_t *, pfMxcsr, 0); … … 2614 2615 if (pVCpu->iem.s.uVexLength == 0) 2615 2616 { 2616 IEM_MC_BEGIN(2, 1 );2617 IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER); 2617 2618 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 2618 2619 IEM_MC_LOCAL(uint8_t, u8Dst); … … 2630 2631 else 2631 2632 { 2632 IEM_MC_BEGIN(2, 2 );2633 IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER); 2633 2634 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2); 2634 2635 IEM_MC_LOCAL(uint8_t, u8Dst); … … 2665 2666 if (pVCpu->iem.s.uVexLength == 0) 2666 2667 { 2667 IEM_MC_BEGIN(2, 1 );2668 IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER); 2668 2669 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); 2669 2670 IEM_MC_LOCAL(uint8_t, u8Dst); … … 2681 2682 else 2682 2683 { 2683 IEM_MC_BEGIN(2, 2 );2684 IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER); 2684 2685 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2); 2685 2686 IEM_MC_LOCAL(uint8_t, u8Dst); … … 3023 3024 // * Register, register. 3024 3025 // */ 3025 // IEM_MC_BEGIN(2, 0 );3026 // IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER); 3026 3027 // IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2); 3027 3028 // IEM_MC_ARG(PRTUINT128U, pDst, 0); … … 3040 3041 // * Register, memory. 3041 3042 // */ 3042 // IEM_MC_BEGIN(2, 2 );3043 // IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER); 3043 3044 // IEM_MC_ARG(PRTUINT128U, pDst, 0); 3044 3045 // IEM_MC_LOCAL(RTUINT128U, uSrc); … … 3173 3174 { 3174 3175 /* XMM, greg64 */ 3175 IEM_MC_BEGIN(0, 1 );3176 IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER); 3176 3177 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 3177 3178 IEM_MC_LOCAL(uint64_t, u64Tmp); … … 3189 3190 { 3190 3191 /* XMM, [mem64] */ 3191 IEM_MC_BEGIN(0, 2 );3192 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3192 3193 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 3193 3194 IEM_MC_LOCAL(uint64_t, u64Tmp); … … 3223 3224 { 3224 3225 /* XMM, greg32 */ 3225 IEM_MC_BEGIN(0, 1 );3226 IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER); 3226 3227 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 3227 3228 IEM_MC_LOCAL(uint32_t, u32Tmp); … … 3239 3240 { 3240 3241 /* XMM, [mem32] */ 3241 IEM_MC_BEGIN(0, 2 );3242 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3242 3243 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 3243 3244 IEM_MC_LOCAL(uint32_t, u32Tmp); … … 3282 3283 * Register, register. 3283 3284 */ 3284 IEM_MC_BEGIN(0, 0 );3285 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 3285 3286 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 3286 3287 … … 3301 3302 * Register, memory128. 3302 3303 */ 3303 IEM_MC_BEGIN(0, 2 );3304 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3304 3305 IEM_MC_LOCAL(RTUINT128U, u128Tmp); 3305 3306 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 3321 3322 * Register, memory256. 3322 3323 */ 3323 IEM_MC_BEGIN(0, 2 );3324 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3324 3325 IEM_MC_LOCAL(RTUINT256U, u256Tmp); 3325 3326 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 3357 3358 * Register, register. 3358 3359 */ 3359 IEM_MC_BEGIN(0, 0 );3360 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 3360 3361 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 3361 3362 … … 3376 3377 * Register, memory128. 3377 3378 */ 3378 IEM_MC_BEGIN(0, 2 );3379 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3379 3380 IEM_MC_LOCAL(RTUINT128U, u128Tmp); 3380 3381 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 3396 3397 * Register, memory256. 3397 3398 */ 3398 IEM_MC_BEGIN(0, 2 );3399 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3399 3400 IEM_MC_LOCAL(RTUINT256U, u256Tmp); 3400 3401 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 3435 3436 if (pVCpu->iem.s.uVexLength) 3436 3437 { 3437 IEM_MC_BEGIN(3, 2 );3438 IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER); 3438 3439 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2); 3439 3440 IEM_MC_LOCAL(RTUINT256U, uDst); … … 3452 3453 else 3453 3454 { 3454 IEM_MC_BEGIN(3, 0 );3455 IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER); 3455 3456 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 3456 3457 IEM_MC_ARG(PRTUINT128U, puDst, 0); … … 3474 3475 if (pVCpu->iem.s.uVexLength) 3475 3476 { 3476 IEM_MC_BEGIN(3, 3 );3477 IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER); 3477 3478 IEM_MC_LOCAL(RTUINT256U, uDst); 3478 3479 IEM_MC_LOCAL(RTUINT256U, uSrc); … … 3497 3498 else 3498 3499 { 3499 IEM_MC_BEGIN(3, 1 );3500 IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER); 3500 3501 IEM_MC_LOCAL(RTUINT128U, uSrc); 3501 3502 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 3734 3735 */ 3735 3736 IEMOP_MNEMONIC(vzeroupper, "vzeroupper"); 3736 IEM_MC_BEGIN(0, 0 );3737 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 3737 3738 3738 3739 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); … … 3770 3771 */ 3771 3772 IEMOP_MNEMONIC(vzeroall, "vzeroall"); 3772 IEM_MC_BEGIN(0, 1 );3773 IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER); 3773 3774 IEM_MC_LOCAL(uint32_t, uZero); 3774 3775 … … 3865 3866 { 3866 3867 /* greg64, XMM */ 3867 IEM_MC_BEGIN(0, 1 );3868 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT); 3868 3869 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 3869 3870 IEM_MC_LOCAL(uint64_t, u64Tmp); … … 3881 3882 { 3882 3883 /* [mem64], XMM */ 3883 IEM_MC_BEGIN(0, 2 );3884 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT); 3884 3885 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 3885 3886 IEM_MC_LOCAL(uint64_t, u64Tmp); … … 3915 3916 { 3916 3917 /* greg32, XMM */ 3917 IEM_MC_BEGIN(0, 1 );3918 IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER); 3918 3919 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 3919 3920 IEM_MC_LOCAL(uint32_t, u32Tmp); … … 3931 3932 { 3932 3933 /* [mem32], XMM */ 3933 IEM_MC_BEGIN(0, 2 );3934 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3934 3935 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 3935 3936 IEM_MC_LOCAL(uint32_t, u32Tmp); … … 3968 3969 * Register, register. 3969 3970 */ 3970 IEM_MC_BEGIN(0, 0 );3971 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 3971 3972 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 3972 3973 … … 3984 3985 * Memory, register. 3985 3986 */ 3986 IEM_MC_BEGIN(0, 2 );3987 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 3987 3988 IEM_MC_LOCAL(uint64_t, uSrc); 3988 3989 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 4025 4026 * Register, register. 4026 4027 */ 4027 IEM_MC_BEGIN(0, 0 );4028 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 4028 4029 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 4029 4030 … … 4044 4045 * Register, memory128. 4045 4046 */ 4046 IEM_MC_BEGIN(0, 2 );4047 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 4047 4048 IEM_MC_LOCAL(RTUINT128U, u128Tmp); 4048 4049 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 4064 4065 * Register, memory256. 4065 4066 */ 4066 IEM_MC_BEGIN(0, 2 );4067 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 4067 4068 IEM_MC_LOCAL(RTUINT256U, u256Tmp); 4068 4069 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 4101 4102 * Register, register. 4102 4103 */ 4103 IEM_MC_BEGIN(0, 0 );4104 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 4104 4105 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 4105 4106 … … 4120 4121 * Register, memory128. 4121 4122 */ 4122 IEM_MC_BEGIN(0, 2 );4123 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 4123 4124 IEM_MC_LOCAL(RTUINT128U, u128Tmp); 4124 4125 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 4140 4141 * Register, memory256. 4141 4142 */ 4142 IEM_MC_BEGIN(0, 2 );4143 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 4143 4144 IEM_MC_LOCAL(RTUINT256U, u256Tmp); 4144 4145 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 4234 4235 //{ 4235 4236 // IEMOP_MNEMONIC1(M_MEM, VLDMXCSR, vldmxcsr, MdRO, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZES); 4236 // IEM_MC_BEGIN(2, 0 );4237 // IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER); 4237 4238 // IEM_MC_ARG(uint8_t, iEffSeg, 0); 4238 4239 // IEM_MC_ARG(RTGCPTR, GCPtrEff, 1); … … 4288 4289 { 4289 4290 IEMOP_MNEMONIC1(VEX_M_MEM, VSTMXCSR, vstmxcsr, Md_WO, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO); 4290 IEM_MC_BEGIN(2, 0 );4291 IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER); 4291 4292 IEM_MC_ARG(uint8_t, iEffSeg, 0); 4292 4293 IEM_MC_ARG(RTGCPTR, GCPtrEff, 1); … … 4401 4402 * Register, register. 4402 4403 */ 4404 IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER); 4403 4405 uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm); 4404 IEM_MC_BEGIN(4, 0);4405 4406 IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx); 4406 4407 IEM_MC_ARG(PRTUINT128U, puDst, 0); … … 4424 4425 * Register, memory. 4425 4426 */ 4426 IEM_MC_BEGIN(4, 1 );4427 IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER); 4427 4428 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); 4428 4429 IEM_MC_ARG(PRTUINT128U, puDst, 0); … … 4467 4468 */ 4468 4469 uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm); 4469 IEM_MC_BEGIN(3, 1 );4470 IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER); 4470 4471 IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx); 4471 4472 IEM_MC_LOCAL(uint16_t, u16Dst); … … 4502 4503 { \ 4503 4504 uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm); \ 4504 IEM_MC_BEGIN(4, 3 ); \4505 IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER); \ 4505 4506 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2); \ 4506 4507 IEM_MC_LOCAL(RTUINT256U, uDst); \ … … 4524 4525 { \ 4525 4526 uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm); \ 4526 IEM_MC_BEGIN(4, 0 ); \4527 IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER); \ 4527 4528 IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); \ 4528 4529 IEM_MC_ARG(PRTUINT128U, puDst, 0); \ … … 4549 4550 if (pVCpu->iem.s.uVexLength) \ 4550 4551 { \ 4551 IEM_MC_BEGIN(4, 4 ); \4552 IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER); \ 4552 4553 IEM_MC_LOCAL(RTUINT256U, uDst); \ 4553 4554 IEM_MC_LOCAL(RTUINT256U, uSrc1); \ … … 4573 4574 else \ 4574 4575 { \ 4575 IEM_MC_BEGIN(4, 2 ); \4576 IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER); \ 4576 4577 IEM_MC_LOCAL(RTUINT128U, uSrc2); \ 4577 4578 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); \ … … 4707 4708 * Register, register. 4708 4709 */ 4709 IEM_MC_BEGIN(0, 0 );4710 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER); 4710 4711 IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx); 4711 4712 … … 4723 4724 * Memory, register. 4724 4725 */ 4725 IEM_MC_BEGIN(0, 2 );4726 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 4726 4727 IEM_MC_LOCAL(uint64_t, uSrc); 4727 4728 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 4757 4758 if (pVCpu->iem.s.uVexLength) 4758 4759 { 4759 IEM_MC_BEGIN(2, 1 );4760 IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER); 4760 4761 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2); 4761 4762 IEM_MC_ARG(uint64_t *, puDst, 0); … … 4773 4774 else 4774 4775 { 4775 IEM_MC_BEGIN(2, 0 );4776 IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER); 4776 4777 IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); 4777 4778 IEM_MC_ARG(uint64_t *, puDst, 0); … … 5019 5020 * 128-bit: Memory, register. 5020 5021 */ 5021 IEM_MC_BEGIN(0, 2 );5022 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 5022 5023 IEM_MC_LOCAL(RTUINT128U, uSrc); 5023 5024 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 5039 5040 * 256-bit: Memory, register. 5040 5041 */ 5041 IEM_MC_BEGIN(0, 2 );5042 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 5042 5043 IEM_MC_LOCAL(RTUINT256U, uSrc); 5043 5044 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 5217 5218 * Register, memory128. 5218 5219 */ 5219 IEM_MC_BEGIN(0, 2 );5220 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 5220 5221 IEM_MC_LOCAL(RTUINT128U, u128Tmp); 5221 5222 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc); … … 5237 5238 * Register, memory256. 5238 5239 */ 5239 IEM_MC_BEGIN(0, 2 );5240 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER); 5240 5241 IEM_MC_LOCAL(RTUINT256U, u256Tmp); 5241 5242 IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
Note:
See TracChangeset
for help on using the changeset viewer.