LLDB mainline
|
#include <NativeThreadProtocol.h>
Public Member Functions | |
NativeThreadProtocol (NativeProcessProtocol &process, lldb::tid_t tid) | |
virtual | ~NativeThreadProtocol ()=default |
virtual std::string | GetName ()=0 |
virtual lldb::StateType | GetState ()=0 |
virtual NativeRegisterContext & | GetRegisterContext ()=0 |
virtual bool | GetStopReason (ThreadStopInfo &stop_info, std::string &description)=0 |
lldb::tid_t | GetID () const |
NativeProcessProtocol & | GetProcess () |
virtual Status | SetWatchpoint (lldb::addr_t addr, size_t size, uint32_t watch_flags, bool hardware)=0 |
virtual Status | RemoveWatchpoint (lldb::addr_t addr)=0 |
virtual Status | SetHardwareBreakpoint (lldb::addr_t addr, size_t size)=0 |
virtual Status | RemoveHardwareBreakpoint (lldb::addr_t addr)=0 |
virtual llvm::Expected< std::unique_ptr< llvm::MemoryBuffer > > | GetSiginfo () const |
Protected Attributes | |
NativeProcessProtocol & | m_process |
lldb::tid_t | m_tid |
Definition at line 24 of file NativeThreadProtocol.h.
NativeThreadProtocol::NativeThreadProtocol | ( | NativeProcessProtocol & | process, |
lldb::tid_t | tid | ||
) |
Definition at line 17 of file NativeThreadProtocol.cpp.
|
virtualdefault |
|
inline |
Definition at line 39 of file NativeThreadProtocol.h.
References m_tid.
Referenced by lldb_private::process_linux::NativeProcessLinux::AddThread(), lldb_private::process_linux::NativeRegisterContextLinux::DoReadRegisterValue(), lldb_private::process_netbsd::NativeRegisterContextNetBSD::DoRegisterSet(), lldb_private::process_linux::NativeRegisterContextLinux::DoWriteRegisterValue(), lldb_private::NativeProcessProtocol::FixupBreakpointPCAsNeeded(), lldb_private::process_freebsd::NativeThreadFreeBSD::GetName(), lldb_private::process_linux::NativeThreadLinux::GetName(), lldb_private::process_freebsd::NativeThreadFreeBSD::GetSiginfo(), lldb_private::process_linux::NativeThreadLinux::GetSiginfo(), lldb_private::process_freebsd::NativeThreadFreeBSD::GetStopReason(), lldb_private::process_linux::NativeThreadLinux::GetStopReason(), lldb_private::process_netbsd::NativeThreadNetBSD::GetStopReason(), lldb_private::NativeThreadWindows::GetStopReason(), lldb_private::NativeRegisterContext::GetThreadID(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_qC(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_stop_reason(), lldb_private::process_linux::NativeProcessLinux::Interrupt(), lldb_private::process_linux::NativeThreadLinux::MaybeLogStateChange(), lldb_private::process_linux::NativeProcessLinux::MonitorBreakpoint(), lldb_private::process_linux::NativeProcessLinux::MonitorCallback(), lldb_private::process_linux::NativeProcessLinux::MonitorClone(), lldb_private::process_linux::NativeProcessLinux::MonitorSignal(), lldb_private::process_freebsd::NativeProcessFreeBSD::MonitorSignal(), lldb_private::process_netbsd::NativeProcessNetBSD::MonitorSignal(), lldb_private::process_linux::NativeProcessLinux::MonitorSIGTRAP(), lldb_private::process_freebsd::NativeProcessFreeBSD::MonitorSIGTRAP(), lldb_private::process_linux::NativeProcessLinux::MonitorTrace(), lldb_private::process_linux::NativeProcessLinux::MonitorWatchpoint(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::PrepareStopReplyPacketForThread(), lldb_private::process_linux::NativeRegisterContextLinux::ReadFPR(), lldb_private::process_linux::NativeRegisterContextLinux::ReadGPR(), lldb_private::process_linux::NativeRegisterContextLinux::ReadRegisterSet(), lldb_private::process_linux::NativeThreadLinux::RequestStop(), lldb_private::process_freebsd::NativeThreadFreeBSD::Resume(), lldb_private::process_netbsd::NativeThreadNetBSD::Resume(), lldb_private::process_freebsd::NativeProcessFreeBSD::Resume(), lldb_private::process_netbsd::NativeProcessNetBSD::Resume(), lldb_private::process_linux::NativeThreadLinux::Resume(), lldb_private::process_linux::NativeProcessLinux::ResumeThread(), lldb_private::process_freebsd::NativeThreadFreeBSD::SetStoppedBySignal(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedBySignal(), lldb_private::NativeProcessWindows::SetStopReasonForThread(), lldb_private::NativeProcessSoftwareSingleStep::SetupSoftwareSingleStepping(), lldb_private::process_freebsd::NativeThreadFreeBSD::SingleStep(), lldb_private::process_netbsd::NativeThreadNetBSD::SingleStep(), lldb_private::process_linux::NativeProcessLinux::StopTrackingThread(), lldb_private::process_freebsd::NativeThreadFreeBSD::Suspend(), lldb_private::process_netbsd::NativeThreadNetBSD::Suspend(), lldb_private::process_linux::NativeProcessLinux::Syscall(), lldb_private::process_linux::NativeProcessLinux::ThreadWasCreated(), lldb_private::process_linux::NativeRegisterContextLinux::WriteFPR(), lldb_private::process_linux::NativeRegisterContextLinux::WriteGPR(), and lldb_private::process_linux::NativeRegisterContextLinux::WriteRegisterSet().
|
pure virtual |
Implemented in lldb_private::process_freebsd::NativeThreadFreeBSD, lldb_private::process_linux::NativeThreadLinux, lldb_private::process_netbsd::NativeThreadNetBSD, and lldb_private::NativeThreadWindows.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::PrepareStopReplyPacketForThread().
|
inline |
Definition at line 41 of file NativeThreadProtocol.h.
References m_process.
Referenced by lldb_private::NativeThreadWindows::DoResume(), lldb_private::process_linux::NativeRegisterContextLinux::GetByteOrder(), lldb_private::NativeThreadWindows::GetName(), lldb_private::process_freebsd::NativeRegisterContextFreeBSD::GetProcess(), lldb_private::process_netbsd::NativeRegisterContextNetBSD::GetProcess(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::PrepareStopReplyPacketForThread(), lldb_private::NativeRegisterContext::ReadRegisterValueFromMemory(), lldb_private::NativeProcessSoftwareSingleStep::SetupSoftwareSingleStepping(), and lldb_private::NativeRegisterContext::WriteRegisterValueToMemory().
|
pure virtual |
Implemented in lldb_private::process_freebsd::NativeThreadFreeBSD, lldb_private::process_linux::NativeThreadLinux, lldb_private::process_netbsd::NativeThreadNetBSD, and lldb_private::NativeThreadWindows.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::BuildTargetXml(), lldb_private::NativeProcessProtocol::FixupBreakpointPCAsNeeded(), lldb_private::NativeProcessProtocol::GetHardwareDebugSupportInfo(), GetRegistersAsJSON(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_g(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_p(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_P(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_qRegisterInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_QRestoreRegisterState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_QSaveRegisterState(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::PrepareStopReplyPacketForThread(), and lldb_private::NativeProcessSoftwareSingleStep::SetupSoftwareSingleStepping().
|
inlinevirtual |
Reimplemented in lldb_private::process_freebsd::NativeThreadFreeBSD, and lldb_private::process_linux::NativeThreadLinux.
Definition at line 55 of file NativeThreadProtocol.h.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::ReadXferObject().
|
pure virtual |
|
pure virtual |
Implemented in lldb_private::process_freebsd::NativeThreadFreeBSD, lldb_private::process_linux::NativeThreadLinux, lldb_private::process_netbsd::NativeThreadNetBSD, and lldb_private::NativeThreadWindows.
Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::PrepareStopReplyPacketForThread().
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
protected |
Definition at line 60 of file NativeThreadProtocol.h.
Referenced by lldb_private::process_netbsd::NativeThreadNetBSD::GetName(), GetProcess(), lldb_private::process_freebsd::NativeThreadFreeBSD::GetProcess(), lldb_private::process_linux::NativeThreadLinux::GetProcess(), lldb_private::process_linux::NativeThreadLinux::MaybeLogStateChange(), lldb_private::process_netbsd::NativeThreadNetBSD::Resume(), lldb_private::process_netbsd::NativeThreadNetBSD::SingleStep(), and lldb_private::process_netbsd::NativeThreadNetBSD::Suspend().
|
protected |
Definition at line 61 of file NativeThreadProtocol.h.
Referenced by GetID(), lldb_private::process_netbsd::NativeThreadNetBSD::GetName(), and lldb_private::process_linux::NativeThreadLinux::SingleStep().