LLVM  15.0.0git
Classes | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | List of all members
llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType > Class Template Reference

#include "llvm/MC/MCPseudoProbe.h"

Inheritance diagram for llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >:
Inheritance graph
[legend]
Collaboration diagram for llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >:
Collaboration graph
[legend]

Public Member Functions

bool isRoot () const
 
InlinedProbeTreeMapgetChildren ()
 
const InlinedProbeTreeMapgetChildren () const
 
std::vector< ProbeType > & getProbes ()
 
void addProbes (ProbeType Probe)
 
DerivedProbeInlineTreeType * getOrAddNode (const InlineSite &Site)
 

Public Attributes

uint64_t Guid = 0
 
MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType > * Parent
 

Protected Types

using InlinedProbeTreeMap = std::unordered_map< InlineSite, std::unique_ptr< DerivedProbeInlineTreeType >, InlineSiteHash >
 

Protected Member Functions

 MCPseudoProbeInlineTreeBase ()
 

Protected Attributes

InlinedProbeTreeMap Children
 
std::vector< ProbeType > Probes
 

Detailed Description

template<typename ProbeType, typename DerivedProbeInlineTreeType>
class llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >

Definition at line 200 of file MCPseudoProbe.h.

Member Typedef Documentation

◆ InlinedProbeTreeMap

template<typename ProbeType , typename DerivedProbeInlineTreeType >
using llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::InlinedProbeTreeMap = std::unordered_map< InlineSite, std::unique_ptr<DerivedProbeInlineTreeType>, InlineSiteHash>
protected

Definition at line 210 of file MCPseudoProbe.h.

Constructor & Destructor Documentation

◆ MCPseudoProbeInlineTreeBase()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::MCPseudoProbeInlineTreeBase ( )
inlineprotected

Definition at line 214 of file MCPseudoProbe.h.

Member Function Documentation

◆ addProbes()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
void llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::addProbes ( ProbeType  Probe)
inline

Definition at line 229 of file MCPseudoProbe.h.

Referenced by llvm::MCPseudoProbeDecoder::buildAddress2ProbeMap().

◆ getChildren() [1/2]

template<typename ProbeType , typename DerivedProbeInlineTreeType >
InlinedProbeTreeMap& llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getChildren ( )
inline

Definition at line 226 of file MCPseudoProbe.h.

Referenced by llvm::MCPseudoProbeDecoder::buildAddress2ProbeMap().

◆ getChildren() [2/2]

template<typename ProbeType , typename DerivedProbeInlineTreeType >
const InlinedProbeTreeMap& llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getChildren ( ) const
inline

Definition at line 227 of file MCPseudoProbe.h.

◆ getOrAddNode()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
DerivedProbeInlineTreeType* llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getOrAddNode ( const InlineSite Site)
inline

Definition at line 232 of file MCPseudoProbe.h.

Referenced by llvm::MCPseudoProbeDecoder::buildAddress2ProbeMap().

◆ getProbes()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
std::vector<ProbeType>& llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getProbes ( )
inline

Definition at line 228 of file MCPseudoProbe.h.

◆ isRoot()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
bool llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::isRoot ( ) const
inline

Definition at line 225 of file MCPseudoProbe.h.

Member Data Documentation

◆ Children

template<typename ProbeType , typename DerivedProbeInlineTreeType >
InlinedProbeTreeMap llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Children
protected

◆ Guid

template<typename ProbeType , typename DerivedProbeInlineTreeType >
uint64_t llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Guid = 0

◆ Parent

template<typename ProbeType , typename DerivedProbeInlineTreeType >
MCPseudoProbeInlineTreeBase<ProbeType, DerivedProbeInlineTreeType>* llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Parent

Definition at line 231 of file MCPseudoProbe.h.

Referenced by llvm::MCDecodedPseudoProbe::getInlineContext().

◆ Probes

template<typename ProbeType , typename DerivedProbeInlineTreeType >
std::vector<ProbeType> llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Probes
protected

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