LLVM 19.0.0git
Classes | Public Member Functions | Static Public Member Functions | List of all members
llvm::sampleprof::SampleContext Class Reference

#include "llvm/ProfileData/SampleProf.h"

Classes

struct  Hash
 

Public Member Functions

 SampleContext ()
 
 SampleContext (StringRef Name)
 
 SampleContext (FunctionId Func)
 
 SampleContext (SampleContextFrames Context, ContextStateMask CState=RawContext)
 
 SampleContext (StringRef ContextStr, std::list< SampleContextFrameVector > &CSNameTable, ContextStateMask CState=RawContext)
 
 operator SampleContextFrames () const
 
bool hasAttribute (ContextAttributeMask A)
 
void setAttribute (ContextAttributeMask A)
 
uint32_t getAllAttributes ()
 
void setAllAttributes (uint32_t A)
 
bool hasState (ContextStateMask S)
 
void setState (ContextStateMask S)
 
void clearState (ContextStateMask S)
 
bool hasContext () const
 
bool isBaseContext () const
 
FunctionId getFunction () const
 
SampleContextFrames getContextFrames () const
 
std::string toString () const
 
uint64_t getHashCode () const
 
void setFunction (FunctionId newFunction)
 Set the name of the function and clear the current context.
 
void setContext (SampleContextFrames Context, ContextStateMask CState=RawContext)
 
bool operator== (const SampleContext &That) const
 
bool operator!= (const SampleContext &That) const
 
bool operator< (const SampleContext &That) const
 
bool IsPrefixOf (const SampleContext &That) const
 

Static Public Member Functions

static void createCtxVectorFromStr (StringRef ContextStr, SampleContextFrameVector &Context)
 Create a context vector from a given context string and save it in Context.
 
static void decodeContextString (StringRef ContextStr, FunctionId &Func, LineLocation &LineLoc)
 
static std::string getContextString (SampleContextFrames Context, bool IncludeLeafLineLocation=false)
 

Detailed Description

Definition at line 522 of file SampleProf.h.

Constructor & Destructor Documentation

◆ SampleContext() [1/5]

llvm::sampleprof::SampleContext::SampleContext ( )
inline

Definition at line 524 of file SampleProf.h.

◆ SampleContext() [2/5]

llvm::sampleprof::SampleContext::SampleContext ( StringRef  Name)
inline

Definition at line 526 of file SampleProf.h.

References assert(), and Name.

◆ SampleContext() [3/5]

llvm::sampleprof::SampleContext::SampleContext ( FunctionId  Func)
inline

Definition at line 531 of file SampleProf.h.

◆ SampleContext() [4/5]

llvm::sampleprof::SampleContext::SampleContext ( SampleContextFrames  Context,
ContextStateMask  CState = RawContext 
)
inline

Definition at line 534 of file SampleProf.h.

References assert(), Context, and setContext().

◆ SampleContext() [5/5]

llvm::sampleprof::SampleContext::SampleContext ( StringRef  ContextStr,
std::list< SampleContextFrameVector > &  CSNameTable,
ContextStateMask  CState = RawContext 
)
inline

Member Function Documentation

◆ clearState()

void llvm::sampleprof::SampleContext::clearState ( ContextStateMask  S)
inline

Definition at line 613 of file SampleProf.h.

◆ createCtxVectorFromStr()

static void llvm::sampleprof::SampleContext::createCtxVectorFromStr ( StringRef  ContextStr,
SampleContextFrameVector Context 
)
inlinestatic

Create a context vector from a given context string and save it in Context.

Definition at line 565 of file SampleProf.h.

References Context, decodeContextString(), llvm::StringRef::empty(), llvm::StringRef::size(), llvm::StringRef::split(), and llvm::StringRef::substr().

Referenced by SampleContext().

◆ decodeContextString()

static void llvm::sampleprof::SampleContext::decodeContextString ( StringRef  ContextStr,
FunctionId Func,
LineLocation LineLoc 
)
inlinestatic

◆ getAllAttributes()

uint32_t llvm::sampleprof::SampleContext::getAllAttributes ( )
inline

◆ getContextFrames()

SampleContextFrames llvm::sampleprof::SampleContext::getContextFrames ( ) const
inline

Definition at line 617 of file SampleProf.h.

Referenced by getHashCode().

◆ getContextString()

static std::string llvm::sampleprof::SampleContext::getContextString ( SampleContextFrames  Context,
bool  IncludeLeafLineLocation = false 
)
inlinestatic

Definition at line 619 of file SampleProf.h.

References Context, and I.

Referenced by llvm::SampleContextTracker::getContextString(), and toString().

◆ getFunction()

FunctionId llvm::sampleprof::SampleContext::getFunction ( ) const
inline

◆ getHashCode()

uint64_t llvm::sampleprof::SampleContext::getHashCode ( ) const
inline

◆ hasAttribute()

bool llvm::sampleprof::SampleContext::hasAttribute ( ContextAttributeMask  A)
inline

Definition at line 607 of file SampleProf.h.

References A.

◆ hasContext()

bool llvm::sampleprof::SampleContext::hasContext ( ) const
inline

◆ hasState()

bool llvm::sampleprof::SampleContext::hasState ( ContextStateMask  S)
inline

◆ isBaseContext()

bool llvm::sampleprof::SampleContext::isBaseContext ( ) const
inline

Definition at line 615 of file SampleProf.h.

References llvm::ArrayRef< T >::size().

◆ IsPrefixOf()

bool llvm::sampleprof::SampleContext::IsPrefixOf ( const SampleContext That) const
inline

◆ operator SampleContextFrames()

llvm::sampleprof::SampleContext::operator SampleContextFrames ( ) const
inline

Definition at line 606 of file SampleProf.h.

◆ operator!=()

bool llvm::sampleprof::SampleContext::operator!= ( const SampleContext That) const
inline

Definition at line 664 of file SampleProf.h.

◆ operator<()

bool llvm::sampleprof::SampleContext::operator< ( const SampleContext That) const
inline

Definition at line 666 of file SampleProf.h.

References hasContext(), I, and llvm::ArrayRef< T >::size().

◆ operator==()

bool llvm::sampleprof::SampleContext::operator== ( const SampleContext That) const
inline

Definition at line 659 of file SampleProf.h.

◆ setAllAttributes()

void llvm::sampleprof::SampleContext::setAllAttributes ( uint32_t  A)
inline

◆ setAttribute()

void llvm::sampleprof::SampleContext::setAttribute ( ContextAttributeMask  A)
inline

Definition at line 608 of file SampleProf.h.

References A.

◆ setContext()

void llvm::sampleprof::SampleContext::setContext ( SampleContextFrames  Context,
ContextStateMask  CState = RawContext 
)
inline

Definition at line 651 of file SampleProf.h.

References assert(), Context, and llvm::sampleprof::UnknownContext.

Referenced by SampleContext().

◆ setFunction()

void llvm::sampleprof::SampleContext::setFunction ( FunctionId  newFunction)
inline

Set the name of the function and clear the current context.

Definition at line 645 of file SampleProf.h.

References llvm::sampleprof::UnknownContext.

Referenced by llvm::sampleprof::FunctionSamples::setFunction().

◆ setState()

void llvm::sampleprof::SampleContext::setState ( ContextStateMask  S)
inline

◆ toString()

std::string llvm::sampleprof::SampleContext::toString ( ) const
inline

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