OSDN Git Service

VarInfo::UsedBlocks is no longer used. Remove.
authorEvan Cheng <evan.cheng@apple.com>
Wed, 18 Apr 2007 05:04:38 +0000 (05:04 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Wed, 18 Apr 2007 05:04:38 +0000 (05:04 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36250 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CodeGen/LiveVariables.h
lib/CodeGen/LiveIntervalAnalysis.cpp
lib/CodeGen/LiveVariables.cpp
lib/CodeGen/PHIElimination.cpp
lib/CodeGen/TwoAddressInstructionPass.cpp

index 6c58815..d87d64b 100644 (file)
@@ -79,10 +79,6 @@ public:
     ///
     BitVector AliveBlocks;
 
-    /// UsedBlocks - Set of blocks of which this value is actually used. This
-    /// is a bit set which uses the basic block number as an index.
-    BitVector UsedBlocks;
-
     /// NumUses - Number of uses of this register across the entire function.
     ///
     unsigned NumUses;
index 8b18115..6521d97 100644 (file)
@@ -1058,10 +1058,9 @@ bool LiveIntervals::JoinCopy(MachineInstr *CopyMI,
     for (const unsigned *AS = mri_->getAliasSet(repDstReg); *AS; ++AS)
       getInterval(*AS).MergeInClobberRanges(SrcInt);
   } else {
-    // Merge UsedBlocks info if the destination is a virtual register.
+    // Merge use info if the destination is a virtual register.
     LiveVariables::VarInfo& dVI = lv_->getVarInfo(repDstReg);
     LiveVariables::VarInfo& sVI = lv_->getVarInfo(repSrcReg);
-    dVI.UsedBlocks |= sVI.UsedBlocks;
     dVI.NumUses += sVI.NumUses;
   }
 
index 8a8185c..0e0fece 100644 (file)
@@ -48,9 +48,6 @@ void LiveVariables::VarInfo::dump() const {
   cerr << "  Alive in blocks: ";
   for (unsigned i = 0, e = AliveBlocks.size(); i != e; ++i)
     if (AliveBlocks[i]) cerr << i << ", ";
-  cerr << "  Used in blocks: ";
-  for (unsigned i = 0, e = UsedBlocks.size(); i != e; ++i)
-    if (UsedBlocks[i]) cerr << i << ", ";
   cerr << "\n  Killed by:";
   if (Kills.empty())
     cerr << " No instructions.\n";
@@ -73,7 +70,6 @@ LiveVariables::VarInfo &LiveVariables::getVarInfo(unsigned RegIdx) {
   }
   VarInfo &VI = VirtRegInfo[RegIdx];
   VI.AliveBlocks.resize(MF->getNumBlockIDs());
-  VI.UsedBlocks.resize(MF->getNumBlockIDs());
   return VI;
 }
 
@@ -138,9 +134,6 @@ void LiveVariables::HandleVirtRegUse(VarInfo &VRInfo, MachineBasicBlock *MBB,
                                      MachineInstr *MI) {
   assert(VRInfo.DefInst && "Register use before def!");
 
-  unsigned BBNum = MBB->getNumber();
-
-  VRInfo.UsedBlocks[BBNum] = true;
   VRInfo.NumUses++;
 
   // Check to see if this basic block is already a kill block...
@@ -163,7 +156,7 @@ void LiveVariables::HandleVirtRegUse(VarInfo &VRInfo, MachineBasicBlock *MBB,
   // If this virtual register is already marked as alive in this basic block,
   // that means it is alive in at least one of the successor block, it's not
   // a kill.
-  if (!VRInfo.AliveBlocks[BBNum])
+  if (!VRInfo.AliveBlocks[MBB->getNumber()])
     VRInfo.Kills.push_back(MI);
 
   // Update all dominating blocks to mark them known live.
index 513bfde..0b77fe2 100644 (file)
@@ -163,8 +163,6 @@ void PNE::LowerAtomicPHINode(MachineBasicBlock &MBB,
     // Realize that the destination register is defined by the PHI copy now, not
     // the PHI itself.
     LV->getVarInfo(DestReg).DefInst = PHICopy;
-
-    LV->getVarInfo(IncomingReg).UsedBlocks[MBB.getNumber()] = true;
   }
 
   // Adjust the VRegPHIUseCount map to account for the removal of this PHI
@@ -215,7 +213,6 @@ void PNE::LowerAtomicPHINode(MachineBasicBlock &MBB,
     // instruction kills the incoming value.
     //
     LiveVariables::VarInfo &InRegVI = LV->getVarInfo(SrcReg);
-    InRegVI.UsedBlocks[opBlock.getNumber()] = true;
 
     // Loop over all of the successors of the basic block, checking to see
     // if the value is either live in the block, or if it is killed in the
index 9209420..b14a95e 100644 (file)
@@ -197,10 +197,6 @@ bool TwoAddressInstructionPass::runOnMachineFunction(MachineFunction &MF) {
           LiveVariables::VarInfo& varInfo = LV.getVarInfo(regA);
           varInfo.DefInst = prevMi;
 
-          // update live variables for regB
-          LiveVariables::VarInfo& varInfoB = LV.getVarInfo(regB);
-          // regB is used in this BB.
-          varInfoB.UsedBlocks[mbbi->getNumber()] = true;
           if (LV.removeVirtualRegisterKilled(regB, mbbi, mi))
             LV.addVirtualRegisterKilled(regB, prevMi);