Changeset 103953 in vbox
- Timestamp:
- Mar 20, 2024 12:29:21 PM (11 months ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllInstPython.py
r103952 r103953 3344 3344 'IEM_MC_STORE_MEM_U256': (McBlock.parseMcGeneric, True, True, False, ), 3345 3345 'IEM_MC_STORE_MEM_U256_NO_AC': (McBlock.parseMcGeneric, True, True, g_fNativeSimd), 3346 'IEM_MC_STORE_MEM_U256_ALIGN_AVX': (McBlock.parseMcGeneric, True, True, False,),3346 'IEM_MC_STORE_MEM_U256_ALIGN_AVX': (McBlock.parseMcGeneric, True, True, g_fNativeSimd), 3347 3347 'IEM_MC_STORE_MEM_U32': (McBlock.parseMcGeneric, True, True, True, ), 3348 3348 'IEM_MC_STORE_MEM_U32_CONST': (McBlock.parseMcGeneric, True, True, True, ), -
trunk/src/VBox/VMM/VMMAll/IEMAllN8vePython.py
r103952 r103953 200 200 'IEM_MC_STORE_MEM_FLAT_U256': (None, True, True, False, ), 201 201 'IEM_MC_STORE_MEM_FLAT_U256_NO_AC': (None, True, True, g_fNativeSimd), 202 'IEM_MC_STORE_MEM_FLAT_U256_ALIGN_AVX': (None, True, True, False,),202 'IEM_MC_STORE_MEM_FLAT_U256_ALIGN_AVX': (None, True, True, g_fNativeSimd), 203 203 'IEM_MC_STORE_MEM_FLAT_U32': (None, True, True, True, ), 204 204 'IEM_MC_STORE_MEM_FLAT_U32_CONST': (None, True, True, True, ), -
trunk/src/VBox/VMM/VMMAll/IEMAllN8veRecompFuncs.h
r103952 r103953 4721 4721 || pfnFunction == (uintptr_t)iemNativeHlpMemFlatFetchDataU256AlignedAvx)) 4722 4722 || ( enmOp == kIemNativeEmitMemOp_Store 4723 && (pfnFunction == (uintptr_t)iemNativeHlpMemFlatStoreDataU256NoAc))); 4723 && ( pfnFunction == (uintptr_t)iemNativeHlpMemFlatStoreDataU256NoAc 4724 || pfnFunction == (uintptr_t)iemNativeHlpMemFlatStoreDataU256AlignedAvx))); 4724 4725 break; 4725 4726 #endif … … 4782 4783 || pfnFunction == (uintptr_t)iemNativeHlpMemFetchDataU256AlignedAvx)) 4783 4784 || ( enmOp == kIemNativeEmitMemOp_Store 4784 && (pfnFunction == (uintptr_t)iemNativeHlpMemStoreDataU256NoAc))); 4785 && ( pfnFunction == (uintptr_t)iemNativeHlpMemStoreDataU256NoAc 4786 || pfnFunction == (uintptr_t)iemNativeHlpMemStoreDataU256AlignedAvx))); 4785 4787 break; 4786 4788 #endif … … 5571 5573 (uintptr_t)iemNativeHlpMemStoreDataU256NoAc, pCallEntry->idxInstr) 5572 5574 5575 # define IEM_MC_STORE_MEM_U256_ALIGN_AVX(a_iSeg, a_GCPtrMem, a_u256Value) \ 5576 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u256Value, a_iSeg, a_GCPtrMem, \ 5577 sizeof(RTUINT256U), sizeof(RTUINT256U) - 1, kIemNativeEmitMemOp_Store, \ 5578 (uintptr_t)iemNativeHlpMemStoreDataU256AlignedAvx, pCallEntry->idxInstr) 5579 5573 5580 5574 5581 # define IEM_MC_STORE_MEM_FLAT_U128_ALIGN_SSE(a_GCPtrMem, a_u128Value) \ … … 5587 5594 (uintptr_t)iemNativeHlpMemFlatStoreDataU256NoAc, pCallEntry->idxInstr) 5588 5595 5596 # define IEM_MC_STORE_MEM_FLAT_U256_ALIGN_AVX(a_GCPtrMem, a_u256Value) \ 5597 off = iemNativeEmitMemFetchStoreDataCommon(pReNative, off, a_u256Value, UINT8_MAX, a_GCPtrMem, \ 5598 sizeof(RTUINT256U), sizeof(RTUINT256U) - 1, kIemNativeEmitMemOp_Store, \ 5599 (uintptr_t)iemNativeHlpMemFlatStoreDataU256AlignedAvx, pCallEntry->idxInstr) 5589 5600 #endif 5590 5601 -
trunk/src/VBox/VMM/VMMAll/IEMAllN8veRecompiler.cpp
r103952 r103953 2028 2028 #endif 2029 2029 } 2030 2031 2032 /** 2033 * Used by TB code to store unsigned 256-bit data w/ segmentation. 2034 */ 2035 IEM_DECL_NATIVE_HLP_DEF(void, iemNativeHlpMemStoreDataU256AlignedAvx,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PCRTUINT256U pu256Src)) 2036 { 2037 #ifdef IEMNATIVE_WITH_TLB_LOOKUP_STORE 2038 iemMemStoreDataU256AlignedAvxSafeJmp(pVCpu, iSegReg, GCPtrMem, pu256Src); 2039 #else 2040 iemMemStoreDataU256AlignedAvxcJmp(pVCpu, iSegReg, GCPtrMem, pu256Src); 2041 #endif 2042 } 2030 2043 #endif 2031 2044 … … 2429 2442 #else 2430 2443 iemMemFlatStoreDataU256NoAcJmp(pVCpu, GCPtrMem, pu256Src); 2444 #endif 2445 } 2446 2447 2448 /** 2449 * Used by TB code to store unsigned 256-bit data w/ flat address. 2450 */ 2451 IEM_DECL_NATIVE_HLP_DEF(void, iemNativeHlpMemFlatStoreDataU256AlignedAvx,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PCRTUINT256U pu256Src)) 2452 { 2453 #ifdef IEMNATIVE_WITH_TLB_LOOKUP_STORE 2454 iemMemStoreDataU256AlignedAvxSafeJmp(pVCpu, UINT8_MAX, GCPtrMem, pu256Src); 2455 #else 2456 iemMemFlatStoreDataU256AlignedAvxJmp(pVCpu, GCPtrMem, pu256Src); 2431 2457 #endif 2432 2458 } -
trunk/src/VBox/VMM/include/IEMN8veRecompiler.h
r103952 r103953 1660 1660 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemStoreDataU128NoAc,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PCRTUINT128U pu128Src)); 1661 1661 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemStoreDataU256NoAc,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PCRTUINT256U pu256Src)); 1662 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemStoreDataU256AlignedAvx,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint8_t iSegReg, PCRTUINT256U pu256Src)); 1662 1663 #endif 1663 1664 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpStackStoreU16,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint16_t u16Value)); … … 1694 1695 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFlatStoreDataU128NoAc,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PCRTUINT128U pu128Src)); 1695 1696 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFlatStoreDataU256NoAc,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PCRTUINT256U pu256Src)); 1697 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpMemFlatStoreDataU256AlignedAvx,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, PCRTUINT256U pu256Src)); 1696 1698 #endif 1697 1699 IEM_DECL_NATIVE_HLP_PROTO(void, iemNativeHlpStackFlatStoreU16,(PVMCPUCC pVCpu, RTGCPTR GCPtrMem, uint16_t u16Value));
Note:
See TracChangeset
for help on using the changeset viewer.