LLDB mainline
Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
lldb_private::process_netbsd::NativeThreadNetBSD Class Reference

#include <NativeThreadNetBSD.h>

Inheritance diagram for lldb_private::process_netbsd::NativeThreadNetBSD:
Inheritance graph
[legend]

Public Member Functions

 NativeThreadNetBSD (NativeProcessNetBSD &process, lldb::tid_t tid)
 
std::string GetName () override
 
lldb::StateType GetState () override
 
bool GetStopReason (ThreadStopInfo &stop_info, std::string &description) override
 
NativeRegisterContextNetBSDGetRegisterContext () override
 
Status SetWatchpoint (lldb::addr_t addr, size_t size, uint32_t watch_flags, bool hardware) override
 
Status RemoveWatchpoint (lldb::addr_t addr) override
 
Status SetHardwareBreakpoint (lldb::addr_t addr, size_t size) override
 
Status RemoveHardwareBreakpoint (lldb::addr_t addr) override
 
- Public Member Functions inherited from lldb_private::NativeThreadProtocol
 NativeThreadProtocol (NativeProcessProtocol &process, lldb::tid_t tid)
 
virtual ~NativeThreadProtocol ()=default
 
virtual std::string GetName ()=0
 
virtual lldb::StateType GetState ()=0
 
virtual NativeRegisterContextGetRegisterContext ()=0
 
virtual bool GetStopReason (ThreadStopInfo &stop_info, std::string &description)=0
 
lldb::tid_t GetID () const
 
NativeProcessProtocolGetProcess ()
 
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
 

Private Types

using WatchpointIndexMap = std::map< lldb::addr_t, uint32_t >
 

Private Member Functions

Status Resume ()
 
Status SingleStep ()
 
Status Suspend ()
 
void SetStoppedBySignal (uint32_t signo, const siginfo_t *info=nullptr)
 
void SetStoppedByBreakpoint ()
 
void SetStoppedByTrace ()
 
void SetStoppedByExec ()
 
void SetStoppedByWatchpoint (uint32_t wp_index)
 
void SetStoppedByFork (lldb::pid_t child_pid, lldb::tid_t child_tid)
 
void SetStoppedByVFork (lldb::pid_t child_pid, lldb::tid_t child_tid)
 
void SetStoppedByVForkDone ()
 
void SetStoppedWithNoReason ()
 
void SetStopped ()
 
void SetRunning ()
 
void SetStepping ()
 
llvm::Error CopyWatchpointsFrom (NativeThreadNetBSD &source)
 

Private Attributes

lldb::StateType m_state
 
ThreadStopInfo m_stop_info
 
std::unique_ptr< NativeRegisterContextNetBSDm_reg_context_up
 
std::string m_stop_description
 
WatchpointIndexMap m_watchpoint_index_map
 
WatchpointIndexMap m_hw_break_index_map
 

Friends

class NativeProcessNetBSD
 

Additional Inherited Members

- Protected Attributes inherited from lldb_private::NativeThreadProtocol
NativeProcessProtocolm_process
 
lldb::tid_t m_tid
 

Detailed Description

Definition at line 25 of file NativeThreadNetBSD.h.

Member Typedef Documentation

◆ WatchpointIndexMap

Definition at line 77 of file NativeThreadNetBSD.h.

Constructor & Destructor Documentation

◆ NativeThreadNetBSD()

NativeThreadNetBSD::NativeThreadNetBSD ( NativeProcessNetBSD process,
lldb::tid_t  tid 
)

Definition at line 37 of file NativeThreadNetBSD.cpp.

Member Function Documentation

◆ CopyWatchpointsFrom()

llvm::Error NativeThreadNetBSD::CopyWatchpointsFrom ( NativeThreadNetBSD source)
private

◆ GetName()

std::string NativeThreadNetBSD::GetName ( )
overridevirtual

◆ GetRegisterContext()

NativeRegisterContextNetBSD & NativeThreadNetBSD::GetRegisterContext ( )
overridevirtual

◆ GetState()

lldb::StateType NativeThreadNetBSD::GetState ( )
overridevirtual

Implements lldb_private::NativeThreadProtocol.

Definition at line 226 of file NativeThreadNetBSD.cpp.

References m_state.

◆ GetStopReason()

bool NativeThreadNetBSD::GetStopReason ( ThreadStopInfo stop_info,
std::string &  description 
)
overridevirtual

◆ RemoveHardwareBreakpoint()

