Changeset 103934 in vbox
- Timestamp:
- Mar 20, 2024 8:21:56 AM (13 months ago)
- svn:sync-xref-src-repo-rev:
- 162308
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllInstPython.py
r103933 r103934 3067 3067 'IEM_MC_FETCH_MEM_R64': (McBlock.parseMcGeneric, True, True, False, ), 3068 3068 'IEM_MC_FETCH_MEM_R80': (McBlock.parseMcGeneric, True, True, False, ), 3069 'IEM_MC_FETCH_MEM_U128': (McBlock.parseMcGeneric, True, True, False,),3069 'IEM_MC_FETCH_MEM_U128': (McBlock.parseMcGeneric, True, True, g_fNativeSimd), 3070 3070 'IEM_MC_FETCH_MEM_U128_ALIGN_SSE': (McBlock.parseMcGeneric, True, True, g_fNativeSimd), 3071 3071 'IEM_MC_FETCH_MEM_U128_NO_AC': (McBlock.parseMcGeneric, True, True, g_fNativeSimd), -
trunk/src/VBox/VMM/VMMAll/IEMAllN8vePython.py
r103916 r103934 141 141 'IEM_MC_FETCH_MEM_FLAT_U128_ALIGN_SSE': (None, True, True, g_fNativeSimd), 142 142 'IEM_MC_FETCH_MEM_FLAT_U128_NO_AC': (None, True, True, g_fNativeSimd), 143 'IEM_MC_FETCH_MEM_FLAT_U128': (None, True, True, False,),143 'IEM_MC_FETCH_MEM_FLAT_U128': (None, True, True, g_fNativeSimd), 144 144 'IEM_MC_FETCH_MEM_FLAT_U16_DISP': (None, True, True, True, ), 145 145 'IEM_MC_FETCH_MEM_FLAT_U16_SX_U32': (None, True, True, True, ), -
trunk/src/VBox/VMM/VMMAll/IEMAllN8veRecompFuncs.h
r103933 r103934 5372 5372 #ifdef IEMNATIVE_WITH_SIMD_REG_ALLOCATOR 5373 5373 /* 128-bit segmented: */ 5374 #define IEM_MC_FETCH_MEM_U128(a_u128Dst, a_iSeg, a_GCPtrMem) \ 5375 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u128Dst, a_iSeg, a_GCPtrMem, \ 5376 sizeof(RTUINT128U), sizeof(RTUINT128U) - 1, kIemNativeEmitMemOp_Fetch, \ 5377 (uintptr_t)iemNativeHlpMemFetchDataU128, pCallEntry->idxInstr) 5378 5374 5379 #define IEM_MC_FETCH_MEM_U128_ALIGN_SSE(a_u128Dst, a_iSeg, a_GCPtrMem) \ 5375 5380 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u128Dst, a_iSeg, a_GCPtrMem, \ … … 5377 5382 (uintptr_t)iemNativeHlpMemFetchDataU128AlignedSse, pCallEntry->idxInstr) 5378 5383 5384 #define IEM_MC_FETCH_MEM_U128_NO_AC(a_u128Dst, a_iSeg, a_GCPtrMem) \ 5385 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u128Dst, a_iSeg, a_GCPtrMem, \ 5386 sizeof(RTUINT128U), sizeof(RTUINT128U) - 1, kIemNativeEmitMemOp_Fetch, \ 5387 (uintptr_t)iemNativeHlpMemFetchDataU128NoAc, pCallEntry->idxInstr) 5388 5379 5389 /* 128-bit flat: */ 5390 #define IEM_MC_FETCH_MEM_FLAT_U128(a_u128Dst, a_GCPtrMem) \ 5391 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u128Dst, UINT8_MAX, a_GCPtrMem, \ 5392 sizeof(RTUINT128U), sizeof(RTUINT128U) - 1, kIemNativeEmitMemOp_Fetch, \ 5393 (uintptr_t)iemNativeHlpMemFlatFetchDataU128, pCallEntry->idxInstr) 5394 5380 5395 #define IEM_MC_FETCH_MEM_FLAT_U128_ALIGN_SSE(a_u128Dst, a_GCPtrMem) \ 5381 5396 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u128Dst, UINT8_MAX, a_GCPtrMem, \ … … 5383 5398 (uintptr_t)iemNativeHlpMemFlatFetchDataU128AlignedSse, pCallEntry->idxInstr) 5384 5399 5385 /* 128-bit segmented: */5386 #define IEM_MC_FETCH_MEM_U128_NO_AC(a_u128Dst, a_iSeg, a_GCPtrMem) \5387 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u128Dst, a_iSeg, a_GCPtrMem, \5388 sizeof(RTUINT128U), sizeof(RTUINT128U) - 1, kIemNativeEmitMemOp_Fetch, \5389 (uintptr_t)iemNativeHlpMemFetchDataU128NoAc, pCallEntry->idxInstr)5390 5391 /* 128-bit flat: */5392 5400 #define IEM_MC_FETCH_MEM_FLAT_U128_NO_AC(a_u128Dst, a_GCPtrMem) \ 5393 5401 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u128Dst, UINT8_MAX, a_GCPtrMem, \ -
trunk/src/VBox/VMM/VMMAll/IEMAllN8veRecompiler.cpp
r103916 r103934 1875 1875 * Used by TB code to load 128-bit data w/ segmentation. 1876 1876 */ 1877 IEM_DECL_NATIVE_HLP_DEF(void, iemNativeHlpMemFetchDataU128,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PRTUINT128U pu128Dst)) 1878 { 1879 #ifdef IEMNATIVE_WITH_TLB_LOOKUP_FETCH 1880 iemMemFetchDataU128SafeJmp(pVCpu, pu128Dst, iSegReg, GCPtrMem); 1881 #else 1882 iemMemFetchDataU128Jmp(pVCpu, pu128Dst, iSegReg, GCPtrMem); 1883 #endif 1884 } 1885 1886 1887 /** 1888 * Used by TB code to load 128-bit data w/ segmentation. 1889 */ 1877 1890 IEM_DECL_NATIVE_HLP_DEF(void, iemNativeHlpMemFetchDataU128AlignedSse,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PRTUINT128U pu128Dst)) 1878 1891 { … … 2208 2221 2209 2222 #ifdef IEMNATIVE_WITH_SIMD_REG_ALLOCATOR 2223 /** 2224 * Used by TB code to load unsigned 128-bit data w/ flat address. 2225 */ 2226 IEM_DECL_NATIVE_HLP_DEF(void, iemNativeHlpMemFlatFetchDataU128,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PRTUINT128U pu128Dst)) 2227 { 2228 #ifdef IEMNATIVE_WITH_TLB_LOOKUP_FETCH 2229 return iemMemFetchDataU128SafeJmp(pVCpu, pu128Dst, UINT8_MAX, GCPtrMem); 2230 #else 2231 return iemMemFlatFetchDataU128Jmp(pVCpu, pu128Dst, UINT8_MAX, GCPtrMem); 2232 #endif 2233 } 2234 2235 2210 2236 /** 2211 2237 * Used by TB code to load unsigned 128-bit data w/ flat address. -
trunk/src/VBox/VMM/include/IEMN8veRecompiler.h
r103916 r103934 1646 1646 IEM_DECL_NATIVE_HLP_PROTO(uint64_t, iemNativeHlpMemFetchDataU64,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg)); 1647 1647 #ifdef IEMNATIVE_WITH_SIMD_REG_ALLOCATOR 1648 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFetchDataU128,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PRTUINT128U pu128Dst)); 1648 1649 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFetchDataU128AlignedSse,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PRTUINT128U pu128Dst)); 1649 1650 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFetchDataU128NoAc,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PRTUINT128U pu128Dst)); … … 1673 1674 IEM_DECL_NATIVE_HLP_PROTO(uint64_t, iemNativeHlpMemFlatFetchDataU64,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem)); 1674 1675 #ifdef IEMNATIVE_WITH_SIMD_REG_ALLOCATOR 1676 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFlatFetchDataU128,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PRTUINT128U pu128Dst)); 1675 1677 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFlatFetchDataU128AlignedSse,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PRTUINT128U pu128Dst)); 1676 1678 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFlatFetchDataU128NoAc,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PRTUINT128U pu128Dst));
Note:
See TracChangeset
for help on using the changeset viewer.