LLVM: llvm::GlobalValueSummary Class Reference (original) (raw)

Function and variable summary information to aid decisions and implementation of importing. More...

#include "[llvm/IR/ModuleSummaryIndex.h](ModuleSummaryIndex%5F8h%5Fsource.html)"

Classes
struct GVFlags
Group flags (Linkage, NotEligibleToImport, etc.) as a bitfield. More...
Public Types
enum SummaryKind : unsigned { AliasKind, FunctionKind, GlobalVarKind }
Sububclass discriminator (for dyn_cast<> et al.) More...
enum ImportKind : unsigned { Definition = 0 , Declaration = 1 }
Public Member Functions
virtual ~GlobalValueSummary ()=default
GlobalValue::GUID getOriginalName () const
Returns the hash of the original name, it is identical to the GUID for externally visible symbols, but not for local ones.
void setOriginalName (GlobalValue::GUID Name)
Initialize the original name hash in this summary.
SummaryKind getSummaryKind () const
Which kind of summary subclass this is.
void setModulePath (StringRef ModPath)
Set the path to the module containing this function, for use in the combined index.
StringRef modulePath () const
Get the path to the module containing this function.
GVFlags flags () const
Get the flags for this GlobalValue (see struct GVFlags).
GlobalValue::LinkageTypes linkage () const
Return linkage type recorded for this global value.
void setLinkage (GlobalValue::LinkageTypes Linkage)
Sets the linkage to the value determined by global summary-based optimization.
bool notEligibleToImport () const
Return true if this global value can't be imported.
bool isLive () const
void setLive (bool Live)
void setDSOLocal (bool Local)
bool isDSOLocal () const
void setCanAutoHide (bool CanAutoHide)
bool canAutoHide () const
bool shouldImportAsDecl () const
void setImportKind (ImportKind IK)
GlobalValueSummary::ImportKind importType () const
GlobalValue::VisibilityTypes getVisibility () const
void setVisibility (GlobalValue::VisibilityTypes Vis)
void setNotEligibleToImport ()
Flag that this global value cannot be imported.
ArrayRef< ValueInfo > refs () const
Return the list of values referenced by this global value definition.
GlobalValueSummary * getBaseObject ()
If this is an alias summary, returns the summary of the aliased object (a global variable or function), otherwise returns itself.
const GlobalValueSummary * getBaseObject () const
Friends
class ModuleSummaryIndex

Function and variable summary information to aid decisions and implementation of importing.

Definition at line 488 of file ModuleSummaryIndex.h.

ImportKind

SummaryKind

Sububclass discriminator (for dyn_cast<> et al.)

Enumerator
AliasKind
FunctionKind
GlobalVarKind

Definition at line 491 of file ModuleSummaryIndex.h.

Definition at line 589 of file ModuleSummaryIndex.h.

References AliasKind, assert(), and llvm::move().

Referenced by llvm::AliasSummary::AliasSummary(), llvm::AliasSummary::classof(), llvm::FunctionSummary::classof(), llvm::GlobalVarSummary::classof(), llvm::FunctionSummary::FunctionSummary(), llvm::AliasSummary::getAliasee(), llvm::AliasSummary::getAliasee(), getBaseObject(), getBaseObject(), llvm::GlobalVarSummary::GlobalVarSummary(), and llvm::AliasSummary::setAliasee().

~GlobalValueSummary()

virtual llvm::GlobalValueSummary::~GlobalValueSummary ( ) virtualdefault

canAutoHide()

bool llvm::GlobalValueSummary::canAutoHide ( ) const inline

flags()

GVFlags llvm::GlobalValueSummary::flags ( ) const inline

getBaseObject() [1/2]

getBaseObject() [2/2]

getOriginalName()

Returns the hash of the original name, it is identical to the GUID for externally visible symbols, but not for local ones.

Definition at line 601 of file ModuleSummaryIndex.h.

getSummaryKind()

SummaryKind llvm::GlobalValueSummary::getSummaryKind ( ) const inline

getVisibility()

importType()

GlobalValueSummary::ImportKind llvm::GlobalValueSummary::importType ( ) const inline

isDSOLocal()

bool llvm::GlobalValueSummary::isDSOLocal ( ) const inline

isLive()

bool llvm::GlobalValueSummary::isLive ( ) const inline

linkage()

modulePath()

StringRef llvm::GlobalValueSummary::modulePath ( ) const inline

notEligibleToImport()

bool llvm::GlobalValueSummary::notEligibleToImport ( ) const inline

refs()

setCanAutoHide()

void llvm::GlobalValueSummary::setCanAutoHide ( bool CanAutoHide) inline

setDSOLocal()

void llvm::GlobalValueSummary::setDSOLocal ( bool Local) inline

setImportKind()

void llvm::GlobalValueSummary::setImportKind ( ImportKind IK) inline

setLinkage()

Sets the linkage to the value determined by global summary-based optimization.

Will be applied in the ThinLTO backends.

Definition at line 626 of file ModuleSummaryIndex.h.

References Linkage.

setLive()

void llvm::GlobalValueSummary::setLive ( bool Live) inline

setModulePath()

void llvm::GlobalValueSummary::setModulePath ( StringRef ModPath) inline

Set the path to the module containing this function, for use in the combined index.

Definition at line 611 of file ModuleSummaryIndex.h.

setNotEligibleToImport()

void llvm::GlobalValueSummary::setNotEligibleToImport ( ) inline

setOriginalName()

setVisibility()

shouldImportAsDecl()

bool llvm::GlobalValueSummary::shouldImportAsDecl ( ) const inline

ModuleSummaryIndex


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