diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-02-04 00:39:20 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-02-04 00:39:20 +0000 |
commit | b336c50c815c28a8859e135c1cdff2fe5cd055ab (patch) | |
tree | dc54a5533df0c0672236d8b185799057c67bb1cf /llvm/lib/CodeGen/RegAllocGreedy.cpp | |
parent | 66d0f39904ab47e3a45eee0146bf2c1bf8bcf331 (diff) | |
download | bcm5719-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.cpp | 4 |
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); |