diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2023-11-30 15:20:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-30 15:20:55 +0100 |
commit | 57a391e71db13ade7a3d96f59d53781eff18d2ac (patch) | |
tree | 0b4223de40a2d77598ac9095b1374353c2e9da7c /src/core/hle/kernel/k_process.h | |
parent | Merge pull request #12223 from liamwhite/fruit-company (diff) | |
parent | core: Rename patcher file (diff) | |
download | yuzu-57a391e71db13ade7a3d96f59d53781eff18d2ac.tar yuzu-57a391e71db13ade7a3d96f59d53781eff18d2ac.tar.gz yuzu-57a391e71db13ade7a3d96f59d53781eff18d2ac.tar.bz2 yuzu-57a391e71db13ade7a3d96f59d53781eff18d2ac.tar.lz yuzu-57a391e71db13ade7a3d96f59d53781eff18d2ac.tar.xz yuzu-57a391e71db13ade7a3d96f59d53781eff18d2ac.tar.zst yuzu-57a391e71db13ade7a3d96f59d53781eff18d2ac.zip |
Diffstat (limited to 'src/core/hle/kernel/k_process.h')
-rw-r--r-- | src/core/hle/kernel/k_process.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/core/hle/kernel/k_process.h b/src/core/hle/kernel/k_process.h index 8339465fd..d8cd0fdde 100644 --- a/src/core/hle/kernel/k_process.h +++ b/src/core/hle/kernel/k_process.h @@ -120,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(); @@ -150,7 +153,8 @@ public: std::span<const u32> caps, KResourceLimit* res_limit, KMemoryManager::Pool pool, bool immortal); Result Initialize(const Svc::CreateProcessParameter& params, std::span<const u32> user_caps, - KResourceLimit* res_limit, KMemoryManager::Pool pool); + KResourceLimit* res_limit, KMemoryManager::Pool pool, + KProcessAddress aslr_space_start); void Exit(); const char* GetName() const { @@ -466,6 +470,12 @@ 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. bool InsertWatchpoint(KProcessAddress addr, u64 size, DebugWatchpointType type); @@ -479,7 +489,7 @@ public: public: Result LoadFromMetadata(const FileSys::ProgramMetadata& metadata, std::size_t code_size, - bool is_hbl); + KProcessAddress aslr_space_start, bool is_hbl); void LoadModule(CodeSet code_set, KProcessAddress base_addr); |