|
LLVM 24.0.0git
|
Struct that holds a reference to a particular GUID in a global value summary. More...
#include "llvm/IR/ModuleSummaryIndex.h"
Public Types | |
| enum | Flags { HaveGV = 1 , ReadOnly = 2 , WriteOnly = 4 } |
Public Member Functions | |
| ValueInfo ()=default | |
| ValueInfo (bool HaveGVs, const GlobalValueSummaryMapTy::value_type *R) | |
| operator bool () const | |
| GlobalValue::GUID | getGUID () const |
| const GlobalValue * | getValue () const |
| ArrayRef< std::unique_ptr< GlobalValueSummary > > | getSummaryList () const |
| void | verifyLocal () const |
| bool | hasLocal () const |
| bool | hasName () const |
| StringRef | name () const |
| bool | haveGVs () const |
| bool | isReadOnly () const |
| bool | isWriteOnly () const |
| unsigned | getAccessSpecifier () const |
| bool | isValidAccessSpecifier () const |
| void | setReadOnly () |
| void | setWriteOnly () |
| const GlobalValueSummaryMapTy::value_type * | getRef () const |
| LLVM_ABI GlobalValue::VisibilityTypes | getELFVisibility () const |
| Returns the most constraining visibility among summaries. | |
| LLVM_ABI bool | isDSOLocal (bool WithDSOLocalPropagation=false) const |
| Checks if all summaries are DSO local (have the flag set). | |
| LLVM_ABI bool | canAutoHide () const |
| Checks if all copies are eligible for auto-hiding (have flag set). | |
Public Attributes | |
| PointerIntPair< const GlobalValueSummaryMapTy::value_type *, 3, int > | RefAndFlags |
Struct that holds a reference to a particular GUID in a global value summary.
Definition at line 305 of file ModuleSummaryIndex.h.
| Enumerator | |
|---|---|
| HaveGV | |
| ReadOnly | |
| WriteOnly | |
Definition at line 306 of file ModuleSummaryIndex.h.
|
default |
|
inline |
Definition at line 311 of file ModuleSummaryIndex.h.
References RefAndFlags.
| bool ValueInfo::canAutoHide | ( | ) | const |
Checks if all copies are eligible for auto-hiding (have flag set).
Definition at line 73 of file ModuleSummaryIndex.cpp.
References llvm::all_of(), and getSummaryList().
|
inline |
Definition at line 351 of file ModuleSummaryIndex.h.
References assert(), isValidAccessSpecifier(), ReadOnly, RefAndFlags, and WriteOnly.
Referenced by setReadOnly(), and setWriteOnly().
| GlobalValue::VisibilityTypes ValueInfo::getELFVisibility | ( | ) | const |
Returns the most constraining visibility among summaries.
The visibilities, ordered from least to most constraining, are: default, protected and hidden.
Definition at line 48 of file ModuleSummaryIndex.cpp.
References llvm::GlobalValue::DefaultVisibility, getSummaryList(), llvm::GlobalValue::HiddenVisibility, llvm::make_pointee_range(), and llvm::GlobalValue::ProtectedVisibility.
|
inline |
Definition at line 318 of file ModuleSummaryIndex.h.
References getRef().
|
inline |
Definition at line 370 of file ModuleSummaryIndex.h.
References RefAndFlags.
Referenced by getGUID(), getSummaryList(), getValue(), hasLocal(), name(), operator bool(), and verifyLocal().
|
inline |
Definition at line 324 of file ModuleSummaryIndex.h.
References getRef().
Referenced by canAutoHide(), llvm::yaml::CustomMappingTraits< GlobalValueSummaryMapTy >::fixAliaseeLinks(), getELFVisibility(), isDSOLocal(), and mustBeUnreachableFunction().
|
inline |
|
inline |
Definition at line 330 of file ModuleSummaryIndex.h.
References getRef().
|
inline |
Definition at line 334 of file ModuleSummaryIndex.h.
References getValue(), and haveGVs().
|
inline |
Definition at line 342 of file ModuleSummaryIndex.h.
References HaveGV, and RefAndFlags.
Referenced by getValue(), hasName(), and name().
Checks if all summaries are DSO local (have the flag set).
When DSOLocal propagation has been done, set the parameter to enable fast check.
Definition at line 60 of file ModuleSummaryIndex.cpp.
References llvm::all_of(), and getSummaryList().
|
inline |
Definition at line 343 of file ModuleSummaryIndex.h.
References assert(), isValidAccessSpecifier(), ReadOnly, and RefAndFlags.
Referenced by resolveFwdRef().
|
inline |
Definition at line 355 of file ModuleSummaryIndex.h.
References ReadOnly, RefAndFlags, and WriteOnly.
Referenced by getAccessSpecifier(), isReadOnly(), and isWriteOnly().
|
inline |
Definition at line 347 of file ModuleSummaryIndex.h.
References assert(), isValidAccessSpecifier(), RefAndFlags, and WriteOnly.
Referenced by resolveFwdRef().
|
inline |
Definition at line 336 of file ModuleSummaryIndex.h.
|
inlineexplicit |
Definition at line 316 of file ModuleSummaryIndex.h.
References getRef().
|
inline |
Definition at line 359 of file ModuleSummaryIndex.h.
References assert(), getAccessSpecifier(), ReadOnly, and RefAndFlags.
Referenced by resolveFwdRef().
|
inline |
Definition at line 365 of file ModuleSummaryIndex.h.
References assert(), getAccessSpecifier(), RefAndFlags, and WriteOnly.
Referenced by resolveFwdRef().
|
inline |
Definition at line 328 of file ModuleSummaryIndex.h.
References getRef().
| PointerIntPair<const GlobalValueSummaryMapTy::value_type *, 3, int> llvm::ValueInfo::RefAndFlags |
Definition at line 308 of file ModuleSummaryIndex.h.
Referenced by getAccessSpecifier(), getRef(), haveGVs(), isReadOnly(), isValidAccessSpecifier(), isWriteOnly(), setReadOnly(), setWriteOnly(), and ValueInfo().