[RS4GC] Don't copy ADT's unneccessarily, NFCI
authorSanjoy Das <sanjoy@playingwithpointers.com>
Thu, 8 Oct 2015 23:18:22 +0000 (23:18 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Thu, 8 Oct 2015 23:18:22 +0000 (23:18 +0000)
Summary: Use `const auto &` instead of `auto` in `makeStatepointExplicit`.

Reviewers: reames, swaroop.sridhar

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D13454

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

lib/Transforms/Scalar/RewriteStatepointsForGC.cpp

index 53cf35640153b5528a384bd3513fb6996bc2ab3b..ed097003e3156d92cc9ad2abe52f89a8bb25b74f 100644 (file)
@@ -1501,8 +1501,8 @@ static void StabilizeOrder(SmallVectorImpl<Value *> &BaseVec,
 static void
 makeStatepointExplicit(DominatorTree &DT, const CallSite &CS,
                        PartiallyConstructedSafepointRecord &Result) {
-  auto LiveSet = Result.LiveSet;
-  auto PointerToBase = Result.PointerToBase;
+  const auto &LiveSet = Result.LiveSet;
+  const auto &PointerToBase = Result.PointerToBase;
 
   // Convert to vector for efficient cross referencing.
   SmallVector<Value *, 64> BaseVec, LiveVec;
@@ -1511,7 +1511,7 @@ makeStatepointExplicit(DominatorTree &DT, const CallSite &CS,
   for (Value *L : LiveSet) {
     LiveVec.push_back(L);
     assert(PointerToBase.count(L));
-    Value *Base = PointerToBase[L];
+    Value *Base = PointerToBase.find(L)->second;
     BaseVec.push_back(Base);
   }
   assert(LiveVec.size() == BaseVec.size());