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
static void
makeStatepointExplicit(DominatorTree &DT, const CallSite &CS,
PartiallyConstructedSafepointRecord &Result) {
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;
// Convert to vector for efficient cross referencing.
SmallVector<Value *, 64> BaseVec, LiveVec;
for (Value *L : LiveSet) {
LiveVec.push_back(L);
assert(PointerToBase.count(L));
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());
BaseVec.push_back(Base);
}
assert(LiveVec.size() == BaseVec.size());