LLDB mainline
|
Namespaces | |
namespace | resource_handle |
Classes | |
class | IntelPTCollector |
Main class that manages intel-pt process and thread tracing. More... | |
class | IntelPTMultiCoreTrace |
class | IntelPTPerThreadProcessTrace |
Manages a "process trace" instance by tracing each thread individually. More... | |
class | IntelPTProcessTrace |
Interface to be implemented by each 'process trace' strategy (per cpu, per thread, etc). More... | |
class | IntelPTSingleBufferTrace |
This class wraps a single perf event collecting intel pt data in a single buffer. More... | |
class | IntelPTThreadTraceCollection |
Manages a list of thread traces. More... | |
class | NativeProcessLinux |
Manages communication with the inferior (debugee) process. More... | |
class | NativeRegisterContextLinux |
class | NativeThreadLinux |
class | PerfEvent |
Thin wrapper of the perf_event_open API. More... | |
class | SingleStepWorkaround |
Typedefs | |
using | IntelPTProcessTraceUP = std::unique_ptr< IntelPTProcessTrace > |
Functions | |
llvm::Expected< uint32_t > | GetIntelPTOSEventType () |
Return the Linux perf event type for Intel PT. | |
llvm::Expected< PerfEvent > | CreateContextSwitchTracePerfEvent (lldb::cpu_id_t cpu_id, const PerfEvent *parent_perf_event=nullptr) |
Create a perf event that tracks context switches on a cpu. | |
llvm::Expected< LinuxPerfZeroTscConversion > | LoadPerfTscConversionParameters () |
Load PerfTscConversionParameters from perf_event_mmap_page, if available. | |
llvm::Expected< llvm::ArrayRef< uint8_t > > | GetProcfsCpuInfo () |
llvm::Expected< std::vector< lldb::cpu_id_t > > | GetAvailableLogicalCoreIDs (llvm::StringRef cpuinfo) |
llvm::Expected< llvm::ArrayRef< lldb::cpu_id_t > > | GetAvailableLogicalCoreIDs () |
llvm::Expected< int > | GetPtraceScope () |
using lldb_private::process_linux::IntelPTProcessTraceUP = typedef std::unique_ptr<IntelPTProcessTrace> |
Definition at line 48 of file IntelPTProcessTrace.h.
Expected< PerfEvent > lldb_private::process_linux::CreateContextSwitchTracePerfEvent | ( | lldb::cpu_id_t | cpu_id, |
const PerfEvent * | parent_perf_event = nullptr |
||
) |
Create a perf event that tracks context switches on a cpu.
[in] | cpu_id | The core to trace. |
[in] | parent_perf_event | An optional perf event that will be grouped with the new perf event. |
Definition at line 333 of file Perf.cpp.
References lldb_private::process_linux::PerfEvent::GetFd(), lldb_private::GetLog(), lldb_private::process_linux::PerfEvent::Init(), lldb_private::process_linux::PerfEvent::IsEnabled(), LLDB_LOG, and lldb_private::Trace.
Referenced by lldb_private::process_linux::IntelPTMultiCoreTrace::StartOnAllCores().
llvm::Expected< llvm::ArrayRef< cpu_id_t > > lldb_private::process_linux::GetAvailableLogicalCoreIDs | ( | ) |
Definition at line 56 of file Procfs.cpp.
References GetAvailableLogicalCoreIDs(), and GetProcfsCpuInfo().
Referenced by GetAvailableLogicalCoreIDs(), and lldb_private::process_linux::IntelPTMultiCoreTrace::StartOnAllCores().
llvm::Expected< std::vector< lldb::cpu_id_t > > lldb_private::process_linux::GetAvailableLogicalCoreIDs | ( | llvm::StringRef | cpuinfo | ) |
Expected< uint32_t > lldb_private::process_linux::GetIntelPTOSEventType | ( | ) |
Return the Linux perf event type for Intel PT.
Definition at line 107 of file IntelPTSingleBufferTrace.cpp.
References Decimal, kOSEventIntelPTTypeFile, and ReadIntelPTConfigFile().
Referenced by lldb_private::process_linux::IntelPTCollector::IsSupported().
Expected< ArrayRef< uint8_t > > lldb_private::process_linux::GetProcfsCpuInfo | ( | ) |
Definition at line 22 of file Procfs.cpp.
References lldb_private::getProcFile().
Referenced by GetAvailableLogicalCoreIDs(), lldb_private::process_linux::IntelPTCollector::GetBinaryData(), and lldb_private::process_linux::IntelPTCollector::GetState().
llvm::Expected< int > lldb_private::process_linux::GetPtraceScope | ( | ) |
Definition at line 74 of file Procfs.cpp.
References lldb_private::getProcFile().
Referenced by AddPtraceScopeNote().
Expected< LinuxPerfZeroTscConversion > lldb_private::process_linux::LoadPerfTscConversionParameters | ( | ) |
Load PerfTscConversionParameters from perf_event_mmap_page, if available.
Definition at line 27 of file Perf.cpp.
References lldb_private::process_linux::PerfEvent::Init(), and lldb_private::LinuxPerfZeroTscConversion::time_mult.
Referenced by lldb_private::process_linux::IntelPTCollector::FetchPerfTscConversionParameters().