- Timestamp:
- Feb 5, 2024 10:29:39 PM (13 months ago)
- svn:sync-xref-src-repo-rev:
- 161479
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllInstOneByte.cpp.h
r103192 r103212 6468 6468 /** 6469 6469 * @opcode 0x9e 6470 * @opflmodify cf,pf,af,zf,sf 6470 6471 */ 6471 6472 FNIEMOP_DEF(iemOp_sahf) … … 6493 6494 /** 6494 6495 * @opcode 0x9f 6496 * @opfltest cf,pf,af,zf,sf 6495 6497 */ 6496 6498 FNIEMOP_DEF(iemOp_lahf) -
trunk/src/VBox/VMM/VMMAll/IEMAllInstThree0f38.cpp.h
r102896 r103212 775 775 776 776 777 /** Opcode 0x66 0x0f 0x38 0x17 - invalid */ 777 /** 778 * @opcode 0x17 779 * @oppfx 0x66 780 * @opflmodify cf,pf,af,zf,sf,of 781 * @opflclear pf,af,sf,of 782 */ 778 783 FNIEMOP_DEF(iemOp_ptest_Vx_Wx) 779 784 { … … 2143 2148 } while(0) 2144 2149 2145 /** Opcode 0x66 0x0f 0x38 0xf6. */ 2150 2151 /** 2152 * @opcode 0xf6 2153 * @oppfx 0x66 2154 * @opfltest cf 2155 * @opflmodify cf 2156 */ 2146 2157 FNIEMOP_DEF(iemOp_adcx_Gy_Ey) 2147 2158 { … … 2151 2162 2152 2163 2153 /** Opcode 0xf3 0x0f 0x38 0xf6. */ 2164 /** 2165 * @opcode 0xf6 2166 * @oppfx 0xf3 2167 * @opfltest of 2168 * @opflmodify of 2169 */ 2154 2170 FNIEMOP_DEF(iemOp_adox_Gy_Ey) 2155 2171 { -
trunk/src/VBox/VMM/VMMAll/IEMAllInstThree0f3a.cpp.h
r102331 r103212 1120 1120 1121 1121 1122 /** Opcode 0x66 0x0f 0x60. */ 1122 /** 1123 * @opcode 0x60 1124 * @oppfx 0x66 1125 * @opflmodify cf,pf,af,zf,sf,of 1126 * @opflclear pf,af 1127 */ 1123 1128 FNIEMOP_DEF(iemOp_pcmpestrm_Vdq_Wdq_Ib) 1124 1129 { … … 1245 1250 1246 1251 1247 /** Opcode 0x66 0x0f 0x61, */ 1252 /** 1253 * @opcode 0x61 1254 * @oppfx 0x66 1255 * @opflmodify cf,pf,af,zf,sf,of 1256 * @opflclear pf,af 1257 */ 1248 1258 FNIEMOP_DEF(iemOp_pcmpestri_Vdq_Wdq_Ib) 1249 1259 { … … 1374 1384 1375 1385 1376 /** Opcode 0x66 0x0f 0x62. */ 1386 /** 1387 * @opcode 0x62 1388 * @oppfx 0x66 1389 * @opflmodify cf,pf,af,zf,sf,of 1390 * @opflclear pf,af 1391 */ 1377 1392 FNIEMOP_DEF(iemOp_pcmpistrm_Vdq_Wdq_Ib) 1378 1393 { … … 1437 1452 1438 1453 1439 /** Opcode 0x66 0x0f 0x63*/ 1454 /** 1455 * @opcode 0x63 1456 * @oppfx 0x66 1457 * @opflmodify cf,pf,af,zf,sf,of 1458 * @opflclear pf,af 1459 */ 1440 1460 FNIEMOP_DEF(iemOp_pcmpistri_Vdq_Wdq_Ib) 1441 1461 { -
trunk/src/VBox/VMM/VMMAll/IEMAllInstTwoByte0f.cpp.h
r103206 r103212 4881 4881 * @opcode 0x2e 4882 4882 * @oppfx none 4883 * @opflmodify cf,pf,af,zf,sf,o v4883 * @opflmodify cf,pf,af,zf,sf,of 4884 4884 * @opflclear af,sf,of 4885 4885 */ … … 4955 4955 * @opcode 0x2e 4956 4956 * @oppfx 0x66 4957 * @opflmodify cf,pf,af,zf,sf,o v4957 * @opflmodify cf,pf,af,zf,sf,of 4958 4958 * @opflclear af,sf,of 4959 4959 */ … … 5033 5033 * @opcode 0x2e 5034 5034 * @oppfx none 5035 * @opflmodify cf,pf,af,zf,sf,o v5035 * @opflmodify cf,pf,af,zf,sf,of 5036 5036 * @opflclear af,sf,of 5037 5037 */ … … 5107 5107 * @opcode 0x2f 5108 5108 * @oppfx 0x66 5109 * @opflmodify cf,pf,af,zf,sf,o v5109 * @opflmodify cf,pf,af,zf,sf,of 5110 5110 * @opflclear af,sf,of 5111 5111 */ … … 11428 11428 11429 11429 /** 11430 * Common workerfor BSF and BSR instructions.11430 * Body for BSF and BSR instructions. 11431 11431 * 11432 11432 * These cannot use iemOpHlpBinaryOperator_rv_rm because they don't always write … … 11434 11434 * bits must be left alone. 11435 11435 * 11436 * @param pImpl Pointer to the instruction implementation (assembly). 11437 */ 11438 FNIEMOP_DEF_1(iemOpHlpBitScanOperator_rv_rm, PCIEMOPBINSIZES, pImpl) 11439 { 11440 uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm); 11441 11442 /* 11443 * If rm is denoting a register, no more instruction bytes. 11444 */ 11445 if (IEM_IS_MODRM_REG_MODE(bRm)) 11446 { 11447 switch (pVCpu->iem.s.enmEffOpSize) 11448 { 11449 case IEMMODE_16BIT: 11450 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); 11451 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 11452 IEM_MC_ARG(uint16_t *, pu16Dst, 0); 11453 IEM_MC_ARG(uint16_t, u16Src, 1); 11454 IEM_MC_ARG(uint32_t *, pEFlags, 2); 11455 11456 IEM_MC_FETCH_GREG_U16(u16Src, IEM_GET_MODRM_RM(pVCpu, bRm)); 11457 IEM_MC_REF_GREG_U16(pu16Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); 11458 IEM_MC_REF_EFLAGS(pEFlags); 11459 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 11460 11461 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11462 IEM_MC_END(); 11463 break; 11464 11465 case IEMMODE_32BIT: 11466 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); 11467 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 11468 IEM_MC_ARG(uint32_t *, pu32Dst, 0); 11469 IEM_MC_ARG(uint32_t, u32Src, 1); 11470 IEM_MC_ARG(uint32_t *, pEFlags, 2); 11471 11472 IEM_MC_FETCH_GREG_U32(u32Src, IEM_GET_MODRM_RM(pVCpu, bRm)); 11473 IEM_MC_REF_GREG_U32(pu32Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); 11474 IEM_MC_REF_EFLAGS(pEFlags); 11475 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, u32Src, pEFlags); 11476 IEM_MC_IF_EFL_BIT_NOT_SET(X86_EFL_ZF) { 11477 IEM_MC_CLEAR_HIGH_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm)); 11478 } IEM_MC_ENDIF(); 11479 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11480 IEM_MC_END(); 11481 break; 11482 11483 case IEMMODE_64BIT: 11484 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); 11485 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 11486 IEM_MC_ARG(uint64_t *, pu64Dst, 0); 11487 IEM_MC_ARG(uint64_t, u64Src, 1); 11488 IEM_MC_ARG(uint32_t *, pEFlags, 2); 11489 11490 IEM_MC_FETCH_GREG_U64(u64Src, IEM_GET_MODRM_RM(pVCpu, bRm)); 11491 IEM_MC_REF_GREG_U64(pu64Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); 11492 IEM_MC_REF_EFLAGS(pEFlags); 11493 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 11494 11495 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11496 IEM_MC_END(); 11497 break; 11498 11499 IEM_NOT_REACHED_DEFAULT_CASE_RET(); 11500 } 11501 } 11502 else 11503 { 11504 /* 11505 * We're accessing memory. 11506 */ 11507 switch (pVCpu->iem.s.enmEffOpSize) 11508 { 11509 case IEMMODE_16BIT: 11510 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); 11511 IEM_MC_ARG(uint16_t *, pu16Dst, 0); 11512 IEM_MC_ARG(uint16_t, u16Src, 1); 11513 IEM_MC_ARG(uint32_t *, pEFlags, 2); 11514 IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); 11515 11516 IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); 11517 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 11518 IEM_MC_FETCH_MEM_U16(u16Src, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11519 IEM_MC_REF_GREG_U16(pu16Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); 11520 IEM_MC_REF_EFLAGS(pEFlags); 11521 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 11522 11523 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11524 IEM_MC_END(); 11525 break; 11526 11527 case IEMMODE_32BIT: 11528 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); 11529 IEM_MC_ARG(uint32_t *, pu32Dst, 0); 11530 IEM_MC_ARG(uint32_t, u32Src, 1); 11531 IEM_MC_ARG(uint32_t *, pEFlags, 2); 11532 IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); 11533 11534 IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); 11535 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 11536 IEM_MC_FETCH_MEM_U32(u32Src, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11537 IEM_MC_REF_GREG_U32(pu32Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); 11538 IEM_MC_REF_EFLAGS(pEFlags); 11539 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, u32Src, pEFlags); 11540 11541 IEM_MC_IF_EFL_BIT_NOT_SET(X86_EFL_ZF) { 11542 IEM_MC_CLEAR_HIGH_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm)); 11543 } IEM_MC_ENDIF(); 11544 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11545 IEM_MC_END(); 11546 break; 11547 11548 case IEMMODE_64BIT: 11549 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); 11550 IEM_MC_ARG(uint64_t *, pu64Dst, 0); 11551 IEM_MC_ARG(uint64_t, u64Src, 1); 11552 IEM_MC_ARG(uint32_t *, pEFlags, 2); 11553 IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); 11554 11555 IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); 11556 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 11557 IEM_MC_FETCH_MEM_U64(u64Src, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11558 IEM_MC_REF_GREG_U64(pu64Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); 11559 IEM_MC_REF_EFLAGS(pEFlags); 11560 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 11561 11562 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11563 IEM_MC_END(); 11564 break; 11565 11566 IEM_NOT_REACHED_DEFAULT_CASE_RET(); 11567 } 11568 } 11569 } 11436 * @param pImpl Pointer to the instruction implementation (assembly). 11437 */ 11438 #define IEMOP_BODY_BIT_SCAN_OPERATOR_RV_RM(pImpl) \ 11439 uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm); \ 11440 \ 11441 /* \ 11442 * If rm is denoting a register, no more instruction bytes. \ 11443 */ \ 11444 if (IEM_IS_MODRM_REG_MODE(bRm)) \ 11445 { \ 11446 switch (pVCpu->iem.s.enmEffOpSize) \ 11447 { \ 11448 case IEMMODE_16BIT: \ 11449 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \ 11450 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \ 11451 IEM_MC_ARG(uint16_t *, pu16Dst, 0); \ 11452 IEM_MC_ARG(uint16_t, u16Src, 1); \ 11453 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 11454 \ 11455 IEM_MC_FETCH_GREG_U16(u16Src, IEM_GET_MODRM_RM(pVCpu, bRm)); \ 11456 IEM_MC_REF_GREG_U16(pu16Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11457 IEM_MC_REF_EFLAGS(pEFlags); \ 11458 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); \ 11459 \ 11460 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 11461 IEM_MC_END(); \ 11462 break; \ 11463 \ 11464 case IEMMODE_32BIT: \ 11465 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \ 11466 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \ 11467 IEM_MC_ARG(uint32_t *, pu32Dst, 0); \ 11468 IEM_MC_ARG(uint32_t, u32Src, 1); \ 11469 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 11470 \ 11471 IEM_MC_FETCH_GREG_U32(u32Src, IEM_GET_MODRM_RM(pVCpu, bRm)); \ 11472 IEM_MC_REF_GREG_U32(pu32Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11473 IEM_MC_REF_EFLAGS(pEFlags); \ 11474 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, u32Src, pEFlags); \ 11475 IEM_MC_IF_EFL_BIT_NOT_SET(X86_EFL_ZF) { \ 11476 IEM_MC_CLEAR_HIGH_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11477 } IEM_MC_ENDIF(); \ 11478 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 11479 IEM_MC_END(); \ 11480 break; \ 11481 \ 11482 case IEMMODE_64BIT: \ 11483 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \ 11484 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \ 11485 IEM_MC_ARG(uint64_t *, pu64Dst, 0); \ 11486 IEM_MC_ARG(uint64_t, u64Src, 1); \ 11487 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 11488 \ 11489 IEM_MC_FETCH_GREG_U64(u64Src, IEM_GET_MODRM_RM(pVCpu, bRm)); \ 11490 IEM_MC_REF_GREG_U64(pu64Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11491 IEM_MC_REF_EFLAGS(pEFlags); \ 11492 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); \ 11493 \ 11494 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 11495 IEM_MC_END(); \ 11496 break; \ 11497 \ 11498 IEM_NOT_REACHED_DEFAULT_CASE_RET(); \ 11499 } \ 11500 } \ 11501 else \ 11502 { \ 11503 /* \ 11504 * We're accessing memory. \ 11505 */ \ 11506 switch (pVCpu->iem.s.enmEffOpSize) \ 11507 { \ 11508 case IEMMODE_16BIT: \ 11509 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); \ 11510 IEM_MC_ARG(uint16_t *, pu16Dst, 0); \ 11511 IEM_MC_ARG(uint16_t, u16Src, 1); \ 11512 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 11513 IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \ 11514 \ 11515 IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \ 11516 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \ 11517 IEM_MC_FETCH_MEM_U16(u16Src, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \ 11518 IEM_MC_REF_GREG_U16(pu16Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11519 IEM_MC_REF_EFLAGS(pEFlags); \ 11520 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); \ 11521 \ 11522 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 11523 IEM_MC_END(); \ 11524 break; \ 11525 \ 11526 case IEMMODE_32BIT: \ 11527 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); \ 11528 IEM_MC_ARG(uint32_t *, pu32Dst, 0); \ 11529 IEM_MC_ARG(uint32_t, u32Src, 1); \ 11530 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 11531 IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \ 11532 \ 11533 IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \ 11534 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \ 11535 IEM_MC_FETCH_MEM_U32(u32Src, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \ 11536 IEM_MC_REF_GREG_U32(pu32Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11537 IEM_MC_REF_EFLAGS(pEFlags); \ 11538 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, u32Src, pEFlags); \ 11539 \ 11540 IEM_MC_IF_EFL_BIT_NOT_SET(X86_EFL_ZF) { \ 11541 IEM_MC_CLEAR_HIGH_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11542 } IEM_MC_ENDIF(); \ 11543 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 11544 IEM_MC_END(); \ 11545 break; \ 11546 \ 11547 case IEMMODE_64BIT: \ 11548 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \ 11549 IEM_MC_ARG(uint64_t *, pu64Dst, 0); \ 11550 IEM_MC_ARG(uint64_t, u64Src, 1); \ 11551 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 11552 IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \ 11553 \ 11554 IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \ 11555 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \ 11556 IEM_MC_FETCH_MEM_U64(u64Src, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \ 11557 IEM_MC_REF_GREG_U64(pu64Dst, IEM_GET_MODRM_REG(pVCpu, bRm)); \ 11558 IEM_MC_REF_EFLAGS(pEFlags); \ 11559 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); \ 11560 \ 11561 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 11562 IEM_MC_END(); \ 11563 break; \ 11564 \ 11565 IEM_NOT_REACHED_DEFAULT_CASE_RET(); \ 11566 } \ 11567 } (void)0 11570 11568 11571 11569 … … 11584 11582 IEMOP_HLP_MIN_386(); 11585 11583 IEMOP_VERIFICATION_UNDEFINED_EFLAGS(X86_EFL_OF | X86_EFL_SF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF); 11586 return FNIEMOP_CALL_1(iemOpHlpBitScanOperator_rv_rm, IEMTARGETCPU_EFL_BEHAVIOR_SELECT(g_iemAImpl_bsf_eflags)); 11584 PCIEMOPBINSIZES const pImpl = IEMTARGETCPU_EFL_BEHAVIOR_SELECT(g_iemAImpl_bsf_eflags); 11585 IEMOP_BODY_BIT_SCAN_OPERATOR_RV_RM(pImpl); 11587 11586 } 11588 11587 … … 11637 11636 IEMOP_HLP_MIN_386(); 11638 11637 IEMOP_VERIFICATION_UNDEFINED_EFLAGS(X86_EFL_OF | X86_EFL_SF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF); 11639 return FNIEMOP_CALL_1(iemOpHlpBitScanOperator_rv_rm, IEMTARGETCPU_EFL_BEHAVIOR_SELECT(g_iemAImpl_bsr_eflags)); 11638 PCIEMOPBINSIZES const pImpl = IEMTARGETCPU_EFL_BEHAVIOR_SELECT(g_iemAImpl_bsr_eflags); 11639 IEMOP_BODY_BIT_SCAN_OPERATOR_RV_RM(pImpl); 11640 11640 } 11641 11641 -
trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap1.cpp.h
r103185 r103212 2282 2282 * @opcode 0x2e 2283 2283 * @oppfx none 2284 * @opflmodify cf,pf,af,zf,sf,o v2284 * @opflmodify cf,pf,af,zf,sf,of 2285 2285 * @opflclear af,sf,of 2286 2286 */ … … 2358 2358 * @opcode 0x2e 2359 2359 * @oppfx 0x66 2360 * @opflmodify cf,pf,af,zf,sf,o v2360 * @opflmodify cf,pf,af,zf,sf,of 2361 2361 * @opflclear af,sf,of 2362 2362 */ … … 2437 2437 * @opcode 0x2f 2438 2438 * @oppfx none 2439 * @opflmodify cf,pf,af,zf,sf,o v2439 * @opflmodify cf,pf,af,zf,sf,of 2440 2440 * @opflclear af,sf,of 2441 2441 */ … … 2513 2513 * @opcode 0x2f 2514 2514 * @oppfx 0x66 2515 * @opflmodify cf,pf,af,zf,sf,o v2515 * @opflmodify cf,pf,af,zf,sf,of 2516 2516 * @opflclear af,sf,of 2517 2517 */ -
trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap2.cpp.h
r103190 r103212 210 210 211 211 212 /** Opcode VEX.66.0F38 0x17 - invalid */ 212 /** 213 * @opcode 0x17 214 * @oppfx 0x66 215 * @opflmodify cf,pf,af,zf,sf,of 216 * @opflclear pf,af,sf,of 217 */ 213 218 FNIEMOP_DEF(iemOp_vptest_Vx_Wx) 214 219 { … … 1632 1637 /* Opcode VEX.F2.0F38 0xf1 - invalid (legacy only). */ 1633 1638 1634 /** Opcode VEX.0F38 0xf2 - ANDN (vex only). */ 1639 /** 1640 * @opcode 0xf2 1641 * @oppfx none 1642 * @opflmodify cf,pf,af,zf,sf,of 1643 * @opflclear cf,of 1644 * @opflundef pf,af 1645 * @note VEX only 1646 */ 1635 1647 FNIEMOP_DEF(iemOp_andn_Gy_By_Ey) 1636 1648 { … … 1820 1832 1821 1833 1822 /* Opcode VEX.F3.0F38 0xf3 /1. */ 1823 /** @opcode /1 1824 * @opmaps vexgrp17 */ 1834 /** 1835 * @opmaps vexgrp17 1836 * @opcode /1 1837 * @opflmodify cf,pf,af,zf,sf,of 1838 * @opflclear of 1839 * @opflundef pf,af 1840 */ 1825 1841 FNIEMOP_DEF_1(iemOp_VGrp17_blsr_By_Ey, uint8_t, bRm) 1826 1842 { … … 1830 1846 1831 1847 1832 /* Opcode VEX.F3.0F38 0xf3 /2. */ 1833 /** @opcode /2 1834 * @opmaps vexgrp17 */ 1848 /** 1849 * @opmaps vexgrp17 1850 * @opcode /2 1851 * @opflmodify cf,pf,af,zf,sf,of 1852 * @opflclear zf,of 1853 * @opflundef pf,af 1854 */ 1835 1855 FNIEMOP_DEF_1(iemOp_VGrp17_blsmsk_By_Ey, uint8_t, bRm) 1836 1856 { … … 1840 1860 1841 1861 1842 /* Opcode VEX.F3.0F38 0xf3 /3. */ 1843 /** @opcode /3 1844 * @opmaps vexgrp17 */ 1862 /** 1863 * @opmaps vexgrp17 1864 * @opcode /3 1865 * @opflmodify cf,pf,af,zf,sf,of 1866 * @opflclear of 1867 * @opflundef pf,af 1868 */ 1845 1869 FNIEMOP_DEF_1(iemOp_VGrp17_blsi_By_Ey, uint8_t, bRm) 1846 1870 { … … 2290 2314 2291 2315 2292 /** Opcode VEX.0F38 0xf7 (vex only). */ 2316 /** 2317 * @opcode 0xf7 2318 * @oppfx none 2319 * @opflmodify cf,pf,af,zf,sf,of 2320 * @opflclear cf,of 2321 * @opflundef pf,af,sf 2322 */ 2293 2323 FNIEMOP_DEF(iemOp_bextr_Gy_Ey_By) 2294 2324 {
Note:
See TracChangeset
for help on using the changeset viewer.