|
|
|
@ -112,7 +112,6 @@ private:
|
|
|
|
|
std::array<KThread*, Core::Hardware::NUM_CPU_CORES> m_pinned_threads{};
|
|
|
|
|
std::array<DebugWatchpoint, Core::Hardware::NUM_WATCHPOINTS> m_watchpoints{};
|
|
|
|
|
std::map<KProcessAddress, u64> m_debug_page_refcounts{};
|
|
|
|
|
std::unordered_map<u64, u64> m_post_handlers{};
|
|
|
|
|
std::atomic<s64> m_cpu_time{};
|
|
|
|
|
std::atomic<s64> m_num_process_switches{};
|
|
|
|
|
std::atomic<s64> m_num_thread_switches{};
|
|
|
|
@ -121,6 +120,9 @@ private:
|
|
|
|
|
std::atomic<s64> m_num_ipc_messages{};
|
|
|
|
|
std::atomic<s64> m_num_ipc_replies{};
|
|
|
|
|
std::atomic<s64> m_num_ipc_receives{};
|
|
|
|
|
#ifdef HAS_NCE
|
|
|
|
|
std::unordered_map<u64, u64> m_post_handlers{};
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
Result StartTermination();
|
|
|
|
@ -468,9 +470,11 @@ public:
|
|
|
|
|
|
|
|
|
|
static void Switch(KProcess* cur_process, KProcess* next_process);
|
|
|
|
|
|
|
|
|
|
#ifdef HAS_NCE
|
|
|
|
|
std::unordered_map<u64, u64>& GetPostHandlers() noexcept {
|
|
|
|
|
return m_post_handlers;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
// Attempts to insert a watchpoint into a free slot. Returns false if none are available.
|
|
|
|
|