LLVM 18.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 (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
 
StringRef getName () const
 
SampleContextFrames getContextFrames () const
 
std::string toString () const
 
uint64_t getHashCode () const
 
void setName (StringRef FunctionName)
 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, StringRef &FName, LineLocation &LineLoc)
 
static std::string getContextString (SampleContextFrames Context, bool IncludeLeafLineLocation=false)
 

Detailed Description

Definition at line 531 of file SampleProf.h.

Constructor & Destructor Documentation

◆ SampleContext() [1/4]

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

Definition at line 533 of file SampleProf.h.

◆ SampleContext() [2/4]

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

Definition at line 535 of file SampleProf.h.

References assert().

◆ SampleContext() [3/4]

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

Definition at line 540 of file SampleProf.h.

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

◆ SampleContext() [4/4]

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 618 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 571 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,
StringRef FName,
LineLocation LineLoc 
)
inlinestatic

◆ getAllAttributes()

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

◆ getContextFrames()

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

Definition at line 622 of file SampleProf.h.

Referenced by getHashCode().

◆ getContextString()

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

Definition at line 624 of file SampleProf.h.

References Context, and I.

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

◆ getHashCode()

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

◆ getName()

StringRef llvm::sampleprof::SampleContext::getName ( ) const
inline

◆ hasAttribute()

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

Definition at line 612 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 620 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 611 of file SampleProf.h.

◆ operator!=()

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

Definition at line 672 of file SampleProf.h.

◆ operator<()

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

Definition at line 674 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 667 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 613 of file SampleProf.h.

References A.

◆ setContext()

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

Definition at line 659 of file SampleProf.h.

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

Referenced by SampleContext().

◆ setName()

void llvm::sampleprof::SampleContext::setName ( StringRef  FunctionName)
inline

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

Definition at line 653 of file SampleProf.h.

References llvm::sampleprof::UnknownContext.

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

◆ 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: