diff options
Diffstat (limited to 'src/core/hle/kernel')
| -rw-r--r-- | src/core/hle/kernel/svc.cpp | 5 | ||||
| -rw-r--r-- | src/core/hle/kernel/thread.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/kernel/thread.h | 5 |
3 files changed, 3 insertions, 11 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index 2273f0bcf..290670e78 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp | |||
| @@ -625,8 +625,9 @@ static void Break(u32 reason, u64 info1, u64 info2) { | |||
| 625 | "Emulated program broke execution! reason=0x{:016X}, info1=0x{:016X}, info2=0x{:016X}", | 625 | "Emulated program broke execution! reason=0x{:016X}, info1=0x{:016X}, info2=0x{:016X}", |
| 626 | reason, info1, info2); | 626 | reason, info1, info2); |
| 627 | handle_debug_buffer(info1, info2); | 627 | handle_debug_buffer(info1, info2); |
| 628 | GetCurrentThread()->LogBacktrace(); | 628 | Core::System::GetInstance() |
| 629 | 629 | .ArmInterface(static_cast<std::size_t>(GetCurrentThread()->GetProcessorID())) | |
| 630 | .LogBacktrace(); | ||
| 630 | ASSERT(false); | 631 | ASSERT(false); |
| 631 | 632 | ||
| 632 | Core::CurrentProcess()->PrepareForTermination(); | 633 | Core::CurrentProcess()->PrepareForTermination(); |
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index a276812f0..4ffb76818 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp | |||
| @@ -388,10 +388,6 @@ bool Thread::InvokeWakeupCallback(ThreadWakeupReason reason, SharedPtr<Thread> t | |||
| 388 | return wakeup_callback(reason, std::move(thread), std::move(object), index); | 388 | return wakeup_callback(reason, std::move(thread), std::move(object), index); |
| 389 | } | 389 | } |
| 390 | 390 | ||
| 391 | void Thread::LogBacktrace() { | ||
| 392 | Core::System::GetInstance().ArmInterface(processor_id).LogBacktrace(); | ||
| 393 | } | ||
| 394 | |||
| 395 | //////////////////////////////////////////////////////////////////////////////////////////////////// | 391 | //////////////////////////////////////////////////////////////////////////////////////////////////// |
| 396 | 392 | ||
| 397 | /** | 393 | /** |
diff --git a/src/core/hle/kernel/thread.h b/src/core/hle/kernel/thread.h index 469f8a56d..d384d50db 100644 --- a/src/core/hle/kernel/thread.h +++ b/src/core/hle/kernel/thread.h | |||
| @@ -240,11 +240,6 @@ public: | |||
| 240 | return status == ThreadStatus::WaitSynchAll; | 240 | return status == ThreadStatus::WaitSynchAll; |
| 241 | } | 241 | } |
| 242 | 242 | ||
| 243 | /** | ||
| 244 | * Logs the backtrace for the current thread | ||
| 245 | */ | ||
| 246 | void LogBacktrace(); | ||
| 247 | |||
| 248 | ThreadContext& GetContext() { | 243 | ThreadContext& GetContext() { |
| 249 | return context; | 244 | return context; |
| 250 | } | 245 | } |