blockfreq: Pass the Loop directly into unwrapLoopPackage()
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 25 Apr 2014 04:38:23 +0000 (04:38 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Fri, 25 Apr 2014 04:38:23 +0000 (04:38 +0000)
<rdar://problem/14292693>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207187 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/BlockFrequencyInfoImpl.cpp

index fd4e7448acba3bb0bffdd3dce3ef47f72570a48b..e953b43e37559d8d4392a7ffa92841635060eca0 100644 (file)
@@ -824,10 +824,8 @@ static void scaleBlockData(BlockFrequencyInfoImplBase &BFI,
 /// Visits all the members of a loop, adjusting their BlockData according to
 /// the loop's pseudo-node.
 static void unwrapLoopPackage(BlockFrequencyInfoImplBase &BFI,
-                              const BlockNode &Head) {
-  assert(Head.isValid());
-
-  LoopData &LoopPackage = BFI.getLoopPackage(Head);
+                              LoopData &LoopPackage) {
+  BlockNode Head = LoopPackage.getHeader();
   DEBUG(dbgs() << "unwrap-loop-package: " << BFI.getBlockName(Head)
                << ": mass = " << LoopPackage.Mass
                << ", scale = " << LoopPackage.Scale << "\n");
@@ -851,8 +849,8 @@ void BlockFrequencyInfoImplBase::unwrapLoops() {
   for (size_t Index = 0; Index < Working.size(); ++Index)
     Freqs[Index].Floating = Working[Index].Mass.toFloat();
 
-  for (const LoopData &L : Loops)
-    unwrapLoopPackage(*this, L.getHeader());
+  for (LoopData &Loop : Loops)
+    unwrapLoopPackage(*this, Loop);
 }
 
 void BlockFrequencyInfoImplBase::finalizeMetrics() {