summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/OpcodeDecoding.cpp
diff options
context:
space:
mode:
authorshuffle2 <godisgovernment@gmail.com>2014-09-04 09:22:19 -0700
committershuffle2 <godisgovernment@gmail.com>2014-09-04 09:22:19 -0700
commitaf7881474edb90a243031314f81a0a7e2ab92fb2 (patch)
tree083a1c0770483b82d9a4bcfcf033b9a2ab1e6e08 /Source/Core/VideoCommon/OpcodeDecoding.cpp
parent127fc1bdc11b3f493ea6e88a63dfdbc1d3f04db2 (diff)
parentef6f6a7fa9a90efa78d0ae557e5546dd6568bb74 (diff)
Merge pull request #958 from degasus/xf_cleanup
VideoCommon: remove XFReg copy optimization
Diffstat (limited to 'Source/Core/VideoCommon/OpcodeDecoding.cpp')
-rw-r--r--Source/Core/VideoCommon/OpcodeDecoding.cpp53
1 files changed, 1 insertions, 52 deletions
diff --git a/Source/Core/VideoCommon/OpcodeDecoding.cpp b/Source/Core/VideoCommon/OpcodeDecoding.cpp
index fe644db21e..a5bd8a62ee 100644
--- a/Source/Core/VideoCommon/OpcodeDecoding.cpp
+++ b/Source/Core/VideoCommon/OpcodeDecoding.cpp
@@ -34,47 +34,6 @@
u8* g_pVideoData = nullptr;
bool g_bRecordFifoData = false;
-typedef void (*DataReadU32xNfunc)(u32 *buf);
-#if _M_SSE >= 0x301
-static DataReadU32xNfunc DataReadU32xFuncs_SSSE3[16] = {
- DataReadU32xN_SSSE3<1>,
- DataReadU32xN_SSSE3<2>,
- DataReadU32xN_SSSE3<3>,
- DataReadU32xN_SSSE3<4>,
- DataReadU32xN_SSSE3<5>,
- DataReadU32xN_SSSE3<6>,
- DataReadU32xN_SSSE3<7>,
- DataReadU32xN_SSSE3<8>,
- DataReadU32xN_SSSE3<9>,
- DataReadU32xN_SSSE3<10>,
- DataReadU32xN_SSSE3<11>,
- DataReadU32xN_SSSE3<12>,
- DataReadU32xN_SSSE3<13>,
- DataReadU32xN_SSSE3<14>,
- DataReadU32xN_SSSE3<15>,
- DataReadU32xN_SSSE3<16>
-};
-#endif
-
-static DataReadU32xNfunc DataReadU32xFuncs[16] = {
- DataReadU32xN<1>,
- DataReadU32xN<2>,
- DataReadU32xN<3>,
- DataReadU32xN<4>,
- DataReadU32xN<5>,
- DataReadU32xN<6>,
- DataReadU32xN<7>,
- DataReadU32xN<8>,
- DataReadU32xN<9>,
- DataReadU32xN<10>,
- DataReadU32xN<11>,
- DataReadU32xN<12>,
- DataReadU32xN<13>,
- DataReadU32xN<14>,
- DataReadU32xN<15>,
- DataReadU32xN<16>
-};
-
static u32 InterpretDisplayList(u32 address, u32 size)
{
u8* old_pVideoData = g_pVideoData;
@@ -182,9 +141,7 @@ static u32 Decode(u8* end, bool skipped_frame)
return 0;
cycles = 18 + 6 * transfer_size;
u32 xf_address = Cmd2 & 0xFFFF;
- GC_ALIGNED128(u32 data_buffer[16]);
- DataReadU32xFuncs[transfer_size-1](data_buffer);
- LoadXFReg(transfer_size, xf_address, data_buffer);
+ LoadXFReg(transfer_size, xf_address);
INCSTAT(stats.thisFrame.numXFLoads);
}
@@ -296,14 +253,6 @@ static u32 Decode(u8* end, bool skipped_frame)
void OpcodeDecoder_Init()
{
g_pVideoData = GetVideoBufferStartPtr();
-
-#if _M_SSE >= 0x301
- if (cpu_info.bSSSE3)
- {
- for (int i = 0; i < 16; ++i)
- DataReadU32xFuncs[i] = DataReadU32xFuncs_SSSE3[i];
- }
-#endif
}