]> granicus.if.org Git - clang/commitdiff
Minor cleanup: use getDeclAlignInBytes helper.
authorEli Friedman <eli.friedman@gmail.com>
Fri, 27 Feb 2009 04:11:37 +0000 (04:11 +0000)
committerEli Friedman <eli.friedman@gmail.com>
Fri, 27 Feb 2009 04:11:37 +0000 (04:11 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65611 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CodeGenModule.cpp

index 75a8302792aec76dfc5f45d0505f4bc83687784e..6ebe12706bd3cb2e0e5779ce0737fb6c7ec41af9 100644 (file)
@@ -713,17 +713,7 @@ void CodeGenModule::EmitGlobalVarDefinition(const VarDecl *D) {
 
   GV->setInitializer(Init);
   GV->setConstant(D->getType().isConstant(Context));
-
-  // FIXME: This is silly; getTypeAlign should just work for incomplete arrays
-  unsigned Align;
-  if (const IncompleteArrayType* IAT =
-        Context.getAsIncompleteArrayType(D->getType()))
-    Align = Context.getTypeAlign(IAT->getElementType());
-  else
-    Align = Context.getTypeAlign(D->getType());
-  if (const AlignedAttr* AA = D->getAttr<AlignedAttr>())
-    Align = std::max(Align, AA->getAlignment());
-  GV->setAlignment(Align / 8);
+  GV->setAlignment(getContext().getDeclAlignInBytes(D));
 
   if (const VisibilityAttr *attr = D->getAttr<VisibilityAttr>())
     setGlobalVisibility(GV, attr->getVisibility());