Changeset 97356 in vbox
- Timestamp:
- Oct 31, 2022 10:36:29 PM (2 years ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsInterpretOnly.cpp
r96860 r97356 952 952 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, u8Src, pEFlags); 953 953 954 IEM_MC_ADVANCE_RIP ();954 IEM_MC_ADVANCE_RIP_AND_FINISH(); 955 955 IEM_MC_END(); 956 956 } … … 982 982 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Dst, fAccess); 983 983 IEM_MC_COMMIT_EFLAGS(EFlags); 984 IEM_MC_ADVANCE_RIP ();984 IEM_MC_ADVANCE_RIP_AND_FINISH(); 985 985 IEM_MC_END(); 986 986 } … … 1019 1019 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 1020 1020 1021 IEM_MC_ADVANCE_RIP ();1021 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1022 1022 IEM_MC_END(); 1023 1023 break; … … 1036 1036 if ((pImpl != &g_iemAImpl_test) && (pImpl != &g_iemAImpl_cmp)) 1037 1037 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 1038 IEM_MC_ADVANCE_RIP ();1038 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1039 1039 IEM_MC_END(); 1040 1040 break; … … 1051 1051 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 1052 1052 1053 IEM_MC_ADVANCE_RIP ();1053 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1054 1054 IEM_MC_END(); 1055 1055 break; … … 1086 1086 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, fAccess); 1087 1087 IEM_MC_COMMIT_EFLAGS(EFlags); 1088 IEM_MC_ADVANCE_RIP ();1088 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1089 1089 IEM_MC_END(); 1090 1090 break; … … 1110 1110 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, fAccess); 1111 1111 IEM_MC_COMMIT_EFLAGS(EFlags); 1112 IEM_MC_ADVANCE_RIP ();1112 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1113 1113 IEM_MC_END(); 1114 1114 break; … … 1134 1134 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, fAccess); 1135 1135 IEM_MC_COMMIT_EFLAGS(EFlags); 1136 IEM_MC_ADVANCE_RIP ();1136 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1137 1137 IEM_MC_END(); 1138 1138 break; … … 1169 1169 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, u8Src, pEFlags); 1170 1170 1171 IEM_MC_ADVANCE_RIP ();1171 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1172 1172 IEM_MC_END(); 1173 1173 } … … 1190 1190 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, u8Src, pEFlags); 1191 1191 1192 IEM_MC_ADVANCE_RIP ();1192 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1193 1193 IEM_MC_END(); 1194 1194 } … … 1226 1226 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 1227 1227 1228 IEM_MC_ADVANCE_RIP ();1228 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1229 1229 IEM_MC_END(); 1230 1230 break; … … 1243 1243 if (pImpl != &g_iemAImpl_cmp) /* Not used with TEST. */ 1244 1244 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 1245 IEM_MC_ADVANCE_RIP ();1245 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1246 1246 IEM_MC_END(); 1247 1247 break; … … 1258 1258 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 1259 1259 1260 IEM_MC_ADVANCE_RIP ();1260 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1261 1261 IEM_MC_END(); 1262 1262 break; … … 1284 1284 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 1285 1285 1286 IEM_MC_ADVANCE_RIP ();1286 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1287 1287 IEM_MC_END(); 1288 1288 break; … … 1304 1304 if (pImpl != &g_iemAImpl_cmp) 1305 1305 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 1306 IEM_MC_ADVANCE_RIP ();1306 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1307 1307 IEM_MC_END(); 1308 1308 break; … … 1322 1322 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 1323 1323 1324 IEM_MC_ADVANCE_RIP ();1324 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1325 1325 IEM_MC_END(); 1326 1326 break; … … 1351 1351 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, u8Src, pEFlags); 1352 1352 1353 IEM_MC_ADVANCE_RIP ();1353 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1354 1354 IEM_MC_END(); 1355 1355 return VINF_SUCCESS; … … 1381 1381 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 1382 1382 1383 IEM_MC_ADVANCE_RIP ();1383 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1384 1384 IEM_MC_END(); 1385 1385 return VINF_SUCCESS; … … 1402 1402 if ((pImpl != &g_iemAImpl_test) && (pImpl != &g_iemAImpl_cmp)) 1403 1403 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 1404 IEM_MC_ADVANCE_RIP ();1404 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1405 1405 IEM_MC_END(); 1406 1406 return VINF_SUCCESS; … … 1421 1421 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 1422 1422 1423 IEM_MC_ADVANCE_RIP ();1423 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1424 1424 IEM_MC_END(); 1425 1425 return VINF_SUCCESS; -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsOneByte.cpp.h
r97214 r97356 1098 1098 IEM_MC_REF_EFLAGS(pEFlags); 1099 1099 IEM_MC_CALL_VOID_AIMPL_2(pImpl->pfnNormalU16, pu16Dst, pEFlags); 1100 IEM_MC_ADVANCE_RIP ();1100 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1101 1101 IEM_MC_END(); 1102 1102 return VINF_SUCCESS; … … 1110 1110 IEM_MC_CALL_VOID_AIMPL_2(pImpl->pfnNormalU32, pu32Dst, pEFlags); 1111 1111 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 1112 IEM_MC_ADVANCE_RIP ();1112 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1113 1113 IEM_MC_END(); 1114 1114 return VINF_SUCCESS; … … 1121 1121 IEM_MC_REF_EFLAGS(pEFlags); 1122 1122 IEM_MC_CALL_VOID_AIMPL_2(pImpl->pfnNormalU64, pu64Dst, pEFlags); 1123 IEM_MC_ADVANCE_RIP ();1123 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1124 1124 IEM_MC_END(); 1125 1125 return VINF_SUCCESS; … … 1534 1534 IEM_MC_FETCH_GREG_U16(u16Value, iReg); 1535 1535 IEM_MC_PUSH_U16(u16Value); 1536 IEM_MC_ADVANCE_RIP ();1536 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1537 1537 IEM_MC_END(); 1538 1538 break; … … 1543 1543 IEM_MC_FETCH_GREG_U32(u32Value, iReg); 1544 1544 IEM_MC_PUSH_U32(u32Value); 1545 IEM_MC_ADVANCE_RIP ();1545 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1546 1546 IEM_MC_END(); 1547 1547 break; … … 1552 1552 IEM_MC_FETCH_GREG_U64(u64Value, iReg); 1553 1553 IEM_MC_PUSH_U64(u64Value); 1554 IEM_MC_ADVANCE_RIP ();1554 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1555 1555 IEM_MC_END(); 1556 1556 break; … … 1614 1614 IEM_MC_SUB_LOCAL_U16(u16Value, 2); 1615 1615 IEM_MC_PUSH_U16(u16Value); 1616 IEM_MC_ADVANCE_RIP ();1616 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1617 1617 IEM_MC_END(); 1618 1618 } … … 1671 1671 IEM_MC_REF_GREG_U16(pu16Dst, iReg); 1672 1672 IEM_MC_POP_U16(pu16Dst); 1673 IEM_MC_ADVANCE_RIP ();1673 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1674 1674 IEM_MC_END(); 1675 1675 break; … … 1681 1681 IEM_MC_POP_U32(pu32Dst); 1682 1682 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); /** @todo testcase*/ 1683 IEM_MC_ADVANCE_RIP ();1683 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1684 1684 IEM_MC_END(); 1685 1685 break; … … 1690 1690 IEM_MC_REF_GREG_U64(pu64Dst, iReg); 1691 1691 IEM_MC_POP_U64(pu64Dst); 1692 IEM_MC_ADVANCE_RIP ();1692 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1693 1693 IEM_MC_END(); 1694 1694 break; … … 1763 1763 IEM_MC_POP_U16(&u16Dst); /** @todo not correct MC, fix later. */ 1764 1764 IEM_MC_STORE_GREG_U16(X86_GREG_xSP, u16Dst); 1765 IEM_MC_ADVANCE_RIP ();1765 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1766 1766 IEM_MC_END(); 1767 1767 break; … … 1772 1772 IEM_MC_POP_U32(&u32Dst); 1773 1773 IEM_MC_STORE_GREG_U32(X86_GREG_xSP, u32Dst); 1774 IEM_MC_ADVANCE_RIP ();1774 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1775 1775 IEM_MC_END(); 1776 1776 break; … … 1781 1781 IEM_MC_POP_U64(&u64Dst); 1782 1782 IEM_MC_STORE_GREG_U64(X86_GREG_xSP, u64Dst); 1783 IEM_MC_ADVANCE_RIP ();1783 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1784 1784 IEM_MC_END(); 1785 1785 break; … … 2019 2019 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_arpl, pu16Dst, u16Src, pEFlags); 2020 2020 2021 IEM_MC_ADVANCE_RIP ();2021 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2022 2022 IEM_MC_END(); 2023 2023 } … … 2040 2040 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); 2041 2041 IEM_MC_COMMIT_EFLAGS(EFlags); 2042 IEM_MC_ADVANCE_RIP ();2042 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2043 2043 IEM_MC_END(); 2044 2044 } … … 2073 2073 IEM_MC_FETCH_GREG_U32_SX_U64(u64Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 2074 2074 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 2075 IEM_MC_ADVANCE_RIP ();2075 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2076 2076 IEM_MC_END(); 2077 2077 } … … 2088 2088 IEM_MC_FETCH_MEM_U32_SX_U64(u64Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 2089 2089 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 2090 IEM_MC_ADVANCE_RIP ();2090 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2091 2091 IEM_MC_END(); 2092 2092 } … … 2206 2206 IEM_MC_BEGIN(0,0); 2207 2207 IEM_MC_PUSH_U16(u16Imm); 2208 IEM_MC_ADVANCE_RIP ();2208 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2209 2209 IEM_MC_END(); 2210 2210 return VINF_SUCCESS; … … 2217 2217 IEM_MC_BEGIN(0,0); 2218 2218 IEM_MC_PUSH_U32(u32Imm); 2219 IEM_MC_ADVANCE_RIP ();2219 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2220 2220 IEM_MC_END(); 2221 2221 return VINF_SUCCESS; … … 2228 2228 IEM_MC_BEGIN(0,0); 2229 2229 IEM_MC_PUSH_U64(u64Imm); 2230 IEM_MC_ADVANCE_RIP ();2230 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2231 2231 IEM_MC_END(); 2232 2232 return VINF_SUCCESS; … … 2271 2271 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Tmp); 2272 2272 2273 IEM_MC_ADVANCE_RIP ();2273 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2274 2274 IEM_MC_END(); 2275 2275 } … … 2295 2295 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Tmp); 2296 2296 2297 IEM_MC_ADVANCE_RIP ();2297 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2298 2298 IEM_MC_END(); 2299 2299 } … … 2322 2322 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 2323 2323 2324 IEM_MC_ADVANCE_RIP ();2324 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2325 2325 IEM_MC_END(); 2326 2326 } … … 2346 2346 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 2347 2347 2348 IEM_MC_ADVANCE_RIP ();2348 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2349 2349 IEM_MC_END(); 2350 2350 } … … 2373 2373 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 2374 2374 2375 IEM_MC_ADVANCE_RIP ();2375 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2376 2376 IEM_MC_END(); 2377 2377 } … … 2397 2397 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 2398 2398 2399 IEM_MC_ADVANCE_RIP ();2399 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2400 2400 IEM_MC_END(); 2401 2401 } … … 2431 2431 break; 2432 2432 } 2433 IEM_MC_ADVANCE_RIP ();2433 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2434 2434 IEM_MC_END(); 2435 2435 return VINF_SUCCESS; … … 2469 2469 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Tmp); 2470 2470 2471 IEM_MC_ADVANCE_RIP ();2471 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2472 2472 IEM_MC_END(); 2473 2473 } … … 2493 2493 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Tmp); 2494 2494 2495 IEM_MC_ADVANCE_RIP ();2495 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2496 2496 IEM_MC_END(); 2497 2497 } … … 2518 2518 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 2519 2519 2520 IEM_MC_ADVANCE_RIP ();2520 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2521 2521 IEM_MC_END(); 2522 2522 } … … 2542 2542 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 2543 2543 2544 IEM_MC_ADVANCE_RIP ();2544 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2545 2545 IEM_MC_END(); 2546 2546 } … … 2567 2567 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 2568 2568 2569 IEM_MC_ADVANCE_RIP ();2569 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2570 2570 IEM_MC_END(); 2571 2571 } … … 2591 2591 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 2592 2592 2593 IEM_MC_ADVANCE_RIP ();2593 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2594 2594 IEM_MC_END(); 2595 2595 } … … 2806 2806 IEM_MC_REL_JMP_S8(i8Imm); 2807 2807 } IEM_MC_ELSE() { 2808 IEM_MC_ADVANCE_RIP ();2808 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2809 2809 } IEM_MC_ENDIF(); 2810 2810 IEM_MC_END(); … … 2825 2825 IEM_MC_BEGIN(0, 0); 2826 2826 IEM_MC_IF_EFL_BIT_SET(X86_EFL_OF) { 2827 IEM_MC_ADVANCE_RIP ();2827 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2828 2828 } IEM_MC_ELSE() { 2829 2829 IEM_MC_REL_JMP_S8(i8Imm); … … 2847 2847 IEM_MC_REL_JMP_S8(i8Imm); 2848 2848 } IEM_MC_ELSE() { 2849 IEM_MC_ADVANCE_RIP ();2849 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2850 2850 } IEM_MC_ENDIF(); 2851 2851 IEM_MC_END(); … … 2866 2866 IEM_MC_BEGIN(0, 0); 2867 2867 IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) { 2868 IEM_MC_ADVANCE_RIP ();2868 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2869 2869 } IEM_MC_ELSE() { 2870 2870 IEM_MC_REL_JMP_S8(i8Imm); … … 2889 2889 IEM_MC_REL_JMP_S8(i8Imm); 2890 2890 } IEM_MC_ELSE() { 2891 IEM_MC_ADVANCE_RIP ();2891 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2892 2892 } IEM_MC_ENDIF(); 2893 2893 IEM_MC_END(); … … 2908 2908 IEM_MC_BEGIN(0, 0); 2909 2909 IEM_MC_IF_EFL_BIT_SET(X86_EFL_ZF) { 2910 IEM_MC_ADVANCE_RIP ();2910 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2911 2911 } IEM_MC_ELSE() { 2912 2912 IEM_MC_REL_JMP_S8(i8Imm); … … 2931 2931 IEM_MC_REL_JMP_S8(i8Imm); 2932 2932 } IEM_MC_ELSE() { 2933 IEM_MC_ADVANCE_RIP ();2933 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2934 2934 } IEM_MC_ENDIF(); 2935 2935 IEM_MC_END(); … … 2950 2950 IEM_MC_BEGIN(0, 0); 2951 2951 IEM_MC_IF_EFL_ANY_BITS_SET(X86_EFL_CF | X86_EFL_ZF) { 2952 IEM_MC_ADVANCE_RIP ();2952 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2953 2953 } IEM_MC_ELSE() { 2954 2954 IEM_MC_REL_JMP_S8(i8Imm); … … 2973 2973 IEM_MC_REL_JMP_S8(i8Imm); 2974 2974 } IEM_MC_ELSE() { 2975 IEM_MC_ADVANCE_RIP ();2975 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2976 2976 } IEM_MC_ENDIF(); 2977 2977 IEM_MC_END(); … … 2992 2992 IEM_MC_BEGIN(0, 0); 2993 2993 IEM_MC_IF_EFL_BIT_SET(X86_EFL_SF) { 2994 IEM_MC_ADVANCE_RIP ();2994 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2995 2995 } IEM_MC_ELSE() { 2996 2996 IEM_MC_REL_JMP_S8(i8Imm); … … 3015 3015 IEM_MC_REL_JMP_S8(i8Imm); 3016 3016 } IEM_MC_ELSE() { 3017 IEM_MC_ADVANCE_RIP ();3017 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3018 3018 } IEM_MC_ENDIF(); 3019 3019 IEM_MC_END(); … … 3034 3034 IEM_MC_BEGIN(0, 0); 3035 3035 IEM_MC_IF_EFL_BIT_SET(X86_EFL_PF) { 3036 IEM_MC_ADVANCE_RIP ();3036 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3037 3037 } IEM_MC_ELSE() { 3038 3038 IEM_MC_REL_JMP_S8(i8Imm); … … 3057 3057 IEM_MC_REL_JMP_S8(i8Imm); 3058 3058 } IEM_MC_ELSE() { 3059 IEM_MC_ADVANCE_RIP ();3059 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3060 3060 } IEM_MC_ENDIF(); 3061 3061 IEM_MC_END(); … … 3076 3076 IEM_MC_BEGIN(0, 0); 3077 3077 IEM_MC_IF_EFL_BITS_NE(X86_EFL_SF, X86_EFL_OF) { 3078 IEM_MC_ADVANCE_RIP ();3078 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3079 3079 } IEM_MC_ELSE() { 3080 3080 IEM_MC_REL_JMP_S8(i8Imm); … … 3099 3099 IEM_MC_REL_JMP_S8(i8Imm); 3100 3100 } IEM_MC_ELSE() { 3101 IEM_MC_ADVANCE_RIP ();3101 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3102 3102 } IEM_MC_ENDIF(); 3103 3103 IEM_MC_END(); … … 3118 3118 IEM_MC_BEGIN(0, 0); 3119 3119 IEM_MC_IF_EFL_BIT_SET_OR_BITS_NE(X86_EFL_ZF, X86_EFL_SF, X86_EFL_OF) { 3120 IEM_MC_ADVANCE_RIP ();3120 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3121 3121 } IEM_MC_ELSE() { 3122 3122 IEM_MC_REL_JMP_S8(i8Imm); … … 3160 3160 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, u8Src, pEFlags); 3161 3161 3162 IEM_MC_ADVANCE_RIP ();3162 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3163 3163 IEM_MC_END(); 3164 3164 } … … 3193 3193 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Dst, fAccess); 3194 3194 IEM_MC_COMMIT_EFLAGS(EFlags); 3195 IEM_MC_ADVANCE_RIP ();3195 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3196 3196 IEM_MC_END(); 3197 3197 } … … 3237 3237 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 3238 3238 3239 IEM_MC_ADVANCE_RIP ();3239 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3240 3240 IEM_MC_END(); 3241 3241 } … … 3270 3270 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, fAccess); 3271 3271 IEM_MC_COMMIT_EFLAGS(EFlags); 3272 IEM_MC_ADVANCE_RIP ();3272 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3273 3273 IEM_MC_END(); 3274 3274 } … … 3294 3294 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 3295 3295 3296 IEM_MC_ADVANCE_RIP ();3296 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3297 3297 IEM_MC_END(); 3298 3298 } … … 3327 3327 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, fAccess); 3328 3328 IEM_MC_COMMIT_EFLAGS(EFlags); 3329 IEM_MC_ADVANCE_RIP ();3329 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3330 3330 IEM_MC_END(); 3331 3331 } … … 3349 3349 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 3350 3350 3351 IEM_MC_ADVANCE_RIP ();3351 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3352 3352 IEM_MC_END(); 3353 3353 } … … 3382 3382 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, fAccess); 3383 3383 IEM_MC_COMMIT_EFLAGS(EFlags); 3384 IEM_MC_ADVANCE_RIP ();3384 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3385 3385 IEM_MC_END(); 3386 3386 } … … 3446 3446 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 3447 3447 3448 IEM_MC_ADVANCE_RIP ();3448 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3449 3449 IEM_MC_END(); 3450 3450 break; … … 3464 3464 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 3465 3465 3466 IEM_MC_ADVANCE_RIP ();3466 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3467 3467 IEM_MC_END(); 3468 3468 break; … … 3480 3480 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 3481 3481 3482 IEM_MC_ADVANCE_RIP ();3482 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3483 3483 IEM_MC_END(); 3484 3484 break; … … 3523 3523 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, fAccess); 3524 3524 IEM_MC_COMMIT_EFLAGS(EFlags); 3525 IEM_MC_ADVANCE_RIP ();3525 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3526 3526 IEM_MC_END(); 3527 3527 break; … … 3552 3552 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, fAccess); 3553 3553 IEM_MC_COMMIT_EFLAGS(EFlags); 3554 IEM_MC_ADVANCE_RIP ();3554 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3555 3555 IEM_MC_END(); 3556 3556 break; … … 3581 3581 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, fAccess); 3582 3582 IEM_MC_COMMIT_EFLAGS(EFlags); 3583 IEM_MC_ADVANCE_RIP ();3583 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3584 3584 IEM_MC_END(); 3585 3585 break; … … 3637 3637 IEM_MC_STORE_GREG_U8(IEM_GET_MODRM_REG(pVCpu, bRm), uTmp2); 3638 3638 3639 IEM_MC_ADVANCE_RIP ();3639 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3640 3640 IEM_MC_END(); 3641 3641 } … … 3660 3660 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Mem, IEM_ACCESS_DATA_RW); 3661 3661 3662 IEM_MC_ADVANCE_RIP ();3662 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3663 3663 IEM_MC_END(); 3664 3664 } … … 3694 3694 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), uTmp2); 3695 3695 3696 IEM_MC_ADVANCE_RIP ();3696 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3697 3697 IEM_MC_END(); 3698 3698 return VINF_SUCCESS; … … 3708 3708 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), uTmp2); 3709 3709 3710 IEM_MC_ADVANCE_RIP ();3710 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3711 3711 IEM_MC_END(); 3712 3712 return VINF_SUCCESS; … … 3722 3722 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uTmp2); 3723 3723 3724 IEM_MC_ADVANCE_RIP ();3724 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3725 3725 IEM_MC_END(); 3726 3726 return VINF_SUCCESS; … … 3752 3752 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Mem, IEM_ACCESS_DATA_RW); 3753 3753 3754 IEM_MC_ADVANCE_RIP ();3754 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3755 3755 IEM_MC_END(); 3756 3756 return VINF_SUCCESS; … … 3772 3772 3773 3773 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Reg); 3774 IEM_MC_ADVANCE_RIP ();3774 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3775 3775 IEM_MC_END(); 3776 3776 return VINF_SUCCESS; … … 3791 3791 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Mem, IEM_ACCESS_DATA_RW); 3792 3792 3793 IEM_MC_ADVANCE_RIP ();3793 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3794 3794 IEM_MC_END(); 3795 3795 return VINF_SUCCESS; … … 3821 3821 IEM_MC_FETCH_GREG_U8(u8Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3822 3822 IEM_MC_STORE_GREG_U8(IEM_GET_MODRM_RM(pVCpu, bRm), u8Value); 3823 IEM_MC_ADVANCE_RIP ();3823 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3824 3824 IEM_MC_END(); 3825 3825 } … … 3836 3836 IEM_MC_FETCH_GREG_U8(u8Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3837 3837 IEM_MC_STORE_MEM_U8(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u8Value); 3838 IEM_MC_ADVANCE_RIP ();3838 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3839 3839 IEM_MC_END(); 3840 3840 } … … 3866 3866 IEM_MC_FETCH_GREG_U16(u16Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3867 3867 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_RM(pVCpu, bRm), u16Value); 3868 IEM_MC_ADVANCE_RIP ();3868 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3869 3869 IEM_MC_END(); 3870 3870 break; … … 3875 3875 IEM_MC_FETCH_GREG_U32(u32Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3876 3876 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Value); 3877 IEM_MC_ADVANCE_RIP ();3877 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3878 3878 IEM_MC_END(); 3879 3879 break; … … 3884 3884 IEM_MC_FETCH_GREG_U64(u64Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3885 3885 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Value); 3886 IEM_MC_ADVANCE_RIP ();3886 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3887 3887 IEM_MC_END(); 3888 3888 break; … … 3904 3904 IEM_MC_FETCH_GREG_U16(u16Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3905 3905 IEM_MC_STORE_MEM_U16(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u16Value); 3906 IEM_MC_ADVANCE_RIP ();3906 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3907 3907 IEM_MC_END(); 3908 3908 break; … … 3916 3916 IEM_MC_FETCH_GREG_U32(u32Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3917 3917 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u32Value); 3918 IEM_MC_ADVANCE_RIP ();3918 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3919 3919 IEM_MC_END(); 3920 3920 break; … … 3928 3928 IEM_MC_FETCH_GREG_U64(u64Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 3929 3929 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u64Value); 3930 IEM_MC_ADVANCE_RIP ();3930 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3931 3931 IEM_MC_END(); 3932 3932 break; … … 3956 3956 IEM_MC_FETCH_GREG_U8(u8Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 3957 3957 IEM_MC_STORE_GREG_U8(IEM_GET_MODRM_REG(pVCpu, bRm), u8Value); 3958 IEM_MC_ADVANCE_RIP ();3958 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3959 3959 IEM_MC_END(); 3960 3960 } … … 3971 3971 IEM_MC_FETCH_MEM_U8(u8Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 3972 3972 IEM_MC_STORE_GREG_U8(IEM_GET_MODRM_REG(pVCpu, bRm), u8Value); 3973 IEM_MC_ADVANCE_RIP ();3973 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3974 3974 IEM_MC_END(); 3975 3975 } … … 4000 4000 IEM_MC_FETCH_GREG_U16(u16Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 4001 4001 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Value); 4002 IEM_MC_ADVANCE_RIP ();4002 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4003 4003 IEM_MC_END(); 4004 4004 break; … … 4009 4009 IEM_MC_FETCH_GREG_U32(u32Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 4010 4010 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 4011 IEM_MC_ADVANCE_RIP ();4011 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4012 4012 IEM_MC_END(); 4013 4013 break; … … 4018 4018 IEM_MC_FETCH_GREG_U64(u64Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 4019 4019 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 4020 IEM_MC_ADVANCE_RIP ();4020 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4021 4021 IEM_MC_END(); 4022 4022 break; … … 4038 4038 IEM_MC_FETCH_MEM_U16(u16Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 4039 4039 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Value); 4040 IEM_MC_ADVANCE_RIP ();4040 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4041 4041 IEM_MC_END(); 4042 4042 break; … … 4050 4050 IEM_MC_FETCH_MEM_U32(u32Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 4051 4051 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 4052 IEM_MC_ADVANCE_RIP ();4052 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4053 4053 IEM_MC_END(); 4054 4054 break; … … 4062 4062 IEM_MC_FETCH_MEM_U64(u64Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 4063 4063 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 4064 IEM_MC_ADVANCE_RIP ();4064 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4065 4065 IEM_MC_END(); 4066 4066 break; … … 4116 4116 IEM_MC_FETCH_SREG_U16(u16Value, iSegReg); 4117 4117 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_RM(pVCpu, bRm), u16Value); 4118 IEM_MC_ADVANCE_RIP ();4118 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4119 4119 IEM_MC_END(); 4120 4120 break; … … 4125 4125 IEM_MC_FETCH_SREG_ZX_U32(u32Value, iSegReg); 4126 4126 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Value); 4127 IEM_MC_ADVANCE_RIP ();4127 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4128 4128 IEM_MC_END(); 4129 4129 break; … … 4134 4134 IEM_MC_FETCH_SREG_ZX_U64(u64Value, iSegReg); 4135 4135 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Value); 4136 IEM_MC_ADVANCE_RIP ();4136 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4137 4137 IEM_MC_END(); 4138 4138 break; … … 4155 4155 IEM_MC_FETCH_SREG_U16(u16Value, iSegReg); 4156 4156 IEM_MC_STORE_MEM_U16(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u16Value); 4157 IEM_MC_ADVANCE_RIP ();4157 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4158 4158 IEM_MC_END(); 4159 4159 } … … 4184 4184 IEM_MC_ASSIGN_TO_SMALLER(u16Cast, GCPtrEffSrc); 4185 4185 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Cast); 4186 IEM_MC_ADVANCE_RIP ();4186 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4187 4187 IEM_MC_END(); 4188 4188 return VINF_SUCCESS; … … 4196 4196 IEM_MC_ASSIGN_TO_SMALLER(u32Cast, GCPtrEffSrc); 4197 4197 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Cast); 4198 IEM_MC_ADVANCE_RIP ();4198 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4199 4199 IEM_MC_END(); 4200 4200 return VINF_SUCCESS; … … 4206 4206 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 4207 4207 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), GCPtrEffSrc); 4208 IEM_MC_ADVANCE_RIP ();4208 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4209 4209 IEM_MC_END(); 4210 4210 return VINF_SUCCESS; … … 4449 4449 IEM_MC_STORE_GREG_U16(X86_GREG_xAX, u16Tmp1); 4450 4450 IEM_MC_STORE_GREG_U16(iReg, u16Tmp2); 4451 IEM_MC_ADVANCE_RIP ();4451 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4452 4452 IEM_MC_END(); 4453 4453 return VINF_SUCCESS; … … 4461 4461 IEM_MC_STORE_GREG_U32(X86_GREG_xAX, u32Tmp1); 4462 4462 IEM_MC_STORE_GREG_U32(iReg, u32Tmp2); 4463 IEM_MC_ADVANCE_RIP ();4463 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4464 4464 IEM_MC_END(); 4465 4465 return VINF_SUCCESS; … … 4473 4473 IEM_MC_STORE_GREG_U64(X86_GREG_xAX, u64Tmp1); 4474 4474 IEM_MC_STORE_GREG_U64(iReg, u64Tmp2); 4475 IEM_MC_ADVANCE_RIP ();4475 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4476 4476 IEM_MC_END(); 4477 4477 return VINF_SUCCESS; … … 4509 4509 IEMOP_MNEMONIC(nop, "nop"); 4510 4510 IEM_MC_BEGIN(0, 0); 4511 IEM_MC_ADVANCE_RIP ();4511 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4512 4512 IEM_MC_END(); 4513 4513 return VINF_SUCCESS; … … 4601 4601 IEM_MC_AND_GREG_U16(X86_GREG_xAX, UINT16_C(0x00ff)); 4602 4602 } IEM_MC_ENDIF(); 4603 IEM_MC_ADVANCE_RIP ();4603 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4604 4604 IEM_MC_END(); 4605 4605 return VINF_SUCCESS; … … 4613 4613 IEM_MC_AND_GREG_U32(X86_GREG_xAX, UINT32_C(0x0000ffff)); 4614 4614 } IEM_MC_ENDIF(); 4615 IEM_MC_ADVANCE_RIP ();4615 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4616 4616 IEM_MC_END(); 4617 4617 return VINF_SUCCESS; … … 4625 4625 IEM_MC_AND_GREG_U64(X86_GREG_xAX, UINT64_C(0x00000000ffffffff)); 4626 4626 } IEM_MC_ENDIF(); 4627 IEM_MC_ADVANCE_RIP ();4627 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4628 4628 IEM_MC_END(); 4629 4629 return VINF_SUCCESS; … … 4650 4650 IEM_MC_STORE_GREG_U16_CONST(X86_GREG_xDX, 0); 4651 4651 } IEM_MC_ENDIF(); 4652 IEM_MC_ADVANCE_RIP ();4652 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4653 4653 IEM_MC_END(); 4654 4654 return VINF_SUCCESS; … … 4662 4662 IEM_MC_STORE_GREG_U32_CONST(X86_GREG_xDX, 0); 4663 4663 } IEM_MC_ENDIF(); 4664 IEM_MC_ADVANCE_RIP ();4664 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4665 4665 IEM_MC_END(); 4666 4666 return VINF_SUCCESS; … … 4674 4674 IEM_MC_STORE_GREG_U64_CONST(X86_GREG_xDX, 0); 4675 4675 } IEM_MC_ENDIF(); 4676 IEM_MC_ADVANCE_RIP ();4676 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4677 4677 IEM_MC_END(); 4678 4678 return VINF_SUCCESS; … … 4712 4712 IEM_MC_MAYBE_RAISE_WAIT_DEVICE_NOT_AVAILABLE(); 4713 4713 IEM_MC_MAYBE_RAISE_FPU_XCPT(); 4714 IEM_MC_ADVANCE_RIP ();4714 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4715 4715 IEM_MC_END(); 4716 4716 return VINF_SUCCESS; … … 4762 4762 IEM_MC_OR_2LOCS_U32(EFlags, u32Flags); 4763 4763 IEM_MC_COMMIT_EFLAGS(EFlags); 4764 IEM_MC_ADVANCE_RIP ();4764 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4765 4765 IEM_MC_END(); 4766 4766 return VINF_SUCCESS; … … 4782 4782 IEM_MC_FETCH_EFLAGS_U8(u8Flags); 4783 4783 IEM_MC_STORE_GREG_U8(X86_GREG_xSP/*=AH*/, u8Flags); 4784 IEM_MC_ADVANCE_RIP ();4784 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4785 4785 IEM_MC_END(); 4786 4786 return VINF_SUCCESS; … … 4832 4832 IEM_MC_FETCH_MEM_U8(u8Tmp, pVCpu->iem.s.iEffSeg, GCPtrMemOff); 4833 4833 IEM_MC_STORE_GREG_U8(X86_GREG_xAX, u8Tmp); 4834 IEM_MC_ADVANCE_RIP ();4834 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4835 4835 IEM_MC_END(); 4836 4836 return VINF_SUCCESS; … … 4860 4860 IEM_MC_FETCH_MEM_U16(u16Tmp, pVCpu->iem.s.iEffSeg, GCPtrMemOff); 4861 4861 IEM_MC_STORE_GREG_U16(X86_GREG_xAX, u16Tmp); 4862 IEM_MC_ADVANCE_RIP ();4862 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4863 4863 IEM_MC_END(); 4864 4864 return VINF_SUCCESS; … … 4869 4869 IEM_MC_FETCH_MEM_U32(u32Tmp, pVCpu->iem.s.iEffSeg, GCPtrMemOff); 4870 4870 IEM_MC_STORE_GREG_U32(X86_GREG_xAX, u32Tmp); 4871 IEM_MC_ADVANCE_RIP ();4871 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4872 4872 IEM_MC_END(); 4873 4873 return VINF_SUCCESS; … … 4878 4878 IEM_MC_FETCH_MEM_U64(u64Tmp, pVCpu->iem.s.iEffSeg, GCPtrMemOff); 4879 4879 IEM_MC_STORE_GREG_U64(X86_GREG_xAX, u64Tmp); 4880 IEM_MC_ADVANCE_RIP ();4880 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4881 4881 IEM_MC_END(); 4882 4882 return VINF_SUCCESS; … … 4906 4906 IEM_MC_FETCH_GREG_U8(u8Tmp, X86_GREG_xAX); 4907 4907 IEM_MC_STORE_MEM_U8(pVCpu->iem.s.iEffSeg, GCPtrMemOff, u8Tmp); 4908 IEM_MC_ADVANCE_RIP ();4908 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4909 4909 IEM_MC_END(); 4910 4910 return VINF_SUCCESS; … … 4934 4934 IEM_MC_FETCH_GREG_U16(u16Tmp, X86_GREG_xAX); 4935 4935 IEM_MC_STORE_MEM_U16(pVCpu->iem.s.iEffSeg, GCPtrMemOff, u16Tmp); 4936 IEM_MC_ADVANCE_RIP ();4936 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4937 4937 IEM_MC_END(); 4938 4938 return VINF_SUCCESS; … … 4943 4943 IEM_MC_FETCH_GREG_U32(u32Tmp, X86_GREG_xAX); 4944 4944 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrMemOff, u32Tmp); 4945 IEM_MC_ADVANCE_RIP ();4945 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4946 4946 IEM_MC_END(); 4947 4947 return VINF_SUCCESS; … … 4952 4952 IEM_MC_FETCH_GREG_U64(u64Tmp, X86_GREG_xAX); 4953 4953 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrMemOff, u64Tmp); 4954 IEM_MC_ADVANCE_RIP ();4954 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4955 4955 IEM_MC_END(); 4956 4956 return VINF_SUCCESS; … … 4976 4976 IEM_MC_ADD_GREG_U##AddrBits(X86_GREG_xSI, ValBits / 8); \ 4977 4977 } IEM_MC_ENDIF(); \ 4978 IEM_MC_ADVANCE_RIP (); \4978 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 4979 4979 IEM_MC_END(); 4980 4980 … … 5127 5127 IEM_MC_ADD_GREG_U##AddrBits(X86_GREG_xSI, ValBits / 8); \ 5128 5128 } IEM_MC_ENDIF(); \ 5129 IEM_MC_ADVANCE_RIP (); \5129 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5130 5130 IEM_MC_END(); \ 5131 5131 … … 5337 5337 IEM_MC_ADD_GREG_U##AddrBits(X86_GREG_xDI, ValBits / 8); \ 5338 5338 } IEM_MC_ENDIF(); \ 5339 IEM_MC_ADVANCE_RIP (); \5339 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5340 5340 IEM_MC_END(); \ 5341 5341 … … 5477 5477 IEM_MC_ADD_GREG_U##AddrBits(X86_GREG_xSI, ValBits / 8); \ 5478 5478 } IEM_MC_ENDIF(); \ 5479 IEM_MC_ADVANCE_RIP (); \5479 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5480 5480 IEM_MC_END(); 5481 5481 … … 5623 5623 IEM_MC_ADD_GREG_U##AddrBits(X86_GREG_xDI, ValBits / 8); \ 5624 5624 } IEM_MC_ENDIF(); \ 5625 IEM_MC_ADVANCE_RIP (); \5625 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5626 5626 IEM_MC_END(); 5627 5627 … … 5805 5805 IEM_MC_LOCAL_CONST(uint8_t, u8Value,/*=*/ u8Imm); 5806 5806 IEM_MC_STORE_GREG_U8(iReg, u8Value); 5807 IEM_MC_ADVANCE_RIP ();5807 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5808 5808 IEM_MC_END(); 5809 5809 … … 5907 5907 IEM_MC_LOCAL_CONST(uint16_t, u16Value,/*=*/ u16Imm); 5908 5908 IEM_MC_STORE_GREG_U16(iReg, u16Value); 5909 IEM_MC_ADVANCE_RIP ();5909 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5910 5910 IEM_MC_END(); 5911 5911 break; … … 5920 5920 IEM_MC_LOCAL_CONST(uint32_t, u32Value,/*=*/ u32Imm); 5921 5921 IEM_MC_STORE_GREG_U32(iReg, u32Value); 5922 IEM_MC_ADVANCE_RIP ();5922 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5923 5923 IEM_MC_END(); 5924 5924 break; … … 5932 5932 IEM_MC_LOCAL_CONST(uint64_t, u64Value,/*=*/ u64Imm); 5933 5933 IEM_MC_STORE_GREG_U64(iReg, u64Value); 5934 IEM_MC_ADVANCE_RIP ();5934 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5935 5935 IEM_MC_END(); 5936 5936 break; … … 6056 6056 IEM_MC_REF_EFLAGS(pEFlags); 6057 6057 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, cShiftArg, pEFlags); 6058 IEM_MC_ADVANCE_RIP ();6058 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6059 6059 IEM_MC_END(); 6060 6060 } … … 6078 6078 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Dst, IEM_ACCESS_DATA_RW); 6079 6079 IEM_MC_COMMIT_EFLAGS(EFlags); 6080 IEM_MC_ADVANCE_RIP ();6080 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6081 6081 IEM_MC_END(); 6082 6082 } … … 6122 6122 IEM_MC_REF_EFLAGS(pEFlags); 6123 6123 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, cShiftArg, pEFlags); 6124 IEM_MC_ADVANCE_RIP ();6124 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6125 6125 IEM_MC_END(); 6126 6126 return VINF_SUCCESS; … … 6135 6135 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, cShiftArg, pEFlags); 6136 6136 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 6137 IEM_MC_ADVANCE_RIP ();6137 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6138 6138 IEM_MC_END(); 6139 6139 return VINF_SUCCESS; … … 6147 6147 IEM_MC_REF_EFLAGS(pEFlags); 6148 6148 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, cShiftArg, pEFlags); 6149 IEM_MC_ADVANCE_RIP ();6149 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6150 6150 IEM_MC_END(); 6151 6151 return VINF_SUCCESS; … … 6176 6176 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); 6177 6177 IEM_MC_COMMIT_EFLAGS(EFlags); 6178 IEM_MC_ADVANCE_RIP ();6178 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6179 6179 IEM_MC_END(); 6180 6180 return VINF_SUCCESS; … … 6197 6197 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); 6198 6198 IEM_MC_COMMIT_EFLAGS(EFlags); 6199 IEM_MC_ADVANCE_RIP ();6199 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6200 6200 IEM_MC_END(); 6201 6201 return VINF_SUCCESS; … … 6218 6218 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); 6219 6219 IEM_MC_COMMIT_EFLAGS(EFlags); 6220 IEM_MC_ADVANCE_RIP ();6220 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6221 6221 IEM_MC_END(); 6222 6222 return VINF_SUCCESS; … … 6386 6386 IEM_MC_BEGIN(0, 0); 6387 6387 IEM_MC_STORE_GREG_U8(IEM_GET_MODRM_RM(pVCpu, bRm), u8Imm); 6388 IEM_MC_ADVANCE_RIP ();6388 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6389 6389 IEM_MC_END(); 6390 6390 } … … 6398 6398 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 6399 6399 IEM_MC_STORE_MEM_U8(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u8Imm); 6400 IEM_MC_ADVANCE_RIP ();6400 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6401 6401 IEM_MC_END(); 6402 6402 } … … 6425 6425 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 6426 6426 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_RM(pVCpu, bRm), u16Imm); 6427 IEM_MC_ADVANCE_RIP ();6427 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6428 6428 IEM_MC_END(); 6429 6429 return VINF_SUCCESS; … … 6434 6434 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 6435 6435 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Imm); 6436 IEM_MC_ADVANCE_RIP ();6436 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6437 6437 IEM_MC_END(); 6438 6438 return VINF_SUCCESS; … … 6443 6443 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 6444 6444 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Imm); 6445 IEM_MC_ADVANCE_RIP ();6445 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6446 6446 IEM_MC_END(); 6447 6447 return VINF_SUCCESS; … … 6462 6462 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 6463 6463 IEM_MC_STORE_MEM_U16(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u16Imm); 6464 IEM_MC_ADVANCE_RIP ();6464 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6465 6465 IEM_MC_END(); 6466 6466 return VINF_SUCCESS; … … 6473 6473 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 6474 6474 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u32Imm); 6475 IEM_MC_ADVANCE_RIP ();6475 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6476 6476 IEM_MC_END(); 6477 6477 return VINF_SUCCESS; … … 6484 6484 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 6485 6485 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u64Imm); 6486 IEM_MC_ADVANCE_RIP ();6486 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6487 6487 IEM_MC_END(); 6488 6488 return VINF_SUCCESS; … … 6632 6632 IEM_MC_REF_EFLAGS(pEFlags); 6633 6633 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, cShiftArg, pEFlags); 6634 IEM_MC_ADVANCE_RIP ();6634 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6635 6635 IEM_MC_END(); 6636 6636 } … … 6652 6652 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Dst, IEM_ACCESS_DATA_RW); 6653 6653 IEM_MC_COMMIT_EFLAGS(EFlags); 6654 IEM_MC_ADVANCE_RIP ();6654 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6655 6655 IEM_MC_END(); 6656 6656 } … … 6695 6695 IEM_MC_REF_EFLAGS(pEFlags); 6696 6696 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, cShiftArg, pEFlags); 6697 IEM_MC_ADVANCE_RIP ();6697 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6698 6698 IEM_MC_END(); 6699 6699 return VINF_SUCCESS; … … 6708 6708 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, cShiftArg, pEFlags); 6709 6709 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 6710 IEM_MC_ADVANCE_RIP ();6710 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6711 6711 IEM_MC_END(); 6712 6712 return VINF_SUCCESS; … … 6720 6720 IEM_MC_REF_EFLAGS(pEFlags); 6721 6721 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, cShiftArg, pEFlags); 6722 IEM_MC_ADVANCE_RIP ();6722 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6723 6723 IEM_MC_END(); 6724 6724 return VINF_SUCCESS; … … 6747 6747 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); 6748 6748 IEM_MC_COMMIT_EFLAGS(EFlags); 6749 IEM_MC_ADVANCE_RIP ();6749 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6750 6750 IEM_MC_END(); 6751 6751 return VINF_SUCCESS; … … 6766 6766 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); 6767 6767 IEM_MC_COMMIT_EFLAGS(EFlags); 6768 IEM_MC_ADVANCE_RIP ();6768 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6769 6769 IEM_MC_END(); 6770 6770 return VINF_SUCCESS; … … 6785 6785 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); 6786 6786 IEM_MC_COMMIT_EFLAGS(EFlags); 6787 IEM_MC_ADVANCE_RIP ();6787 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6788 6788 IEM_MC_END(); 6789 6789 return VINF_SUCCESS; … … 6828 6828 IEM_MC_REF_EFLAGS(pEFlags); 6829 6829 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU8, pu8Dst, cShiftArg, pEFlags); 6830 IEM_MC_ADVANCE_RIP ();6830 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6831 6831 IEM_MC_END(); 6832 6832 } … … 6849 6849 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Dst, IEM_ACCESS_DATA_RW); 6850 6850 IEM_MC_COMMIT_EFLAGS(EFlags); 6851 IEM_MC_ADVANCE_RIP ();6851 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6852 6852 IEM_MC_END(); 6853 6853 } … … 6892 6892 IEM_MC_REF_EFLAGS(pEFlags); 6893 6893 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, cShiftArg, pEFlags); 6894 IEM_MC_ADVANCE_RIP ();6894 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6895 6895 IEM_MC_END(); 6896 6896 return VINF_SUCCESS; … … 6906 6906 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, cShiftArg, pEFlags); 6907 6907 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 6908 IEM_MC_ADVANCE_RIP ();6908 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6909 6909 IEM_MC_END(); 6910 6910 return VINF_SUCCESS; … … 6919 6919 IEM_MC_REF_EFLAGS(pEFlags); 6920 6920 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, cShiftArg, pEFlags); 6921 IEM_MC_ADVANCE_RIP ();6921 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6922 6922 IEM_MC_END(); 6923 6923 return VINF_SUCCESS; … … 6947 6947 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); 6948 6948 IEM_MC_COMMIT_EFLAGS(EFlags); 6949 IEM_MC_ADVANCE_RIP ();6949 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6950 6950 IEM_MC_END(); 6951 6951 return VINF_SUCCESS; … … 6967 6967 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); 6968 6968 IEM_MC_COMMIT_EFLAGS(EFlags); 6969 IEM_MC_ADVANCE_RIP ();6969 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6970 6970 IEM_MC_END(); 6971 6971 return VINF_SUCCESS; … … 6987 6987 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); 6988 6988 IEM_MC_COMMIT_EFLAGS(EFlags); 6989 IEM_MC_ADVANCE_RIP ();6989 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6990 6990 IEM_MC_END(); 6991 6991 return VINF_SUCCESS; … … 7039 7039 IEM_MC_STORE_GREG_U8_CONST(X86_GREG_xAX, 0x00); 7040 7040 } IEM_MC_ENDIF(); 7041 IEM_MC_ADVANCE_RIP ();7041 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7042 7042 IEM_MC_END(); 7043 7043 return VINF_SUCCESS; … … 7062 7062 IEM_MC_FETCH_MEM16_U8(u8Tmp, pVCpu->iem.s.iEffSeg, u16Addr); 7063 7063 IEM_MC_STORE_GREG_U8(X86_GREG_xAX, u8Tmp); 7064 IEM_MC_ADVANCE_RIP ();7064 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7065 7065 IEM_MC_END(); 7066 7066 return VINF_SUCCESS; … … 7074 7074 IEM_MC_FETCH_MEM32_U8(u8Tmp, pVCpu->iem.s.iEffSeg, u32Addr); 7075 7075 IEM_MC_STORE_GREG_U8(X86_GREG_xAX, u8Tmp); 7076 IEM_MC_ADVANCE_RIP ();7076 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7077 7077 IEM_MC_END(); 7078 7078 return VINF_SUCCESS; … … 7086 7086 IEM_MC_FETCH_MEM_U8(u8Tmp, pVCpu->iem.s.iEffSeg, u64Addr); 7087 7087 IEM_MC_STORE_GREG_U8(X86_GREG_xAX, u8Tmp); 7088 IEM_MC_ADVANCE_RIP ();7088 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7089 7089 IEM_MC_END(); 7090 7090 return VINF_SUCCESS; … … 7121 7121 IEM_MC_FPU_STACK_UNDERFLOW(0); 7122 7122 IEM_MC_ENDIF(); 7123 IEM_MC_ADVANCE_RIP ();7123 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7124 7124 7125 7125 IEM_MC_END(); … … 7154 7154 IEM_MC_FPU_STACK_UNDERFLOW(UINT8_MAX); 7155 7155 IEM_MC_ENDIF(); 7156 IEM_MC_ADVANCE_RIP ();7156 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7157 7157 7158 7158 IEM_MC_END(); … … 7187 7187 IEM_MC_FPU_STACK_UNDERFLOW_THEN_POP(UINT8_MAX); 7188 7188 IEM_MC_ENDIF(); 7189 IEM_MC_ADVANCE_RIP ();7189 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7190 7190 7191 7191 IEM_MC_END(); … … 7289 7289 IEM_MC_FPU_STACK_UNDERFLOW(0); 7290 7290 IEM_MC_ENDIF(); 7291 IEM_MC_ADVANCE_RIP ();7291 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7292 7292 7293 7293 IEM_MC_END(); … … 7339 7339 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 7340 7340 IEM_MC_ENDIF(); 7341 IEM_MC_ADVANCE_RIP ();7341 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7342 7342 7343 7343 IEM_MC_END(); … … 7373 7373 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 7374 7374 IEM_MC_ENDIF(); 7375 IEM_MC_ADVANCE_RIP ();7375 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7376 7376 7377 7377 IEM_MC_END(); … … 7480 7480 IEM_MC_FPU_STACK_PUSH_OVERFLOW_MEM_OP(pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 7481 7481 IEM_MC_ENDIF(); 7482 IEM_MC_ADVANCE_RIP ();7482 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7483 7483 7484 7484 IEM_MC_END(); … … 7516 7516 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 7517 7517 IEM_MC_ENDIF(); 7518 IEM_MC_ADVANCE_RIP ();7518 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7519 7519 7520 7520 IEM_MC_END(); … … 7552 7552 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 7553 7553 IEM_MC_ENDIF(); 7554 IEM_MC_ADVANCE_RIP ();7554 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7555 7555 7556 7556 IEM_MC_END(); … … 7628 7628 IEM_MC_FETCH_FCW(u16Fcw); 7629 7629 IEM_MC_STORE_MEM_U16(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u16Fcw); 7630 IEM_MC_ADVANCE_RIP (); /* C0-C3 are documented as undefined, we leave them unmodified. */7630 IEM_MC_ADVANCE_RIP_AND_FINISH(); /* C0-C3 are documented as undefined, we leave them unmodified. */ 7631 7631 IEM_MC_END(); 7632 7632 return VINF_SUCCESS; … … 7647 7647 * intel optimizations. Investigate. */ 7648 7648 IEM_MC_UPDATE_FPU_OPCODE_IP(); 7649 IEM_MC_ADVANCE_RIP (); /* C0-C3 are documented as undefined, we leave them unmodified. */7649 IEM_MC_ADVANCE_RIP_AND_FINISH(); /* C0-C3 are documented as undefined, we leave them unmodified. */ 7650 7650 IEM_MC_END(); 7651 7651 return VINF_SUCCESS; … … 7675 7675 IEM_MC_ENDIF(); 7676 7676 7677 IEM_MC_ADVANCE_RIP ();7677 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7678 7678 IEM_MC_END(); 7679 7679 … … 7707 7707 IEM_MC_ENDIF(); 7708 7708 7709 IEM_MC_ADVANCE_RIP ();7709 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7710 7710 IEM_MC_END(); 7711 7711 … … 7736 7736 IEM_MC_ENDIF(); 7737 7737 7738 IEM_MC_ADVANCE_RIP ();7738 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7739 7739 IEM_MC_END(); 7740 7740 } … … 7755 7755 IEM_MC_ENDIF(); 7756 7756 7757 IEM_MC_ADVANCE_RIP ();7757 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7758 7758 IEM_MC_END(); 7759 7759 } … … 7786 7786 IEM_MC_FPU_STACK_UNDERFLOW(0); 7787 7787 IEM_MC_ENDIF(); 7788 IEM_MC_ADVANCE_RIP ();7788 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7789 7789 7790 7790 IEM_MC_END(); … … 7829 7829 IEM_MC_FPU_STACK_UNDERFLOW(UINT8_MAX); 7830 7830 IEM_MC_ENDIF(); 7831 IEM_MC_ADVANCE_RIP ();7831 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7832 7832 7833 7833 IEM_MC_END(); … … 7853 7853 IEM_MC_CALL_FPU_AIMPL_2(iemAImpl_fxam_r80, pu16Fsw, pr80Value); 7854 7854 IEM_MC_UPDATE_FSW(u16Fsw); 7855 IEM_MC_ADVANCE_RIP ();7855 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7856 7856 7857 7857 IEM_MC_END(); … … 7882 7882 IEM_MC_FPU_STACK_PUSH_OVERFLOW(); 7883 7883 IEM_MC_ENDIF(); 7884 IEM_MC_ADVANCE_RIP ();7884 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7885 7885 7886 7886 IEM_MC_END(); … … 7985 7985 IEM_MC_FPU_STACK_UNDERFLOW_THEN_POP(IEM_GET_MODRM_RM_8(bRm)); 7986 7986 IEM_MC_ENDIF(); 7987 IEM_MC_ADVANCE_RIP ();7987 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7988 7988 7989 7989 IEM_MC_END(); … … 8024 8024 IEM_MC_FPU_STACK_PUSH_UNDERFLOW_TWO(); 8025 8025 IEM_MC_ENDIF(); 8026 IEM_MC_ADVANCE_RIP ();8026 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8027 8027 8028 8028 IEM_MC_END(); … … 8081 8081 IEM_MC_UPDATE_FSW_CONST(0); 8082 8082 8083 IEM_MC_ADVANCE_RIP ();8083 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8084 8084 IEM_MC_END(); 8085 8085 return VINF_SUCCESS; … … 8105 8105 IEM_MC_UPDATE_FSW_CONST(0); 8106 8106 8107 IEM_MC_ADVANCE_RIP ();8107 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8108 8108 IEM_MC_END(); 8109 8109 return VINF_SUCCESS; … … 8280 8280 IEM_MC_FPU_STACK_UNDERFLOW(0); 8281 8281 IEM_MC_ENDIF(); 8282 IEM_MC_ADVANCE_RIP ();8282 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8283 8283 8284 8284 IEM_MC_END(); … … 8308 8308 IEM_MC_FPU_STACK_UNDERFLOW(0); 8309 8309 IEM_MC_ENDIF(); 8310 IEM_MC_ADVANCE_RIP ();8310 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8311 8311 8312 8312 IEM_MC_END(); … … 8336 8336 IEM_MC_FPU_STACK_UNDERFLOW(0); 8337 8337 IEM_MC_ENDIF(); 8338 IEM_MC_ADVANCE_RIP ();8338 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8339 8339 8340 8340 IEM_MC_END(); … … 8364 8364 IEM_MC_FPU_STACK_UNDERFLOW(0); 8365 8365 IEM_MC_ENDIF(); 8366 IEM_MC_ADVANCE_RIP ();8366 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8367 8367 8368 8368 IEM_MC_END(); … … 8397 8397 IEM_MC_FPU_STACK_UNDERFLOW_THEN_POP_POP(); 8398 8398 IEM_MC_ENDIF(); 8399 IEM_MC_ADVANCE_RIP ();8399 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8400 8400 8401 8401 IEM_MC_END(); … … 8443 8443 IEM_MC_FPU_STACK_UNDERFLOW(0); 8444 8444 IEM_MC_ENDIF(); 8445 IEM_MC_ADVANCE_RIP ();8445 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8446 8446 8447 8447 IEM_MC_END(); … … 8493 8493 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 8494 8494 IEM_MC_ENDIF(); 8495 IEM_MC_ADVANCE_RIP ();8495 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8496 8496 8497 8497 IEM_MC_END(); … … 8527 8527 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 8528 8528 IEM_MC_ENDIF(); 8529 IEM_MC_ADVANCE_RIP ();8529 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8530 8530 8531 8531 IEM_MC_END(); … … 8635 8635 IEM_MC_FPU_STACK_PUSH_OVERFLOW_MEM_OP(pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 8636 8636 IEM_MC_ENDIF(); 8637 IEM_MC_ADVANCE_RIP ();8637 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8638 8638 8639 8639 IEM_MC_END(); … … 8671 8671 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 8672 8672 IEM_MC_ENDIF(); 8673 IEM_MC_ADVANCE_RIP ();8673 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8674 8674 8675 8675 IEM_MC_END(); … … 8707 8707 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 8708 8708 IEM_MC_ENDIF(); 8709 IEM_MC_ADVANCE_RIP ();8709 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8710 8710 8711 8711 IEM_MC_END(); … … 8743 8743 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 8744 8744 IEM_MC_ENDIF(); 8745 IEM_MC_ADVANCE_RIP ();8745 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8746 8746 8747 8747 IEM_MC_END(); … … 8776 8776 IEM_MC_FPU_STACK_PUSH_OVERFLOW_MEM_OP(pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 8777 8777 IEM_MC_ENDIF(); 8778 IEM_MC_ADVANCE_RIP ();8778 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8779 8779 8780 8780 IEM_MC_END(); … … 8812 8812 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 8813 8813 IEM_MC_ENDIF(); 8814 IEM_MC_ADVANCE_RIP ();8814 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8815 8815 8816 8816 IEM_MC_END(); … … 8840 8840 IEM_MC_FPU_STACK_UNDERFLOW(0); 8841 8841 IEM_MC_ENDIF(); 8842 IEM_MC_ADVANCE_RIP ();8842 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8843 8843 8844 8844 IEM_MC_END(); … … 8868 8868 IEM_MC_FPU_STACK_UNDERFLOW(0); 8869 8869 IEM_MC_ENDIF(); 8870 IEM_MC_ADVANCE_RIP ();8870 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8871 8871 8872 8872 IEM_MC_END(); … … 8896 8896 IEM_MC_FPU_STACK_UNDERFLOW(0); 8897 8897 IEM_MC_ENDIF(); 8898 IEM_MC_ADVANCE_RIP ();8898 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8899 8899 8900 8900 IEM_MC_END(); … … 8924 8924 IEM_MC_FPU_STACK_UNDERFLOW(0); 8925 8925 IEM_MC_ENDIF(); 8926 IEM_MC_ADVANCE_RIP ();8926 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8927 8927 8928 8928 IEM_MC_END(); … … 8938 8938 IEM_MC_BEGIN(0,0); 8939 8939 IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE(); 8940 IEM_MC_ADVANCE_RIP ();8940 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8941 8941 IEM_MC_END(); 8942 8942 return VINF_SUCCESS; … … 8951 8951 IEM_MC_BEGIN(0,0); 8952 8952 IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE(); 8953 IEM_MC_ADVANCE_RIP ();8953 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8954 8954 IEM_MC_END(); 8955 8955 return VINF_SUCCESS; … … 8967 8967 IEM_MC_ACTUALIZE_FPU_STATE_FOR_CHANGE(); 8968 8968 IEM_MC_CLEAR_FSW_EX(); 8969 IEM_MC_ADVANCE_RIP ();8969 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8970 8970 IEM_MC_END(); 8971 8971 return VINF_SUCCESS; … … 8989 8989 IEM_MC_BEGIN(0,0); 8990 8990 IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE(); 8991 IEM_MC_ADVANCE_RIP ();8991 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8992 8992 IEM_MC_END(); 8993 8993 return VINF_SUCCESS; … … 9003 9003 IEM_MC_BEGIN(0,0); 9004 9004 IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE(); 9005 IEM_MC_ADVANCE_RIP ();9005 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9006 9006 IEM_MC_END(); 9007 9007 return VINF_SUCCESS; … … 9108 9108 IEM_MC_FPU_STACK_UNDERFLOW(IEM_GET_MODRM_RM_8(bRm)); 9109 9109 IEM_MC_ENDIF(); 9110 IEM_MC_ADVANCE_RIP ();9110 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9111 9111 9112 9112 IEM_MC_END(); … … 9193 9193 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(0, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 9194 9194 IEM_MC_ENDIF(); 9195 IEM_MC_ADVANCE_RIP ();9195 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9196 9196 9197 9197 IEM_MC_END(); … … 9243 9243 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 9244 9244 IEM_MC_ENDIF(); 9245 IEM_MC_ADVANCE_RIP ();9245 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9246 9246 9247 9247 IEM_MC_END(); … … 9277 9277 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 9278 9278 IEM_MC_ENDIF(); 9279 IEM_MC_ADVANCE_RIP ();9279 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9280 9280 9281 9281 IEM_MC_END(); … … 9382 9382 IEM_MC_FPU_STACK_PUSH_OVERFLOW_MEM_OP(pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 9383 9383 IEM_MC_ENDIF(); 9384 IEM_MC_ADVANCE_RIP ();9384 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9385 9385 9386 9386 IEM_MC_END(); … … 9418 9418 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 9419 9419 IEM_MC_ENDIF(); 9420 IEM_MC_ADVANCE_RIP ();9420 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9421 9421 9422 9422 IEM_MC_END(); … … 9454 9454 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 9455 9455 IEM_MC_ENDIF(); 9456 IEM_MC_ADVANCE_RIP ();9456 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9457 9457 9458 9458 IEM_MC_END(); … … 9492 9492 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 9493 9493 IEM_MC_ENDIF(); 9494 IEM_MC_ADVANCE_RIP ();9494 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9495 9495 9496 9496 IEM_MC_END(); … … 9553 9553 IEM_MC_FETCH_FSW(u16Tmp); 9554 9554 IEM_MC_STORE_MEM_U16(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u16Tmp); 9555 IEM_MC_ADVANCE_RIP ();9555 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9556 9556 9557 9557 /** @todo Debug / drop a hint to the verifier that things may differ … … 9580 9580 IEM_MC_UPDATE_FPU_OPCODE_IP(); 9581 9581 9582 IEM_MC_ADVANCE_RIP ();9582 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9583 9583 IEM_MC_END(); 9584 9584 return VINF_SUCCESS; … … 9606 9606 IEM_MC_ENDIF(); 9607 9607 9608 IEM_MC_ADVANCE_RIP ();9608 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9609 9609 IEM_MC_END(); 9610 9610 return VINF_SUCCESS; … … 9755 9755 IEM_MC_FPU_STACK_UNDERFLOW(0); 9756 9756 IEM_MC_ENDIF(); 9757 IEM_MC_ADVANCE_RIP ();9757 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9758 9758 9759 9759 IEM_MC_END(); … … 9805 9805 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 9806 9806 IEM_MC_ENDIF(); 9807 IEM_MC_ADVANCE_RIP ();9807 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9808 9808 9809 9809 IEM_MC_END(); … … 9839 9839 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 9840 9840 IEM_MC_ENDIF(); 9841 IEM_MC_ADVANCE_RIP ();9841 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9842 9842 9843 9843 IEM_MC_END(); … … 9937 9937 IEM_MC_UPDATE_FPU_OPCODE_IP(); 9938 9938 9939 IEM_MC_ADVANCE_RIP ();9939 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9940 9940 IEM_MC_END(); 9941 9941 return VINF_SUCCESS; … … 9955 9955 IEM_MC_FETCH_FSW(u16Tmp); 9956 9956 IEM_MC_STORE_GREG_U16(X86_GREG_xAX, u16Tmp); 9957 IEM_MC_ADVANCE_RIP ();9957 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9958 9958 IEM_MC_END(); 9959 9959 return VINF_SUCCESS; … … 10003 10003 IEM_MC_FPU_STACK_PUSH_OVERFLOW_MEM_OP(pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 10004 10004 IEM_MC_ENDIF(); 10005 IEM_MC_ADVANCE_RIP ();10005 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10006 10006 10007 10007 IEM_MC_END(); … … 10039 10039 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10040 10040 IEM_MC_ENDIF(); 10041 IEM_MC_ADVANCE_RIP ();10041 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10042 10042 10043 10043 IEM_MC_END(); … … 10075 10075 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10076 10076 IEM_MC_ENDIF(); 10077 IEM_MC_ADVANCE_RIP ();10077 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10078 10078 10079 10079 IEM_MC_END(); … … 10111 10111 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10112 10112 IEM_MC_ENDIF(); 10113 IEM_MC_ADVANCE_RIP ();10113 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10114 10114 10115 10115 IEM_MC_END(); … … 10144 10144 IEM_MC_FPU_STACK_PUSH_OVERFLOW_MEM_OP(pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 10145 10145 IEM_MC_ENDIF(); 10146 IEM_MC_ADVANCE_RIP ();10146 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10147 10147 10148 10148 IEM_MC_END(); … … 10177 10177 IEM_MC_FPU_STACK_PUSH_OVERFLOW_MEM_OP(pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 10178 10178 IEM_MC_ENDIF(); 10179 IEM_MC_ADVANCE_RIP ();10179 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10180 10180 10181 10181 IEM_MC_END(); … … 10213 10213 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10214 10214 IEM_MC_ENDIF(); 10215 IEM_MC_ADVANCE_RIP ();10215 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10216 10216 10217 10217 IEM_MC_END(); … … 10249 10249 IEM_MC_FPU_STACK_UNDERFLOW_MEM_OP_THEN_POP(UINT8_MAX, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10250 10250 IEM_MC_ENDIF(); 10251 IEM_MC_ADVANCE_RIP ();10251 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10252 10252 10253 10253 IEM_MC_END(); … … 10315 10315 IEM_MC_REL_JMP_S8(i8Imm); 10316 10316 } IEM_MC_ELSE() { 10317 IEM_MC_ADVANCE_RIP ();10317 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10318 10318 } IEM_MC_ENDIF(); 10319 10319 IEM_MC_END(); … … 10326 10326 IEM_MC_REL_JMP_S8(i8Imm); 10327 10327 } IEM_MC_ELSE() { 10328 IEM_MC_ADVANCE_RIP ();10328 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10329 10329 } IEM_MC_ENDIF(); 10330 10330 IEM_MC_END(); … … 10337 10337 IEM_MC_REL_JMP_S8(i8Imm); 10338 10338 } IEM_MC_ELSE() { 10339 IEM_MC_ADVANCE_RIP ();10339 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10340 10340 } IEM_MC_ENDIF(); 10341 10341 IEM_MC_END(); … … 10365 10365 IEM_MC_REL_JMP_S8(i8Imm); 10366 10366 } IEM_MC_ELSE() { 10367 IEM_MC_ADVANCE_RIP ();10367 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10368 10368 } IEM_MC_ENDIF(); 10369 10369 IEM_MC_END(); … … 10376 10376 IEM_MC_REL_JMP_S8(i8Imm); 10377 10377 } IEM_MC_ELSE() { 10378 IEM_MC_ADVANCE_RIP ();10378 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10379 10379 } IEM_MC_ENDIF(); 10380 10380 IEM_MC_END(); … … 10387 10387 IEM_MC_REL_JMP_S8(i8Imm); 10388 10388 } IEM_MC_ELSE() { 10389 IEM_MC_ADVANCE_RIP ();10389 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10390 10390 } IEM_MC_ENDIF(); 10391 10391 IEM_MC_END(); … … 10422 10422 IEM_MC_BEGIN(0,0); 10423 10423 IEM_MC_STORE_GREG_U16_CONST(X86_GREG_xCX, 0); 10424 IEM_MC_ADVANCE_RIP ();10424 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10425 10425 IEM_MC_END(); 10426 10426 return VINF_SUCCESS; … … 10429 10429 IEM_MC_BEGIN(0,0); 10430 10430 IEM_MC_STORE_GREG_U32_CONST(X86_GREG_xCX, 0); 10431 IEM_MC_ADVANCE_RIP ();10431 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10432 10432 IEM_MC_END(); 10433 10433 return VINF_SUCCESS; … … 10436 10436 IEM_MC_BEGIN(0,0); 10437 10437 IEM_MC_STORE_GREG_U64_CONST(X86_GREG_xCX, 0); 10438 IEM_MC_ADVANCE_RIP ();10438 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10439 10439 IEM_MC_END(); 10440 10440 return VINF_SUCCESS; … … 10453 10453 IEM_MC_REL_JMP_S8(i8Imm); 10454 10454 } IEM_MC_ELSE() { 10455 IEM_MC_ADVANCE_RIP ();10455 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10456 10456 } IEM_MC_ENDIF(); 10457 10457 IEM_MC_END(); … … 10464 10464 IEM_MC_REL_JMP_S8(i8Imm); 10465 10465 } IEM_MC_ELSE() { 10466 IEM_MC_ADVANCE_RIP ();10466 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10467 10467 } IEM_MC_ENDIF(); 10468 10468 IEM_MC_END(); … … 10475 10475 IEM_MC_REL_JMP_S8(i8Imm); 10476 10476 } IEM_MC_ELSE() { 10477 IEM_MC_ADVANCE_RIP ();10477 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10478 10478 } IEM_MC_ENDIF(); 10479 10479 IEM_MC_END(); … … 10500 10500 IEM_MC_BEGIN(0,0); 10501 10501 IEM_MC_IF_CX_IS_NZ() { 10502 IEM_MC_ADVANCE_RIP ();10502 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10503 10503 } IEM_MC_ELSE() { 10504 10504 IEM_MC_REL_JMP_S8(i8Imm); … … 10510 10510 IEM_MC_BEGIN(0,0); 10511 10511 IEM_MC_IF_ECX_IS_NZ() { 10512 IEM_MC_ADVANCE_RIP ();10512 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10513 10513 } IEM_MC_ELSE() { 10514 10514 IEM_MC_REL_JMP_S8(i8Imm); … … 10520 10520 IEM_MC_BEGIN(0,0); 10521 10521 IEM_MC_IF_RCX_IS_NZ() { 10522 IEM_MC_ADVANCE_RIP ();10522 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10523 10523 } IEM_MC_ELSE() { 10524 10524 IEM_MC_REL_JMP_S8(i8Imm); … … 10797 10797 IEM_MC_BEGIN(0, 0); 10798 10798 IEM_MC_FLIP_EFL_BIT(X86_EFL_CF); 10799 IEM_MC_ADVANCE_RIP ();10799 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10800 10800 IEM_MC_END(); 10801 10801 return VINF_SUCCESS; … … 10820 10820 IEM_MC_REF_EFLAGS(pEFlags); 10821 10821 IEM_MC_CALL_VOID_AIMPL_2(pImpl->pfnNormalU8, pu8Dst, pEFlags); 10822 IEM_MC_ADVANCE_RIP ();10822 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10823 10823 IEM_MC_END(); 10824 10824 } … … 10841 10841 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Dst, IEM_ACCESS_DATA_RW); 10842 10842 IEM_MC_COMMIT_EFLAGS(EFlags); 10843 IEM_MC_ADVANCE_RIP ();10843 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10844 10844 IEM_MC_END(); 10845 10845 } … … 10879 10879 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); 10880 10880 IEM_MC_COMMIT_EFLAGS(EFlags); 10881 IEM_MC_ADVANCE_RIP ();10881 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10882 10882 IEM_MC_END(); 10883 10883 return VINF_SUCCESS; … … 10899 10899 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); 10900 10900 IEM_MC_COMMIT_EFLAGS(EFlags); 10901 IEM_MC_ADVANCE_RIP ();10901 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10902 10902 IEM_MC_END(); 10903 10903 return VINF_SUCCESS; … … 10919 10919 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); 10920 10920 IEM_MC_COMMIT_EFLAGS(EFlags); 10921 IEM_MC_ADVANCE_RIP ();10921 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10922 10922 IEM_MC_END(); 10923 10923 return VINF_SUCCESS; … … 10947 10947 IEM_MC_REF_EFLAGS(pEFlags); 10948 10948 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_test_u8, pu8Dst, u8Src, pEFlags); 10949 IEM_MC_ADVANCE_RIP ();10949 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10950 10950 IEM_MC_END(); 10951 10951 } … … 10969 10969 IEM_MC_MEM_COMMIT_AND_UNMAP(pu8Dst, IEM_ACCESS_DATA_R); 10970 10970 IEM_MC_COMMIT_EFLAGS(EFlags); 10971 IEM_MC_ADVANCE_RIP ();10971 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10972 10972 IEM_MC_END(); 10973 10973 } … … 10998 10998 IEM_MC_REF_EFLAGS(pEFlags); 10999 10999 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_test_u16, pu16Dst, u16Src, pEFlags); 11000 IEM_MC_ADVANCE_RIP ();11000 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11001 11001 IEM_MC_END(); 11002 11002 return VINF_SUCCESS; … … 11014 11014 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_test_u32, pu32Dst, u32Src, pEFlags); 11015 11015 /* No clearing the high dword here - test doesn't write back the result. */ 11016 IEM_MC_ADVANCE_RIP ();11016 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11017 11017 IEM_MC_END(); 11018 11018 return VINF_SUCCESS; … … 11029 11029 IEM_MC_REF_EFLAGS(pEFlags); 11030 11030 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_test_u64, pu64Dst, u64Src, pEFlags); 11031 IEM_MC_ADVANCE_RIP ();11031 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11032 11032 IEM_MC_END(); 11033 11033 return VINF_SUCCESS; … … 11060 11060 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_R); 11061 11061 IEM_MC_COMMIT_EFLAGS(EFlags); 11062 IEM_MC_ADVANCE_RIP ();11062 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11063 11063 IEM_MC_END(); 11064 11064 return VINF_SUCCESS; … … 11083 11083 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_R); 11084 11084 IEM_MC_COMMIT_EFLAGS(EFlags); 11085 IEM_MC_ADVANCE_RIP ();11085 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11086 11086 IEM_MC_END(); 11087 11087 return VINF_SUCCESS; … … 11106 11106 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_R); 11107 11107 IEM_MC_COMMIT_EFLAGS(EFlags); 11108 IEM_MC_ADVANCE_RIP ();11108 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11109 11109 IEM_MC_END(); 11110 11110 return VINF_SUCCESS; … … 11135 11135 IEM_MC_CALL_AIMPL_3(rc, pfnU8, pu16AX, u8Value, pEFlags); 11136 11136 IEM_MC_IF_LOCAL_IS_Z(rc) { 11137 IEM_MC_ADVANCE_RIP ();11137 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11138 11138 } IEM_MC_ELSE() { 11139 11139 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11159 11159 IEM_MC_CALL_AIMPL_3(rc, pfnU8, pu16AX, u8Value, pEFlags); 11160 11160 IEM_MC_IF_LOCAL_IS_Z(rc) { 11161 IEM_MC_ADVANCE_RIP ();11161 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11162 11162 } IEM_MC_ELSE() { 11163 11163 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11197 11197 IEM_MC_CALL_AIMPL_4(rc, pImpl->pfnU16, pu16AX, pu16DX, u16Value, pEFlags); 11198 11198 IEM_MC_IF_LOCAL_IS_Z(rc) { 11199 IEM_MC_ADVANCE_RIP ();11199 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11200 11200 } IEM_MC_ELSE() { 11201 11201 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11224 11224 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32AX); 11225 11225 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32DX); 11226 IEM_MC_ADVANCE_RIP ();11226 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11227 11227 } IEM_MC_ELSE() { 11228 11228 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11249 11249 IEM_MC_CALL_AIMPL_4(rc, pImpl->pfnU64, pu64AX, pu64DX, u64Value, pEFlags); 11250 11250 IEM_MC_IF_LOCAL_IS_Z(rc) { 11251 IEM_MC_ADVANCE_RIP ();11251 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11252 11252 } IEM_MC_ELSE() { 11253 11253 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11284 11284 IEM_MC_CALL_AIMPL_4(rc, pImpl->pfnU16, pu16AX, pu16DX, u16Value, pEFlags); 11285 11285 IEM_MC_IF_LOCAL_IS_Z(rc) { 11286 IEM_MC_ADVANCE_RIP ();11286 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11287 11287 } IEM_MC_ELSE() { 11288 11288 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11313 11313 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32AX); 11314 11314 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32DX); 11315 IEM_MC_ADVANCE_RIP ();11315 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11316 11316 } IEM_MC_ELSE() { 11317 11317 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11340 11340 IEM_MC_CALL_AIMPL_4(rc, pImpl->pfnU64, pu64AX, pu64DX, u64Value, pEFlags); 11341 11341 IEM_MC_IF_LOCAL_IS_Z(rc) { 11342 IEM_MC_ADVANCE_RIP ();11342 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11343 11343 } IEM_MC_ELSE() { 11344 11344 IEM_MC_RAISE_DIVIDE_ERROR(); … … 11443 11443 IEM_MC_BEGIN(0, 0); 11444 11444 IEM_MC_CLEAR_EFL_BIT(X86_EFL_CF); 11445 IEM_MC_ADVANCE_RIP ();11445 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11446 11446 IEM_MC_END(); 11447 11447 return VINF_SUCCESS; … … 11458 11458 IEM_MC_BEGIN(0, 0); 11459 11459 IEM_MC_SET_EFL_BIT(X86_EFL_CF); 11460 IEM_MC_ADVANCE_RIP ();11460 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11461 11461 IEM_MC_END(); 11462 11462 return VINF_SUCCESS; … … 11492 11492 IEM_MC_BEGIN(0, 0); 11493 11493 IEM_MC_CLEAR_EFL_BIT(X86_EFL_DF); 11494 IEM_MC_ADVANCE_RIP ();11494 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11495 11495 IEM_MC_END(); 11496 11496 return VINF_SUCCESS; … … 11507 11507 IEM_MC_BEGIN(0, 0); 11508 11508 IEM_MC_SET_EFL_BIT(X86_EFL_DF); 11509 IEM_MC_ADVANCE_RIP ();11509 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11510 11510 IEM_MC_END(); 11511 11511 return VINF_SUCCESS; … … 11819 11819 IEM_MC_FETCH_MEM_U16(u16Src, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 11820 11820 IEM_MC_PUSH_U16(u16Src); 11821 IEM_MC_ADVANCE_RIP ();11821 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11822 11822 IEM_MC_END(); 11823 11823 return VINF_SUCCESS; … … 11831 11831 IEM_MC_FETCH_MEM_U32(u32Src, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 11832 11832 IEM_MC_PUSH_U32(u32Src); 11833 IEM_MC_ADVANCE_RIP ();11833 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11834 11834 IEM_MC_END(); 11835 11835 return VINF_SUCCESS; … … 11843 11843 IEM_MC_FETCH_MEM_U64(u64Src, pVCpu->iem.s.iEffSeg, GCPtrEffSrc); 11844 11844 IEM_MC_PUSH_U64(u64Src); 11845 IEM_MC_ADVANCE_RIP ();11845 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11846 11846 IEM_MC_END(); 11847 11847 return VINF_SUCCESS; -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsThree0f38.cpp.h
r97153 r97356 63 63 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 64 64 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, puDst, puSrc); 65 IEM_MC_ADVANCE_RIP ();65 IEM_MC_ADVANCE_RIP_AND_FINISH(); 66 66 IEM_MC_END(); 67 67 } … … 86 86 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, puDst, puSrc); 87 87 88 IEM_MC_ADVANCE_RIP ();88 IEM_MC_ADVANCE_RIP_AND_FINISH(); 89 89 IEM_MC_END(); 90 90 } … … 120 120 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 121 121 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, puDst, puSrc); 122 IEM_MC_ADVANCE_RIP ();122 IEM_MC_ADVANCE_RIP_AND_FINISH(); 123 123 IEM_MC_END(); 124 124 } … … 143 143 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, puDst, puSrc); 144 144 145 IEM_MC_ADVANCE_RIP ();145 IEM_MC_ADVANCE_RIP_AND_FINISH(); 146 146 IEM_MC_END(); 147 147 } … … 180 180 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 181 181 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 182 IEM_MC_ADVANCE_RIP ();182 IEM_MC_ADVANCE_RIP_AND_FINISH(); 183 183 IEM_MC_END(); 184 184 } … … 203 203 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 204 204 205 IEM_MC_ADVANCE_RIP ();205 IEM_MC_ADVANCE_RIP_AND_FINISH(); 206 206 IEM_MC_END(); 207 207 } … … 237 237 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 238 238 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, puDst, puSrc); 239 IEM_MC_ADVANCE_RIP ();239 IEM_MC_ADVANCE_RIP_AND_FINISH(); 240 240 IEM_MC_END(); 241 241 } … … 260 260 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, puDst, puSrc); 261 261 262 IEM_MC_ADVANCE_RIP ();262 IEM_MC_ADVANCE_RIP_AND_FINISH(); 263 263 IEM_MC_END(); 264 264 } … … 297 297 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 298 298 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 299 IEM_MC_ADVANCE_RIP ();299 IEM_MC_ADVANCE_RIP_AND_FINISH(); 300 300 IEM_MC_END(); 301 301 } … … 320 320 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 321 321 322 IEM_MC_ADVANCE_RIP ();322 IEM_MC_ADVANCE_RIP_AND_FINISH(); 323 323 IEM_MC_END(); 324 324 } … … 603 603 iemAImpl_ ## a_Instr ## _u128_fallback), \ 604 604 puDst, puSrc, puMask); \ 605 IEM_MC_ADVANCE_RIP (); \605 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 606 606 IEM_MC_END(); \ 607 607 } \ … … 628 628 iemAImpl_ ## a_Instr ## _u128_fallback), \ 629 629 puDst, puSrc, puMask); \ 630 IEM_MC_ADVANCE_RIP (); \630 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 631 631 IEM_MC_END(); \ 632 632 } \ … … 695 695 IEM_MC_REF_EFLAGS(pEFlags); 696 696 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_ptest_u128, puSrc1, puSrc2, pEFlags); 697 IEM_MC_ADVANCE_RIP ();697 IEM_MC_ADVANCE_RIP_AND_FINISH(); 698 698 IEM_MC_END(); 699 699 } … … 720 720 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_ptest_u128, puSrc1, puSrc2, pEFlags); 721 721 722 IEM_MC_ADVANCE_RIP ();722 IEM_MC_ADVANCE_RIP_AND_FINISH(); 723 723 IEM_MC_END(); 724 724 } … … 821 821 iemAImpl_v ## a_Instr ## _u128_fallback), \ 822 822 puDst, uSrc); \ 823 IEM_MC_ADVANCE_RIP (); \823 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 824 824 IEM_MC_END(); \ 825 825 } \ … … 843 843 iemAImpl_v ## a_Instr ## _u128_fallback), \ 844 844 puDst, uSrc); \ 845 IEM_MC_ADVANCE_RIP (); \845 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 846 846 IEM_MC_END(); \ 847 847 } \ … … 954 954 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 955 955 956 IEM_MC_ADVANCE_RIP ();956 IEM_MC_ADVANCE_RIP_AND_FINISH(); 957 957 IEM_MC_END(); 958 958 return VINF_SUCCESS; … … 1543 1543 IEM_MC_CALL_VOID_AIMPL_2(IEM_SELECT_HOST_OR_FALLBACK(fSse42, iemAImpl_crc32_u8, iemAImpl_crc32_u8_fallback), puDst, uSrc); 1544 1544 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1545 IEM_MC_ADVANCE_RIP ();1545 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1546 1546 IEM_MC_END(); 1547 1547 } … … 1564 1564 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1565 1565 1566 IEM_MC_ADVANCE_RIP ();1566 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1567 1567 IEM_MC_END(); 1568 1568 } … … 1603 1603 puDst, uSrc); 1604 1604 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1605 IEM_MC_ADVANCE_RIP ();1605 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1606 1606 IEM_MC_END(); 1607 1607 return VINF_SUCCESS; … … 1616 1616 puDst, uSrc); 1617 1617 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1618 IEM_MC_ADVANCE_RIP ();1618 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1619 1619 IEM_MC_END(); 1620 1620 return VINF_SUCCESS; … … 1629 1629 puDst, uSrc); 1630 1630 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1631 IEM_MC_ADVANCE_RIP ();1631 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1632 1632 IEM_MC_END(); 1633 1633 return VINF_SUCCESS; … … 1658 1658 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1659 1659 1660 IEM_MC_ADVANCE_RIP ();1660 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1661 1661 IEM_MC_END(); 1662 1662 return VINF_SUCCESS; … … 1677 1677 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1678 1678 1679 IEM_MC_ADVANCE_RIP ();1679 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1680 1680 IEM_MC_END(); 1681 1681 return VINF_SUCCESS; … … 1696 1696 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(puDst); 1697 1697 1698 IEM_MC_ADVANCE_RIP ();1698 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1699 1699 IEM_MC_END(); 1700 1700 return VINF_SUCCESS; -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsThree0f3a.cpp.h
r97153 r97356 62 62 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 63 63 IEM_MC_CALL_VOID_AIMPL_3(pfnU128, puDst, puSrc, bImmArg); 64 IEM_MC_ADVANCE_RIP ();64 IEM_MC_ADVANCE_RIP_AND_FINISH(); 65 65 IEM_MC_END(); 66 66 } … … 87 87 IEM_MC_CALL_VOID_AIMPL_3(pfnU128, puDst, puSrc, bImmArg); 88 88 89 IEM_MC_ADVANCE_RIP ();89 IEM_MC_ADVANCE_RIP_AND_FINISH(); 90 90 IEM_MC_END(); 91 91 } … … 122 122 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 123 123 IEM_MC_CALL_VOID_AIMPL_3(pfnU128, puDst, puSrc, bImmArg); 124 IEM_MC_ADVANCE_RIP ();124 IEM_MC_ADVANCE_RIP_AND_FINISH(); 125 125 IEM_MC_END(); 126 126 } … … 147 147 IEM_MC_CALL_VOID_AIMPL_3(pfnU128, puDst, puSrc, bImmArg); 148 148 149 IEM_MC_ADVANCE_RIP ();149 IEM_MC_ADVANCE_RIP_AND_FINISH(); 150 150 IEM_MC_END(); 151 151 } … … 183 183 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 184 184 IEM_MC_CALL_VOID_AIMPL_3(pfnU128, puDst, puSrc, bImmArg); 185 IEM_MC_ADVANCE_RIP ();185 IEM_MC_ADVANCE_RIP_AND_FINISH(); 186 186 IEM_MC_END(); 187 187 } … … 208 208 IEM_MC_CALL_VOID_AIMPL_3(pfnU128, puDst, puSrc, bImmArg); 209 209 210 IEM_MC_ADVANCE_RIP ();210 IEM_MC_ADVANCE_RIP_AND_FINISH(); 211 211 IEM_MC_END(); 212 212 } … … 286 286 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 287 287 IEM_MC_FPU_TO_MMX_MODE(); 288 IEM_MC_ADVANCE_RIP ();288 IEM_MC_ADVANCE_RIP_AND_FINISH(); 289 289 IEM_MC_END(); 290 290 } … … 313 313 IEM_MC_FPU_TO_MMX_MODE(); 314 314 315 IEM_MC_ADVANCE_RIP ();315 IEM_MC_ADVANCE_RIP_AND_FINISH(); 316 316 IEM_MC_END(); 317 317 } … … 424 424 iemAImpl_pclmulqdq_u128_fallback), 425 425 puDst, puSrc, bImmArg); 426 IEM_MC_ADVANCE_RIP ();426 IEM_MC_ADVANCE_RIP_AND_FINISH(); 427 427 IEM_MC_END(); 428 428 } … … 452 452 puDst, puSrc, bImmArg); 453 453 454 IEM_MC_ADVANCE_RIP ();454 IEM_MC_ADVANCE_RIP_AND_FINISH(); 455 455 IEM_MC_END(); 456 456 } … … 526 526 pu32Ecx, pEFlags, pSrc, bImmArg); 527 527 /** @todo testcase: High dword of RCX cleared? */ 528 IEM_MC_ADVANCE_RIP ();528 IEM_MC_ADVANCE_RIP_AND_FINISH(); 529 529 IEM_MC_END(); 530 530 } … … 557 557 pu32Ecx, pEFlags, pSrc, bImmArg); 558 558 /** @todo testcase: High dword of RCX cleared? */ 559 IEM_MC_ADVANCE_RIP ();559 IEM_MC_ADVANCE_RIP_AND_FINISH(); 560 560 IEM_MC_END(); 561 561 } -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsTwoByte0f.cpp.h
r97348 r97356 63 63 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 64 64 65 IEM_MC_ADVANCE_RIP ();65 IEM_MC_ADVANCE_RIP_AND_FINISH(); 66 66 IEM_MC_END(); 67 67 } … … 89 89 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 90 90 91 IEM_MC_ADVANCE_RIP ();91 IEM_MC_ADVANCE_RIP_AND_FINISH(); 92 92 IEM_MC_END(); 93 93 } … … 126 126 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 127 127 128 IEM_MC_ADVANCE_RIP ();128 IEM_MC_ADVANCE_RIP_AND_FINISH(); 129 129 IEM_MC_END(); 130 130 } … … 152 152 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 153 153 154 IEM_MC_ADVANCE_RIP ();154 IEM_MC_ADVANCE_RIP_AND_FINISH(); 155 155 IEM_MC_END(); 156 156 } … … 187 187 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 188 188 189 IEM_MC_ADVANCE_RIP ();189 IEM_MC_ADVANCE_RIP_AND_FINISH(); 190 190 IEM_MC_END(); 191 191 } … … 213 213 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 214 214 215 IEM_MC_ADVANCE_RIP ();215 IEM_MC_ADVANCE_RIP_AND_FINISH(); 216 216 IEM_MC_END(); 217 217 } … … 251 251 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 252 252 253 IEM_MC_ADVANCE_RIP ();253 IEM_MC_ADVANCE_RIP_AND_FINISH(); 254 254 IEM_MC_END(); 255 255 } … … 277 277 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 278 278 279 IEM_MC_ADVANCE_RIP ();279 IEM_MC_ADVANCE_RIP_AND_FINISH(); 280 280 IEM_MC_END(); 281 281 } … … 312 312 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 313 313 314 IEM_MC_ADVANCE_RIP ();314 IEM_MC_ADVANCE_RIP_AND_FINISH(); 315 315 IEM_MC_END(); 316 316 } … … 338 338 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 339 339 340 IEM_MC_ADVANCE_RIP ();340 IEM_MC_ADVANCE_RIP_AND_FINISH(); 341 341 IEM_MC_END(); 342 342 } … … 371 371 IEM_MC_REF_XREG_U128_CONST(pSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 372 372 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, pDst, pSrc); 373 IEM_MC_ADVANCE_RIP ();373 IEM_MC_ADVANCE_RIP_AND_FINISH(); 374 374 IEM_MC_END(); 375 375 } … … 394 394 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, pDst, pSrc); 395 395 396 IEM_MC_ADVANCE_RIP ();396 IEM_MC_ADVANCE_RIP_AND_FINISH(); 397 397 IEM_MC_END(); 398 398 } … … 427 427 IEM_MC_REF_XREG_U128_CONST(pSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 428 428 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, pDst, pSrc); 429 IEM_MC_ADVANCE_RIP ();429 IEM_MC_ADVANCE_RIP_AND_FINISH(); 430 430 IEM_MC_END(); 431 431 } … … 450 450 IEM_MC_CALL_SSE_AIMPL_2(pfnU128, pDst, pSrc); 451 451 452 IEM_MC_ADVANCE_RIP ();452 IEM_MC_ADVANCE_RIP_AND_FINISH(); 453 453 IEM_MC_END(); 454 454 } … … 486 486 IEM_MC_REF_XREG_U128_CONST(pSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 487 487 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, pDst, pSrc); 488 IEM_MC_ADVANCE_RIP ();488 IEM_MC_ADVANCE_RIP_AND_FINISH(); 489 489 IEM_MC_END(); 490 490 } … … 509 509 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, pDst, pSrc); 510 510 511 IEM_MC_ADVANCE_RIP ();511 IEM_MC_ADVANCE_RIP_AND_FINISH(); 512 512 IEM_MC_END(); 513 513 } … … 544 544 IEM_MC_MODIFIED_MREG_BY_REF(puDst); 545 545 546 IEM_MC_ADVANCE_RIP ();546 IEM_MC_ADVANCE_RIP_AND_FINISH(); 547 547 IEM_MC_END(); 548 548 } … … 570 570 IEM_MC_MODIFIED_MREG_BY_REF(puDst); 571 571 572 IEM_MC_ADVANCE_RIP ();572 IEM_MC_ADVANCE_RIP_AND_FINISH(); 573 573 IEM_MC_END(); 574 574 } … … 603 603 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 604 604 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 605 IEM_MC_ADVANCE_RIP ();605 IEM_MC_ADVANCE_RIP_AND_FINISH(); 606 606 IEM_MC_END(); 607 607 } … … 631 631 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 632 632 633 IEM_MC_ADVANCE_RIP ();633 IEM_MC_ADVANCE_RIP_AND_FINISH(); 634 634 IEM_MC_END(); 635 635 } … … 664 664 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 665 665 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 666 IEM_MC_ADVANCE_RIP ();666 IEM_MC_ADVANCE_RIP_AND_FINISH(); 667 667 IEM_MC_END(); 668 668 } … … 692 692 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 693 693 694 IEM_MC_ADVANCE_RIP ();694 IEM_MC_ADVANCE_RIP_AND_FINISH(); 695 695 IEM_MC_END(); 696 696 } … … 729 729 IEM_MC_MODIFIED_MREG_BY_REF(puDst); 730 730 731 IEM_MC_ADVANCE_RIP ();731 IEM_MC_ADVANCE_RIP_AND_FINISH(); 732 732 IEM_MC_END(); 733 733 } … … 755 755 IEM_MC_MODIFIED_MREG_BY_REF(puDst); 756 756 757 IEM_MC_ADVANCE_RIP ();757 IEM_MC_ADVANCE_RIP_AND_FINISH(); 758 758 IEM_MC_END(); 759 759 } … … 788 788 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 789 789 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 790 IEM_MC_ADVANCE_RIP ();790 IEM_MC_ADVANCE_RIP_AND_FINISH(); 791 791 IEM_MC_END(); 792 792 } … … 816 816 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 817 817 818 IEM_MC_ADVANCE_RIP ();818 IEM_MC_ADVANCE_RIP_AND_FINISH(); 819 819 IEM_MC_END(); 820 820 } … … 854 854 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 855 855 856 IEM_MC_ADVANCE_RIP ();856 IEM_MC_ADVANCE_RIP_AND_FINISH(); 857 857 IEM_MC_END(); 858 858 } … … 881 881 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 882 882 883 IEM_MC_ADVANCE_RIP ();883 IEM_MC_ADVANCE_RIP_AND_FINISH(); 884 884 IEM_MC_END(); 885 885 } … … 919 919 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 920 920 921 IEM_MC_ADVANCE_RIP ();921 IEM_MC_ADVANCE_RIP_AND_FINISH(); 922 922 IEM_MC_END(); 923 923 } … … 946 946 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 947 947 948 IEM_MC_ADVANCE_RIP ();948 IEM_MC_ADVANCE_RIP_AND_FINISH(); 949 949 IEM_MC_END(); 950 950 } … … 984 984 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 985 985 986 IEM_MC_ADVANCE_RIP ();986 IEM_MC_ADVANCE_RIP_AND_FINISH(); 987 987 IEM_MC_END(); 988 988 } … … 1011 1011 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 1012 1012 1013 IEM_MC_ADVANCE_RIP ();1013 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1014 1014 IEM_MC_END(); 1015 1015 } … … 1049 1049 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 1050 1050 1051 IEM_MC_ADVANCE_RIP ();1051 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1052 1052 IEM_MC_END(); 1053 1053 } … … 1076 1076 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 1077 1077 1078 IEM_MC_ADVANCE_RIP ();1078 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1079 1079 IEM_MC_END(); 1080 1080 } … … 1109 1109 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 1110 1110 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 1111 IEM_MC_ADVANCE_RIP ();1111 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1112 1112 IEM_MC_END(); 1113 1113 } … … 1137 1137 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, puDst, puSrc); 1138 1138 1139 IEM_MC_ADVANCE_RIP ();1139 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1140 1140 IEM_MC_END(); 1141 1141 } … … 1175 1175 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 1176 1176 1177 IEM_MC_ADVANCE_RIP ();1177 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1178 1178 IEM_MC_END(); 1179 1179 } … … 1202 1202 IEM_MC_MAYBE_RAISE_SSE_AVX_SIMD_FP_OR_UD_XCPT(); 1203 1203 1204 IEM_MC_ADVANCE_RIP ();1204 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1205 1205 IEM_MC_END(); 1206 1206 } … … 2075 2075 /* Currently a NOP. */ 2076 2076 NOREF(GCPtrEffSrc); 2077 IEM_MC_ADVANCE_RIP ();2077 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2078 2078 IEM_MC_END(); 2079 2079 return VINF_SUCCESS; … … 2092 2092 IEM_MC_ACTUALIZE_FPU_STATE_FOR_CHANGE(); 2093 2093 IEM_MC_FPU_FROM_MMX_MODE(); 2094 IEM_MC_ADVANCE_RIP ();2094 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2095 2095 IEM_MC_END(); 2096 2096 return VINF_SUCCESS; … … 2142 2142 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), 2143 2143 IEM_GET_MODRM_RM(pVCpu, bRm)); 2144 IEM_MC_ADVANCE_RIP ();2144 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2145 2145 IEM_MC_END(); 2146 2146 } … … 2162 2162 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2163 2163 2164 IEM_MC_ADVANCE_RIP ();2164 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2165 2165 IEM_MC_END(); 2166 2166 } … … 2194 2194 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), 2195 2195 IEM_GET_MODRM_RM(pVCpu, bRm)); 2196 IEM_MC_ADVANCE_RIP ();2196 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2197 2197 IEM_MC_END(); 2198 2198 } … … 2214 2214 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2215 2215 2216 IEM_MC_ADVANCE_RIP ();2216 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2217 2217 IEM_MC_END(); 2218 2218 } … … 2248 2248 IEM_MC_STORE_XREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2249 2249 2250 IEM_MC_ADVANCE_RIP ();2250 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2251 2251 IEM_MC_END(); 2252 2252 } … … 2268 2268 IEM_MC_STORE_XREG_U32_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2269 2269 2270 IEM_MC_ADVANCE_RIP ();2270 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2271 2271 IEM_MC_END(); 2272 2272 } … … 2302 2302 IEM_MC_STORE_XREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2303 2303 2304 IEM_MC_ADVANCE_RIP ();2304 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2305 2305 IEM_MC_END(); 2306 2306 } … … 2322 2322 IEM_MC_STORE_XREG_U64_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2323 2323 2324 IEM_MC_ADVANCE_RIP ();2324 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2325 2325 IEM_MC_END(); 2326 2326 } … … 2353 2353 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_RM(pVCpu, bRm), 2354 2354 IEM_GET_MODRM_REG(pVCpu, bRm)); 2355 IEM_MC_ADVANCE_RIP ();2355 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2356 2356 IEM_MC_END(); 2357 2357 } … … 2373 2373 IEM_MC_STORE_MEM_U128(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2374 2374 2375 IEM_MC_ADVANCE_RIP ();2375 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2376 2376 IEM_MC_END(); 2377 2377 } … … 2404 2404 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_RM(pVCpu, bRm), 2405 2405 IEM_GET_MODRM_REG(pVCpu, bRm)); 2406 IEM_MC_ADVANCE_RIP ();2406 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2407 2407 IEM_MC_END(); 2408 2408 } … … 2424 2424 IEM_MC_STORE_MEM_U128(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2425 2425 2426 IEM_MC_ADVANCE_RIP ();2426 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2427 2427 IEM_MC_END(); 2428 2428 } … … 2458 2458 IEM_MC_STORE_XREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), uSrc); 2459 2459 2460 IEM_MC_ADVANCE_RIP ();2460 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2461 2461 IEM_MC_END(); 2462 2462 } … … 2478 2478 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2479 2479 2480 IEM_MC_ADVANCE_RIP ();2480 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2481 2481 IEM_MC_END(); 2482 2482 } … … 2512 2512 IEM_MC_STORE_XREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), uSrc); 2513 2513 2514 IEM_MC_ADVANCE_RIP ();2514 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2515 2515 IEM_MC_END(); 2516 2516 } … … 2532 2532 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2533 2533 2534 IEM_MC_ADVANCE_RIP ();2534 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2535 2535 IEM_MC_END(); 2536 2536 } … … 2565 2565 IEM_MC_STORE_XREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2566 2566 2567 IEM_MC_ADVANCE_RIP ();2567 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2568 2568 IEM_MC_END(); 2569 2569 } … … 2596 2596 IEM_MC_STORE_XREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2597 2597 2598 IEM_MC_ADVANCE_RIP ();2598 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2599 2599 IEM_MC_END(); 2600 2600 } … … 2632 2632 IEM_MC_STORE_XREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2633 2633 2634 IEM_MC_ADVANCE_RIP ();2634 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2635 2635 IEM_MC_END(); 2636 2636 return VINF_SUCCESS; … … 2681 2681 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movsldup, puDst, puSrc); 2682 2682 2683 IEM_MC_ADVANCE_RIP ();2683 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2684 2684 IEM_MC_END(); 2685 2685 } … … 2704 2704 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movsldup, puDst, puSrc); 2705 2705 2706 IEM_MC_ADVANCE_RIP ();2706 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2707 2707 IEM_MC_END(); 2708 2708 } … … 2741 2741 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movddup, puDst, uSrc); 2742 2742 2743 IEM_MC_ADVANCE_RIP ();2743 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2744 2744 IEM_MC_END(); 2745 2745 } … … 2763 2763 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movddup, puDst, uSrc); 2764 2764 2765 IEM_MC_ADVANCE_RIP ();2765 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2766 2766 IEM_MC_END(); 2767 2767 } … … 2799 2799 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2800 2800 2801 IEM_MC_ADVANCE_RIP ();2801 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2802 2802 IEM_MC_END(); 2803 2803 return VINF_SUCCESS; … … 2846 2846 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2847 2847 2848 IEM_MC_ADVANCE_RIP ();2848 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2849 2849 IEM_MC_END(); 2850 2850 return VINF_SUCCESS; … … 2988 2988 IEM_MC_STORE_XREG_HI_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 2989 2989 2990 IEM_MC_ADVANCE_RIP ();2990 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2991 2991 IEM_MC_END(); 2992 2992 } … … 3019 3019 IEM_MC_STORE_XREG_HI_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 3020 3020 3021 IEM_MC_ADVANCE_RIP ();3021 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3022 3022 IEM_MC_END(); 3023 3023 } … … 3054 3054 IEM_MC_STORE_XREG_HI_U64(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 3055 3055 3056 IEM_MC_ADVANCE_RIP ();3056 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3057 3057 IEM_MC_END(); 3058 3058 return VINF_SUCCESS; … … 3103 3103 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movshdup, puDst, puSrc); 3104 3104 3105 IEM_MC_ADVANCE_RIP ();3105 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3106 3106 IEM_MC_END(); 3107 3107 } … … 3126 3126 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movshdup, puDst, puSrc); 3127 3127 3128 IEM_MC_ADVANCE_RIP ();3128 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3129 3129 IEM_MC_END(); 3130 3130 } … … 3173 3173 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 3174 3174 3175 IEM_MC_ADVANCE_RIP ();3175 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3176 3176 IEM_MC_END(); 3177 3177 return VINF_SUCCESS; … … 3221 3221 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 3222 3222 3223 IEM_MC_ADVANCE_RIP ();3223 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3224 3224 IEM_MC_END(); 3225 3225 return VINF_SUCCESS; … … 3287 3287 /* Currently a NOP. */ 3288 3288 NOREF(GCPtrEffSrc); 3289 IEM_MC_ADVANCE_RIP ();3289 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3290 3290 IEM_MC_END(); 3291 3291 return VINF_SUCCESS; … … 3305 3305 IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); 3306 3306 IEM_MC_BEGIN(0, 0); 3307 IEM_MC_ADVANCE_RIP ();3307 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3308 3308 IEM_MC_END(); 3309 3309 } … … 3316 3316 /* Currently a NOP. */ 3317 3317 NOREF(GCPtrEffSrc); 3318 IEM_MC_ADVANCE_RIP ();3318 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3319 3319 IEM_MC_END(); 3320 3320 } … … 3473 3473 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), 3474 3474 IEM_GET_MODRM_RM(pVCpu, bRm)); 3475 IEM_MC_ADVANCE_RIP ();3475 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3476 3476 IEM_MC_END(); 3477 3477 } … … 3493 3493 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 3494 3494 3495 IEM_MC_ADVANCE_RIP ();3495 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3496 3496 IEM_MC_END(); 3497 3497 } … … 3523 3523 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), 3524 3524 IEM_GET_MODRM_RM(pVCpu, bRm)); 3525 IEM_MC_ADVANCE_RIP ();3525 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3526 3526 IEM_MC_END(); 3527 3527 } … … 3543 3543 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 3544 3544 3545 IEM_MC_ADVANCE_RIP ();3545 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3546 3546 IEM_MC_END(); 3547 3547 } … … 3576 3576 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_RM(pVCpu, bRm), 3577 3577 IEM_GET_MODRM_REG(pVCpu, bRm)); 3578 IEM_MC_ADVANCE_RIP ();3578 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3579 3579 IEM_MC_END(); 3580 3580 } … … 3596 3596 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 3597 3597 3598 IEM_MC_ADVANCE_RIP ();3598 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3599 3599 IEM_MC_END(); 3600 3600 } … … 3626 3626 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_RM(pVCpu, bRm), 3627 3627 IEM_GET_MODRM_REG(pVCpu, bRm)); 3628 IEM_MC_ADVANCE_RIP ();3628 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3629 3629 IEM_MC_END(); 3630 3630 } … … 3646 3646 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 3647 3647 3648 IEM_MC_ADVANCE_RIP ();3648 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3649 3649 IEM_MC_END(); 3650 3650 } … … 3688 3688 IEM_MC_ENDIF(); 3689 3689 3690 IEM_MC_ADVANCE_RIP ();3690 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3691 3691 IEM_MC_END(); 3692 3692 } … … 3719 3719 IEM_MC_ENDIF(); 3720 3720 3721 IEM_MC_ADVANCE_RIP ();3721 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3722 3722 IEM_MC_END(); 3723 3723 } … … 3757 3757 IEM_MC_ENDIF(); 3758 3758 3759 IEM_MC_ADVANCE_RIP ();3759 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3760 3760 IEM_MC_END(); 3761 3761 } … … 3788 3788 IEM_MC_ENDIF(); 3789 3789 3790 IEM_MC_ADVANCE_RIP ();3790 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3791 3791 IEM_MC_END(); 3792 3792 } … … 3826 3826 IEM_MC_ENDIF(); 3827 3827 3828 IEM_MC_ADVANCE_RIP ();3828 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3829 3829 IEM_MC_END(); 3830 3830 } … … 3855 3855 IEM_MC_ENDIF(); 3856 3856 3857 IEM_MC_ADVANCE_RIP ();3857 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3858 3858 IEM_MC_END(); 3859 3859 } … … 3884 3884 IEM_MC_ENDIF(); 3885 3885 3886 IEM_MC_ADVANCE_RIP ();3886 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3887 3887 IEM_MC_END(); 3888 3888 } … … 3913 3913 IEM_MC_ENDIF(); 3914 3914 3915 IEM_MC_ADVANCE_RIP ();3915 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3916 3916 IEM_MC_END(); 3917 3917 } … … 3952 3952 IEM_MC_ENDIF(); 3953 3953 3954 IEM_MC_ADVANCE_RIP ();3954 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3955 3955 IEM_MC_END(); 3956 3956 } … … 3981 3981 IEM_MC_ENDIF(); 3982 3982 3983 IEM_MC_ADVANCE_RIP ();3983 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3984 3984 IEM_MC_END(); 3985 3985 } … … 4010 4010 IEM_MC_ENDIF(); 4011 4011 4012 IEM_MC_ADVANCE_RIP ();4012 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4013 4013 IEM_MC_END(); 4014 4014 } … … 4039 4039 IEM_MC_ENDIF(); 4040 4040 4041 IEM_MC_ADVANCE_RIP ();4041 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4042 4042 IEM_MC_END(); 4043 4043 } … … 4078 4078 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 4079 4079 4080 IEM_MC_ADVANCE_RIP ();4080 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4081 4081 IEM_MC_END(); 4082 4082 } … … 4118 4118 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 4119 4119 4120 IEM_MC_ADVANCE_RIP ();4120 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4121 4121 IEM_MC_END(); 4122 4122 } … … 4161 4161 IEM_MC_ENDIF(); 4162 4162 4163 IEM_MC_ADVANCE_RIP ();4163 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4164 4164 IEM_MC_END(); 4165 4165 } … … 4192 4192 IEM_MC_ENDIF(); 4193 4193 4194 IEM_MC_ADVANCE_RIP ();4194 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4195 4195 IEM_MC_END(); 4196 4196 } … … 4230 4230 IEM_MC_ENDIF(); 4231 4231 4232 IEM_MC_ADVANCE_RIP ();4232 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4233 4233 IEM_MC_END(); 4234 4234 } … … 4263 4263 IEM_MC_ENDIF(); 4264 4264 4265 IEM_MC_ADVANCE_RIP ();4265 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4266 4266 IEM_MC_END(); 4267 4267 } … … 4301 4301 IEM_MC_ENDIF(); 4302 4302 4303 IEM_MC_ADVANCE_RIP ();4303 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4304 4304 IEM_MC_END(); 4305 4305 } … … 4330 4330 IEM_MC_ENDIF(); 4331 4331 4332 IEM_MC_ADVANCE_RIP ();4332 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4333 4333 IEM_MC_END(); 4334 4334 } … … 4359 4359 IEM_MC_ENDIF(); 4360 4360 4361 IEM_MC_ADVANCE_RIP ();4361 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4362 4362 IEM_MC_END(); 4363 4363 } … … 4388 4388 IEM_MC_ENDIF(); 4389 4389 4390 IEM_MC_ADVANCE_RIP ();4390 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4391 4391 IEM_MC_END(); 4392 4392 } … … 4427 4427 IEM_MC_ENDIF(); 4428 4428 4429 IEM_MC_ADVANCE_RIP ();4429 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4430 4430 IEM_MC_END(); 4431 4431 } … … 4456 4456 IEM_MC_ENDIF(); 4457 4457 4458 IEM_MC_ADVANCE_RIP ();4458 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4459 4459 IEM_MC_END(); 4460 4460 } … … 4485 4485 IEM_MC_ENDIF(); 4486 4486 4487 IEM_MC_ADVANCE_RIP ();4487 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4488 4488 IEM_MC_END(); 4489 4489 } … … 4514 4514 IEM_MC_ENDIF(); 4515 4515 4516 IEM_MC_ADVANCE_RIP ();4516 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4517 4517 IEM_MC_END(); 4518 4518 } … … 4553 4553 IEM_MC_ENDIF(); 4554 4554 4555 IEM_MC_ADVANCE_RIP ();4555 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4556 4556 IEM_MC_END(); 4557 4557 } … … 4584 4584 IEM_MC_ENDIF(); 4585 4585 4586 IEM_MC_ADVANCE_RIP ();4586 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4587 4587 IEM_MC_END(); 4588 4588 } … … 4622 4622 IEM_MC_ENDIF(); 4623 4623 4624 IEM_MC_ADVANCE_RIP ();4624 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4625 4625 IEM_MC_END(); 4626 4626 } … … 4655 4655 IEM_MC_ENDIF(); 4656 4656 4657 IEM_MC_ADVANCE_RIP ();4657 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4658 4658 IEM_MC_END(); 4659 4659 } … … 4693 4693 IEM_MC_ENDIF(); 4694 4694 4695 IEM_MC_ADVANCE_RIP ();4695 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4696 4696 IEM_MC_END(); 4697 4697 } … … 4722 4722 IEM_MC_ENDIF(); 4723 4723 4724 IEM_MC_ADVANCE_RIP ();4724 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4725 4725 IEM_MC_END(); 4726 4726 } … … 4751 4751 IEM_MC_ENDIF(); 4752 4752 4753 IEM_MC_ADVANCE_RIP ();4753 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4754 4754 IEM_MC_END(); 4755 4755 } … … 4780 4780 IEM_MC_ENDIF(); 4781 4781 4782 IEM_MC_ADVANCE_RIP ();4782 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4783 4783 IEM_MC_END(); 4784 4784 } … … 4819 4819 IEM_MC_ENDIF(); 4820 4820 4821 IEM_MC_ADVANCE_RIP ();4821 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4822 4822 IEM_MC_END(); 4823 4823 } … … 4848 4848 IEM_MC_ENDIF(); 4849 4849 4850 IEM_MC_ADVANCE_RIP ();4850 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4851 4851 IEM_MC_END(); 4852 4852 } … … 4877 4877 IEM_MC_ENDIF(); 4878 4878 4879 IEM_MC_ADVANCE_RIP ();4879 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4880 4880 IEM_MC_END(); 4881 4881 } … … 4906 4906 IEM_MC_ENDIF(); 4907 4907 4908 IEM_MC_ADVANCE_RIP ();4908 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4909 4909 IEM_MC_END(); 4910 4910 } … … 4944 4944 IEM_MC_ENDIF(); 4945 4945 4946 IEM_MC_ADVANCE_RIP ();4946 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4947 4947 IEM_MC_END(); 4948 4948 } … … 4977 4977 IEM_MC_ENDIF(); 4978 4978 4979 IEM_MC_ADVANCE_RIP ();4979 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4980 4980 IEM_MC_END(); 4981 4981 } … … 5014 5014 IEM_MC_ENDIF(); 5015 5015 5016 IEM_MC_ADVANCE_RIP ();5016 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5017 5017 IEM_MC_END(); 5018 5018 } … … 5047 5047 IEM_MC_ENDIF(); 5048 5048 5049 IEM_MC_ADVANCE_RIP ();5049 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5050 5050 IEM_MC_END(); 5051 5051 } … … 5088 5088 IEM_MC_ENDIF(); 5089 5089 5090 IEM_MC_ADVANCE_RIP ();5090 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5091 5091 IEM_MC_END(); 5092 5092 } … … 5121 5121 IEM_MC_ENDIF(); 5122 5122 5123 IEM_MC_ADVANCE_RIP ();5123 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5124 5124 IEM_MC_END(); 5125 5125 } … … 5158 5158 IEM_MC_ENDIF(); 5159 5159 5160 IEM_MC_ADVANCE_RIP ();5160 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5161 5161 IEM_MC_END(); 5162 5162 } … … 5191 5191 IEM_MC_ENDIF(); 5192 5192 5193 IEM_MC_ADVANCE_RIP ();5193 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5194 5194 IEM_MC_END(); 5195 5195 } … … 5304 5304 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Tmp); \ 5305 5305 } IEM_MC_ENDIF(); \ 5306 IEM_MC_ADVANCE_RIP (); \5306 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5307 5307 IEM_MC_END(); \ 5308 5308 return VINF_SUCCESS; \ … … 5317 5317 IEM_MC_CLEAR_HIGH_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm)); \ 5318 5318 } IEM_MC_ENDIF(); \ 5319 IEM_MC_ADVANCE_RIP (); \5319 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5320 5320 IEM_MC_END(); \ 5321 5321 return VINF_SUCCESS; \ … … 5328 5328 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); \ 5329 5329 } IEM_MC_ENDIF(); \ 5330 IEM_MC_ADVANCE_RIP (); \5330 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5331 5331 IEM_MC_END(); \ 5332 5332 return VINF_SUCCESS; \ … … 5348 5348 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Tmp); \ 5349 5349 } IEM_MC_ENDIF(); \ 5350 IEM_MC_ADVANCE_RIP (); \5350 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5351 5351 IEM_MC_END(); \ 5352 5352 return VINF_SUCCESS; \ … … 5363 5363 IEM_MC_CLEAR_HIGH_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm)); \ 5364 5364 } IEM_MC_ENDIF(); \ 5365 IEM_MC_ADVANCE_RIP (); \5365 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5366 5366 IEM_MC_END(); \ 5367 5367 return VINF_SUCCESS; \ … … 5376 5376 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); \ 5377 5377 } IEM_MC_ENDIF(); \ 5378 IEM_MC_ADVANCE_RIP (); \5378 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 5379 5379 IEM_MC_END(); \ 5380 5380 return VINF_SUCCESS; \ … … 5535 5535 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movmskps_u128, pu8Dst, puSrc); 5536 5536 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u8Dst); 5537 IEM_MC_ADVANCE_RIP ();5537 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5538 5538 IEM_MC_END(); 5539 5539 return VINF_SUCCESS; … … 5565 5565 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_movmskpd_u128, pu8Dst, puSrc); 5566 5566 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u8Dst); 5567 IEM_MC_ADVANCE_RIP ();5567 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5568 5568 IEM_MC_END(); 5569 5569 return VINF_SUCCESS; … … 6256 6256 IEM_MC_STORE_MREG_U64(IEM_GET_MODRM_REG_8(bRm), u64Tmp); 6257 6257 6258 IEM_MC_ADVANCE_RIP ();6258 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6259 6259 IEM_MC_END(); 6260 6260 } … … 6275 6275 IEM_MC_STORE_MREG_U64(IEM_GET_MODRM_REG_8(bRm), u64Tmp); 6276 6276 6277 IEM_MC_ADVANCE_RIP ();6277 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6278 6278 IEM_MC_END(); 6279 6279 } … … 6308 6308 IEM_MC_STORE_MREG_U64(IEM_GET_MODRM_REG_8(bRm), u64Tmp); 6309 6309 6310 IEM_MC_ADVANCE_RIP ();6310 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6311 6311 IEM_MC_END(); 6312 6312 } … … 6327 6327 IEM_MC_STORE_MREG_U32_ZX_U64(IEM_GET_MODRM_REG_8(bRm), u32Tmp); 6328 6328 6329 IEM_MC_ADVANCE_RIP ();6329 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6330 6330 IEM_MC_END(); 6331 6331 } … … 6363 6363 IEM_MC_STORE_XREG_U64_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 6364 6364 6365 IEM_MC_ADVANCE_RIP ();6365 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6366 6366 IEM_MC_END(); 6367 6367 } … … 6381 6381 IEM_MC_STORE_XREG_U64_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 6382 6382 6383 IEM_MC_ADVANCE_RIP ();6383 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6384 6384 IEM_MC_END(); 6385 6385 } … … 6413 6413 IEM_MC_STORE_XREG_U32_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 6414 6414 6415 IEM_MC_ADVANCE_RIP ();6415 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6416 6416 IEM_MC_END(); 6417 6417 } … … 6431 6431 IEM_MC_STORE_XREG_U32_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 6432 6432 6433 IEM_MC_ADVANCE_RIP ();6433 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6434 6434 IEM_MC_END(); 6435 6435 } … … 6470 6470 IEM_MC_STORE_MREG_U64(IEM_GET_MODRM_REG_8(bRm), u64Tmp); 6471 6471 6472 IEM_MC_ADVANCE_RIP ();6472 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6473 6473 IEM_MC_END(); 6474 6474 } … … 6491 6491 IEM_MC_STORE_MREG_U64(IEM_GET_MODRM_REG_8(bRm), u64Tmp); 6492 6492 6493 IEM_MC_ADVANCE_RIP ();6493 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6494 6494 IEM_MC_END(); 6495 6495 } … … 6523 6523 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), 6524 6524 IEM_GET_MODRM_RM(pVCpu, bRm)); 6525 IEM_MC_ADVANCE_RIP ();6525 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6526 6526 IEM_MC_END(); 6527 6527 } … … 6543 6543 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), u128Tmp); 6544 6544 6545 IEM_MC_ADVANCE_RIP ();6545 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6546 6546 IEM_MC_END(); 6547 6547 } … … 6573 6573 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), 6574 6574 IEM_GET_MODRM_RM(pVCpu, bRm)); 6575 IEM_MC_ADVANCE_RIP ();6575 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6576 6576 IEM_MC_END(); 6577 6577 } … … 6592 6592 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), u128Tmp); 6593 6593 6594 IEM_MC_ADVANCE_RIP ();6594 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6595 6595 IEM_MC_END(); 6596 6596 } … … 6625 6625 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 6626 6626 6627 IEM_MC_ADVANCE_RIP ();6627 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6628 6628 IEM_MC_END(); 6629 6629 } … … 6653 6653 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 6654 6654 6655 IEM_MC_ADVANCE_RIP ();6655 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6656 6656 IEM_MC_END(); 6657 6657 } … … 6689 6689 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 6690 6690 IEM_MC_CALL_VOID_AIMPL_3(pfnWorker, puDst, puSrc, bEvilArg); 6691 IEM_MC_ADVANCE_RIP ();6691 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6692 6692 IEM_MC_END(); 6693 6693 } … … 6714 6714 IEM_MC_CALL_VOID_AIMPL_3(pfnWorker, puDst, puSrc, bEvilArg); 6715 6715 6716 IEM_MC_ADVANCE_RIP ();6716 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6717 6717 IEM_MC_END(); 6718 6718 } … … 6778 6778 IEM_MC_MODIFIED_MREG_BY_REF(pDst); 6779 6779 6780 IEM_MC_ADVANCE_RIP ();6780 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6781 6781 IEM_MC_END(); 6782 6782 } … … 6821 6821 IEM_MC_REF_XREG_U128(pDst, IEM_GET_MODRM_RM(pVCpu, bRm)); 6822 6822 IEM_MC_CALL_VOID_AIMPL_2(pfnU128, pDst, bShiftArg); 6823 IEM_MC_ADVANCE_RIP ();6823 IEM_MC_ADVANCE_RIP_AND_FINISH(); 6824 6824 IEM_MC_END(); 6825 6825 } … … 7134 7134 IEM_MC_ACTUALIZE_FPU_STATE_FOR_CHANGE(); 7135 7135 IEM_MC_FPU_FROM_MMX_MODE(); 7136 IEM_MC_ADVANCE_RIP ();7136 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7137 7137 IEM_MC_END(); 7138 7138 return VINF_SUCCESS; … … 7387 7387 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Tmp); 7388 7388 7389 IEM_MC_ADVANCE_RIP ();7389 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7390 7390 IEM_MC_END(); 7391 7391 } … … 7406 7406 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u64Tmp); 7407 7407 7408 IEM_MC_ADVANCE_RIP ();7408 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7409 7409 IEM_MC_END(); 7410 7410 } … … 7439 7439 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Tmp); 7440 7440 7441 IEM_MC_ADVANCE_RIP ();7441 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7442 7442 IEM_MC_END(); 7443 7443 } … … 7458 7458 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u32Tmp); 7459 7459 7460 IEM_MC_ADVANCE_RIP ();7460 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7461 7461 IEM_MC_END(); 7462 7462 } … … 7496 7496 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Tmp); 7497 7497 7498 IEM_MC_ADVANCE_RIP ();7498 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7499 7499 IEM_MC_END(); 7500 7500 } … … 7514 7514 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u64Tmp); 7515 7515 7516 IEM_MC_ADVANCE_RIP ();7516 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7517 7517 IEM_MC_END(); 7518 7518 } … … 7546 7546 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Tmp); 7547 7547 7548 IEM_MC_ADVANCE_RIP ();7548 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7549 7549 IEM_MC_END(); 7550 7550 } … … 7564 7564 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u32Tmp); 7565 7565 7566 IEM_MC_ADVANCE_RIP ();7566 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7567 7567 IEM_MC_END(); 7568 7568 } … … 7600 7600 IEM_MC_STORE_XREG_U64_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 7601 7601 7602 IEM_MC_ADVANCE_RIP ();7602 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7603 7603 IEM_MC_END(); 7604 7604 } … … 7620 7620 IEM_MC_STORE_XREG_U64_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 7621 7621 7622 IEM_MC_ADVANCE_RIP ();7622 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7623 7623 IEM_MC_END(); 7624 7624 } … … 7651 7651 IEM_MC_STORE_MREG_U64(IEM_GET_MODRM_RM_8(bRm), u64Tmp); 7652 7652 7653 IEM_MC_ADVANCE_RIP ();7653 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7654 7654 IEM_MC_END(); 7655 7655 } … … 7672 7672 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u64Tmp); 7673 7673 7674 IEM_MC_ADVANCE_RIP ();7674 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7675 7675 IEM_MC_END(); 7676 7676 } … … 7694 7694 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_RM(pVCpu, bRm), 7695 7695 IEM_GET_MODRM_REG(pVCpu, bRm)); 7696 IEM_MC_ADVANCE_RIP ();7696 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7697 7697 IEM_MC_END(); 7698 7698 } … … 7714 7714 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u128Tmp); 7715 7715 7716 IEM_MC_ADVANCE_RIP ();7716 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7717 7717 IEM_MC_END(); 7718 7718 } … … 7736 7736 IEM_MC_COPY_XREG_U128(IEM_GET_MODRM_RM(pVCpu, bRm), 7737 7737 IEM_GET_MODRM_REG(pVCpu, bRm)); 7738 IEM_MC_ADVANCE_RIP ();7738 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7739 7739 IEM_MC_END(); 7740 7740 } … … 7756 7756 IEM_MC_STORE_MEM_U128(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u128Tmp); 7757 7757 7758 IEM_MC_ADVANCE_RIP ();7758 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7759 7759 IEM_MC_END(); 7760 7760 } … … 7781 7781 IEM_MC_REL_JMP_S16(i16Imm); 7782 7782 } IEM_MC_ELSE() { 7783 IEM_MC_ADVANCE_RIP ();7783 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7784 7784 } IEM_MC_ENDIF(); 7785 7785 IEM_MC_END(); … … 7794 7794 IEM_MC_REL_JMP_S32(i32Imm); 7795 7795 } IEM_MC_ELSE() { 7796 IEM_MC_ADVANCE_RIP ();7796 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7797 7797 } IEM_MC_ENDIF(); 7798 7798 IEM_MC_END(); … … 7815 7815 IEM_MC_BEGIN(0, 0); 7816 7816 IEM_MC_IF_EFL_BIT_SET(X86_EFL_OF) { 7817 IEM_MC_ADVANCE_RIP ();7817 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7818 7818 } IEM_MC_ELSE() { 7819 7819 IEM_MC_REL_JMP_S16(i16Imm); … … 7828 7828 IEM_MC_BEGIN(0, 0); 7829 7829 IEM_MC_IF_EFL_BIT_SET(X86_EFL_OF) { 7830 IEM_MC_ADVANCE_RIP ();7830 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7831 7831 } IEM_MC_ELSE() { 7832 7832 IEM_MC_REL_JMP_S32(i32Imm); … … 7853 7853 IEM_MC_REL_JMP_S16(i16Imm); 7854 7854 } IEM_MC_ELSE() { 7855 IEM_MC_ADVANCE_RIP ();7855 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7856 7856 } IEM_MC_ENDIF(); 7857 7857 IEM_MC_END(); … … 7866 7866 IEM_MC_REL_JMP_S32(i32Imm); 7867 7867 } IEM_MC_ELSE() { 7868 IEM_MC_ADVANCE_RIP ();7868 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7869 7869 } IEM_MC_ENDIF(); 7870 7870 IEM_MC_END(); … … 7887 7887 IEM_MC_BEGIN(0, 0); 7888 7888 IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) { 7889 IEM_MC_ADVANCE_RIP ();7889 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7890 7890 } IEM_MC_ELSE() { 7891 7891 IEM_MC_REL_JMP_S16(i16Imm); … … 7900 7900 IEM_MC_BEGIN(0, 0); 7901 7901 IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) { 7902 IEM_MC_ADVANCE_RIP ();7902 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7903 7903 } IEM_MC_ELSE() { 7904 7904 IEM_MC_REL_JMP_S32(i32Imm); … … 7925 7925 IEM_MC_REL_JMP_S16(i16Imm); 7926 7926 } IEM_MC_ELSE() { 7927 IEM_MC_ADVANCE_RIP ();7927 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7928 7928 } IEM_MC_ENDIF(); 7929 7929 IEM_MC_END(); … … 7938 7938 IEM_MC_REL_JMP_S32(i32Imm); 7939 7939 } IEM_MC_ELSE() { 7940 IEM_MC_ADVANCE_RIP ();7940 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7941 7941 } IEM_MC_ENDIF(); 7942 7942 IEM_MC_END(); … … 7959 7959 IEM_MC_BEGIN(0, 0); 7960 7960 IEM_MC_IF_EFL_BIT_SET(X86_EFL_ZF) { 7961 IEM_MC_ADVANCE_RIP ();7961 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7962 7962 } IEM_MC_ELSE() { 7963 7963 IEM_MC_REL_JMP_S16(i16Imm); … … 7972 7972 IEM_MC_BEGIN(0, 0); 7973 7973 IEM_MC_IF_EFL_BIT_SET(X86_EFL_ZF) { 7974 IEM_MC_ADVANCE_RIP ();7974 IEM_MC_ADVANCE_RIP_AND_FINISH(); 7975 7975 } IEM_MC_ELSE() { 7976 7976 IEM_MC_REL_JMP_S32(i32Imm); … … 7997 7997 IEM_MC_REL_JMP_S16(i16Imm); 7998 7998 } IEM_MC_ELSE() { 7999 IEM_MC_ADVANCE_RIP ();7999 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8000 8000 } IEM_MC_ENDIF(); 8001 8001 IEM_MC_END(); … … 8010 8010 IEM_MC_REL_JMP_S32(i32Imm); 8011 8011 } IEM_MC_ELSE() { 8012 IEM_MC_ADVANCE_RIP ();8012 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8013 8013 } IEM_MC_ENDIF(); 8014 8014 IEM_MC_END(); … … 8031 8031 IEM_MC_BEGIN(0, 0); 8032 8032 IEM_MC_IF_EFL_ANY_BITS_SET(X86_EFL_CF | X86_EFL_ZF) { 8033 IEM_MC_ADVANCE_RIP ();8033 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8034 8034 } IEM_MC_ELSE() { 8035 8035 IEM_MC_REL_JMP_S16(i16Imm); … … 8044 8044 IEM_MC_BEGIN(0, 0); 8045 8045 IEM_MC_IF_EFL_ANY_BITS_SET(X86_EFL_CF | X86_EFL_ZF) { 8046 IEM_MC_ADVANCE_RIP ();8046 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8047 8047 } IEM_MC_ELSE() { 8048 8048 IEM_MC_REL_JMP_S32(i32Imm); … … 8069 8069 IEM_MC_REL_JMP_S16(i16Imm); 8070 8070 } IEM_MC_ELSE() { 8071 IEM_MC_ADVANCE_RIP ();8071 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8072 8072 } IEM_MC_ENDIF(); 8073 8073 IEM_MC_END(); … … 8082 8082 IEM_MC_REL_JMP_S32(i32Imm); 8083 8083 } IEM_MC_ELSE() { 8084 IEM_MC_ADVANCE_RIP ();8084 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8085 8085 } IEM_MC_ENDIF(); 8086 8086 IEM_MC_END(); … … 8103 8103 IEM_MC_BEGIN(0, 0); 8104 8104 IEM_MC_IF_EFL_BIT_SET(X86_EFL_SF) { 8105 IEM_MC_ADVANCE_RIP ();8105 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8106 8106 } IEM_MC_ELSE() { 8107 8107 IEM_MC_REL_JMP_S16(i16Imm); … … 8116 8116 IEM_MC_BEGIN(0, 0); 8117 8117 IEM_MC_IF_EFL_BIT_SET(X86_EFL_SF) { 8118 IEM_MC_ADVANCE_RIP ();8118 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8119 8119 } IEM_MC_ELSE() { 8120 8120 IEM_MC_REL_JMP_S32(i32Imm); … … 8141 8141 IEM_MC_REL_JMP_S16(i16Imm); 8142 8142 } IEM_MC_ELSE() { 8143 IEM_MC_ADVANCE_RIP ();8143 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8144 8144 } IEM_MC_ENDIF(); 8145 8145 IEM_MC_END(); … … 8154 8154 IEM_MC_REL_JMP_S32(i32Imm); 8155 8155 } IEM_MC_ELSE() { 8156 IEM_MC_ADVANCE_RIP ();8156 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8157 8157 } IEM_MC_ENDIF(); 8158 8158 IEM_MC_END(); … … 8175 8175 IEM_MC_BEGIN(0, 0); 8176 8176 IEM_MC_IF_EFL_BIT_SET(X86_EFL_PF) { 8177 IEM_MC_ADVANCE_RIP ();8177 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8178 8178 } IEM_MC_ELSE() { 8179 8179 IEM_MC_REL_JMP_S16(i16Imm); … … 8188 8188 IEM_MC_BEGIN(0, 0); 8189 8189 IEM_MC_IF_EFL_BIT_SET(X86_EFL_PF) { 8190 IEM_MC_ADVANCE_RIP ();8190 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8191 8191 } IEM_MC_ELSE() { 8192 8192 IEM_MC_REL_JMP_S32(i32Imm); … … 8213 8213 IEM_MC_REL_JMP_S16(i16Imm); 8214 8214 } IEM_MC_ELSE() { 8215 IEM_MC_ADVANCE_RIP ();8215 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8216 8216 } IEM_MC_ENDIF(); 8217 8217 IEM_MC_END(); … … 8226 8226 IEM_MC_REL_JMP_S32(i32Imm); 8227 8227 } IEM_MC_ELSE() { 8228 IEM_MC_ADVANCE_RIP ();8228 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8229 8229 } IEM_MC_ENDIF(); 8230 8230 IEM_MC_END(); … … 8247 8247 IEM_MC_BEGIN(0, 0); 8248 8248 IEM_MC_IF_EFL_BITS_NE(X86_EFL_SF, X86_EFL_OF) { 8249 IEM_MC_ADVANCE_RIP ();8249 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8250 8250 } IEM_MC_ELSE() { 8251 8251 IEM_MC_REL_JMP_S16(i16Imm); … … 8260 8260 IEM_MC_BEGIN(0, 0); 8261 8261 IEM_MC_IF_EFL_BITS_NE(X86_EFL_SF, X86_EFL_OF) { 8262 IEM_MC_ADVANCE_RIP ();8262 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8263 8263 } IEM_MC_ELSE() { 8264 8264 IEM_MC_REL_JMP_S32(i32Imm); … … 8285 8285 IEM_MC_REL_JMP_S16(i16Imm); 8286 8286 } IEM_MC_ELSE() { 8287 IEM_MC_ADVANCE_RIP ();8287 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8288 8288 } IEM_MC_ENDIF(); 8289 8289 IEM_MC_END(); … … 8298 8298 IEM_MC_REL_JMP_S32(i32Imm); 8299 8299 } IEM_MC_ELSE() { 8300 IEM_MC_ADVANCE_RIP ();8300 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8301 8301 } IEM_MC_ENDIF(); 8302 8302 IEM_MC_END(); … … 8319 8319 IEM_MC_BEGIN(0, 0); 8320 8320 IEM_MC_IF_EFL_BIT_SET_OR_BITS_NE(X86_EFL_ZF, X86_EFL_SF, X86_EFL_OF) { 8321 IEM_MC_ADVANCE_RIP ();8321 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8322 8322 } IEM_MC_ELSE() { 8323 8323 IEM_MC_REL_JMP_S16(i16Imm); … … 8332 8332 IEM_MC_BEGIN(0, 0); 8333 8333 IEM_MC_IF_EFL_BIT_SET_OR_BITS_NE(X86_EFL_ZF, X86_EFL_SF, X86_EFL_OF) { 8334 IEM_MC_ADVANCE_RIP ();8334 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8335 8335 } IEM_MC_ELSE() { 8336 8336 IEM_MC_REL_JMP_S32(i32Imm); … … 8362 8362 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8363 8363 } IEM_MC_ENDIF(); 8364 IEM_MC_ADVANCE_RIP ();8364 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8365 8365 IEM_MC_END(); 8366 8366 } … … 8377 8377 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8378 8378 } IEM_MC_ENDIF(); 8379 IEM_MC_ADVANCE_RIP ();8379 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8380 8380 IEM_MC_END(); 8381 8381 } … … 8404 8404 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8405 8405 } IEM_MC_ENDIF(); 8406 IEM_MC_ADVANCE_RIP ();8406 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8407 8407 IEM_MC_END(); 8408 8408 } … … 8419 8419 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 8420 8420 } IEM_MC_ENDIF(); 8421 IEM_MC_ADVANCE_RIP ();8421 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8422 8422 IEM_MC_END(); 8423 8423 } … … 8446 8446 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8447 8447 } IEM_MC_ENDIF(); 8448 IEM_MC_ADVANCE_RIP ();8448 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8449 8449 IEM_MC_END(); 8450 8450 } … … 8461 8461 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8462 8462 } IEM_MC_ENDIF(); 8463 IEM_MC_ADVANCE_RIP ();8463 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8464 8464 IEM_MC_END(); 8465 8465 } … … 8488 8488 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8489 8489 } IEM_MC_ENDIF(); 8490 IEM_MC_ADVANCE_RIP ();8490 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8491 8491 IEM_MC_END(); 8492 8492 } … … 8503 8503 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 8504 8504 } IEM_MC_ENDIF(); 8505 IEM_MC_ADVANCE_RIP ();8505 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8506 8506 IEM_MC_END(); 8507 8507 } … … 8530 8530 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8531 8531 } IEM_MC_ENDIF(); 8532 IEM_MC_ADVANCE_RIP ();8532 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8533 8533 IEM_MC_END(); 8534 8534 } … … 8545 8545 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8546 8546 } IEM_MC_ENDIF(); 8547 IEM_MC_ADVANCE_RIP ();8547 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8548 8548 IEM_MC_END(); 8549 8549 } … … 8572 8572 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8573 8573 } IEM_MC_ENDIF(); 8574 IEM_MC_ADVANCE_RIP ();8574 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8575 8575 IEM_MC_END(); 8576 8576 } … … 8587 8587 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 8588 8588 } IEM_MC_ENDIF(); 8589 IEM_MC_ADVANCE_RIP ();8589 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8590 8590 IEM_MC_END(); 8591 8591 } … … 8614 8614 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8615 8615 } IEM_MC_ENDIF(); 8616 IEM_MC_ADVANCE_RIP ();8616 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8617 8617 IEM_MC_END(); 8618 8618 } … … 8629 8629 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8630 8630 } IEM_MC_ENDIF(); 8631 IEM_MC_ADVANCE_RIP ();8631 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8632 8632 IEM_MC_END(); 8633 8633 } … … 8656 8656 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8657 8657 } IEM_MC_ENDIF(); 8658 IEM_MC_ADVANCE_RIP ();8658 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8659 8659 IEM_MC_END(); 8660 8660 } … … 8671 8671 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 8672 8672 } IEM_MC_ENDIF(); 8673 IEM_MC_ADVANCE_RIP ();8673 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8674 8674 IEM_MC_END(); 8675 8675 } … … 8698 8698 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8699 8699 } IEM_MC_ENDIF(); 8700 IEM_MC_ADVANCE_RIP ();8700 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8701 8701 IEM_MC_END(); 8702 8702 } … … 8713 8713 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8714 8714 } IEM_MC_ENDIF(); 8715 IEM_MC_ADVANCE_RIP ();8715 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8716 8716 IEM_MC_END(); 8717 8717 } … … 8740 8740 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8741 8741 } IEM_MC_ENDIF(); 8742 IEM_MC_ADVANCE_RIP ();8742 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8743 8743 IEM_MC_END(); 8744 8744 } … … 8755 8755 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 8756 8756 } IEM_MC_ENDIF(); 8757 IEM_MC_ADVANCE_RIP ();8757 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8758 8758 IEM_MC_END(); 8759 8759 } … … 8782 8782 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8783 8783 } IEM_MC_ENDIF(); 8784 IEM_MC_ADVANCE_RIP ();8784 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8785 8785 IEM_MC_END(); 8786 8786 } … … 8797 8797 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8798 8798 } IEM_MC_ENDIF(); 8799 IEM_MC_ADVANCE_RIP ();8799 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8800 8800 IEM_MC_END(); 8801 8801 } … … 8824 8824 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8825 8825 } IEM_MC_ENDIF(); 8826 IEM_MC_ADVANCE_RIP ();8826 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8827 8827 IEM_MC_END(); 8828 8828 } … … 8839 8839 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 8840 8840 } IEM_MC_ENDIF(); 8841 IEM_MC_ADVANCE_RIP ();8841 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8842 8842 IEM_MC_END(); 8843 8843 } … … 8866 8866 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8867 8867 } IEM_MC_ENDIF(); 8868 IEM_MC_ADVANCE_RIP ();8868 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8869 8869 IEM_MC_END(); 8870 8870 } … … 8881 8881 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8882 8882 } IEM_MC_ENDIF(); 8883 IEM_MC_ADVANCE_RIP ();8883 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8884 8884 IEM_MC_END(); 8885 8885 } … … 8908 8908 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8909 8909 } IEM_MC_ENDIF(); 8910 IEM_MC_ADVANCE_RIP ();8910 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8911 8911 IEM_MC_END(); 8912 8912 } … … 8923 8923 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 8924 8924 } IEM_MC_ENDIF(); 8925 IEM_MC_ADVANCE_RIP ();8925 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8926 8926 IEM_MC_END(); 8927 8927 } … … 8950 8950 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 0); 8951 8951 } IEM_MC_ENDIF(); 8952 IEM_MC_ADVANCE_RIP ();8952 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8953 8953 IEM_MC_END(); 8954 8954 } … … 8965 8965 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 8966 8966 } IEM_MC_ENDIF(); 8967 IEM_MC_ADVANCE_RIP ();8967 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8968 8968 IEM_MC_END(); 8969 8969 } … … 8992 8992 IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), 1); 8993 8993 } IEM_MC_ENDIF(); 8994 IEM_MC_ADVANCE_RIP ();8994 IEM_MC_ADVANCE_RIP_AND_FINISH(); 8995 8995 IEM_MC_END(); 8996 8996 } … … 9007 9007 IEM_MC_STORE_MEM_U8_CONST(pVCpu->iem.s.iEffSeg, GCPtrEffDst, 1); 9008 9008 } IEM_MC_ENDIF(); 9009 IEM_MC_ADVANCE_RIP ();9009 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9010 9010 IEM_MC_END(); 9011 9011 } … … 9030 9030 IEM_MC_FETCH_SREG_U16(u16Value, iReg); 9031 9031 IEM_MC_PUSH_U16(u16Value); 9032 IEM_MC_ADVANCE_RIP ();9032 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9033 9033 IEM_MC_END(); 9034 9034 break; … … 9039 9039 IEM_MC_FETCH_SREG_ZX_U32(u32Value, iReg); 9040 9040 IEM_MC_PUSH_U32_SREG(u32Value); 9041 IEM_MC_ADVANCE_RIP ();9041 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9042 9042 IEM_MC_END(); 9043 9043 break; … … 9048 9048 IEM_MC_FETCH_SREG_ZX_U64(u64Value, iReg); 9049 9049 IEM_MC_PUSH_U64(u64Value); 9050 IEM_MC_ADVANCE_RIP ();9050 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9051 9051 IEM_MC_END(); 9052 9052 break; … … 9114 9114 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 9115 9115 9116 IEM_MC_ADVANCE_RIP ();9116 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9117 9117 IEM_MC_END(); 9118 9118 return VINF_SUCCESS; … … 9131 9131 9132 9132 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 9133 IEM_MC_ADVANCE_RIP ();9133 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9134 9134 IEM_MC_END(); 9135 9135 return VINF_SUCCESS; … … 9147 9147 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 9148 9148 9149 IEM_MC_ADVANCE_RIP ();9149 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9150 9150 IEM_MC_END(); 9151 9151 return VINF_SUCCESS; … … 9196 9196 9197 9197 IEM_MC_COMMIT_EFLAGS(EFlags); 9198 IEM_MC_ADVANCE_RIP ();9198 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9199 9199 IEM_MC_END(); 9200 9200 return VINF_SUCCESS; … … 9229 9229 9230 9230 IEM_MC_COMMIT_EFLAGS(EFlags); 9231 IEM_MC_ADVANCE_RIP ();9231 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9232 9232 IEM_MC_END(); 9233 9233 return VINF_SUCCESS; … … 9262 9262 9263 9263 IEM_MC_COMMIT_EFLAGS(EFlags); 9264 IEM_MC_ADVANCE_RIP ();9264 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9265 9265 IEM_MC_END(); 9266 9266 return VINF_SUCCESS; … … 9308 9308 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnNormalU16, pu16Dst, u16Src, cShiftArg, pEFlags); 9309 9309 9310 IEM_MC_ADVANCE_RIP ();9310 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9311 9311 IEM_MC_END(); 9312 9312 return VINF_SUCCESS; … … 9325 9325 9326 9326 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 9327 IEM_MC_ADVANCE_RIP ();9327 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9328 9328 IEM_MC_END(); 9329 9329 return VINF_SUCCESS; … … 9341 9341 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnNormalU64, pu64Dst, u64Src, cShiftArg, pEFlags); 9342 9342 9343 IEM_MC_ADVANCE_RIP ();9343 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9344 9344 IEM_MC_END(); 9345 9345 return VINF_SUCCESS; … … 9371 9371 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); 9372 9372 IEM_MC_COMMIT_EFLAGS(EFlags); 9373 IEM_MC_ADVANCE_RIP ();9373 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9374 9374 IEM_MC_END(); 9375 9375 return VINF_SUCCESS; … … 9394 9394 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); 9395 9395 IEM_MC_COMMIT_EFLAGS(EFlags); 9396 IEM_MC_ADVANCE_RIP ();9396 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9397 9397 IEM_MC_END(); 9398 9398 return VINF_SUCCESS; … … 9417 9417 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); 9418 9418 IEM_MC_COMMIT_EFLAGS(EFlags); 9419 IEM_MC_ADVANCE_RIP ();9419 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9420 9420 IEM_MC_END(); 9421 9421 return VINF_SUCCESS; … … 9454 9454 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnNormalU16, pu16Dst, u16Src, cShiftArg, pEFlags); 9455 9455 9456 IEM_MC_ADVANCE_RIP ();9456 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9457 9457 IEM_MC_END(); 9458 9458 return VINF_SUCCESS; … … 9472 9472 9473 9473 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 9474 IEM_MC_ADVANCE_RIP ();9474 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9475 9475 IEM_MC_END(); 9476 9476 return VINF_SUCCESS; … … 9489 9489 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnNormalU64, pu64Dst, u64Src, cShiftArg, pEFlags); 9490 9490 9491 IEM_MC_ADVANCE_RIP ();9491 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9492 9492 IEM_MC_END(); 9493 9493 return VINF_SUCCESS; … … 9518 9518 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); 9519 9519 IEM_MC_COMMIT_EFLAGS(EFlags); 9520 IEM_MC_ADVANCE_RIP ();9520 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9521 9521 IEM_MC_END(); 9522 9522 return VINF_SUCCESS; … … 9540 9540 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); 9541 9541 IEM_MC_COMMIT_EFLAGS(EFlags); 9542 IEM_MC_ADVANCE_RIP ();9542 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9543 9543 IEM_MC_END(); 9544 9544 return VINF_SUCCESS; … … 9562 9562 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); 9563 9563 IEM_MC_COMMIT_EFLAGS(EFlags); 9564 IEM_MC_ADVANCE_RIP ();9564 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9565 9565 IEM_MC_END(); 9566 9566 return VINF_SUCCESS; … … 9893 9893 IEM_MC_CALL_VOID_AIMPL_0(iemAImpl_alt_mem_fence); 9894 9894 #endif 9895 IEM_MC_ADVANCE_RIP ();9895 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9896 9896 IEM_MC_END(); 9897 9897 return VINF_SUCCESS; … … 9917 9917 IEM_MC_CALL_VOID_AIMPL_0(iemAImpl_alt_mem_fence); 9918 9918 #endif 9919 IEM_MC_ADVANCE_RIP ();9919 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9920 9920 IEM_MC_END(); 9921 9921 return VINF_SUCCESS; … … 9941 9941 IEM_MC_CALL_VOID_AIMPL_0(iemAImpl_alt_mem_fence); 9942 9942 #endif 9943 IEM_MC_ADVANCE_RIP ();9943 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9944 9944 IEM_MC_END(); 9945 9945 return VINF_SUCCESS; … … 9959 9959 IEM_MC_FETCH_SREG_BASE_U64(u64Dst, X86_SREG_FS); 9960 9960 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Dst); 9961 IEM_MC_ADVANCE_RIP ();9961 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9962 9962 IEM_MC_END(); 9963 9963 } … … 9969 9969 IEM_MC_FETCH_SREG_BASE_U32(u32Dst, X86_SREG_FS); 9970 9970 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Dst); 9971 IEM_MC_ADVANCE_RIP ();9971 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9972 9972 IEM_MC_END(); 9973 9973 } … … 9988 9988 IEM_MC_FETCH_SREG_BASE_U64(u64Dst, X86_SREG_GS); 9989 9989 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Dst); 9990 IEM_MC_ADVANCE_RIP ();9990 IEM_MC_ADVANCE_RIP_AND_FINISH(); 9991 9991 IEM_MC_END(); 9992 9992 } … … 9998 9998 IEM_MC_FETCH_SREG_BASE_U32(u32Dst, X86_SREG_GS); 9999 9999 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Dst); 10000 IEM_MC_ADVANCE_RIP ();10000 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10001 10001 IEM_MC_END(); 10002 10002 } … … 10018 10018 IEM_MC_MAYBE_RAISE_NON_CANONICAL_ADDR_GP0(u64Dst); 10019 10019 IEM_MC_STORE_SREG_BASE_U64(X86_SREG_FS, u64Dst); 10020 IEM_MC_ADVANCE_RIP ();10020 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10021 10021 IEM_MC_END(); 10022 10022 } … … 10028 10028 IEM_MC_FETCH_GREG_U32(u32Dst, IEM_GET_MODRM_RM(pVCpu, bRm)); 10029 10029 IEM_MC_STORE_SREG_BASE_U64(X86_SREG_FS, u32Dst); 10030 IEM_MC_ADVANCE_RIP ();10030 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10031 10031 IEM_MC_END(); 10032 10032 } … … 10048 10048 IEM_MC_MAYBE_RAISE_NON_CANONICAL_ADDR_GP0(u64Dst); 10049 10049 IEM_MC_STORE_SREG_BASE_U64(X86_SREG_GS, u64Dst); 10050 IEM_MC_ADVANCE_RIP ();10050 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10051 10051 IEM_MC_END(); 10052 10052 } … … 10058 10058 IEM_MC_FETCH_GREG_U32(u32Dst, IEM_GET_MODRM_RM(pVCpu, bRm)); 10059 10059 IEM_MC_STORE_SREG_BASE_U64(X86_SREG_GS, u32Dst); 10060 IEM_MC_ADVANCE_RIP ();10060 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10061 10061 IEM_MC_END(); 10062 10062 } … … 10149 10149 IEM_MC_CALL_VOID_AIMPL_4(iemAImpl_cmpxchg_u8_locked, pu8Dst, pu8Al, u8Src, pEFlags); 10150 10150 10151 IEM_MC_ADVANCE_RIP ();10151 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10152 10152 IEM_MC_END(); 10153 10153 } … … 10177 10177 IEM_MC_COMMIT_EFLAGS(EFlags); 10178 10178 IEM_MC_STORE_GREG_U8(X86_GREG_xAX, u8Al); 10179 IEM_MC_ADVANCE_RIP ();10179 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10180 10180 IEM_MC_END(); 10181 10181 } … … 10211 10211 IEM_MC_CALL_VOID_AIMPL_4(iemAImpl_cmpxchg_u16_locked, pu16Dst, pu16Ax, u16Src, pEFlags); 10212 10212 10213 IEM_MC_ADVANCE_RIP ();10213 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10214 10214 IEM_MC_END(); 10215 10215 return VINF_SUCCESS; … … 10237 10237 } IEM_MC_ENDIF(); 10238 10238 10239 IEM_MC_ADVANCE_RIP ();10239 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10240 10240 IEM_MC_END(); 10241 10241 return VINF_SUCCESS; … … 10269 10269 #endif 10270 10270 10271 IEM_MC_ADVANCE_RIP ();10271 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10272 10272 IEM_MC_END(); 10273 10273 return VINF_SUCCESS; … … 10304 10304 IEM_MC_COMMIT_EFLAGS(EFlags); 10305 10305 IEM_MC_STORE_GREG_U16(X86_GREG_xAX, u16Ax); 10306 IEM_MC_ADVANCE_RIP ();10306 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10307 10307 IEM_MC_END(); 10308 10308 return VINF_SUCCESS; … … 10336 10336 IEM_MC_ENDIF(); 10337 10337 10338 IEM_MC_ADVANCE_RIP ();10338 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10339 10339 IEM_MC_END(); 10340 10340 return VINF_SUCCESS; … … 10376 10376 IEM_MC_COMMIT_EFLAGS(EFlags); 10377 10377 IEM_MC_STORE_GREG_U64(X86_GREG_xAX, u64Rax); 10378 IEM_MC_ADVANCE_RIP ();10378 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10379 10379 IEM_MC_END(); 10380 10380 return VINF_SUCCESS; … … 10515 10515 IEM_MC_FETCH_GREG_U8_ZX_U16(u16Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 10516 10516 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Value); 10517 IEM_MC_ADVANCE_RIP ();10517 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10518 10518 IEM_MC_END(); 10519 10519 return VINF_SUCCESS; … … 10524 10524 IEM_MC_FETCH_GREG_U8_ZX_U32(u32Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 10525 10525 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 10526 IEM_MC_ADVANCE_RIP ();10526 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10527 10527 IEM_MC_END(); 10528 10528 return VINF_SUCCESS; … … 10533 10533 IEM_MC_FETCH_GREG_U8_ZX_U64(u64Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 10534 10534 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 10535 IEM_MC_ADVANCE_RIP ();10535 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10536 10536 IEM_MC_END(); 10537 10537 return VINF_SUCCESS; … … 10555 10555 IEM_MC_FETCH_MEM_U8_ZX_U16(u16Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10556 10556 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Value); 10557 IEM_MC_ADVANCE_RIP ();10557 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10558 10558 IEM_MC_END(); 10559 10559 return VINF_SUCCESS; … … 10567 10567 IEM_MC_FETCH_MEM_U8_ZX_U32(u32Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10568 10568 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 10569 IEM_MC_ADVANCE_RIP ();10569 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10570 10570 IEM_MC_END(); 10571 10571 return VINF_SUCCESS; … … 10579 10579 IEM_MC_FETCH_MEM_U8_ZX_U64(u64Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10580 10580 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 10581 IEM_MC_ADVANCE_RIP ();10581 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10582 10582 IEM_MC_END(); 10583 10583 return VINF_SUCCESS; … … 10612 10612 IEM_MC_FETCH_GREG_U16_ZX_U32(u32Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 10613 10613 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 10614 IEM_MC_ADVANCE_RIP ();10614 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10615 10615 IEM_MC_END(); 10616 10616 } … … 10621 10621 IEM_MC_FETCH_GREG_U16_ZX_U64(u64Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 10622 10622 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 10623 IEM_MC_ADVANCE_RIP ();10623 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10624 10624 IEM_MC_END(); 10625 10625 } … … 10639 10639 IEM_MC_FETCH_MEM_U16_ZX_U32(u32Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10640 10640 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 10641 IEM_MC_ADVANCE_RIP ();10641 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10642 10642 IEM_MC_END(); 10643 10643 } … … 10651 10651 IEM_MC_FETCH_MEM_U16_ZX_U64(u64Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 10652 10652 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 10653 IEM_MC_ADVANCE_RIP ();10653 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10654 10654 IEM_MC_END(); 10655 10655 } … … 10735 10735 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 10736 10736 10737 IEM_MC_ADVANCE_RIP ();10737 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10738 10738 IEM_MC_END(); 10739 10739 return VINF_SUCCESS; … … 10750 10750 10751 10751 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 10752 IEM_MC_ADVANCE_RIP ();10752 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10753 10753 IEM_MC_END(); 10754 10754 return VINF_SUCCESS; … … 10764 10764 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 10765 10765 10766 IEM_MC_ADVANCE_RIP ();10766 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10767 10767 IEM_MC_END(); 10768 10768 return VINF_SUCCESS; … … 10807 10807 10808 10808 IEM_MC_COMMIT_EFLAGS(EFlags); 10809 IEM_MC_ADVANCE_RIP ();10809 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10810 10810 IEM_MC_END(); 10811 10811 return VINF_SUCCESS; … … 10834 10834 10835 10835 IEM_MC_COMMIT_EFLAGS(EFlags); 10836 IEM_MC_ADVANCE_RIP ();10836 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10837 10837 IEM_MC_END(); 10838 10838 return VINF_SUCCESS; … … 10861 10861 10862 10862 IEM_MC_COMMIT_EFLAGS(EFlags); 10863 IEM_MC_ADVANCE_RIP ();10863 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10864 10864 IEM_MC_END(); 10865 10865 return VINF_SUCCESS; … … 10912 10912 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 10913 10913 10914 IEM_MC_ADVANCE_RIP ();10914 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10915 10915 IEM_MC_END(); 10916 10916 break; … … 10929 10929 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 10930 10930 IEM_MC_ENDIF(); 10931 IEM_MC_ADVANCE_RIP ();10931 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10932 10932 IEM_MC_END(); 10933 10933 break; … … 10944 10944 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 10945 10945 10946 IEM_MC_ADVANCE_RIP ();10946 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10947 10947 IEM_MC_END(); 10948 10948 break; … … 10970 10970 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 10971 10971 10972 IEM_MC_ADVANCE_RIP ();10972 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10973 10973 IEM_MC_END(); 10974 10974 break; … … 10991 10991 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 10992 10992 IEM_MC_ENDIF(); 10993 IEM_MC_ADVANCE_RIP ();10993 IEM_MC_ADVANCE_RIP_AND_FINISH(); 10994 10994 IEM_MC_END(); 10995 10995 break; … … 11009 11009 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 11010 11010 11011 IEM_MC_ADVANCE_RIP ();11011 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11012 11012 IEM_MC_END(); 11013 11013 break; … … 11112 11112 IEM_MC_FETCH_GREG_U8_SX_U16(u16Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 11113 11113 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Value); 11114 IEM_MC_ADVANCE_RIP ();11114 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11115 11115 IEM_MC_END(); 11116 11116 return VINF_SUCCESS; … … 11121 11121 IEM_MC_FETCH_GREG_U8_SX_U32(u32Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 11122 11122 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 11123 IEM_MC_ADVANCE_RIP ();11123 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11124 11124 IEM_MC_END(); 11125 11125 return VINF_SUCCESS; … … 11130 11130 IEM_MC_FETCH_GREG_U8_SX_U64(u64Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 11131 11131 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 11132 IEM_MC_ADVANCE_RIP ();11132 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11133 11133 IEM_MC_END(); 11134 11134 return VINF_SUCCESS; … … 11152 11152 IEM_MC_FETCH_MEM_U8_SX_U16(u16Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11153 11153 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16Value); 11154 IEM_MC_ADVANCE_RIP ();11154 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11155 11155 IEM_MC_END(); 11156 11156 return VINF_SUCCESS; … … 11164 11164 IEM_MC_FETCH_MEM_U8_SX_U32(u32Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11165 11165 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 11166 IEM_MC_ADVANCE_RIP ();11166 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11167 11167 IEM_MC_END(); 11168 11168 return VINF_SUCCESS; … … 11176 11176 IEM_MC_FETCH_MEM_U8_SX_U64(u64Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11177 11177 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 11178 IEM_MC_ADVANCE_RIP ();11178 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11179 11179 IEM_MC_END(); 11180 11180 return VINF_SUCCESS; … … 11209 11209 IEM_MC_FETCH_GREG_U16_SX_U32(u32Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 11210 11210 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 11211 IEM_MC_ADVANCE_RIP ();11211 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11212 11212 IEM_MC_END(); 11213 11213 } … … 11218 11218 IEM_MC_FETCH_GREG_U16_SX_U64(u64Value, IEM_GET_MODRM_RM(pVCpu, bRm)); 11219 11219 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 11220 IEM_MC_ADVANCE_RIP ();11220 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11221 11221 IEM_MC_END(); 11222 11222 } … … 11236 11236 IEM_MC_FETCH_MEM_U16_SX_U32(u32Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11237 11237 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32Value); 11238 IEM_MC_ADVANCE_RIP ();11238 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11239 11239 IEM_MC_END(); 11240 11240 } … … 11248 11248 IEM_MC_FETCH_MEM_U16_SX_U64(u64Value, pVCpu->iem.s.iEffSeg, GCPtrEffDst); 11249 11249 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64Value); 11250 IEM_MC_ADVANCE_RIP ();11250 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11251 11251 IEM_MC_END(); 11252 11252 } … … 11280 11280 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_xadd_u8, pu8Dst, pu8Reg, pEFlags); 11281 11281 11282 IEM_MC_ADVANCE_RIP ();11282 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11283 11283 IEM_MC_END(); 11284 11284 } … … 11308 11308 IEM_MC_COMMIT_EFLAGS(EFlags); 11309 11309 IEM_MC_STORE_GREG_U8(IEM_GET_MODRM_REG(pVCpu, bRm), u8RegCopy); 11310 IEM_MC_ADVANCE_RIP ();11310 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11311 11311 IEM_MC_END(); 11312 11312 return VINF_SUCCESS; … … 11343 11343 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_xadd_u16, pu16Dst, pu16Reg, pEFlags); 11344 11344 11345 IEM_MC_ADVANCE_RIP ();11345 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11346 11346 IEM_MC_END(); 11347 11347 return VINF_SUCCESS; … … 11360 11360 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 11361 11361 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Reg); 11362 IEM_MC_ADVANCE_RIP ();11362 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11363 11363 IEM_MC_END(); 11364 11364 return VINF_SUCCESS; … … 11375 11375 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_xadd_u64, pu64Dst, pu64Reg, pEFlags); 11376 11376 11377 IEM_MC_ADVANCE_RIP ();11377 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11378 11378 IEM_MC_END(); 11379 11379 return VINF_SUCCESS; … … 11410 11410 IEM_MC_COMMIT_EFLAGS(EFlags); 11411 11411 IEM_MC_STORE_GREG_U16(IEM_GET_MODRM_REG(pVCpu, bRm), u16RegCopy); 11412 IEM_MC_ADVANCE_RIP ();11412 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11413 11413 IEM_MC_END(); 11414 11414 return VINF_SUCCESS; … … 11435 11435 IEM_MC_COMMIT_EFLAGS(EFlags); 11436 11436 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u32RegCopy); 11437 IEM_MC_ADVANCE_RIP ();11437 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11438 11438 IEM_MC_END(); 11439 11439 return VINF_SUCCESS; … … 11460 11460 IEM_MC_COMMIT_EFLAGS(EFlags); 11461 11461 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_REG(pVCpu, bRm), u64RegCopy); 11462 IEM_MC_ADVANCE_RIP ();11462 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11463 11463 IEM_MC_END(); 11464 11464 return VINF_SUCCESS; … … 11502 11502 IEM_MC_ENDIF(); 11503 11503 11504 IEM_MC_ADVANCE_RIP ();11504 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11505 11505 IEM_MC_END(); 11506 11506 } … … 11535 11535 IEM_MC_ENDIF(); 11536 11536 11537 IEM_MC_ADVANCE_RIP ();11537 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11538 11538 IEM_MC_END(); 11539 11539 } … … 11574 11574 IEM_MC_ENDIF(); 11575 11575 11576 IEM_MC_ADVANCE_RIP ();11576 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11577 11577 IEM_MC_END(); 11578 11578 } … … 11607 11607 IEM_MC_ENDIF(); 11608 11608 11609 IEM_MC_ADVANCE_RIP ();11609 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11610 11610 IEM_MC_END(); 11611 11611 } … … 11646 11646 IEM_MC_ENDIF(); 11647 11647 11648 IEM_MC_ADVANCE_RIP ();11648 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11649 11649 IEM_MC_END(); 11650 11650 } … … 11679 11679 IEM_MC_ENDIF(); 11680 11680 11681 IEM_MC_ADVANCE_RIP ();11681 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11682 11682 IEM_MC_END(); 11683 11683 } … … 11718 11718 IEM_MC_ENDIF(); 11719 11719 11720 IEM_MC_ADVANCE_RIP ();11720 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11721 11721 IEM_MC_END(); 11722 11722 } … … 11751 11751 IEM_MC_ENDIF(); 11752 11752 11753 IEM_MC_ADVANCE_RIP ();11753 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11754 11754 IEM_MC_END(); 11755 11755 } … … 11782 11782 IEM_MC_FETCH_GREG_U32(u32Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 11783 11783 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u32Value); 11784 IEM_MC_ADVANCE_RIP ();11784 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11785 11785 IEM_MC_END(); 11786 11786 break; … … 11798 11798 IEM_MC_FETCH_GREG_U64(u64Value, IEM_GET_MODRM_REG(pVCpu, bRm)); 11799 11799 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffDst, u64Value); 11800 IEM_MC_ADVANCE_RIP ();11800 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11801 11801 IEM_MC_END(); 11802 11802 break; … … 11841 11841 IEM_MC_MODIFIED_MREG_BY_REF(pu64Dst); 11842 11842 IEM_MC_FPU_TO_MMX_MODE(); 11843 IEM_MC_ADVANCE_RIP ();11843 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11844 11844 IEM_MC_END(); 11845 11845 } … … 11866 11866 IEM_MC_MODIFIED_MREG_BY_REF(pu64Dst); 11867 11867 IEM_MC_FPU_TO_MMX_MODE(); 11868 IEM_MC_ADVANCE_RIP ();11868 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11869 11869 IEM_MC_END(); 11870 11870 } … … 11894 11894 IEM_MC_FETCH_GREG_U16(u16Src, IEM_GET_MODRM_RM(pVCpu, bRm)); 11895 11895 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_pinsrw_u128, puDst, u16Src, bEvilArg); 11896 IEM_MC_ADVANCE_RIP ();11896 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11897 11897 IEM_MC_END(); 11898 11898 } … … 11917 11917 IEM_MC_REF_XREG_U128(puDst, IEM_GET_MODRM_REG(pVCpu, bRm)); 11918 11918 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_pinsrw_u128, puDst, u16Src, bEvilArg); 11919 IEM_MC_ADVANCE_RIP ();11919 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11920 11920 IEM_MC_END(); 11921 11921 } … … 11951 11951 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u16Dst); 11952 11952 IEM_MC_FPU_TO_MMX_MODE(); 11953 IEM_MC_ADVANCE_RIP ();11953 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11954 11954 IEM_MC_END(); 11955 11955 return VINF_SUCCESS; … … 11983 11983 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_pextrw_u128, pu16Dst, puSrc, bEvilArg); 11984 11984 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u16Dst); 11985 IEM_MC_ADVANCE_RIP ();11985 IEM_MC_ADVANCE_RIP_AND_FINISH(); 11986 11986 IEM_MC_END(); 11987 11987 return VINF_SUCCESS; … … 12018 12018 IEM_MC_REF_XREG_U128_CONST(pSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 12019 12019 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_shufps_u128, pDst, pSrc, bEvilArg); 12020 IEM_MC_ADVANCE_RIP ();12020 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12021 12021 IEM_MC_END(); 12022 12022 } … … 12043 12043 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_shufps_u128, pDst, pSrc, bEvilArg); 12044 12044 12045 IEM_MC_ADVANCE_RIP ();12045 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12046 12046 IEM_MC_END(); 12047 12047 } … … 12071 12071 IEM_MC_REF_XREG_U128_CONST(pSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 12072 12072 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_shufpd_u128, pDst, pSrc, bEvilArg); 12073 IEM_MC_ADVANCE_RIP ();12073 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12074 12074 IEM_MC_END(); 12075 12075 } … … 12096 12096 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_shufpd_u128, pDst, pSrc, bEvilArg); 12097 12097 12098 IEM_MC_ADVANCE_RIP ();12098 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12099 12099 IEM_MC_END(); 12100 12100 } … … 12145 12145 IEM_MC_STORE_GREG_U32(X86_GREG_xDX, u64EaxEdx.s.Hi); 12146 12146 IEM_MC_ENDIF(); 12147 IEM_MC_ADVANCE_RIP ();12147 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12148 12148 12149 12149 IEM_MC_END(); … … 12222 12222 IEM_MC_STORE_GREG_U64(X86_GREG_xDX, u128RaxRdx.s.Hi); 12223 12223 IEM_MC_ENDIF(); 12224 IEM_MC_ADVANCE_RIP ();12224 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12225 12225 12226 12226 IEM_MC_END(); … … 12262 12262 pu16Dst, pEFlags); 12263 12263 12264 IEM_MC_ADVANCE_RIP ();12264 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12265 12265 IEM_MC_END(); 12266 12266 return VINF_SUCCESS; … … 12277 12277 12278 12278 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 12279 IEM_MC_ADVANCE_RIP ();12279 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12280 12280 IEM_MC_END(); 12281 12281 return VINF_SUCCESS; … … 12291 12291 pu64Dst, pEFlags); 12292 12292 12293 IEM_MC_ADVANCE_RIP ();12293 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12294 12294 IEM_MC_END(); 12295 12295 return VINF_SUCCESS; … … 12410 12410 pu16Dst, pEFlags); 12411 12411 12412 IEM_MC_ADVANCE_RIP ();12412 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12413 12413 IEM_MC_END(); 12414 12414 return VINF_SUCCESS; … … 12425 12425 12426 12426 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 12427 IEM_MC_ADVANCE_RIP ();12427 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12428 12428 IEM_MC_END(); 12429 12429 return VINF_SUCCESS; … … 12439 12439 pu64Dst, pEFlags); 12440 12440 12441 IEM_MC_ADVANCE_RIP ();12441 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12442 12442 IEM_MC_END(); 12443 12443 return VINF_SUCCESS; … … 12514 12514 IEM_MC_REF_GREG_U32(pu32Dst, iReg); /* Don't clear the high dword! */ 12515 12515 IEM_MC_CALL_VOID_AIMPL_1(iemAImpl_bswap_u16, pu32Dst); 12516 IEM_MC_ADVANCE_RIP ();12516 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12517 12517 IEM_MC_END(); 12518 12518 return VINF_SUCCESS; … … 12524 12524 IEM_MC_CALL_VOID_AIMPL_1(iemAImpl_bswap_u32, pu32Dst); 12525 12525 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pu32Dst); 12526 IEM_MC_ADVANCE_RIP ();12526 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12527 12527 IEM_MC_END(); 12528 12528 return VINF_SUCCESS; … … 12533 12533 IEM_MC_REF_GREG_U64(pu64Dst, iReg); 12534 12534 IEM_MC_CALL_VOID_AIMPL_1(iemAImpl_bswap_u64, pu64Dst); 12535 IEM_MC_ADVANCE_RIP ();12535 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12536 12536 IEM_MC_END(); 12537 12537 return VINF_SUCCESS; … … 12763 12763 IEM_MC_STORE_XREG_U64_ZX_U128(IEM_GET_MODRM_RM(pVCpu, bRm), uSrc); 12764 12764 12765 IEM_MC_ADVANCE_RIP ();12765 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12766 12766 IEM_MC_END(); 12767 12767 } … … 12783 12783 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 12784 12784 12785 IEM_MC_ADVANCE_RIP ();12785 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12786 12786 IEM_MC_END(); 12787 12787 } … … 12819 12819 IEM_MC_STORE_XREG_U64_ZX_U128(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 12820 12820 12821 IEM_MC_ADVANCE_RIP ();12821 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12822 12822 IEM_MC_END(); 12823 12823 return VINF_SUCCESS; … … 12871 12871 IEM_MC_STORE_MREG_U64(IEM_GET_MODRM_REG_8(bRm), uSrc); 12872 12872 12873 IEM_MC_ADVANCE_RIP ();12873 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12874 12874 IEM_MC_END(); 12875 12875 return VINF_SUCCESS; … … 12911 12911 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_pmovmskb_u64, puDst, puSrc); 12912 12912 12913 IEM_MC_ADVANCE_RIP ();12913 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12914 12914 IEM_MC_END(); 12915 12915 return VINF_SUCCESS; … … 12937 12937 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 12938 12938 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_pmovmskb_u128, puDst, puSrc); 12939 IEM_MC_ADVANCE_RIP ();12939 IEM_MC_ADVANCE_RIP_AND_FINISH(); 12940 12940 IEM_MC_END(); 12941 12941 return VINF_SUCCESS; … … 13270 13270 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 13271 13271 13272 IEM_MC_ADVANCE_RIP ();13272 IEM_MC_ADVANCE_RIP_AND_FINISH(); 13273 13273 IEM_MC_END(); 13274 13274 return VINF_SUCCESS; … … 13316 13316 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 13317 13317 13318 IEM_MC_ADVANCE_RIP ();13318 IEM_MC_ADVANCE_RIP_AND_FINISH(); 13319 13319 IEM_MC_END(); 13320 13320 return VINF_SUCCESS; … … 13526 13526 IEM_MC_STORE_XREG_U128(IEM_GET_MODRM_REG(pVCpu, bRm), u128Tmp); 13527 13527 13528 IEM_MC_ADVANCE_RIP ();13528 IEM_MC_ADVANCE_RIP_AND_FINISH(); 13529 13529 IEM_MC_END(); 13530 13530 } -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsVexMap1.cpp.h
r97127 r97356 66 66 IEM_MC_CALL_AVX_AIMPL_3(pImpl->pfnU256, puDst, puSrc1, puSrc2); 67 67 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 68 IEM_MC_ADVANCE_RIP ();68 IEM_MC_ADVANCE_RIP_AND_FINISH(); 69 69 IEM_MC_END(); 70 70 } … … 84 84 IEM_MC_CALL_AVX_AIMPL_3(pImpl->pfnU128, puDst, puSrc1, puSrc2); 85 85 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 86 IEM_MC_ADVANCE_RIP ();86 IEM_MC_ADVANCE_RIP_AND_FINISH(); 87 87 IEM_MC_END(); 88 88 } … … 115 115 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 116 116 117 IEM_MC_ADVANCE_RIP ();117 IEM_MC_ADVANCE_RIP_AND_FINISH(); 118 118 IEM_MC_END(); 119 119 } … … 139 139 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 140 140 141 IEM_MC_ADVANCE_RIP ();141 IEM_MC_ADVANCE_RIP_AND_FINISH(); 142 142 IEM_MC_END(); 143 143 } … … 180 180 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnU256, puDst, puSrc1, puSrc2); 181 181 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 182 IEM_MC_ADVANCE_RIP ();182 IEM_MC_ADVANCE_RIP_AND_FINISH(); 183 183 IEM_MC_END(); 184 184 } … … 197 197 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnU128, puDst, puSrc1, puSrc2); 198 198 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 199 IEM_MC_ADVANCE_RIP ();199 IEM_MC_ADVANCE_RIP_AND_FINISH(); 200 200 IEM_MC_END(); 201 201 } … … 227 227 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 228 228 229 IEM_MC_ADVANCE_RIP ();229 IEM_MC_ADVANCE_RIP_AND_FINISH(); 230 230 IEM_MC_END(); 231 231 } … … 250 250 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 251 251 252 IEM_MC_ADVANCE_RIP ();252 IEM_MC_ADVANCE_RIP_AND_FINISH(); 253 253 IEM_MC_END(); 254 254 } … … 320 320 IEM_MC_CALL_VOID_AIMPL_2(pImpl->pfnU256, puDst, puSrc); 321 321 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 322 IEM_MC_ADVANCE_RIP ();322 IEM_MC_ADVANCE_RIP_AND_FINISH(); 323 323 IEM_MC_END(); 324 324 } … … 335 335 IEM_MC_CALL_VOID_AIMPL_2(pImpl->pfnU128, puDst, puSrc); 336 336 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 337 IEM_MC_ADVANCE_RIP ();337 IEM_MC_ADVANCE_RIP_AND_FINISH(); 338 338 IEM_MC_END(); 339 339 } … … 362 362 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 363 363 364 IEM_MC_ADVANCE_RIP ();364 IEM_MC_ADVANCE_RIP_AND_FINISH(); 365 365 IEM_MC_END(); 366 366 } … … 383 383 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 384 384 385 IEM_MC_ADVANCE_RIP ();385 IEM_MC_ADVANCE_RIP_AND_FINISH(); 386 386 IEM_MC_END(); 387 387 } … … 445 445 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), 446 446 IEM_GET_MODRM_RM(pVCpu, bRm)); 447 IEM_MC_ADVANCE_RIP ();447 IEM_MC_ADVANCE_RIP_AND_FINISH(); 448 448 IEM_MC_END(); 449 449 } … … 465 465 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 466 466 467 IEM_MC_ADVANCE_RIP ();467 IEM_MC_ADVANCE_RIP_AND_FINISH(); 468 468 IEM_MC_END(); 469 469 } … … 485 485 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 486 486 487 IEM_MC_ADVANCE_RIP ();487 IEM_MC_ADVANCE_RIP_AND_FINISH(); 488 488 IEM_MC_END(); 489 489 } … … 521 521 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), 522 522 IEM_GET_MODRM_RM(pVCpu, bRm)); 523 IEM_MC_ADVANCE_RIP ();523 IEM_MC_ADVANCE_RIP_AND_FINISH(); 524 524 IEM_MC_END(); 525 525 } … … 541 541 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 542 542 543 IEM_MC_ADVANCE_RIP ();543 IEM_MC_ADVANCE_RIP_AND_FINISH(); 544 544 IEM_MC_END(); 545 545 } … … 561 561 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 562 562 563 IEM_MC_ADVANCE_RIP ();563 IEM_MC_ADVANCE_RIP_AND_FINISH(); 564 564 IEM_MC_END(); 565 565 } … … 596 596 IEM_GET_MODRM_RM(pVCpu, bRm) /*U32*/, 597 597 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hss*/); 598 IEM_MC_ADVANCE_RIP ();598 IEM_MC_ADVANCE_RIP_AND_FINISH(); 599 599 IEM_MC_END(); 600 600 } … … 626 626 IEM_MC_STORE_YREG_U32_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 627 627 628 IEM_MC_ADVANCE_RIP ();628 IEM_MC_ADVANCE_RIP_AND_FINISH(); 629 629 IEM_MC_END(); 630 630 } … … 662 662 IEM_GET_MODRM_RM(pVCpu, bRm) /*U32*/, 663 663 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hss*/); 664 IEM_MC_ADVANCE_RIP ();664 IEM_MC_ADVANCE_RIP_AND_FINISH(); 665 665 IEM_MC_END(); 666 666 } … … 692 692 IEM_MC_STORE_YREG_U64_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 693 693 694 IEM_MC_ADVANCE_RIP ();694 IEM_MC_ADVANCE_RIP_AND_FINISH(); 695 695 IEM_MC_END(); 696 696 } … … 729 729 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_RM(pVCpu, bRm), 730 730 IEM_GET_MODRM_REG(pVCpu, bRm)); 731 IEM_MC_ADVANCE_RIP ();731 IEM_MC_ADVANCE_RIP_AND_FINISH(); 732 732 IEM_MC_END(); 733 733 } … … 749 749 IEM_MC_STORE_MEM_U128(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 750 750 751 IEM_MC_ADVANCE_RIP ();751 IEM_MC_ADVANCE_RIP_AND_FINISH(); 752 752 IEM_MC_END(); 753 753 } … … 769 769 IEM_MC_STORE_MEM_U256(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 770 770 771 IEM_MC_ADVANCE_RIP ();771 IEM_MC_ADVANCE_RIP_AND_FINISH(); 772 772 IEM_MC_END(); 773 773 } … … 805 805 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_RM(pVCpu, bRm), 806 806 IEM_GET_MODRM_REG(pVCpu, bRm)); 807 IEM_MC_ADVANCE_RIP ();807 IEM_MC_ADVANCE_RIP_AND_FINISH(); 808 808 IEM_MC_END(); 809 809 } … … 825 825 IEM_MC_STORE_MEM_U128(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 826 826 827 IEM_MC_ADVANCE_RIP ();827 IEM_MC_ADVANCE_RIP_AND_FINISH(); 828 828 IEM_MC_END(); 829 829 } … … 845 845 IEM_MC_STORE_MEM_U256(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 846 846 847 IEM_MC_ADVANCE_RIP ();847 IEM_MC_ADVANCE_RIP_AND_FINISH(); 848 848 IEM_MC_END(); 849 849 } … … 879 879 IEM_GET_MODRM_REG(pVCpu, bRm), 880 880 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hss*/); 881 IEM_MC_ADVANCE_RIP ();881 IEM_MC_ADVANCE_RIP_AND_FINISH(); 882 882 IEM_MC_END(); 883 883 } … … 909 909 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 910 910 911 IEM_MC_ADVANCE_RIP ();911 IEM_MC_ADVANCE_RIP_AND_FINISH(); 912 912 IEM_MC_END(); 913 913 } … … 945 945 IEM_GET_MODRM_REG(pVCpu, bRm), 946 946 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hss*/); 947 IEM_MC_ADVANCE_RIP ();947 IEM_MC_ADVANCE_RIP_AND_FINISH(); 948 948 IEM_MC_END(); 949 949 } … … 975 975 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 976 976 977 IEM_MC_ADVANCE_RIP ();977 IEM_MC_ADVANCE_RIP_AND_FINISH(); 978 978 IEM_MC_END(); 979 979 } … … 1012 1012 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hq*/); 1013 1013 1014 IEM_MC_ADVANCE_RIP ();1014 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1015 1015 IEM_MC_END(); 1016 1016 } … … 1047 1047 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hq*/); 1048 1048 1049 IEM_MC_ADVANCE_RIP ();1049 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1050 1050 IEM_MC_END(); 1051 1051 } … … 1087 1087 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hq*/); 1088 1088 1089 IEM_MC_ADVANCE_RIP ();1089 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1090 1090 IEM_MC_END(); 1091 1091 return VINF_SUCCESS; … … 1143 1143 IEM_MC_CLEAR_YREG_128_UP(IEM_GET_MODRM_REG(pVCpu, bRm)); 1144 1144 1145 IEM_MC_ADVANCE_RIP ();1145 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1146 1146 IEM_MC_END(); 1147 1147 } … … 1157 1157 IEM_MC_CALL_AVX_AIMPL_2(iemAImpl_vmovsldup_256_rr, iYRegDst, iYRegSrc); 1158 1158 1159 IEM_MC_ADVANCE_RIP ();1159 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1160 1160 IEM_MC_END(); 1161 1161 } … … 1184 1184 IEM_MC_CLEAR_YREG_128_UP(IEM_GET_MODRM_REG(pVCpu, bRm)); 1185 1185 1186 IEM_MC_ADVANCE_RIP ();1186 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1187 1187 IEM_MC_END(); 1188 1188 } … … 1204 1204 IEM_MC_CALL_AVX_AIMPL_2(iemAImpl_vmovsldup_256_rm, iYRegDst, puSrc); 1205 1205 1206 IEM_MC_ADVANCE_RIP ();1206 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1207 1207 IEM_MC_END(); 1208 1208 } … … 1247 1247 IEM_MC_CLEAR_YREG_128_UP(IEM_GET_MODRM_REG(pVCpu, bRm)); 1248 1248 1249 IEM_MC_ADVANCE_RIP ();1249 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1250 1250 IEM_MC_END(); 1251 1251 } … … 1261 1261 IEM_MC_CALL_AVX_AIMPL_2(iemAImpl_vmovddup_256_rr, iYRegDst, iYRegSrc); 1262 1262 1263 IEM_MC_ADVANCE_RIP ();1263 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1264 1264 IEM_MC_END(); 1265 1265 } … … 1287 1287 IEM_MC_CLEAR_YREG_128_UP(IEM_GET_MODRM_REG(pVCpu, bRm)); 1288 1288 1289 IEM_MC_ADVANCE_RIP ();1289 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1290 1290 IEM_MC_END(); 1291 1291 } … … 1307 1307 IEM_MC_CALL_AVX_AIMPL_2(iemAImpl_vmovddup_256_rm, iYRegDst, puSrc); 1308 1308 1309 IEM_MC_ADVANCE_RIP ();1309 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1310 1310 IEM_MC_END(); 1311 1311 } … … 1344 1344 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 1345 1345 1346 IEM_MC_ADVANCE_RIP ();1346 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1347 1347 IEM_MC_END(); 1348 1348 return VINF_SUCCESS; … … 1391 1391 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 1392 1392 1393 IEM_MC_ADVANCE_RIP ();1393 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1394 1394 IEM_MC_END(); 1395 1395 return VINF_SUCCESS; … … 1480 1480 IEM_GET_EFFECTIVE_VVVV(pVCpu) /*Hq*/); 1481 1481 1482 IEM_MC_ADVANCE_RIP ();1482 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1483 1483 IEM_MC_END(); 1484 1484 } … … 1511 1511 uSrc); 1512 1512 1513 IEM_MC_ADVANCE_RIP ();1513 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1514 1514 IEM_MC_END(); 1515 1515 } … … 1547 1547 uSrc); 1548 1548 1549 IEM_MC_ADVANCE_RIP ();1549 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1550 1550 IEM_MC_END(); 1551 1551 return VINF_SUCCESS; … … 1599 1599 IEM_MC_CLEAR_YREG_128_UP(IEM_GET_MODRM_REG(pVCpu, bRm)); 1600 1600 1601 IEM_MC_ADVANCE_RIP ();1601 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1602 1602 IEM_MC_END(); 1603 1603 } … … 1613 1613 IEM_MC_CALL_AVX_AIMPL_2(iemAImpl_vmovshdup_256_rr, iYRegDst, iYRegSrc); 1614 1614 1615 IEM_MC_ADVANCE_RIP ();1615 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1616 1616 IEM_MC_END(); 1617 1617 } … … 1640 1640 IEM_MC_CLEAR_YREG_128_UP(IEM_GET_MODRM_REG(pVCpu, bRm)); 1641 1641 1642 IEM_MC_ADVANCE_RIP ();1642 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1643 1643 IEM_MC_END(); 1644 1644 } … … 1660 1660 IEM_MC_CALL_AVX_AIMPL_2(iemAImpl_vmovshdup_256_rm, iYRegDst, puSrc); 1661 1661 1662 IEM_MC_ADVANCE_RIP ();1662 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1663 1663 IEM_MC_END(); 1664 1664 } … … 1698 1698 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 1699 1699 1700 IEM_MC_ADVANCE_RIP ();1700 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1701 1701 IEM_MC_END(); 1702 1702 return VINF_SUCCESS; … … 1743 1743 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 1744 1744 1745 IEM_MC_ADVANCE_RIP ();1745 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1746 1746 IEM_MC_END(); 1747 1747 return VINF_SUCCESS; … … 1815 1815 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), 1816 1816 IEM_GET_MODRM_RM(pVCpu, bRm)); 1817 IEM_MC_ADVANCE_RIP ();1817 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1818 1818 IEM_MC_END(); 1819 1819 } … … 1837 1837 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 1838 1838 1839 IEM_MC_ADVANCE_RIP ();1839 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1840 1840 IEM_MC_END(); 1841 1841 } … … 1854 1854 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 1855 1855 1856 IEM_MC_ADVANCE_RIP ();1856 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1857 1857 IEM_MC_END(); 1858 1858 } … … 1893 1893 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), 1894 1894 IEM_GET_MODRM_RM(pVCpu, bRm)); 1895 IEM_MC_ADVANCE_RIP ();1895 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1896 1896 IEM_MC_END(); 1897 1897 } … … 1915 1915 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 1916 1916 1917 IEM_MC_ADVANCE_RIP ();1917 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1918 1918 IEM_MC_END(); 1919 1919 } … … 1932 1932 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 1933 1933 1934 IEM_MC_ADVANCE_RIP ();1934 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1935 1935 IEM_MC_END(); 1936 1936 } … … 1990 1990 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_RM(pVCpu, bRm), 1991 1991 IEM_GET_MODRM_REG(pVCpu, bRm)); 1992 IEM_MC_ADVANCE_RIP ();1992 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1993 1993 IEM_MC_END(); 1994 1994 } … … 2012 2012 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2013 2013 2014 IEM_MC_ADVANCE_RIP ();2014 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2015 2015 IEM_MC_END(); 2016 2016 } … … 2029 2029 IEM_MC_STORE_MEM_U256_ALIGN_AVX(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2030 2030 2031 IEM_MC_ADVANCE_RIP ();2031 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2032 2032 IEM_MC_END(); 2033 2033 } … … 2067 2067 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_RM(pVCpu, bRm), 2068 2068 IEM_GET_MODRM_REG(pVCpu, bRm)); 2069 IEM_MC_ADVANCE_RIP ();2069 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2070 2070 IEM_MC_END(); 2071 2071 } … … 2089 2089 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2090 2090 2091 IEM_MC_ADVANCE_RIP ();2091 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2092 2092 IEM_MC_END(); 2093 2093 } … … 2106 2106 IEM_MC_STORE_MEM_U256_ALIGN_AVX(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2107 2107 2108 IEM_MC_ADVANCE_RIP ();2108 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2109 2109 IEM_MC_END(); 2110 2110 } … … 2178 2178 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2179 2179 2180 IEM_MC_ADVANCE_RIP ();2180 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2181 2181 IEM_MC_END(); 2182 2182 } … … 2195 2195 IEM_MC_STORE_MEM_U256_ALIGN_AVX(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2196 2196 2197 IEM_MC_ADVANCE_RIP ();2197 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2198 2198 IEM_MC_END(); 2199 2199 } … … 2240 2240 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2241 2241 2242 IEM_MC_ADVANCE_RIP ();2242 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2243 2243 IEM_MC_END(); 2244 2244 } … … 2257 2257 IEM_MC_STORE_MEM_U256_ALIGN_AVX(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 2258 2258 2259 IEM_MC_ADVANCE_RIP ();2259 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2260 2260 IEM_MC_END(); 2261 2261 } … … 2334 2334 IEM_MC_ENDIF(); 2335 2335 2336 IEM_MC_ADVANCE_RIP ();2336 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2337 2337 IEM_MC_END(); 2338 2338 } … … 2368 2368 IEM_MC_ENDIF(); 2369 2369 2370 IEM_MC_ADVANCE_RIP ();2370 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2371 2371 IEM_MC_END(); 2372 2372 } … … 2406 2406 IEM_MC_ENDIF(); 2407 2407 2408 IEM_MC_ADVANCE_RIP ();2408 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2409 2409 IEM_MC_END(); 2410 2410 } … … 2440 2440 IEM_MC_ENDIF(); 2441 2441 2442 IEM_MC_ADVANCE_RIP ();2442 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2443 2443 IEM_MC_END(); 2444 2444 } … … 2481 2481 IEM_MC_ENDIF(); 2482 2482 2483 IEM_MC_ADVANCE_RIP ();2483 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2484 2484 IEM_MC_END(); 2485 2485 } … … 2515 2515 IEM_MC_ENDIF(); 2516 2516 2517 IEM_MC_ADVANCE_RIP ();2517 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2518 2518 IEM_MC_END(); 2519 2519 } … … 2553 2553 IEM_MC_ENDIF(); 2554 2554 2555 IEM_MC_ADVANCE_RIP ();2555 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2556 2556 IEM_MC_END(); 2557 2557 } … … 2587 2587 IEM_MC_ENDIF(); 2588 2588 2589 IEM_MC_ADVANCE_RIP ();2589 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2590 2590 IEM_MC_END(); 2591 2591 } … … 2654 2654 pu8Dst, puSrc); 2655 2655 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u8Dst); 2656 IEM_MC_ADVANCE_RIP ();2656 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2657 2657 IEM_MC_END(); 2658 2658 } … … 2672 2672 pu8Dst, puSrc); 2673 2673 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u8Dst); 2674 IEM_MC_ADVANCE_RIP ();2674 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2675 2675 IEM_MC_END(); 2676 2676 } … … 2707 2707 pu8Dst, puSrc); 2708 2708 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u8Dst); 2709 IEM_MC_ADVANCE_RIP ();2709 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2710 2710 IEM_MC_END(); 2711 2711 } … … 2725 2725 pu8Dst, puSrc); 2726 2726 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u8Dst); 2727 IEM_MC_ADVANCE_RIP ();2727 IEM_MC_ADVANCE_RIP_AND_FINISH(); 2728 2728 IEM_MC_END(); 2729 2729 } … … 3065 3065 // IEM_MC_REF_XREG_U128_CONST(pSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 3066 3066 // IEM_MC_CALL_SSE_AIMPL_2(pImpl->pfnU128, pDst, pSrc); 3067 // IEM_MC_ADVANCE_RIP ();3067 // IEM_MC_ADVANCE_RIP_AND_FINISH(); 3068 3068 // IEM_MC_END(); 3069 3069 // } … … 3088 3088 // IEM_MC_CALL_SSE_AIMPL_2(pImpl->pfnU128, pDst, pSrc); 3089 3089 // 3090 // IEM_MC_ADVANCE_RIP ();3090 // IEM_MC_ADVANCE_RIP_AND_FINISH(); 3091 3091 // IEM_MC_END(); 3092 3092 // } … … 3216 3216 IEM_MC_STORE_YREG_U64_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 3217 3217 3218 IEM_MC_ADVANCE_RIP ();3218 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3219 3219 IEM_MC_END(); 3220 3220 } … … 3234 3234 IEM_MC_STORE_YREG_U64_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u64Tmp); 3235 3235 3236 IEM_MC_ADVANCE_RIP ();3236 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3237 3237 IEM_MC_END(); 3238 3238 } … … 3266 3266 IEM_MC_STORE_YREG_U32_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 3267 3267 3268 IEM_MC_ADVANCE_RIP ();3268 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3269 3269 IEM_MC_END(); 3270 3270 } … … 3284 3284 IEM_MC_STORE_YREG_U32_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u32Tmp); 3285 3285 3286 IEM_MC_ADVANCE_RIP ();3286 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3287 3287 IEM_MC_END(); 3288 3288 } … … 3327 3327 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), 3328 3328 IEM_GET_MODRM_RM(pVCpu, bRm)); 3329 IEM_MC_ADVANCE_RIP ();3329 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3330 3330 IEM_MC_END(); 3331 3331 } … … 3347 3347 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u128Tmp); 3348 3348 3349 IEM_MC_ADVANCE_RIP ();3349 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3350 3350 IEM_MC_END(); 3351 3351 } … … 3367 3367 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u256Tmp); 3368 3368 3369 IEM_MC_ADVANCE_RIP ();3369 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3370 3370 IEM_MC_END(); 3371 3371 } … … 3403 3403 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), 3404 3404 IEM_GET_MODRM_RM(pVCpu, bRm)); 3405 IEM_MC_ADVANCE_RIP ();3405 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3406 3406 IEM_MC_END(); 3407 3407 } … … 3423 3423 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u128Tmp); 3424 3424 3425 IEM_MC_ADVANCE_RIP ();3425 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3426 3426 IEM_MC_END(); 3427 3427 } … … 3443 3443 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u256Tmp); 3444 3444 3445 IEM_MC_ADVANCE_RIP ();3445 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3446 3446 IEM_MC_END(); 3447 3447 } … … 3483 3483 IEM_MC_CALL_VOID_AIMPL_3(pfnU256, puDst, puSrc, bEvilArg); 3484 3484 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 3485 IEM_MC_ADVANCE_RIP ();3485 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3486 3486 IEM_MC_END(); 3487 3487 } … … 3499 3499 IEM_MC_CALL_VOID_AIMPL_3(pfnU128, puDst, puSrc, bEvilArg); 3500 3500 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 3501 IEM_MC_ADVANCE_RIP ();3501 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3502 3502 IEM_MC_END(); 3503 3503 } … … 3528 3528 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 3529 3529 3530 IEM_MC_ADVANCE_RIP ();3530 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3531 3531 IEM_MC_END(); 3532 3532 } … … 3551 3551 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 3552 3552 3553 IEM_MC_ADVANCE_RIP ();3553 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3554 3554 IEM_MC_END(); 3555 3555 } … … 3798 3798 } 3799 3799 3800 IEM_MC_ADVANCE_RIP ();3800 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3801 3801 IEM_MC_END(); 3802 3802 } … … 3836 3836 } 3837 3837 3838 IEM_MC_ADVANCE_RIP ();3838 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3839 3839 IEM_MC_END(); 3840 3840 } … … 3913 3913 IEM_MC_STORE_GREG_U64(IEM_GET_MODRM_RM(pVCpu, bRm), u64Tmp); 3914 3914 3915 IEM_MC_ADVANCE_RIP ();3915 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3916 3916 IEM_MC_END(); 3917 3917 } … … 3931 3931 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u64Tmp); 3932 3932 3933 IEM_MC_ADVANCE_RIP ();3933 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3934 3934 IEM_MC_END(); 3935 3935 } … … 3963 3963 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_RM(pVCpu, bRm), u32Tmp); 3964 3964 3965 IEM_MC_ADVANCE_RIP ();3965 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3966 3966 IEM_MC_END(); 3967 3967 } … … 3981 3981 IEM_MC_STORE_MEM_U32(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u32Tmp); 3982 3982 3983 IEM_MC_ADVANCE_RIP ();3983 IEM_MC_ADVANCE_RIP_AND_FINISH(); 3984 3984 IEM_MC_END(); 3985 3985 } … … 4014 4014 IEM_MC_COPY_YREG_U64_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), 4015 4015 IEM_GET_MODRM_RM(pVCpu, bRm)); 4016 IEM_MC_ADVANCE_RIP ();4016 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4017 4017 IEM_MC_END(); 4018 4018 } … … 4034 4034 IEM_MC_STORE_YREG_U64_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 4035 4035 4036 IEM_MC_ADVANCE_RIP ();4036 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4037 4037 IEM_MC_END(); 4038 4038 } … … 4075 4075 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_RM(pVCpu, bRm), 4076 4076 IEM_GET_MODRM_REG(pVCpu, bRm)); 4077 IEM_MC_ADVANCE_RIP ();4077 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4078 4078 IEM_MC_END(); 4079 4079 } … … 4095 4095 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u128Tmp); 4096 4096 4097 IEM_MC_ADVANCE_RIP ();4097 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4098 4098 IEM_MC_END(); 4099 4099 } … … 4115 4115 IEM_MC_STORE_MEM_U256_ALIGN_AVX(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u256Tmp); 4116 4116 4117 IEM_MC_ADVANCE_RIP ();4117 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4118 4118 IEM_MC_END(); 4119 4119 } … … 4151 4151 IEM_MC_COPY_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_RM(pVCpu, bRm), 4152 4152 IEM_GET_MODRM_REG(pVCpu, bRm)); 4153 IEM_MC_ADVANCE_RIP ();4153 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4154 4154 IEM_MC_END(); 4155 4155 } … … 4171 4171 IEM_MC_STORE_MEM_U128(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u128Tmp); 4172 4172 4173 IEM_MC_ADVANCE_RIP ();4173 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4174 4174 IEM_MC_END(); 4175 4175 } … … 4191 4191 IEM_MC_STORE_MEM_U256(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, u256Tmp); 4192 4192 4193 IEM_MC_ADVANCE_RIP ();4193 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4194 4194 IEM_MC_END(); 4195 4195 } … … 4460 4460 puDst, puSrc, u16Src, bEvilArg); 4461 4461 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 4462 IEM_MC_ADVANCE_RIP ();4462 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4463 4463 IEM_MC_END(); 4464 4464 } … … 4488 4488 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 4489 4489 4490 IEM_MC_ADVANCE_RIP ();4490 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4491 4491 IEM_MC_END(); 4492 4492 } … … 4525 4525 pu16Dst, puSrc, bEvilArg); 4526 4526 IEM_MC_STORE_GREG_U32(IEM_GET_MODRM_REG(pVCpu, bRm), u16Dst); 4527 IEM_MC_ADVANCE_RIP ();4527 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4528 4528 IEM_MC_END(); 4529 4529 return VINF_SUCCESS; … … 4565 4565 iemAImpl_ ## a_Instr ## _u256_fallback), puDst, puSrc1, puSrc2, bEvilArg); \ 4566 4566 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uDst); \ 4567 IEM_MC_ADVANCE_RIP (); \4567 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 4568 4568 IEM_MC_END(); \ 4569 4569 } \ … … 4585 4585 iemAImpl_ ## a_Instr ## _u128_fallback), puDst, puSrc1, puSrc2, bEvilArg); \ 4586 4586 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); \ 4587 IEM_MC_ADVANCE_RIP (); \4587 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 4588 4588 IEM_MC_END(); \ 4589 4589 } \ … … 4615 4615 iemAImpl_ ## a_Instr ## _u256_fallback), puDst, puSrc1, puSrc2, bEvilArg); \ 4616 4616 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); \ 4617 IEM_MC_ADVANCE_RIP (); \4617 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 4618 4618 IEM_MC_END(); \ 4619 4619 } \ … … 4638 4638 iemAImpl_ ## a_Instr ## _u128_fallback), puDst, puSrc1, puSrc2, bEvilArg); \ 4639 4639 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); \ 4640 IEM_MC_ADVANCE_RIP (); \4640 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 4641 4641 IEM_MC_END(); \ 4642 4642 } \ … … 4762 4762 IEM_MC_COPY_YREG_U64_ZX_VLMAX(IEM_GET_MODRM_RM(pVCpu, bRm), 4763 4763 IEM_GET_MODRM_REG(pVCpu, bRm)); 4764 IEM_MC_ADVANCE_RIP ();4764 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4765 4765 IEM_MC_END(); 4766 4766 } … … 4782 4782 IEM_MC_STORE_MEM_U64(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 4783 4783 4784 IEM_MC_ADVANCE_RIP ();4784 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4785 4785 IEM_MC_END(); 4786 4786 } … … 4816 4816 IEM_MC_CALL_VOID_AIMPL_2(IEM_SELECT_HOST_OR_FALLBACK(fAvx2, iemAImpl_vpmovmskb_u256, 4817 4817 iemAImpl_vpmovmskb_u256_fallback), puDst, puSrc); 4818 IEM_MC_ADVANCE_RIP ();4818 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4819 4819 IEM_MC_END(); 4820 4820 } … … 4829 4829 IEM_MC_REF_XREG_U128_CONST(puSrc, IEM_GET_MODRM_RM(pVCpu, bRm)); 4830 4830 IEM_MC_CALL_VOID_AIMPL_2(iemAImpl_pmovmskb_u128, puDst, puSrc); 4831 IEM_MC_ADVANCE_RIP ();4831 IEM_MC_ADVANCE_RIP_AND_FINISH(); 4832 4832 IEM_MC_END(); 4833 4833 } … … 5043 5043 IEM_MC_STORE_MEM_U128_ALIGN_SSE(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 5044 5044 5045 IEM_MC_ADVANCE_RIP ();5045 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5046 5046 IEM_MC_END(); 5047 5047 } … … 5063 5063 IEM_MC_STORE_MEM_U256_ALIGN_AVX(pVCpu->iem.s.iEffSeg, GCPtrEffSrc, uSrc); 5064 5064 5065 IEM_MC_ADVANCE_RIP ();5065 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5066 5066 IEM_MC_END(); 5067 5067 } … … 5205 5205 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u128Tmp); 5206 5206 5207 IEM_MC_ADVANCE_RIP ();5207 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5208 5208 IEM_MC_END(); 5209 5209 } … … 5225 5225 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), u256Tmp); 5226 5226 5227 IEM_MC_ADVANCE_RIP ();5227 IEM_MC_ADVANCE_RIP_AND_FINISH(); 5228 5228 IEM_MC_END(); 5229 5229 } -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsVexMap2.cpp.h
r96438 r97356 235 235 IEM_MC_CALL_VOID_AIMPL_3(IEM_SELECT_HOST_OR_FALLBACK(fAvx, iemAImpl_vptest_u256, iemAImpl_vptest_u256_fallback), 236 236 puSrc1, puSrc2, pEFlags); 237 IEM_MC_ADVANCE_RIP ();237 IEM_MC_ADVANCE_RIP_AND_FINISH(); 238 238 IEM_MC_END(); 239 239 } … … 251 251 IEM_MC_REF_EFLAGS(pEFlags); 252 252 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_ptest_u128, puSrc1, puSrc2, pEFlags); 253 IEM_MC_ADVANCE_RIP ();253 IEM_MC_ADVANCE_RIP_AND_FINISH(); 254 254 IEM_MC_END(); 255 255 } … … 281 281 puSrc1, puSrc2, pEFlags); 282 282 283 IEM_MC_ADVANCE_RIP ();283 IEM_MC_ADVANCE_RIP_AND_FINISH(); 284 284 IEM_MC_END(); 285 285 } … … 303 303 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_ptest_u128, puSrc1, puSrc2, pEFlags); 304 304 305 IEM_MC_ADVANCE_RIP ();305 IEM_MC_ADVANCE_RIP_AND_FINISH(); 306 306 IEM_MC_END(); 307 307 } … … 384 384 puDst, puSrc); \ 385 385 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uDst); \ 386 IEM_MC_ADVANCE_RIP (); \386 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 387 387 IEM_MC_END(); \ 388 388 } \ … … 401 401 puDst, uSrc); \ 402 402 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); \ 403 IEM_MC_ADVANCE_RIP (); \403 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 404 404 IEM_MC_END(); \ 405 405 } \ … … 427 427 puDst, puSrc); \ 428 428 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); \ 429 IEM_MC_ADVANCE_RIP (); \429 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 430 430 IEM_MC_END(); \ 431 431 } \ … … 446 446 puDst, uSrc); \ 447 447 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); \ 448 IEM_MC_ADVANCE_RIP (); \448 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 449 449 IEM_MC_END(); \ 450 450 } \ … … 561 561 IEM_MC_STORE_YREG_U128_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 562 562 563 IEM_MC_ADVANCE_RIP ();563 IEM_MC_ADVANCE_RIP_AND_FINISH(); 564 564 IEM_MC_END(); 565 565 } … … 592 592 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uSrc); 593 593 594 IEM_MC_ADVANCE_RIP ();594 IEM_MC_ADVANCE_RIP_AND_FINISH(); 595 595 IEM_MC_END(); 596 596 } … … 800 800 puDst, puSrc); 801 801 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 802 IEM_MC_ADVANCE_RIP ();802 IEM_MC_ADVANCE_RIP_AND_FINISH(); 803 803 IEM_MC_END(); 804 804 } … … 825 825 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 826 826 827 IEM_MC_ADVANCE_RIP ();827 IEM_MC_ADVANCE_RIP_AND_FINISH(); 828 828 IEM_MC_END(); 829 829 } … … 1127 1127 IEM_MC_CALL_VOID_AIMPL_4(IEM_SELECT_HOST_OR_FALLBACK(fBmi1, iemAImpl_andn_u64, iemAImpl_andn_u64_fallback), 1128 1128 pDst, uSrc1, uSrc2, pEFlags); 1129 IEM_MC_ADVANCE_RIP ();1129 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1130 1130 IEM_MC_END(); 1131 1131 } … … 1144 1144 pDst, uSrc1, uSrc2, pEFlags); 1145 1145 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); 1146 IEM_MC_ADVANCE_RIP ();1146 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1147 1147 IEM_MC_END(); 1148 1148 } … … 1169 1169 IEM_MC_CALL_VOID_AIMPL_4(IEM_SELECT_HOST_OR_FALLBACK(fBmi1, iemAImpl_andn_u64, iemAImpl_andn_u64_fallback), 1170 1170 pDst, uSrc1, uSrc2, pEFlags); 1171 IEM_MC_ADVANCE_RIP ();1171 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1172 1172 IEM_MC_END(); 1173 1173 } … … 1189 1189 pDst, uSrc1, uSrc2, pEFlags); 1190 1190 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); 1191 IEM_MC_ADVANCE_RIP ();1191 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1192 1192 IEM_MC_END(); 1193 1193 } … … 1228 1228 IEM_MC_CALL_VOID_AIMPL_3(IEM_SELECT_HOST_OR_FALLBACK(fBmi1, iemAImpl_ ## a_Instr ## _u64, \ 1229 1229 iemAImpl_ ## a_Instr ## _u64_fallback), pDst, uSrc, pEFlags); \ 1230 IEM_MC_ADVANCE_RIP (); \1230 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1231 1231 IEM_MC_END(); \ 1232 1232 } \ … … 1243 1243 iemAImpl_ ## a_Instr ## _u32_fallback), pDst, uSrc, pEFlags); \ 1244 1244 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1245 IEM_MC_ADVANCE_RIP (); \1245 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1246 1246 IEM_MC_END(); \ 1247 1247 } \ … … 1266 1266 IEM_MC_CALL_VOID_AIMPL_3(IEM_SELECT_HOST_OR_FALLBACK(fBmi1, iemAImpl_ ## a_Instr ## _u64, \ 1267 1267 iemAImpl_ ## a_Instr ## _u64_fallback), pDst, uSrc, pEFlags); \ 1268 IEM_MC_ADVANCE_RIP (); \1268 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1269 1269 IEM_MC_END(); \ 1270 1270 } \ … … 1284 1284 iemAImpl_ ## a_Instr ## _u32_fallback), pDst, uSrc, pEFlags); \ 1285 1285 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1286 IEM_MC_ADVANCE_RIP (); \1286 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1287 1287 IEM_MC_END(); \ 1288 1288 } \ … … 1383 1383 iemAImpl_ ## a_Instr ## _u64_fallback), \ 1384 1384 pDst, uSrc1, uSrc2, pEFlags); \ 1385 IEM_MC_ADVANCE_RIP (); \1385 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1386 1386 IEM_MC_END(); \ 1387 1387 } \ … … 1401 1401 pDst, uSrc1, uSrc2, pEFlags); \ 1402 1402 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1403 IEM_MC_ADVANCE_RIP (); \1403 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1404 1404 IEM_MC_END(); \ 1405 1405 } \ … … 1427 1427 iemAImpl_ ## a_Instr ## _u64_fallback), \ 1428 1428 pDst, uSrc1, uSrc2, pEFlags); \ 1429 IEM_MC_ADVANCE_RIP (); \1429 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1430 1430 IEM_MC_END(); \ 1431 1431 } \ … … 1448 1448 pDst, uSrc1, uSrc2, pEFlags); \ 1449 1449 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1450 IEM_MC_ADVANCE_RIP (); \1450 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1451 1451 IEM_MC_END(); \ 1452 1452 } \ … … 1477 1477 IEM_MC_CALL_VOID_AIMPL_3(IEM_SELECT_HOST_OR_FALLBACK(a_fFeatureMember, iemAImpl_ ## a_Instr ## _u64, \ 1478 1478 iemAImpl_ ## a_Instr ## _u64_fallback), pDst, uSrc1, uSrc2); \ 1479 IEM_MC_ADVANCE_RIP (); \1479 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1480 1480 IEM_MC_END(); \ 1481 1481 } \ … … 1492 1492 iemAImpl_ ## a_Instr ## _u32_fallback), pDst, uSrc1, uSrc2); \ 1493 1493 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1494 IEM_MC_ADVANCE_RIP (); \1494 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1495 1495 IEM_MC_END(); \ 1496 1496 } \ … … 1515 1515 IEM_MC_CALL_VOID_AIMPL_3(IEM_SELECT_HOST_OR_FALLBACK(a_fFeatureMember, iemAImpl_ ## a_Instr ## _u64, \ 1516 1516 iemAImpl_ ## a_Instr ## _u64_fallback), pDst, uSrc1, uSrc2); \ 1517 IEM_MC_ADVANCE_RIP (); \1517 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1518 1518 IEM_MC_END(); \ 1519 1519 } \ … … 1533 1533 iemAImpl_ ## a_Instr ## _u32_fallback), pDst, uSrc1, uSrc2); \ 1534 1534 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1535 IEM_MC_ADVANCE_RIP (); \1535 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1536 1536 IEM_MC_END(); \ 1537 1537 } \ … … 1571 1571 iemAImpl_ ## a_Instr ## _u64, \ 1572 1572 iemAImpl_ ## a_Instr ## _u64_fallback), pDst, uSrc1, uSrc2); \ 1573 IEM_MC_ADVANCE_RIP (); \1573 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1574 1574 IEM_MC_END(); \ 1575 1575 } \ … … 1587 1587 iemAImpl_ ## a_Instr ## _u32_fallback), pDst, uSrc1, uSrc2); \ 1588 1588 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1589 IEM_MC_ADVANCE_RIP (); \1589 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1590 1590 IEM_MC_END(); \ 1591 1591 } \ … … 1611 1611 iemAImpl_ ## a_Instr ## _u64, \ 1612 1612 iemAImpl_ ## a_Instr ## _u64_fallback), pDst, uSrc1, uSrc2); \ 1613 IEM_MC_ADVANCE_RIP (); \1613 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1614 1614 IEM_MC_END(); \ 1615 1615 } \ … … 1630 1630 iemAImpl_ ## a_Instr ## _u32_fallback), pDst, uSrc1, uSrc2); \ 1631 1631 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); \ 1632 IEM_MC_ADVANCE_RIP (); \1632 IEM_MC_ADVANCE_RIP_AND_FINISH(); \ 1633 1633 IEM_MC_END(); \ 1634 1634 } \ … … 1684 1684 IEM_MC_CALL_VOID_AIMPL_4(IEM_SELECT_HOST_OR_FALLBACK(fBmi2, iemAImpl_mulx_u64, iemAImpl_mulx_u64_fallback), 1685 1685 pDst1, pDst2, uSrc1, uSrc2); 1686 IEM_MC_ADVANCE_RIP ();1686 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1687 1687 IEM_MC_END(); 1688 1688 } … … 1702 1702 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst2); 1703 1703 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst1); 1704 IEM_MC_ADVANCE_RIP ();1704 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1705 1705 IEM_MC_END(); 1706 1706 } … … 1727 1727 IEM_MC_CALL_VOID_AIMPL_4(IEM_SELECT_HOST_OR_FALLBACK(fBmi2, iemAImpl_mulx_u64, iemAImpl_mulx_u64_fallback), 1728 1728 pDst1, pDst2, uSrc1, uSrc2); 1729 IEM_MC_ADVANCE_RIP ();1729 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1730 1730 IEM_MC_END(); 1731 1731 } … … 1748 1748 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst2); 1749 1749 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst1); 1750 IEM_MC_ADVANCE_RIP ();1750 IEM_MC_ADVANCE_RIP_AND_FINISH(); 1751 1751 IEM_MC_END(); 1752 1752 } -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsVexMap3.cpp.h
r96652 r97356 69 69 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnU256, puDst, puSrc1, puSrc2, bImmArg); 70 70 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 71 IEM_MC_ADVANCE_RIP ();71 IEM_MC_ADVANCE_RIP_AND_FINISH(); 72 72 IEM_MC_END(); 73 73 } … … 88 88 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnU128, puDst, puSrc1, puSrc2, bImmArg); 89 89 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 90 IEM_MC_ADVANCE_RIP ();90 IEM_MC_ADVANCE_RIP_AND_FINISH(); 91 91 IEM_MC_END(); 92 92 } … … 120 120 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 121 121 122 IEM_MC_ADVANCE_RIP ();122 IEM_MC_ADVANCE_RIP_AND_FINISH(); 123 123 IEM_MC_END(); 124 124 } … … 145 145 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 146 146 147 IEM_MC_ADVANCE_RIP ();147 IEM_MC_ADVANCE_RIP_AND_FINISH(); 148 148 IEM_MC_END(); 149 149 } … … 317 317 puDst, puSrc1, puSrc2, bImmArg); 318 318 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 319 IEM_MC_ADVANCE_RIP ();319 IEM_MC_ADVANCE_RIP_AND_FINISH(); 320 320 IEM_MC_END(); 321 321 } … … 346 346 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 347 347 348 IEM_MC_ADVANCE_RIP ();348 IEM_MC_ADVANCE_RIP_AND_FINISH(); 349 349 IEM_MC_END(); 350 350 } … … 399 399 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnU256, puDst, puSrc1, puSrc2, puSrc3); 400 400 IEM_MC_STORE_YREG_U256_ZX_VLMAX(IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 401 IEM_MC_ADVANCE_RIP ();401 IEM_MC_ADVANCE_RIP_AND_FINISH(); 402 402 IEM_MC_END(); 403 403 } … … 420 420 IEM_MC_CALL_VOID_AIMPL_4(pImpl->pfnU128, puDst, puSrc1, puSrc2, puSrc3); 421 421 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 422 IEM_MC_ADVANCE_RIP ();422 IEM_MC_ADVANCE_RIP_AND_FINISH(); 423 423 IEM_MC_END(); 424 424 } … … 456 456 IEM_MC_STORE_YREG_U256_ZX_VLMAX( IEM_GET_MODRM_REG(pVCpu, bRm), uDst); 457 457 458 IEM_MC_ADVANCE_RIP ();458 IEM_MC_ADVANCE_RIP_AND_FINISH(); 459 459 IEM_MC_END(); 460 460 } … … 483 483 IEM_MC_CLEAR_YREG_128_UP( IEM_GET_MODRM_REG(pVCpu, bRm)); 484 484 485 IEM_MC_ADVANCE_RIP ();485 IEM_MC_ADVANCE_RIP_AND_FINISH(); 486 486 IEM_MC_END(); 487 487 } … … 663 663 IEM_MC_FETCH_GREG_U64(uSrc1, IEM_GET_MODRM_RM(pVCpu, bRm)); 664 664 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_rorx_u64, pDst, uSrc1, uSrc2); 665 IEM_MC_ADVANCE_RIP ();665 IEM_MC_ADVANCE_RIP_AND_FINISH(); 666 666 IEM_MC_END(); 667 667 } … … 676 676 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_rorx_u32, pDst, uSrc1, uSrc2); 677 677 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); 678 IEM_MC_ADVANCE_RIP ();678 IEM_MC_ADVANCE_RIP_AND_FINISH(); 679 679 IEM_MC_END(); 680 680 } … … 698 698 IEM_MC_REF_GREG_U64(pDst, IEM_GET_MODRM_REG(pVCpu, bRm)); 699 699 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_rorx_u64, pDst, uSrc1, uSrc2); 700 IEM_MC_ADVANCE_RIP ();700 IEM_MC_ADVANCE_RIP_AND_FINISH(); 701 701 IEM_MC_END(); 702 702 } … … 715 715 IEM_MC_CALL_VOID_AIMPL_3(iemAImpl_rorx_u32, pDst, uSrc1, uSrc2); 716 716 IEM_MC_CLEAR_HIGH_GREG_U64_BY_REF(pDst); 717 IEM_MC_ADVANCE_RIP ();717 IEM_MC_ADVANCE_RIP_AND_FINISH(); 718 718 IEM_MC_END(); 719 719 } -
trunk/src/VBox/VMM/include/IEMMc.h
r97350 r97356 53 53 54 54 55 #define IEM_MC_ADVANCE_RIP() iemRegUpdateRipAndClearRF(pVCpu) 55 /** Advances RIP and finishes the instruction. 56 * This may include raising debug exceptions and such. 57 * @todo Make this be the return point, so we can get unreachable code erros 58 * if not the last MC statement. */ 59 #define IEM_MC_ADVANCE_RIP_AND_FINISH() iemRegUpdateRipAndClearRF(pVCpu) 56 60 #define IEM_MC_REL_JMP_S8(a_i8) IEM_MC_RETURN_ON_FAILURE(iemRegRipRelativeJumpS8(pVCpu, a_i8)) 57 61 #define IEM_MC_REL_JMP_S16(a_i16) IEM_MC_RETURN_ON_FAILURE(iemRegRipRelativeJumpS16(pVCpu, a_i16)) -
trunk/src/VBox/VMM/testcase/tstIEMCheckMc.cpp
r97350 r97356 575 575 } 576 576 577 #define IEM_MC_ADVANCE_RIP () do { (void)fMcBegin; } while (0)577 #define IEM_MC_ADVANCE_RIP_AND_FINISH() do { (void)fMcBegin; return VINF_SUCCESS; } while (0) 578 578 #define IEM_MC_REL_JMP_S8(a_i8) do { (void)fMcBegin; CHK_TYPE(int8_t, a_i8); } while (0) 579 579 #define IEM_MC_REL_JMP_S16(a_i16) do { (void)fMcBegin; CHK_TYPE(int16_t, a_i16); } while (0)
Note:
See TracChangeset
for help on using the changeset viewer.