mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-14 22:38:03 +00:00
Delete a dead variable.
TwoAddressInstructionPass doesn't remat any more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161285 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ae52faddeb
commit
cf1823dc25
@ -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();
|
||||
|
Loading…
x
Reference in New Issue
Block a user