Changeset 106117 in vbox for trunk/src/VBox/VMM/VMMAll/target-x86
- Timestamp:
- Sep 23, 2024 1:59:08 PM (5 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/target-x86/IEMAllN8veEmit-x86.h
r106101 r106117 217 217 { 218 218 STAM_COUNTER_INC(&pReNative->pVCpu->iem.s.StatNativeEflSkippedLogical); 219 pReNative->fSkippingEFlags |= X86_EFL_STATUS_BITS; 219 220 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 220 221 off = iemNativeEmitOrImmIntoVCpuU32(pReNative, off, X86_EFL_STATUS_BITS, RT_UOFFSETOF(VMCPU, iem.s.fSkippingEFlags)); … … 290 291 IEMNATIVE_ASSERT_INSTR_BUF_ENSURE(pReNative, off); 291 292 292 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 293 #ifdef IEMNATIVE_WITH_EFLAGS_SKIPPING 294 pReNative->fSkippingEFlags &= ~X86_EFL_STATUS_BITS; 295 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 293 296 off = iemNativeEmitStoreImmToVCpuU32(pReNative, off, 0, RT_UOFFSETOF(VMCPU, iem.s.fSkippingEFlags)); 294 # endif 297 # endif 298 #endif 295 299 } 296 300 return off; … … 321 325 { 322 326 STAM_COUNTER_INC(&pReNative->pVCpu->iem.s.StatNativeEflSkippedArithmetic); 327 pReNative->fSkippingEFlags |= X86_EFL_STATUS_BITS; 323 328 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 324 329 off = iemNativeEmitOrImmIntoVCpuU32(pReNative, off, X86_EFL_STATUS_BITS, RT_UOFFSETOF(VMCPU, iem.s.fSkippingEFlags)); … … 328 333 #endif 329 334 { 330 #ifdef IEMNATIVE_ STRICT_EFLAGS_SKIPPING335 #ifdef IEMNATIVE_WITH_EFLAGS_SKIPPING 331 336 uint32_t fSkipped = 0; 332 337 #endif … … 485 490 IEMNATIVE_ASSERT_INSTR_BUF_ENSURE(pReNative, off); 486 491 487 #ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 492 #ifdef IEMNATIVE_WITH_EFLAGS_SKIPPING 493 pReNative->fSkippingEFlags = fSkipped; 494 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 488 495 off = iemNativeEmitStoreImmToVCpuU32(pReNative, off, fSkipped, RT_UOFFSETOF(VMCPU, iem.s.fSkippingEFlags)); 496 # endif 489 497 #endif 490 498 } … … 1572 1580 { 1573 1581 STAM_COUNTER_INC(&pReNative->pVCpu->iem.s.StatNativeEflSkippedShift); 1582 pReNative->fSkippingEFlags |= X86_EFL_STATUS_BITS; 1574 1583 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 1575 1584 off = iemNativeEmitOrImmIntoVCpuU32(pReNative, off, X86_EFL_STATUS_BITS, RT_UOFFSETOF(VMCPU, iem.s.fSkippingEFlags)); … … 1736 1745 IEMNATIVE_ASSERT_INSTR_BUF_ENSURE(pReNative, off); 1737 1746 1738 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 1747 #ifdef IEMNATIVE_WITH_EFLAGS_SKIPPING 1748 pReNative->fSkippingEFlags = 0; 1749 # ifdef IEMNATIVE_STRICT_EFLAGS_SKIPPING 1739 1750 off = iemNativeEmitStoreImmToVCpuU32(pReNative, off, 0, RT_UOFFSETOF(VMCPU, iem.s.fSkippingEFlags)); 1740 # endif 1751 # endif 1752 #endif 1741 1753 } 1742 1754 return off;
Note:
See TracChangeset
for help on using the changeset viewer.