Free the VirtRegMap at the end of MachineFunction processing instead of at
the beginning of processing the next one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16605 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/RegAllocLinearScan.cpp b/lib/CodeGen/RegAllocLinearScan.cpp
index eda105f..2a5898a 100644
--- a/lib/CodeGen/RegAllocLinearScan.cpp
+++ b/lib/CodeGen/RegAllocLinearScan.cpp
@@ -41,7 +41,6 @@
static unsigned numIntervals = 0;
class RA : public MachineFunctionPass {
- private:
MachineFunction* mf_;
const TargetMachine* tm_;
const MRegisterInfo* mri_;
@@ -150,6 +149,7 @@
spiller_->runOnMachineFunction(*mf_, *vrm_);
+ vrm_.reset(); // Free the VirtRegMap
return true;
}