diff options
author | Chris Lattner <sabre@nondot.org> | 2004-07-19 06:55:21 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-07-19 06:55:21 +0000 |
commit | 472405e0dc05f6fb8c09af00713ff893fff25b94 (patch) | |
tree | a4c839734683c4d85245220e65123f3a73f8b015 /lib | |
parent | 73d4adfb1e5d6c0ce834b331e6099b14d3341dd7 (diff) |
Simplify the interface to LiveVariables::addVirtualRegister(Killed|Dead)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14997 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/CodeGen/LiveIntervalAnalysis.cpp | 2 | ||||
-rw-r--r-- | lib/CodeGen/LiveVariables.cpp | 5 | ||||
-rw-r--r-- | lib/CodeGen/PHIElimination.cpp | 8 | ||||
-rw-r--r-- | lib/CodeGen/TwoAddressInstructionPass.cpp | 4 |
4 files changed, 10 insertions, 9 deletions
diff --git a/lib/CodeGen/LiveIntervalAnalysis.cpp b/lib/CodeGen/LiveIntervalAnalysis.cpp index ee988b10a4..a20d23bb76 100644 --- a/lib/CodeGen/LiveIntervalAnalysis.cpp +++ b/lib/CodeGen/LiveIntervalAnalysis.cpp @@ -263,7 +263,7 @@ std::vector<LiveInterval*> LiveIntervals::addIntervalsForSpills( nI.addRange(start, end); added.push_back(&nI); // update live variables - lv_->addVirtualRegisterKilled(nReg, mi->getParent(),mi); + lv_->addVirtualRegisterKilled(nReg, mi); DEBUG(std::cerr << "\t\t\t\tadded new interval: " << nI << '\n'); } diff --git a/lib/CodeGen/LiveVariables.cpp b/lib/CodeGen/LiveVariables.cpp index 883b7813e7..c82208acea 100644 --- a/lib/CodeGen/LiveVariables.cpp +++ b/lib/CodeGen/LiveVariables.cpp @@ -99,7 +99,7 @@ void LiveVariables::HandleVirtRegUse(VarInfo &VRInfo, MachineBasicBlock *MBB, "Should have kill for defblock!"); // Add a new kill entry for this basic block. - VRInfo.Kills.push_back(std::make_pair(MBB, MI)); + VRInfo.Kills.push_back(std::make_pair(MI->getParent(), MI)); // Update all dominating blocks to mark them known live. const BasicBlock *BB = MBB->getBasicBlock(); @@ -233,7 +233,8 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &MF) { assert(VRInfo.DefInst == 0 && "Variable multiply defined!"); VRInfo.DefInst = MI; - VRInfo.Kills.push_back(std::make_pair(MBB, MI)); // Defaults to dead + // Defaults to dead + VRInfo.Kills.push_back(std::make_pair(MI->getParent(), MI)); } else if (MRegisterInfo::isPhysicalRegister(MO.getReg()) && AllocatablePhysicalRegisters[MO.getReg()]) { HandlePhysRegDef(MO.getReg(), MI); diff --git a/lib/CodeGen/PHIElimination.cpp b/lib/CodeGen/PHIElimination.cpp index 40bf5883dd..4b6723797a 100644 --- a/lib/CodeGen/PHIElimination.cpp +++ b/lib/CodeGen/PHIElimination.cpp @@ -122,7 +122,7 @@ bool PNE::EliminatePHINodes(MachineFunction &MF, MachineBasicBlock &MBB) { // each for each incoming block), the "def" block and instruction fields // for the VarInfo is not filled in. // - LV->addVirtualRegisterKilled(IncomingReg, &MBB, PHICopy); + LV->addVirtualRegisterKilled(IncomingReg, PHICopy); // Since we are going to be deleting the PHI node, if it is the last use // of any registers, or if the value itself is dead, we need to move this @@ -140,7 +140,7 @@ bool PNE::EliminatePHINodes(MachineFunction &MF, MachineBasicBlock &MBB) { // Add all of the kills back, which will update the appropriate info... for (unsigned i = 0, e = Range.size(); i != e; ++i) - LV->addVirtualRegisterKilled(Range[i].second, &MBB, PHICopy); + LV->addVirtualRegisterKilled(Range[i].second, PHICopy); } RKs = LV->dead_range(MI); @@ -149,7 +149,7 @@ bool PNE::EliminatePHINodes(MachineFunction &MF, MachineBasicBlock &MBB) { Range.assign(RKs.first, RKs.second); LV->removeVirtualRegistersDead(RKs.first, RKs.second); for (unsigned i = 0, e = Range.size(); i != e; ++i) - LV->addVirtualRegisterDead(Range[i].second, &MBB, PHICopy); + LV->addVirtualRegisterDead(Range[i].second, PHICopy); } } @@ -251,7 +251,7 @@ bool PNE::EliminatePHINodes(MachineFunction &MF, MachineBasicBlock &MBB) { // if (!ValueIsLive) { MachineBasicBlock::iterator Prev = prior(I); - LV->addVirtualRegisterKilled(SrcReg, &opBlock, Prev); + LV->addVirtualRegisterKilled(SrcReg, Prev); } } } diff --git a/lib/CodeGen/TwoAddressInstructionPass.cpp b/lib/CodeGen/TwoAddressInstructionPass.cpp index 2190f2162e..f2815eecff 100644 --- a/lib/CodeGen/TwoAddressInstructionPass.cpp +++ b/lib/CodeGen/TwoAddressInstructionPass.cpp @@ -151,10 +151,10 @@ bool TwoAddressInstructionPass::runOnMachineFunction(MachineFunction &MF) { // update live variables for regB if (LV->removeVirtualRegisterKilled(regB, &*mbbi, mi)) - LV->addVirtualRegisterKilled(regB, &*mbbi, prevMi); + LV->addVirtualRegisterKilled(regB, prevMi); if (LV->removeVirtualRegisterDead(regB, &*mbbi, mi)) - LV->addVirtualRegisterDead(regB, &*mbbi, prevMi); + LV->addVirtualRegisterDead(regB, prevMi); } // replace all occurences of regB with regA |