Delete a dead variable.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Sat, 4 Aug 2012 00:04:03 +0000 (00:04 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Sat, 4 Aug 2012 00:04:03 +0000 (00:04 +0000)
TwoAddressInstructionPass doesn't remat any more.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161285 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/TwoAddressInstructionPass.cpp

index d2f9a1b30dbde067e8fcfcadae79a08df892c822..62d54208c6da7aac71704b20011d869fb57a3b7b 100644 (file)
@@ -1387,9 +1387,6 @@ bool TwoAddressInstructionPass::runOnMachineFunction(MachineFunction &Func) {
   // This pass takes the function out of SSA form.
   MRI->leaveSSA();
 
-  // ReMatRegs - Keep track of the registers whose def's are remat'ed.
-  BitVector ReMatRegs(MRI->getNumVirtRegs());
-
   TiedOperandMap TiedOperands;
 
   SmallPtrSet<MachineInstr*, 8> Processed;
@@ -1478,15 +1475,6 @@ bool TwoAddressInstructionPass::runOnMachineFunction(MachineFunction &Func) {
     }
   }
 
-  // Some remat'ed instructions are dead.
-  for (int i = ReMatRegs.find_first(); i != -1; i = ReMatRegs.find_next(i)) {
-    unsigned VReg = TargetRegisterInfo::index2VirtReg(i);
-    if (MRI->use_nodbg_empty(VReg)) {
-      MachineInstr *DefMI = MRI->getVRegDef(VReg);
-      DefMI->eraseFromParent();
-    }
-  }
-
   // Eliminate REG_SEQUENCE instructions. Their whole purpose was to preseve
   // SSA form. It's now safe to de-SSA.
   MadeChange |= EliminateRegSequences();