diff options
author | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-03-01 20:05:10 +0000 |
---|---|---|
committer | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-03-01 20:05:10 +0000 |
commit | b76d234ee930bd94fe3401003ffb0d4a70688cb1 (patch) | |
tree | 3ec955b832363cc82e9adde7396f11663de2e7ca /llvm/lib/CodeGen/RegAllocLinearScan.cpp | |
parent | b22d09cc5e10fba7999cdbfb7ffad0865913c77d (diff) | |
download | bcm5719-llvm-b76d234ee930bd94fe3401003ffb0d4a70688cb1.tar.gz bcm5719-llvm-b76d234ee930bd94fe3401003ffb0d4a70688cb1.zip |
Add the long awaited memory operand folding support for linear scan
llvm-svn: 12058
Diffstat (limited to 'llvm/lib/CodeGen/RegAllocLinearScan.cpp')
-rw-r--r-- | llvm/lib/CodeGen/RegAllocLinearScan.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/RegAllocLinearScan.cpp b/llvm/lib/CodeGen/RegAllocLinearScan.cpp index 9e396186827..d6c53cd0a72 100644 --- a/llvm/lib/CodeGen/RegAllocLinearScan.cpp +++ b/llvm/lib/CodeGen/RegAllocLinearScan.cpp @@ -385,7 +385,7 @@ void RA::assignRegOrStackSlotAtInterval(IntervalPtrs::value_type cur) if (cur->weight <= minWeight) { DEBUG(std::cerr << "\t\t\tspilling(c): " << *cur << '\n';); int slot = vrm_->assignVirt2StackSlot(cur->reg); - li_->updateSpilledInterval(*cur, slot); + li_->updateSpilledInterval(*cur, *vrm_, slot); // if we didn't eliminate the interval find where to add it // back to unhandled. We need to scan since unhandled are @@ -424,7 +424,7 @@ void RA::assignRegOrStackSlotAtInterval(IntervalPtrs::value_type cur) DEBUG(std::cerr << "\t\t\tspilling(a): " << **i << '\n'); earliestStart = std::min(earliestStart, (*i)->start()); int slot = vrm_->assignVirt2StackSlot((*i)->reg); - li_->updateSpilledInterval(**i, slot); + li_->updateSpilledInterval(**i, *vrm_, slot); } } for (IntervalPtrs::iterator i = inactive_.begin(); @@ -436,7 +436,7 @@ void RA::assignRegOrStackSlotAtInterval(IntervalPtrs::value_type cur) DEBUG(std::cerr << "\t\t\tspilling(i): " << **i << '\n'); earliestStart = std::min(earliestStart, (*i)->start()); int slot = vrm_->assignVirt2StackSlot((*i)->reg); - li_->updateSpilledInterval(**i, slot); + li_->updateSpilledInterval(**i, *vrm_, slot); } } |