diff options
| author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-29 21:20:19 +0000 |
|---|---|---|
| committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-29 21:20:19 +0000 |
| commit | e991f728d6ebfe5165b0447e1cfa2d9eebb58c43 (patch) | |
| tree | 0f8f384fd2f1d7e3e65174c3a693e61a45ae2e65 /llvm/lib/CodeGen/SplitKit.cpp | |
| parent | 42d0a6c7705aa15d6848666cd0ef8df383cf09e6 (diff) | |
| download | bcm5719-llvm-e991f728d6ebfe5165b0447e1cfa2d9eebb58c43.tar.gz bcm5719-llvm-e991f728d6ebfe5165b0447e1cfa2d9eebb58c43.zip | |
Recompute register class and hint for registers created during spilling.
The spill weight is not recomputed for an unspillable register - it stays infinite.
llvm-svn: 128490
Diffstat (limited to 'llvm/lib/CodeGen/SplitKit.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/SplitKit.cpp | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/llvm/lib/CodeGen/SplitKit.cpp b/llvm/lib/CodeGen/SplitKit.cpp index b89ff0c4fc8..2c8066fb63a 100644 --- a/llvm/lib/CodeGen/SplitKit.cpp +++ b/llvm/lib/CodeGen/SplitKit.cpp @@ -17,7 +17,6 @@ #include "LiveRangeEdit.h" #include "VirtRegMap.h" #include "llvm/ADT/Statistic.h" -#include "llvm/CodeGen/CalcSpillWeights.h" #include "llvm/CodeGen/LiveIntervalAnalysis.h" #include "llvm/CodeGen/MachineDominators.h" #include "llvm/CodeGen/MachineInstrBuilder.h" @@ -881,14 +880,7 @@ void SplitEditor::finish() { } // Calculate spill weight and allocation hints for new intervals. - VirtRegAuxInfo vrai(VRM.getMachineFunction(), LIS, SA.Loops); - for (LiveRangeEdit::iterator I = Edit->begin(), E = Edit->end(); I != E; ++I){ - LiveInterval &li = **I; - vrai.CalculateRegClass(li.reg); - vrai.CalculateWeightAndHint(li); - DEBUG(dbgs() << " new interval " << MRI.getRegClass(li.reg)->getName() - << ":" << li << '\n'); - } + Edit->calculateRegClassAndHint(VRM.getMachineFunction(), LIS, SA.Loops); } |

