Changeset View
Changeset View
Standalone View
Standalone View
llvm/include/llvm/IR/GlobalObject.h
Show First 20 Lines • Show All 130 Lines • ▼ Show 20 Lines | public: | ||||
using Value::getMetadata; | using Value::getMetadata; | ||||
using Value::hasMetadata; | using Value::hasMetadata; | ||||
using Value::setMetadata; | using Value::setMetadata; | ||||
/// Copy metadata from Src, adjusting offsets by Offset. | /// Copy metadata from Src, adjusting offsets by Offset. | ||||
void copyMetadata(const GlobalObject *Src, unsigned Offset); | void copyMetadata(const GlobalObject *Src, unsigned Offset); | ||||
void addTypeMetadata(unsigned Offset, Metadata *TypeID); | void addTypeMetadata(unsigned Offset, Metadata *TypeID); | ||||
void setVCallVisibilityMetadata(VCallVisibility Visibility); | |||||
VCallVisibility getVCallVisibility() const; | struct VCallVisibilityEntry { | ||||
std::pair<uint64_t, uint64_t> getVTableOffsetRange() const; | GlobalObject::VCallVisibility Visibility; | ||||
uint64_t RangeStart; | |||||
uint64_t RangeEnd; | |||||
}; | |||||
using VCallVisibilityList = std::vector<VCallVisibilityEntry>; | |||||
void setVCallVisibility(VCallVisibilityList Visibility); | |||||
VCallVisibilityList getVCallVisibility() const; | |||||
/// Returns true if the alignment of the value can be unilaterally | /// Returns true if the alignment of the value can be unilaterally | ||||
/// increased. | /// increased. | ||||
/// | /// | ||||
/// Note that for functions this is the alignment of the code, not the | /// Note that for functions this is the alignment of the code, not the | ||||
/// alignment of a function pointer. | /// alignment of a function pointer. | ||||
bool canIncreaseAlignment() const; | bool canIncreaseAlignment() const; | ||||
Show All 24 Lines |