diff options
Diffstat (limited to 'llvm/lib/Transforms/IPO/ConstantMerge.cpp')
-rw-r--r-- | llvm/lib/Transforms/IPO/ConstantMerge.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/llvm/lib/Transforms/IPO/ConstantMerge.cpp b/llvm/lib/Transforms/IPO/ConstantMerge.cpp index ea1278aa108f..67f1438b9b6a 100644 --- a/llvm/lib/Transforms/IPO/ConstantMerge.cpp +++ b/llvm/lib/Transforms/IPO/ConstantMerge.cpp @@ -84,11 +84,9 @@ static void copyDebugLocMetadata(const GlobalVariable *From, To->addDebugInfo(MD); } -static unsigned getAlignment(GlobalVariable *GV) { - unsigned Align = GV->getAlignment(); - if (Align) - return Align; - return GV->getParent()->getDataLayout().getPreferredAlignment(GV); +static Align getAlign(GlobalVariable *GV) { + return GV->getAlign().getValueOr( + GV->getParent()->getDataLayout().getPreferredAlign(GV)); } static bool @@ -120,8 +118,8 @@ static void replace(Module &M, GlobalVariable *Old, GlobalVariable *New) { << New->getName() << "\n"); // Bump the alignment if necessary. - if (Old->getAlignment() || New->getAlignment()) - New->setAlignment(Align(std::max(getAlignment(Old), getAlignment(New)))); + if (Old->getAlign() || New->getAlign()) + New->setAlignment(std::max(getAlign(Old), getAlign(New))); copyDebugLocMetadata(Old, New); Old->replaceAllUsesWith(NewConstant); |