aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp')
-rw-r--r--lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp b/lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
index 5aec98b..fcc96e2 100644
--- a/lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
+++ b/lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
@@ -77,6 +77,9 @@ void LogThreadStopInfo(Log &log, const ThreadStopInfo &stop_info,
case eStopReasonInstrumentation:
log.Printf("%s: %s instrumentation", __FUNCTION__, header);
return;
+ case eStopReasonProcessorTrace:
+ log.Printf("%s: %s processor trace", __FUNCTION__, header);
+ return;
default:
log.Printf("%s: %s invalid stop reason %" PRIu32, __FUNCTION__, header,
static_cast<uint32_t>(stop_info.reason));
@@ -398,6 +401,15 @@ void NativeThreadLinux::SetStoppedWithNoReason() {
m_stop_info.details.signal.signo = 0;
}
+void NativeThreadLinux::SetStoppedByProcessorTrace(
+ llvm::StringRef description) {
+ SetStopped();
+
+ m_stop_info.reason = StopReason::eStopReasonProcessorTrace;
+ m_stop_info.details.signal.signo = 0;
+ m_stop_description = description.str();
+}
+
void NativeThreadLinux::SetExited() {
const StateType new_state = StateType::eStateExited;
MaybeLogStateChange(new_state);