[IR/DataLayout] Simplify the code using PowerOf2Ceil. NFCI.
authorDavide Italiano <davide@freebsd.org>
Fri, 11 Nov 2016 03:00:00 +0000 (03:00 +0000)
committerDavide Italiano <davide@freebsd.org>
Fri, 11 Nov 2016 03:00:00 +0000 (03:00 +0000)
llvm-svn: 286554

llvm/lib/IR/DataLayout.cpp

index d7ed73015ee4d5edc417599ee5d80243f3deceeb..3de1889996ebabe4cfc50bb824874255222d9ad7 100644 (file)
@@ -506,10 +506,7 @@ unsigned DataLayout::getAlignmentInfo(AlignTypeEnum AlignType,
       // with what clang and llvm-gcc do.
       unsigned Align = getTypeAllocSize(cast<VectorType>(Ty)->getElementType());
       Align *= cast<VectorType>(Ty)->getNumElements();
-      // If the alignment is not a power of 2, round up to the next power of 2.
-      // This happens for non-power-of-2 length vectors.
-      if (Align & (Align-1))
-        Align = NextPowerOf2(Align);
+      Align = PowerOf2Ceil(Align);
       return Align;
     }
   }
@@ -522,8 +519,7 @@ unsigned DataLayout::getAlignmentInfo(AlignTypeEnum AlignType,
   // layout.
   if (BestMatchIdx == -1) {
     unsigned Align = getTypeStoreSize(Ty);
-    if (Align & (Align-1))
-      Align = NextPowerOf2(Align);
+    Align = PowerOf2Ceil(Align);
     return Align;
   }