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
This commit is contained in:
parent
66d0f39904
commit
b336c50c81
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue