mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-17 20:23:59 +00:00
Changed the liveness tracking in the RegisterScavenger
to use register units instead of registers. reviewed by Jakob Stoklund Olesen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214798 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -799,11 +799,9 @@ TailDuplicatePass::TailDuplicate(MachineBasicBlock *TailBB,
|
||||
RS->enterBasicBlock(PredBB);
|
||||
if (!PredBB->empty())
|
||||
RS->forward(std::prev(PredBB->end()));
|
||||
BitVector RegsLiveAtExit(TRI->getNumRegs());
|
||||
RS->getRegsUsed(RegsLiveAtExit, false);
|
||||
for (MachineBasicBlock::livein_iterator I = TailBB->livein_begin(),
|
||||
E = TailBB->livein_end(); I != E; ++I) {
|
||||
if (!RegsLiveAtExit[*I])
|
||||
if (!RS->isRegUsed(*I, false))
|
||||
// If a register is previously livein to the tail but it's not live
|
||||
// at the end of predecessor BB, then it should be added to its
|
||||
// livein list.
|
||||
|
Reference in New Issue
Block a user