Changeset 105877 in vbox for trunk/src/VBox/VMM/include
- Timestamp:
- Aug 27, 2024 11:17:09 PM (6 months ago)
- svn:sync-xref-src-repo-rev:
- 164597
- Location:
- trunk/src/VBox/VMM/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/include/IEMInternal.h
r105853 r105877 1448 1448 /* kIemTbDbgEntryType_DelayedPcUpdate. */ 1449 1449 uint32_t uType : 4; 1450 /** Number of instructions skipped. */ 1451 uint32_t cInstrSkipped : 8; 1450 1452 /* The instruction offset added to the program counter. */ 1451 uint32_t offPc : 14; 1452 /** Number of instructions skipped. */ 1453 uint32_t cInstrSkipped : 14; 1453 int32_t offPc : 20; 1454 1454 } DelayedPcUpdate; 1455 1455 #endif -
trunk/src/VBox/VMM/include/IEMN8veRecompiler.h
r105863 r105877 1258 1258 * as long as possible. */ 1259 1259 int64_t offPc; 1260 # if defined(IEMNATIVE_WITH_TB_DEBUG_INFO) || defined(VBOX_WITH_STATISTICS)1261 /** Statistics: The idxInstr+1 value at the last PC update. */1262 uint8_t idxInstrPlusOneOfLastPcUpdate;1263 # endif1264 1260 # ifdef IEMNATIVE_WITH_DELAYED_PC_UPDATING_DEBUG 1265 1261 /** Set after we've loaded PC into uPcUpdatingDebug at the first update. */ … … 1463 1459 #endif 1464 1460 1461 #if defined(IEMNATIVE_WITH_TB_DEBUG_INFO) || defined(VBOX_WITH_STATISTICS) 1462 /** Statistics: The idxInstr+1 value at the last PC update. */ 1463 uint8_t idxInstrPlusOneOfLastPcUpdate; 1464 #endif 1465 1465 1466 #ifdef IEMNATIVE_WITH_TB_DEBUG_INFO 1466 1467 /** Number of debug info entries allocated for pDbgInfo. */ 1467 1468 uint32_t cDbgInfoAlloc; 1468 uint32_t uPadding;1469 1469 /** Debug info. */ 1470 1470 PIEMTBDBG pDbgInfo; -
trunk/src/VBox/VMM/include/IEMN8veRecompilerEmit.h
r105856 r105877 1059 1059 */ 1060 1060 DECL_INLINE_THROW(uint32_t) 1061 iemNativeEmitStoreImmToVCpuU8(PIEMRECOMPILERSTATE pReNative, uint32_t off, uint8_t bImm, uint32_t offVCpu) 1061 iemNativeEmitStoreImmToVCpuU8(PIEMRECOMPILERSTATE pReNative, uint32_t off, uint8_t bImm, uint32_t offVCpu, 1062 uint8_t idxRegTmp = UINT8_MAX) 1062 1063 { 1063 1064 #ifdef RT_ARCH_AMD64 … … 1068 1069 pbCodeBuf[off++] = bImm; 1069 1070 IEMNATIVE_ASSERT_INSTR_BUF_ENSURE(pReNative, off); 1071 RT_NOREF(idxRegTmp); 1070 1072 1071 1073 #elif defined(RT_ARCH_ARM64) 1072 1074 /* Cannot use IEMNATIVE_REG_FIXED_TMP0 for the immediate as that's used by iemNativeEmitGprByVCpuLdSt. */ 1073 uint8_t const idxRegImm = iemNativeRegAllocTmpImm(pReNative, &off, bImm); 1074 off = iemNativeEmitGprByVCpuLdSt(pReNative, off, idxRegImm, offVCpu, kArmv8A64InstrLdStType_St_Byte, sizeof(uint8_t)); 1075 iemNativeRegFreeTmpImm(pReNative, idxRegImm); 1075 if (idxRegTmp != UINT8_MAX) 1076 { 1077 Assert(idxRegTmp != IEMNATIVE_REG_FIXED_TMP0); 1078 off = iemNativeEmitLoadGprImm32(pReNative, off, idxRegTmp, bImm); 1079 off = iemNativeEmitGprByVCpuLdSt(pReNative, off, idxRegTmp, offVCpu, kArmv8A64InstrLdStType_St_Byte, sizeof(uint8_t)); 1080 } 1081 else 1082 { 1083 uint8_t const idxRegImm = iemNativeRegAllocTmpImm(pReNative, &off, bImm); 1084 off = iemNativeEmitGprByVCpuLdSt(pReNative, off, idxRegImm, offVCpu, kArmv8A64InstrLdStType_St_Byte, sizeof(uint8_t)); 1085 iemNativeRegFreeTmpImm(pReNative, idxRegImm); 1086 } 1076 1087 1077 1088 #else
Note:
See TracChangeset
for help on using the changeset viewer.