LLVM 20.0.0git
Public Types | Public Member Functions | List of all members
llvm::MCPseudoProbeDecoder Class Reference

#include "llvm/MC/MCPseudoProbe.h"

Public Types

using Uint64Set = DenseSet< uint64_t >
 
using Uint64Map = DenseMap< uint64_t, uint64_t >
 

Public Member Functions

bool buildGUID2FuncDescMap (const uint8_t *Start, std::size_t Size, bool IsMMapped=false)
 
template<bool IsTopLevelFunc>
bool countRecords (bool &Discard, uint32_t &ProbeCount, uint32_t &InlinedCount, const Uint64Set &GuidFilter)
 
bool buildAddress2ProbeMap (const uint8_t *Start, std::size_t Size, const Uint64Set &GuildFilter, const Uint64Map &FuncStartAddrs)
 
void printGUID2FuncDescMap (raw_ostream &OS)
 
void printProbeForAddress (raw_ostream &OS, uint64_t Address)
 
void printProbesForAllAddresses (raw_ostream &OS)
 
const MCDecodedPseudoProbegetCallProbeForAddr (uint64_t Address) const
 
const MCPseudoProbeFuncDescgetFuncDescForGUID (uint64_t GUID) const
 
void getInlineContextForProbe (const MCDecodedPseudoProbe *Probe, SmallVectorImpl< MCPseudoProbeFrameLocation > &InlineContextStack, bool IncludeLeaf) const
 
const AddressProbesMapgetAddress2ProbesMap () const
 
AddressProbesMapgetAddress2ProbesMap ()
 
const GUIDProbeFunctionMapgetGUID2FuncDescMap () const
 
const MCPseudoProbeFuncDescgetInlinerDescForProbe (const MCDecodedPseudoProbe *Probe) const
 
const MCDecodedPseudoProbeInlineTreegetDummyInlineRoot () const
 
void addInjectedProbe (const MCDecodedPseudoProbe &Probe, uint64_t Address)
 
size_t getNumInjectedProbes (const MCDecodedPseudoProbeInlineTree *Parent) const
 
auto getInjectedProbes (MCDecodedPseudoProbeInlineTree *Parent)
 
const ArrayRef< MCDecodedPseudoProbeInlineTreegetInlineTreeVec () const
 

Detailed Description

Definition at line 385 of file MCPseudoProbe.h.

Member Typedef Documentation

◆ Uint64Map

Definition at line 431 of file MCPseudoProbe.h.

◆ Uint64Set

Definition at line 430 of file MCPseudoProbe.h.

Member Function Documentation

◆ addInjectedProbe()

void llvm::MCPseudoProbeDecoder::addInjectedProbe ( const MCDecodedPseudoProbe Probe,
uint64_t  Address 
)
inline

◆ buildAddress2ProbeMap()

bool MCPseudoProbeDecoder::buildAddress2ProbeMap ( const uint8_t Start,
std::size_t  Size,
const Uint64Set GuildFilter,
const Uint64Map FuncStartAddrs 
)

◆ buildGUID2FuncDescMap()

bool MCPseudoProbeDecoder::buildGUID2FuncDescMap ( const uint8_t Start,
std::size_t  Size,
bool  IsMMapped = false 
)

◆ countRecords()

template<bool IsTopLevelFunc>
bool MCPseudoProbeDecoder::countRecords ( bool Discard,
uint32_t ProbeCount,
uint32_t InlinedCount,
const Uint64Set GuidFilter 
)

◆ getAddress2ProbesMap() [1/2]

AddressProbesMap & llvm::MCPseudoProbeDecoder::getAddress2ProbesMap ( )
inline

Definition at line 481 of file MCPseudoProbe.h.

◆ getAddress2ProbesMap() [2/2]

const AddressProbesMap & llvm::MCPseudoProbeDecoder::getAddress2ProbesMap ( ) const
inline

Definition at line 477 of file MCPseudoProbe.h.

◆ getCallProbeForAddr()

const MCDecodedPseudoProbe * MCPseudoProbeDecoder::getCallProbeForAddr ( uint64_t  Address) const

Definition at line 693 of file MCPseudoProbe.cpp.

References llvm::Address, and llvm::AddressProbesMap::find().

◆ getDummyInlineRoot()

const MCDecodedPseudoProbeInlineTree & llvm::MCPseudoProbeDecoder::getDummyInlineRoot ( ) const
inline

Definition at line 490 of file MCPseudoProbe.h.

◆ getFuncDescForGUID()

const MCPseudoProbeFuncDesc * MCPseudoProbeDecoder::getFuncDescForGUID ( uint64_t  GUID) const

◆ getGUID2FuncDescMap()

const GUIDProbeFunctionMap & llvm::MCPseudoProbeDecoder::getGUID2FuncDescMap ( ) const
inline

Definition at line 483 of file MCPseudoProbe.h.

◆ getInjectedProbes()

auto llvm::MCPseudoProbeDecoder::getInjectedProbes ( MCDecodedPseudoProbeInlineTree Parent)
inline

Definition at line 507 of file MCPseudoProbe.h.

References assert().

◆ getInlineContextForProbe()

void MCPseudoProbeDecoder::getInlineContextForProbe ( const MCDecodedPseudoProbe Probe,
SmallVectorImpl< MCPseudoProbeFrameLocation > &  InlineContextStack,
bool  IncludeLeaf 
) const

◆ getInlinerDescForProbe()

const MCPseudoProbeFuncDesc * MCPseudoProbeDecoder::getInlinerDescForProbe ( const MCDecodedPseudoProbe Probe) const

◆ getInlineTreeVec()

const ArrayRef< MCDecodedPseudoProbeInlineTree > llvm::MCPseudoProbeDecoder::getInlineTreeVec ( ) const
inline

Definition at line 513 of file MCPseudoProbe.h.

◆ getNumInjectedProbes()

size_t llvm::MCPseudoProbeDecoder::getNumInjectedProbes ( const MCDecodedPseudoProbeInlineTree Parent) const
inline

Definition at line 500 of file MCPseudoProbe.h.

◆ printGUID2FuncDescMap()

void MCPseudoProbeDecoder::printGUID2FuncDescMap ( raw_ostream OS)

Definition at line 665 of file MCPseudoProbe.cpp.

References I, and OS.

◆ printProbeForAddress()

void MCPseudoProbeDecoder::printProbeForAddress ( raw_ostream OS,
uint64_t  Address 
)

Definition at line 671 of file MCPseudoProbe.cpp.

References llvm::Address, llvm::AddressProbesMap::find(), and OS.

◆ printProbesForAllAddresses()

void MCPseudoProbeDecoder::printProbesForAllAddresses ( raw_ostream OS)

Definition at line 679 of file MCPseudoProbe.cpp.

References llvm::Address, INT64_MAX, and OS.


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