diff --git a/pcsx2/GS/Renderers/DX12/GSDevice12.cpp b/pcsx2/GS/Renderers/DX12/GSDevice12.cpp index 307cbe0479..37aef7eeeb 100644 --- a/pcsx2/GS/Renderers/DX12/GSDevice12.cpp +++ b/pcsx2/GS/Renderers/DX12/GSDevice12.cpp @@ -624,6 +624,7 @@ bool GSDevice12::SetGPUTimingEnabled(bool enabled) bool GSDevice12::AllocatePreinitializedGPUBuffer(u32 size, ID3D12Resource** gpu_buffer, D3D12MA::Allocation** gpu_allocation, const std::function& fill_callback) { + // TODO(WCG847) - There is no proper barriers here. Fix D3D12_RESOURCE_STATE_GENERIC_READ and hardcoded macros // Try to place the fixed index buffer in GPU local memory. // Use the staging buffer to copy into it. const D3D12_RESOURCE_DESC rd = {D3D12_RESOURCE_DIMENSION_BUFFER, 0, size, 1, 1, 1, DXGI_FORMAT_UNKNOWN, {1, 0}, diff --git a/pcsx2/R5900OpcodeTables.cpp b/pcsx2/R5900OpcodeTables.cpp index e0e3515e01..eff9838968 100644 --- a/pcsx2/R5900OpcodeTables.cpp +++ b/pcsx2/R5900OpcodeTables.cpp @@ -77,7 +77,7 @@ namespace R5900 flags, \ NULL, \ ::R5900::Interpreter::OpcodeImpl::name, \ - nullptr, \ + nullptr, \ // TODO(WCG847): This is highly dangerous. Create appropriate fallbacks ::R5900::OpcodeDisasm::name \ } diff --git a/pcsx2/x86/microVU.h b/pcsx2/x86/microVU.h index 4c0daa4a75..362d9d3617 100644 --- a/pcsx2/x86/microVU.h +++ b/pcsx2/x86/microVU.h @@ -85,7 +85,6 @@ struct microVU alignas(16) u32 macFlag [4]; // 4 instances of mac flag (used in execution) alignas(16) u32 clipFlag[4]; // 4 instances of clip flag (used in execution) alignas(16) u32 xmmCTemp[4]; // Backup used in mVUclamp2() - alignas(16) u32 xmmBackup[16][4]; // Backup for xmm0~xmm15 u32 index; // VU Index (VU0 or VU1) u32 cop2; // VU is in COP2 mode? (No/Yes) diff --git a/pcsx2/x86/microVU_Misc.inl b/pcsx2/x86/microVU_Misc.inl index 102d8479a5..26f6fe7c0d 100644 --- a/pcsx2/x86/microVU_Misc.inl +++ b/pcsx2/x86/microVU_Misc.inl @@ -190,8 +190,10 @@ __fi void mVUbackupRegs(microVU& mVU, bool toMemory = false, bool onlyNeeded = f else { // TODO(Stenzek): get rid of xmmbackup + // TODO(WCG847): Do some testing on the removal of xMOVAPS. mVU.regAlloc->flushAll(); // Flush Regalloc - xMOVAPS(ptr128[&mVU.xmmBackup[xmmPQ.Id][0]], xmmPQ); + // [DISABLED](WCG847) Legacy xmmBackup instruction + // xMOVAPS(ptr128[&mVU.xmmBackup[xmmPQ.Id][0]], xmmPQ); } } @@ -257,7 +259,7 @@ __fi void mVUrestoreRegs(microVU& mVU, bool fromMemory = false, bool onlyNeeded } else { - xMOVAPS(xmmPQ, ptr128[&mVU.xmmBackup[xmmPQ.Id][0]]); + // xMOVAPS(xmmPQ, ptr128[&mVU.xmmBackup[xmmPQ.Id][0]]); } }