LLDB mainline
lldb_private::InstrumentationRuntimeASan Class Reference

#include <InstrumentationRuntimeASan.h>

Inheritance diagram for lldb_private::InstrumentationRuntimeASan:
[legend]

Public Member Functions

 ~InstrumentationRuntimeASan () override
llvm::StringRef GetPluginName () override
virtual lldb::InstrumentationRuntimeType GetType ()
Public Member Functions inherited from lldb_private::InstrumentationRuntime
void ModulesDidLoad (lldb_private::ModuleList &module_list)
 Look for the instrumentation runtime in module_list.
bool IsActive () const
virtual lldb::ThreadCollectionSP GetBacktracesFromExtendedStopInfo (StructuredData::ObjectSP info)
Public Member Functions inherited from lldb_private::PluginInterface
 PluginInterface ()=default
virtual ~PluginInterface ()=default
 PluginInterface (const PluginInterface &)=delete
PluginInterfaceoperator= (const PluginInterface &)=delete

Static Public Member Functions

static lldb::InstrumentationRuntimeSP CreateInstance (const lldb::ProcessSP &process_sp)
static void Initialize ()
static void Terminate ()
static llvm::StringRef GetPluginNameStatic ()
static lldb::InstrumentationRuntimeType GetTypeStatic ()
Static Public Member Functions inherited from lldb_private::InstrumentationRuntime
static void ModulesDidLoad (lldb_private::ModuleList &module_list, Process *process, InstrumentationRuntimeCollection &runtimes)

Private Member Functions

 InstrumentationRuntimeASan (const lldb::ProcessSP &process_sp)
const RegularExpressionGetPatternForRuntimeLibrary () override
 Return a regular expression which can be used to identify a valid version of the runtime library.
bool CheckIfRuntimeIsValid (const lldb::ModuleSP module_sp) override
 Check whether module_sp corresponds to a valid runtime library.
void Activate () override
 Register a breakpoint in the runtime library and perform any other necessary initialization.
void Deactivate ()

Static Private Member Functions

static bool NotifyBreakpointHit (void *baton, StoppointCallbackContext *context, lldb::user_id_t break_id, lldb::user_id_t break_loc_id)

Additional Inherited Members

Protected Member Functions inherited from lldb_private::InstrumentationRuntime
 InstrumentationRuntime (const lldb::ProcessSP &process_sp)
lldb::ProcessSP GetProcessSP ()
lldb::ModuleSP GetRuntimeModuleSP ()
void SetRuntimeModuleSP (lldb::ModuleSP module_sp)
lldb::user_id_t GetBreakpointID () const
void SetBreakpointID (lldb::user_id_t ID)
void SetActive (bool IsActive)

Detailed Description

Definition at line 16 of file InstrumentationRuntimeASan.h.

Constructor & Destructor Documentation

◆ ~InstrumentationRuntimeASan()

InstrumentationRuntimeASan::~InstrumentationRuntimeASan ( )
override

Definition at line 45 of file InstrumentationRuntimeASan.cpp.

References Deactivate().

◆ InstrumentationRuntimeASan()

lldb_private::InstrumentationRuntimeASan::InstrumentationRuntimeASan ( const lldb::ProcessSP & process_sp)
inlineprivate

Member Function Documentation

◆ Activate()

◆ CheckIfRuntimeIsValid()

bool InstrumentationRuntimeASan::CheckIfRuntimeIsValid ( const lldb::ModuleSP module_sp)
overrideprivatevirtual

Check whether module_sp corresponds to a valid runtime library.

Implements lldb_private::InstrumentationRuntime.

Definition at line 55 of file InstrumentationRuntimeASan.cpp.

References lldb::eSymbolTypeAny.

◆ CreateInstance()

lldb::InstrumentationRuntimeSP InstrumentationRuntimeASan::CreateInstance ( const lldb::ProcessSP & process_sp)
static

Definition at line 27 of file InstrumentationRuntimeASan.cpp.

References InstrumentationRuntimeASan().

Referenced by Initialize(), and Terminate().

◆ Deactivate()

◆ GetPatternForRuntimeLibrary()

const RegularExpression & InstrumentationRuntimeASan::GetPatternForRuntimeLibrary ( )
overrideprivatevirtual

Return a regular expression which can be used to identify a valid version of the runtime library.

Implements lldb_private::InstrumentationRuntime.

Definition at line 48 of file InstrumentationRuntimeASan.cpp.

◆ GetPluginName()

llvm::StringRef lldb_private::InstrumentationRuntimeASan::GetPluginName ( )
inlineoverridevirtual

Implements lldb_private::PluginInterface.

Definition at line 31 of file InstrumentationRuntimeASan.h.

References GetPluginNameStatic().

◆ GetPluginNameStatic()

llvm::StringRef lldb_private::InstrumentationRuntimeASan::GetPluginNameStatic ( )
inlinestatic

Definition at line 27 of file InstrumentationRuntimeASan.h.

Referenced by GetPluginName(), and Initialize().

◆ GetType()

virtual lldb::InstrumentationRuntimeType lldb_private::InstrumentationRuntimeASan::GetType ( )
inlinevirtual

Definition at line 33 of file InstrumentationRuntimeASan.h.

References GetTypeStatic().

◆ GetTypeStatic()

lldb::InstrumentationRuntimeType InstrumentationRuntimeASan::GetTypeStatic ( )
static

◆ Initialize()

void InstrumentationRuntimeASan::Initialize ( )
static

◆ NotifyBreakpointHit()

bool InstrumentationRuntimeASan::NotifyBreakpointHit ( void * baton,
StoppointCallbackContext * context,
lldb::user_id_t break_id,
lldb::user_id_t break_loc_id )
staticprivate

◆ Terminate()

void InstrumentationRuntimeASan::Terminate ( )
static

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