Change std::map<unsigned, LiveInterval*> into a std::map<unsigned,
LiveInterval>. This saves some space and removes the pointer
indirection caused by following the pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15167 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/RegAllocIterativeScan.cpp b/lib/CodeGen/RegAllocIterativeScan.cpp
index d2f5d5b..e9e9fd8 100644
--- a/lib/CodeGen/RegAllocIterativeScan.cpp
+++ b/lib/CodeGen/RegAllocIterativeScan.cpp
@@ -257,9 +257,9 @@
            "interval sets should be empty on initialization");
 
     for (LiveIntervals::iterator i = li_->begin(), e = li_->end(); i != e; ++i){
-      unhandled_.push_back(i->second);
-      if (MRegisterInfo::isPhysicalRegister(i->second->reg))
-        fixed_.push_back(i->second);
+      unhandled_.push_back(&i->second);
+      if (MRegisterInfo::isPhysicalRegister(i->second.reg))
+        fixed_.push_back(&i->second);
     }
 }