diff --git a/llvm/include/llvm/GlobalValue.h b/llvm/include/llvm/GlobalValue.h index ca92b21c7fb5..a6db31dc9b1e 100644 --- a/llvm/include/llvm/GlobalValue.h +++ b/llvm/include/llvm/GlobalValue.h @@ -42,11 +42,18 @@ protected: LinkageTypes Linkage; // The linkage of this global Module *Parent; + unsigned Alignment; public: ~GlobalValue() { removeDeadConstantUsers(); // remove any dead constants using this. } + unsigned getAlignment() const { return Alignment; } + void setAlignment(unsigned Align) { + assert((Align & (Align-1)) == 0 && "Alignment is not a power of 2!"); + Alignment = Align; + } + /// If the usage is empty (except transitively dead constants), then this /// global value can can be safely deleted since the destructor will /// delete the dead constants as well.