Don't disable block layout when forcing block alignment.
authorNadav Rotem <nrotem@apple.com>
Fri, 12 Apr 2013 01:24:16 +0000 (01:24 +0000)
committerNadav Rotem <nrotem@apple.com>
Fri, 12 Apr 2013 01:24:16 +0000 (01:24 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179355 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/MachineBlockPlacement.cpp

index 774df81b4d578397f4473f77a5cc623d0b2b5842..bfba503b351ea9bea9f3f6f015cabc9edd5ce442 100644 (file)
@@ -1089,19 +1089,17 @@ bool MachineBlockPlacement::runOnMachineFunction(MachineFunction &F) {
   TLI = F.getTarget().getTargetLowering();
   assert(BlockToChain.empty());
 
-  if (AlignAllBlock) {
-    // Align all of the blocks in the function to a specific alignment.
-    for (MachineFunction::iterator FI = F.begin(), FE = F.end();
-         FI != FE; ++FI)
-      FI->setAlignment(AlignAllBlock);
-    return true;
-  }
-
   buildCFGChains(F);
 
   BlockToChain.clear();
   ChainAllocator.DestroyAll();
 
+  if (AlignAllBlock)
+    // Align all of the blocks in the function to a specific alignment.
+    for (MachineFunction::iterator FI = F.begin(), FE = F.end();
+         FI != FE; ++FI)
+      FI->setAlignment(AlignAllBlock);
+
   // We always return true as we have no way to track whether the final order
   // differs from the original order.
   return true;