Status NativeThreadNetBSD::RemoveHardwareBreakpoint ( lldb::addr_t  addr)
overridevirtual

◆ RemoveWatchpoint()

Status NativeThreadNetBSD::RemoveWatchpoint ( lldb::addr_t  addr)
overridevirtual

Implements lldb_private::NativeThreadProtocol.

Definition at line 279 of file NativeThreadNetBSD.cpp.

References GetRegisterContext(), and m_watchpoint_index_map.

Referenced by SetWatchpoint().

◆ Resume()

Status NativeThreadNetBSD::Resume ( )
private

◆ SetHardwareBreakpoint()

Status NativeThreadNetBSD::SetHardwareBreakpoint ( lldb::addr_t  addr,
size_t  size 
)
overridevirtual

◆ SetRunning()

void NativeThreadNetBSD::SetRunning ( )
private

Definition at line 172 of file NativeThreadNetBSD.cpp.

References m_state, m_stop_info, and lldb_private::ThreadStopInfo::reason.

Referenced by Resume().

◆ SetStepping()

void NativeThreadNetBSD::SetStepping ( )
private

Definition at line 177 of file NativeThreadNetBSD.cpp.

References m_state, m_stop_info, and lldb_private::ThreadStopInfo::reason.

Referenced by SingleStep().

◆ SetStopped()

void NativeThreadNetBSD::SetStopped ( )
private

◆ SetStoppedByBreakpoint()

void NativeThreadNetBSD::SetStoppedByBreakpoint ( )
private

◆ SetStoppedByExec()

void NativeThreadNetBSD::SetStoppedByExec ( )
private

◆ SetStoppedByFork()

void NativeThreadNetBSD::SetStoppedByFork ( lldb::pid_t  child_pid,
lldb::tid_t  child_tid 
)
private

◆ SetStoppedBySignal()

void NativeThreadNetBSD::SetStoppedBySignal ( uint32_t  signo,
const siginfo_t *  info = nullptr 
)
private

◆ SetStoppedByTrace()

void NativeThreadNetBSD::SetStoppedByTrace ( )
private

◆ SetStoppedByVFork()

void NativeThreadNetBSD::SetStoppedByVFork ( lldb::pid_t  child_pid,
lldb::tid_t  child_tid 
)
private

◆ SetStoppedByVForkDone()

void NativeThreadNetBSD::SetStoppedByVForkDone ( )
private

◆ SetStoppedByWatchpoint()

void NativeThreadNetBSD::SetStoppedByWatchpoint ( uint32_t  wp_index)
private

◆ SetStoppedWithNoReason()

void NativeThreadNetBSD::SetStoppedWithNoReason ( )
private

◆ SetWatchpoint()

Status NativeThreadNetBSD::SetWatchpoint ( lldb::addr_t  addr,
size_t  size,
uint32_t  watch_flags,
bool  hardware 
)
overridevirtual

◆ SingleStep()

Status NativeThreadNetBSD::SingleStep ( )
private

◆ Suspend()

Status NativeThreadNetBSD::Suspend ( )
private

Friends And Related Function Documentation

◆ NativeProcessNetBSD

friend class NativeProcessNetBSD
friend

Definition at line 26 of file NativeThreadNetBSD.h.

Member Data Documentation

◆ m_hw_break_index_map

WatchpointIndexMap lldb_private::process_netbsd::NativeThreadNetBSD::m_hw_break_index_map
private

◆ m_reg_context_up

std::unique_ptr<NativeRegisterContextNetBSD> lldb_private::process_netbsd::NativeThreadNetBSD::m_reg_context_up
private

Definition at line 75 of file NativeThreadNetBSD.h.

Referenced by GetRegisterContext().

◆ m_state

lldb::StateType lldb_private::process_netbsd::NativeThreadNetBSD::m_state
private

◆ m_stop_description

std::string lldb_private::process_netbsd::NativeThreadNetBSD::m_stop_description
private

◆ m_stop_info

ThreadStopInfo lldb_private::process_netbsd::NativeThreadNetBSD::m_stop_info
private

◆ m_watchpoint_index_map

WatchpointIndexMap lldb_private::process_netbsd::NativeThreadNetBSD::m_watchpoint_index_map
private

Definition at line 78 of file NativeThreadNetBSD.h.

Referenced by CopyWatchpointsFrom(), RemoveWatchpoint(), and SetWatchpoint().


The documentation for this class was generated from the following files: