summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathew Maidment <mathew1800@gmail.com>2016-01-24 17:17:13 -0500
committerMathew Maidment <mathew1800@gmail.com>2016-01-24 17:17:13 -0500
commit44e44f6eb7c1b63331ddddf4ea829d5ea52dec4e (patch)
tree5ef2f24589f63a94c8ebe1fc7a8cadf5ffeb706d
parentaa39b0dab1bf435df690a5a8d41338824dacba53 (diff)
parente187c55bdd1d553aada5fd165c965d355e425383 (diff)
Merge pull request #3563 from lioncash/opcodedecoder
OpcodeDecoder: Add namespace
-rw-r--r--Source/Core/VideoBackends/D3D/main.cpp4
-rw-r--r--Source/Core/VideoBackends/OGL/main.cpp6
-rw-r--r--Source/Core/VideoBackends/Software/SWmain.cpp6
-rw-r--r--Source/Core/VideoCommon/Fifo.cpp8
-rw-r--r--Source/Core/VideoCommon/OpcodeDecoding.cpp22
-rw-r--r--Source/Core/VideoCommon/OpcodeDecoding.h11
6 files changed, 33 insertions, 24 deletions
diff --git a/Source/Core/VideoBackends/D3D/main.cpp b/Source/Core/VideoBackends/D3D/main.cpp
index 9bd7b685f1..babdfc4059 100644
--- a/Source/Core/VideoBackends/D3D/main.cpp
+++ b/Source/Core/VideoBackends/D3D/main.cpp
@@ -186,7 +186,7 @@ void VideoBackend::Video_Prepare()
Fifo::Init();
IndexGenerator::Init();
VertexLoaderManager::Init();
- OpcodeDecoder_Init();
+ OpcodeDecoder::Init();
VertexShaderManager::Init();
PixelShaderManager::Init();
GeometryShaderManager::Init();
@@ -211,7 +211,7 @@ void VideoBackend::Shutdown()
GeometryShaderManager::Shutdown();
PixelShaderManager::Shutdown();
VertexShaderManager::Shutdown();
- OpcodeDecoder_Shutdown();
+ OpcodeDecoder::Shutdown();
VertexLoaderManager::Shutdown();
// internal interfaces
diff --git a/Source/Core/VideoBackends/OGL/main.cpp b/Source/Core/VideoBackends/OGL/main.cpp
index 07648b6acd..c4698d28d6 100644
--- a/Source/Core/VideoBackends/OGL/main.cpp
+++ b/Source/Core/VideoBackends/OGL/main.cpp
@@ -181,8 +181,8 @@ void VideoBackend::Video_Prepare()
BPInit();
g_vertex_manager = std::make_unique<VertexManager>();
g_perf_query = GetPerfQuery();
- Fifo::Init(); // must be done before OpcodeDecoder_Init()
- OpcodeDecoder_Init();
+ Fifo::Init(); // must be done before OpcodeDecoder::Init()
+ OpcodeDecoder::Init();
IndexGenerator::Init();
VertexShaderManager::Init();
PixelShaderManager::Init();
@@ -233,7 +233,7 @@ void VideoBackend::Video_Cleanup()
g_perf_query.reset();
g_vertex_manager.reset();
- OpcodeDecoder_Shutdown();
+ OpcodeDecoder::Shutdown();
g_renderer.reset();
GLInterface->ClearCurrent();
}
diff --git a/Source/Core/VideoBackends/Software/SWmain.cpp b/Source/Core/VideoBackends/Software/SWmain.cpp
index 16d80df52f..e229a713e4 100644
--- a/Source/Core/VideoBackends/Software/SWmain.cpp
+++ b/Source/Core/VideoBackends/Software/SWmain.cpp
@@ -205,7 +205,7 @@ void VideoSoftware::Video_Cleanup()
PixelShaderManager::Shutdown();
g_perf_query.reset();
g_vertex_manager.reset();
- OpcodeDecoder_Shutdown();
+ OpcodeDecoder::Shutdown();
g_renderer.reset();
}
}
@@ -221,8 +221,8 @@ void VideoSoftware::Video_Prepare()
BPInit();
g_vertex_manager = std::make_unique<SWVertexLoader>();
g_perf_query = std::make_unique<PerfQuery>();
- Fifo::Init(); // must be done before OpcodeDecoder_Init()
- OpcodeDecoder_Init();
+ Fifo::Init(); // must be done before OpcodeDecoder::Init()
+ OpcodeDecoder::Init();
IndexGenerator::Init();
VertexShaderManager::Init();
PixelShaderManager::Init();
diff --git a/Source/Core/VideoCommon/Fifo.cpp b/Source/Core/VideoCommon/Fifo.cpp
index acc43b8855..506024c193 100644
--- a/Source/Core/VideoCommon/Fifo.cpp
+++ b/Source/Core/VideoCommon/Fifo.cpp
@@ -261,7 +261,7 @@ static void ReadDataFromFifoOnCPU(u32 readPtr)
}
}
Memory::CopyFromEmu(s_video_buffer_write_ptr, readPtr, len);
- s_video_buffer_pp_read_ptr = OpcodeDecoder_Run<true>(DataReader(s_video_buffer_pp_read_ptr, write_ptr + len), nullptr, false);
+ s_video_buffer_pp_read_ptr = OpcodeDecoder::Run<true>(DataReader(s_video_buffer_pp_read_ptr, write_ptr + len), nullptr, false);
// This would have to be locked if the GPU thread didn't spin.
s_video_buffer_write_ptr = write_ptr + len;
}
@@ -305,7 +305,7 @@ void RunGpuLoop()
// See comment in SyncGPU
if (write_ptr > seen_ptr)
{
- s_video_buffer_read_ptr = OpcodeDecoder_Run(DataReader(s_video_buffer_read_ptr, write_ptr), nullptr, false);
+ s_video_buffer_read_ptr = OpcodeDecoder::Run(DataReader(s_video_buffer_read_ptr, write_ptr), nullptr, false);
s_video_buffer_seen_ptr = write_ptr;
}
}
@@ -336,7 +336,7 @@ void RunGpuLoop()
"Negative fifo.CPReadWriteDistance = %i in FIFO Loop !\nThat can produce instability in the game. Please report it.", fifo.CPReadWriteDistance - 32);
u8* write_ptr = s_video_buffer_write_ptr;
- s_video_buffer_read_ptr = OpcodeDecoder_Run(DataReader(s_video_buffer_read_ptr, write_ptr), &cyclesExecuted, false);
+ s_video_buffer_read_ptr = OpcodeDecoder::Run(DataReader(s_video_buffer_read_ptr, write_ptr), &cyclesExecuted, false);
Common::AtomicStore(fifo.CPReadPointer, readPtr);
Common::AtomicAdd(fifo.CPReadWriteDistance, -32);
@@ -423,7 +423,7 @@ void RunGpu()
reset_simd_state = true;
}
ReadDataFromFifo(fifo.CPReadPointer);
- s_video_buffer_read_ptr = OpcodeDecoder_Run(DataReader(s_video_buffer_read_ptr, s_video_buffer_write_ptr), nullptr, false);
+ s_video_buffer_read_ptr = OpcodeDecoder::Run(DataReader(s_video_buffer_read_ptr, s_video_buffer_write_ptr), nullptr, false);
}
//DEBUG_LOG(COMMANDPROCESSOR, "Fifo wraps to base");
diff --git a/Source/Core/VideoCommon/OpcodeDecoding.cpp b/Source/Core/VideoCommon/OpcodeDecoding.cpp
index 99a801a8f3..3af3337b9e 100644
--- a/Source/Core/VideoCommon/OpcodeDecoding.cpp
+++ b/Source/Core/VideoCommon/OpcodeDecoding.cpp
@@ -28,8 +28,11 @@
#include "VideoCommon/VideoCommon.h"
#include "VideoCommon/XFMemory.h"
-
bool g_bRecordFifoData = false;
+
+namespace OpcodeDecoder
+{
+
static bool s_bFifoErrorSeen = false;
static u32 InterpretDisplayList(u32 address, u32 size)
@@ -49,7 +52,7 @@ static u32 InterpretDisplayList(u32 address, u32 size)
// temporarily swap dl and non-dl (small "hack" for the stats)
Statistics::SwapDL();
- OpcodeDecoder_Run(DataReader(startAddress, startAddress + size), &cycles, true);
+ Run(DataReader(startAddress, startAddress + size), &cycles, true);
INCSTAT(stats.thisFrame.numDListsCalled);
// un-swap
@@ -67,7 +70,7 @@ static void InterpretDisplayListPreprocess(u32 address, u32 size)
if (startAddress != nullptr)
{
- OpcodeDecoder_Run<true>(DataReader(startAddress, startAddress + size), nullptr, true);
+ Run<true>(DataReader(startAddress, startAddress + size), nullptr, true);
}
}
@@ -120,18 +123,17 @@ static void UnknownOpcode(u8 cmd_byte, void *buffer, bool preprocess)
}
}
-void OpcodeDecoder_Init()
+void Init()
{
s_bFifoErrorSeen = false;
}
-
-void OpcodeDecoder_Shutdown()
+void Shutdown()
{
}
template <bool is_preprocess>
-u8* OpcodeDecoder_Run(DataReader src, u32* cycles, bool in_display_list)
+u8* Run(DataReader src, u32* cycles, bool in_display_list)
{
u32 totalCycles = 0;
u8* opcodeStart;
@@ -314,5 +316,7 @@ end:
return opcodeStart;
}
-template u8* OpcodeDecoder_Run<true>(DataReader src, u32* cycles, bool in_display_list);
-template u8* OpcodeDecoder_Run<false>(DataReader src, u32* cycles, bool in_display_list);
+template u8* Run<true>(DataReader src, u32* cycles, bool in_display_list);
+template u8* Run<false>(DataReader src, u32* cycles, bool in_display_list);
+
+} // namespace OpcodeDecoder
diff --git a/Source/Core/VideoCommon/OpcodeDecoding.h b/Source/Core/VideoCommon/OpcodeDecoding.h
index a79bf54be2..f955ecb90a 100644
--- a/Source/Core/VideoCommon/OpcodeDecoding.h
+++ b/Source/Core/VideoCommon/OpcodeDecoding.h
@@ -38,8 +38,13 @@
#define GX_DRAW_LINE_STRIP 0x6 // 0xB0
#define GX_DRAW_POINTS 0x7 // 0xB8
-void OpcodeDecoder_Init();
-void OpcodeDecoder_Shutdown();
+namespace OpcodeDecoder
+{
+
+void Init();
+void Shutdown();
template <bool is_preprocess = false>
-u8* OpcodeDecoder_Run(DataReader src, u32* cycles, bool in_display_list);
+u8* Run(DataReader src, u32* cycles, bool in_display_list);
+
+} // namespace OpcodeDecoder