diff --git a/Source/Core/Common/CMakeLists.txt b/Source/Core/Common/CMakeLists.txt
index 9592043954..cadb12163d 100644
--- a/Source/Core/Common/CMakeLists.txt
+++ b/Source/Core/Common/CMakeLists.txt
@@ -34,8 +34,6 @@ add_library(common
Crypto/ec.h
Debug/MemoryPatches.cpp
Debug/MemoryPatches.h
- Debug/OSThread.cpp
- Debug/OSThread.h
Debug/Threads.h
Debug/Watches.cpp
Debug/Watches.h
diff --git a/Source/Core/Common/Common.vcxproj b/Source/Core/Common/Common.vcxproj
index 47e8957fe4..c45edb1b59 100644
--- a/Source/Core/Common/Common.vcxproj
+++ b/Source/Core/Common/Common.vcxproj
@@ -48,7 +48,6 @@
-
@@ -191,7 +190,6 @@
-
diff --git a/Source/Core/Common/Common.vcxproj.filters b/Source/Core/Common/Common.vcxproj.filters
index 6ae672b770..0db5b561d0 100644
--- a/Source/Core/Common/Common.vcxproj.filters
+++ b/Source/Core/Common/Common.vcxproj.filters
@@ -273,9 +273,6 @@
Debug
-
- Debug
-
Debug
@@ -365,9 +362,6 @@
Debug
-
- Debug
-
GL\GLInterface
diff --git a/Source/Core/Core/CMakeLists.txt b/Source/Core/Core/CMakeLists.txt
index f39b52ed9f..017695ce45 100644
--- a/Source/Core/Core/CMakeLists.txt
+++ b/Source/Core/Core/CMakeLists.txt
@@ -80,6 +80,8 @@ add_library(core
Debugger/Dump.cpp
Debugger/Dump.h
Debugger/GCELF.h
+ Debugger/OSThread.cpp
+ Debugger/OSThread.h
Debugger/PPCDebugInterface.cpp
Debugger/PPCDebugInterface.h
Debugger/RSO.cpp
diff --git a/Source/Core/Core/Core.vcxproj b/Source/Core/Core/Core.vcxproj
index 390b467614..35dd58d202 100644
--- a/Source/Core/Core/Core.vcxproj
+++ b/Source/Core/Core/Core.vcxproj
@@ -40,6 +40,7 @@
+
@@ -399,6 +400,7 @@
+
diff --git a/Source/Core/Core/Core.vcxproj.filters b/Source/Core/Core/Core.vcxproj.filters
index 91553ac3af..73b159219f 100644
--- a/Source/Core/Core/Core.vcxproj.filters
+++ b/Source/Core/Core/Core.vcxproj.filters
@@ -217,6 +217,9 @@
Debugger
+
+ Debugger
+
Debugger
@@ -996,12 +999,12 @@
PowerPC\Jit64
-
- HW %28Flipper/Hollywood%29\EXI - Expansion Interface\BBA
-
-
- HW %28Flipper/Hollywood%29\EXI - Expansion Interface\BBA
-
+
+ HW %28Flipper/Hollywood%29\EXI - Expansion Interface\BBA
+
+
+ HW %28Flipper/Hollywood%29\EXI - Expansion Interface\BBA
+
@@ -1050,6 +1053,9 @@
Debugger
+
+ Debugger
+
Debugger
@@ -1755,8 +1761,8 @@
PowerPC\JitArmCommon
-
- HW %28Flipper/Hollywood%29\EXI - Expansion Interface\BBA
+
+ HW %28Flipper/Hollywood%29\EXI - Expansion Interface\BBA
diff --git a/Source/Core/Common/Debug/OSThread.cpp b/Source/Core/Core/Debugger/OSThread.cpp
similarity index 80%
rename from Source/Core/Common/Debug/OSThread.cpp
rename to Source/Core/Core/Debugger/OSThread.cpp
index 809e5adccd..18a5a31b83 100644
--- a/Source/Core/Common/Debug/OSThread.cpp
+++ b/Source/Core/Core/Debugger/OSThread.cpp
@@ -2,20 +2,22 @@
// Licensed under GPLv2+
// Refer to the license.txt file included.
-#include "Common/Debug/OSThread.h"
+#include "Core/Debugger/OSThread.h"
#include
#include
#include "Core/PowerPC/MMU.h"
+namespace Core::Debug
+{
// Context offsets based on the following functions:
// - OSSaveContext
// - OSSaveFPUContext
// - OSDumpContext
// - OSClearContext
// - OSExceptionVector
-void Common::Debug::OSContext::Read(u32 addr)
+void OSContext::Read(u32 addr)
{
for (std::size_t i = 0; i < gpr.size(); i++)
gpr[i] = PowerPC::HostRead_U32(addr + u32(i * sizeof(int)));
@@ -41,7 +43,7 @@ void Common::Debug::OSContext::Read(u32 addr)
// - OSInitMutex
// - OSLockMutex
// - __OSUnlockAllMutex
-void Common::Debug::OSMutex::Read(u32 addr)
+void OSMutex::Read(u32 addr)
{
thread_queue.head = PowerPC::HostRead_U32(addr);
thread_queue.tail = PowerPC::HostRead_U32(addr + 0x4);
@@ -63,7 +65,7 @@ void Common::Debug::OSMutex::Read(u32 addr)
// - __OSThreadInit
// - OSSetThreadSpecific
// - SOInit (for errno)
-void Common::Debug::OSThread::Read(u32 addr)
+void OSThread::Read(u32 addr)
{
context.Read(addr);
state = PowerPC::HostRead_U16(addr + 0x2c8);
@@ -94,25 +96,25 @@ void Common::Debug::OSThread::Read(u32 addr)
specific[1] = PowerPC::HostRead_U32(addr + 0x314);
}
-bool Common::Debug::OSThread::IsValid() const
+bool OSThread::IsValid() const
{
return PowerPC::HostIsRAMAddress(stack_end) && PowerPC::HostRead_U32(stack_end) == STACK_MAGIC;
}
-Common::Debug::OSThreadView::OSThreadView(u32 addr)
+OSThreadView::OSThreadView(u32 addr)
{
m_address = addr;
m_thread.Read(addr);
}
-const Common::Debug::OSThread& Common::Debug::OSThreadView::Data() const
+const OSThread& OSThreadView::Data() const
{
return m_thread;
}
-Common::Debug::PartialContext Common::Debug::OSThreadView::GetContext() const
+Common::Debug::PartialContext OSThreadView::GetContext() const
{
- PartialContext context;
+ Common::Debug::PartialContext context;
if (!IsValid())
return context;
@@ -134,57 +136,57 @@ Common::Debug::PartialContext Common::Debug::OSThreadView::GetContext() const
return context;
}
-u32 Common::Debug::OSThreadView::GetAddress() const
+u32 OSThreadView::GetAddress() const
{
return m_address;
}
-u16 Common::Debug::OSThreadView::GetState() const
+u16 OSThreadView::GetState() const
{
return m_thread.state;
}
-bool Common::Debug::OSThreadView::IsSuspended() const
+bool OSThreadView::IsSuspended() const
{
return m_thread.suspend > 0;
}
-bool Common::Debug::OSThreadView::IsDetached() const
+bool OSThreadView::IsDetached() const
{
return m_thread.is_detached != 0;
}
-s32 Common::Debug::OSThreadView::GetBasePriority() const
+s32 OSThreadView::GetBasePriority() const
{
return m_thread.base_priority;
}
-s32 Common::Debug::OSThreadView::GetEffectivePriority() const
+s32 OSThreadView::GetEffectivePriority() const
{
return m_thread.effective_priority;
}
-u32 Common::Debug::OSThreadView::GetStackStart() const
+u32 OSThreadView::GetStackStart() const
{
return m_thread.stack_addr;
}
-u32 Common::Debug::OSThreadView::GetStackEnd() const
+u32 OSThreadView::GetStackEnd() const
{
return m_thread.stack_end;
}
-std::size_t Common::Debug::OSThreadView::GetStackSize() const
+std::size_t OSThreadView::GetStackSize() const
{
return GetStackStart() - GetStackEnd();
}
-s32 Common::Debug::OSThreadView::GetErrno() const
+s32 OSThreadView::GetErrno() const
{
return m_thread.error;
}
-std::string Common::Debug::OSThreadView::GetSpecific() const
+std::string OSThreadView::GetSpecific() const
{
std::string specific;
@@ -198,7 +200,9 @@ std::string Common::Debug::OSThreadView::GetSpecific() const
return specific;
}
-bool Common::Debug::OSThreadView::IsValid() const
+bool OSThreadView::IsValid() const
{
return m_thread.IsValid();
}
+
+} // namespace Core::Debug
diff --git a/Source/Core/Common/Debug/OSThread.h b/Source/Core/Core/Debugger/OSThread.h
similarity index 97%
rename from Source/Core/Common/Debug/OSThread.h
rename to Source/Core/Core/Debugger/OSThread.h
index 7a588c670e..c5aa3fee8d 100644
--- a/Source/Core/Common/Debug/OSThread.h
+++ b/Source/Core/Core/Debugger/OSThread.h
@@ -11,7 +11,7 @@
#include "Common/CommonTypes.h"
#include "Common/Debug/Threads.h"
-namespace Common::Debug
+namespace Core::Debug
{
template
struct OSQueue
@@ -132,7 +132,7 @@ public:
const OSThread& Data() const;
- PartialContext GetContext() const override;
+ Common::Debug::PartialContext GetContext() const override;
u32 GetAddress() const override;
u16 GetState() const override;
bool IsSuspended() const override;
@@ -151,4 +151,4 @@ private:
OSThread m_thread;
};
-} // namespace Common::Debug
+} // namespace Core::Debug
diff --git a/Source/Core/Core/Debugger/PPCDebugInterface.cpp b/Source/Core/Core/Debugger/PPCDebugInterface.cpp
index f44c20d7f2..0ca90f52b4 100644
--- a/Source/Core/Core/Debugger/PPCDebugInterface.cpp
+++ b/Source/Core/Core/Debugger/PPCDebugInterface.cpp
@@ -11,10 +11,10 @@
#include
#include "Common/Align.h"
-#include "Common/Debug/OSThread.h"
#include "Common/GekkoDisassembler.h"
#include "Core/Core.h"
+#include "Core/Debugger/OSThread.h"
#include "Core/HW/DSP.h"
#include "Core/PowerPC/MMU.h"
#include "Core/PowerPC/PPCSymbolDB.h"
@@ -176,14 +176,14 @@ Common::Debug::Threads PPCDebugInterface::GetThreads() const
if (!PowerPC::HostIsRAMAddress(active_queue_head))
return threads;
- auto active_thread = std::make_unique(active_queue_head);
+ auto active_thread = std::make_unique(active_queue_head);
if (!active_thread->IsValid())
return threads;
const auto insert_threads = [&threads](u32 addr, auto get_next_addr) {
while (addr != 0 && PowerPC::HostIsRAMAddress(addr))
{
- auto thread = std::make_unique(addr);
+ auto thread = std::make_unique(addr);
if (!thread->IsValid())
break;
addr = get_next_addr(*thread);