diff options
| author | 2023-12-06 14:19:17 +0100 | |
|---|---|---|
| committer | 2023-12-06 14:19:17 +0100 | |
| commit | 8a79dd2d6c6445bff63ea1f2f5f1611a6afcd97a (patch) | |
| tree | 265bf3c7970a570479c6a3ac1250549995f0329c /src/core/arm/debug.h | |
| parent | Merge pull request #12271 from liamwhite/pretext-fix (diff) | |
| parent | arm: fix context save of vector regs (diff) | |
| download | yuzu-8a79dd2d6c6445bff63ea1f2f5f1611a6afcd97a.tar.gz yuzu-8a79dd2d6c6445bff63ea1f2f5f1611a6afcd97a.tar.xz yuzu-8a79dd2d6c6445bff63ea1f2f5f1611a6afcd97a.zip | |
Merge pull request #12236 from liamwhite/cpu-refactor
core: refactor emulated cpu core activation
Diffstat (limited to 'src/core/arm/debug.h')
| -rw-r--r-- | src/core/arm/debug.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/core/arm/debug.h b/src/core/arm/debug.h new file mode 100644 index 000000000..c542633db --- /dev/null +++ b/src/core/arm/debug.h | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #pragma once | ||
| 5 | |||
| 6 | #include <optional> | ||
| 7 | |||
| 8 | #include "core/hle/kernel/k_thread.h" | ||
| 9 | #include "core/loader/loader.h" | ||
| 10 | |||
| 11 | namespace Core { | ||
| 12 | |||
| 13 | std::optional<std::string> GetThreadName(const Kernel::KThread* thread); | ||
| 14 | std::string_view GetThreadWaitReason(const Kernel::KThread* thread); | ||
| 15 | std::string GetThreadState(const Kernel::KThread* thread); | ||
| 16 | |||
| 17 | Loader::AppLoader::Modules FindModules(const Kernel::KProcess* process); | ||
| 18 | Kernel::KProcessAddress GetModuleEnd(const Kernel::KProcess* process, Kernel::KProcessAddress base); | ||
| 19 | Kernel::KProcessAddress FindMainModuleEntrypoint(const Kernel::KProcess* process); | ||
| 20 | |||
| 21 | void InvalidateInstructionCacheRange(const Kernel::KProcess* process, u64 address, u64 size); | ||
| 22 | |||
| 23 | struct BacktraceEntry { | ||
| 24 | std::string module; | ||
| 25 | u64 address; | ||
| 26 | u64 original_address; | ||
| 27 | u64 offset; | ||
| 28 | std::string name; | ||
| 29 | }; | ||
| 30 | |||
| 31 | std::vector<BacktraceEntry> GetBacktraceFromContext(const Kernel::KProcess* process, | ||
| 32 | const Kernel::Svc::ThreadContext& ctx); | ||
| 33 | std::vector<BacktraceEntry> GetBacktrace(const Kernel::KThread* thread); | ||
| 34 | |||
| 35 | } // namespace Core | ||