LLVM
8.0.1
|
Group flags (Linkage, NotEligibleToImport, etc.) as a bitfield. More...
#include "llvm/IR/ModuleSummaryIndex.h"
Public Member Functions | |
GVFlags (GlobalValue::LinkageTypes Linkage, bool NotEligibleToImport, bool Live, bool IsLocal) | |
Convenience Constructors. More... | |
Public Attributes | |
unsigned | Linkage: 4 |
The linkage type of the associated global value. More... | |
unsigned | NotEligibleToImport: 1 |
Indicate if the global value cannot be imported (e.g. More... | |
unsigned | Live: 1 |
In per-module summary, indicate that the global value must be considered a live root for index-based liveness analysis. More... | |
unsigned | DSOLocal: 1 |
Indicates that the linker resolved the symbol to a definition from within the same linkage unit. More... | |
Group flags (Linkage, NotEligibleToImport, etc.) as a bitfield.
Definition at line 258 of file ModuleSummaryIndex.h.
|
inlineexplicit |
unsigned llvm::GlobalValueSummary::GVFlags::DSOLocal |
Indicates that the linker resolved the symbol to a definition from within the same linkage unit.
Definition at line 281 of file ModuleSummaryIndex.h.
Referenced by getEncodedGVSummaryFlags(), getLinkageNameWithSpace(), llvm::GlobalValueSummary::isDSOLocal(), resolveFwdRef(), and llvm::GlobalValueSummary::setDSOLocal().
unsigned llvm::GlobalValueSummary::GVFlags::Linkage |
The linkage type of the associated global value.
One use is to flag values that have local linkage types and need to have module identifier appended before placing into the combined index, to disambiguate from other values with the same name. In the future this will be used to update and optimize linkage types based on global summary-based analysis.
Definition at line 266 of file ModuleSummaryIndex.h.
Referenced by getEncodedGVSummaryFlags(), getLinkageNameWithSpace(), llvm::GlobalValueSummary::linkage(), resolveFwdRef(), and llvm::GlobalValueSummary::setLinkage().
unsigned llvm::GlobalValueSummary::GVFlags::Live |
In per-module summary, indicate that the global value must be considered a live root for index-based liveness analysis.
Used for special LLVM values such as llvm.global_ctors that the linker does not know about.
In combined summary, indicate that the global value is live.
Definition at line 277 of file ModuleSummaryIndex.h.
Referenced by getEncodedGVSummaryFlags(), getLinkageNameWithSpace(), llvm::GlobalValueSummary::isLive(), resolveFwdRef(), and llvm::GlobalValueSummary::setLive().
unsigned llvm::GlobalValueSummary::GVFlags::NotEligibleToImport |
Indicate if the global value cannot be imported (e.g.
it cannot be renamed or references something that can't be renamed).
Definition at line 270 of file ModuleSummaryIndex.h.
Referenced by getEncodedGVSummaryFlags(), getLinkageNameWithSpace(), llvm::GlobalValueSummary::notEligibleToImport(), resolveFwdRef(), and llvm::GlobalValueSummary::setNotEligibleToImport().