LLDB mainline
lldb_private::InstrumentationRuntimeBoundsSafety Class Reference

#include <InstrumentationRuntimeBoundsSafety.h>

Inheritance diagram for lldb_private::InstrumentationRuntimeBoundsSafety:
[legend]

Public Member Functions

 ~InstrumentationRuntimeBoundsSafety () 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

 InstrumentationRuntimeBoundsSafety (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 ()
bool MatchAllModules () override

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 19 of file InstrumentationRuntimeBoundsSafety.h.

Constructor & Destructor Documentation

◆ ~InstrumentationRuntimeBoundsSafety()

InstrumentationRuntimeBoundsSafety::~InstrumentationRuntimeBoundsSafety ( )
override

Definition at line 333 of file InstrumentationRuntimeBoundsSafety.cpp.

References Deactivate().

◆ InstrumentationRuntimeBoundsSafety()

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

Member Function Documentation

◆ Activate()

◆ CheckIfRuntimeIsValid()

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

◆ CreateInstance()

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

◆ Deactivate()

◆ GetPatternForRuntimeLibrary()

const RegularExpression & InstrumentationRuntimeBoundsSafety::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 360 of file InstrumentationRuntimeBoundsSafety.cpp.

◆ GetPluginName()

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

◆ GetPluginNameStatic()

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

Definition at line 31 of file InstrumentationRuntimeBoundsSafety.h.

Referenced by GetPluginName(), and Initialize().

◆ GetType()

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

Definition at line 37 of file InstrumentationRuntimeBoundsSafety.h.

References GetTypeStatic().

◆ GetTypeStatic()

lldb::InstrumentationRuntimeType InstrumentationRuntimeBoundsSafety::GetTypeStatic ( )
static

◆ Initialize()

void InstrumentationRuntimeBoundsSafety::Initialize ( )
static

◆ MatchAllModules()

bool lldb_private::InstrumentationRuntimeBoundsSafety::MatchAllModules ( )
inlineoverrideprivatevirtual
Returns
true if CheckIfRuntimeIsValid should be called on all modules. In this case the return value of GetPatternForRuntimeLibrary will be ignored. Return false if CheckIfRuntimeIsValid should only be called for modules whose name matches GetPatternForRuntimeLibrary.

Reimplemented from lldb_private::InstrumentationRuntime.

Definition at line 56 of file InstrumentationRuntimeBoundsSafety.h.

◆ NotifyBreakpointHit()

◆ Terminate()

void InstrumentationRuntimeBoundsSafety::Terminate ( )
static

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