summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RegAllocGreedy.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-02-04 00:39:20 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-02-04 00:39:20 +0000
commitb336c50c815c28a8859e135c1cdff2fe5cd055ab (patch)
treedc54a5533df0c0672236d8b185799057c67bb1cf /llvm/lib/CodeGen/RegAllocGreedy.cpp
parent66d0f39904ab47e3a45eee0146bf2c1bf8bcf331 (diff)
downloadbcm5719-llvm-b336c50c815c28a8859e135c1cdff2fe5cd055ab.tar.gz
bcm5719-llvm-b336c50c815c28a8859e135c1cdff2fe5cd055ab.zip
Also compute interference intervals for blocks with no uses.
When the live range is live through a block that doesn't use the register, but that has interference, region splitting wants to split at the top and bottom of the basic block. llvm-svn: 124839
Diffstat (limited to 'llvm/lib/CodeGen/RegAllocGreedy.cpp')
-rw-r--r--llvm/lib/CodeGen/RegAllocGreedy.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/RegAllocGreedy.cpp b/llvm/lib/CodeGen/RegAllocGreedy.cpp
index 92f97d046f5..2c772a20975 100644
--- a/llvm/lib/CodeGen/RegAllocGreedy.cpp
+++ b/llvm/lib/CodeGen/RegAllocGreedy.cpp
@@ -611,9 +611,7 @@ void RAGreedy::splitAroundRegion(LiveInterval &VirtReg, unsigned PhysReg,
if (!IntI.valid())
continue;
for (unsigned i = 0, e = LiveBlocks.size(); i != e; ++i) {
- BlockInfo &BI = LiveBlocks[i];
- if (!BI.Uses)
- continue;
+ const BlockInfo &BI = LiveBlocks[i];
IndexPair &IP = InterferenceRanges[i];
SlotIndex Start, Stop;
tie(Start, Stop) = Indexes->getMBBRange(BI.MBB);
OpenPOWER on IntegriCloud