LLVM 20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::AliasSummary Class Reference

Alias summary information. More...

#include "llvm/IR/ModuleSummaryIndex.h"

Inheritance diagram for llvm::AliasSummary:
Inheritance graph
[legend]

Public Member Functions

 AliasSummary (GVFlags Flags)
 
void setAliasee (ValueInfo &AliaseeVI, GlobalValueSummary *Aliasee)
 
bool hasAliasee () const
 
const GlobalValueSummarygetAliasee () const
 
GlobalValueSummarygetAliasee ()
 
ValueInfo getAliaseeVI () const
 
GlobalValue::GUID getAliaseeGUID () const
 
- Public Member Functions inherited from llvm::GlobalValueSummary
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< ValueInforefs () const
 Return the list of values referenced by this global value definition.
 
GlobalValueSummarygetBaseObject ()
 If this is an alias summary, returns the summary of the aliased object (a global variable or function), otherwise returns itself.
 
const GlobalValueSummarygetBaseObject () const
 

Static Public Member Functions

static bool classof (const GlobalValueSummary *GVS)
 Check if this is an alias summary.
 

Additional Inherited Members

- Public Types inherited from llvm::GlobalValueSummary
enum  SummaryKind : unsigned { AliasKind , FunctionKind , GlobalVarKind }
 Sububclass discriminator (for dyn_cast<> et al.) More...
 
enum  ImportKind : unsigned { Definition = 0 , Declaration = 1 }
 
- Protected Member Functions inherited from llvm::GlobalValueSummary
 GlobalValueSummary (SummaryKind K, GVFlags Flags, SmallVectorImpl< ValueInfo > &&Refs)
 

Detailed Description

Alias summary information.

Definition at line 657 of file ModuleSummaryIndex.h.

Constructor & Destructor Documentation

◆ AliasSummary()

llvm::AliasSummary::AliasSummary ( GVFlags  Flags)
inline

Definition at line 667 of file ModuleSummaryIndex.h.

Member Function Documentation

◆ classof()

static bool llvm::AliasSummary::classof ( const GlobalValueSummary GVS)
inlinestatic

Check if this is an alias summary.

Definition at line 671 of file ModuleSummaryIndex.h.

References llvm::GlobalValueSummary::AliasKind, and llvm::GlobalValueSummary::getSummaryKind().

◆ getAliasee() [1/2]

GlobalValueSummary & llvm::AliasSummary::getAliasee ( )
inline

Definition at line 692 of file ModuleSummaryIndex.h.

References getAliasee().

◆ getAliasee() [2/2]

const GlobalValueSummary & llvm::AliasSummary::getAliasee ( ) const
inline

Definition at line 687 of file ModuleSummaryIndex.h.

References assert().

Referenced by getAliasee().

◆ getAliaseeGUID()

GlobalValue::GUID llvm::AliasSummary::getAliaseeGUID ( ) const
inline

Definition at line 700 of file ModuleSummaryIndex.h.

References assert(), and llvm::ValueInfo::getGUID().

◆ getAliaseeVI()

ValueInfo llvm::AliasSummary::getAliaseeVI ( ) const
inline

Definition at line 696 of file ModuleSummaryIndex.h.

References assert().

◆ hasAliasee()

bool llvm::AliasSummary::hasAliasee ( ) const
inline

Definition at line 680 of file ModuleSummaryIndex.h.

References assert(), and llvm::ValueInfo::getSummaryList().

◆ setAliasee()

void llvm::AliasSummary::setAliasee ( ValueInfo AliaseeVI,
GlobalValueSummary Aliasee 
)
inline

Definition at line 675 of file ModuleSummaryIndex.h.


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