From: Dale Johannesen Date: Tue, 9 Feb 2010 02:01:46 +0000 (+0000) Subject: Skip DEBUG_VALUE in some places where it was affecting codegen. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=d94998f52574eacef148bd856de701af2c594b03;p=oota-llvm.git Skip DEBUG_VALUE in some places where it was affecting codegen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95647 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CalcSpillWeights.cpp b/lib/CodeGen/CalcSpillWeights.cpp index b8ef219bf9c..7da833bbbf8 100644 --- a/lib/CodeGen/CalcSpillWeights.cpp +++ b/lib/CodeGen/CalcSpillWeights.cpp @@ -64,6 +64,9 @@ bool CalculateSpillWeights::runOnMachineFunction(MachineFunction &fn) { if (mi->getOpcode() == TargetInstrInfo::IMPLICIT_DEF) continue; + if (mi->getOpcode() == TargetInstrInfo::DEBUG_VALUE) + continue; + for (unsigned i = 0, e = mi->getNumOperands(); i != e; ++i) { const MachineOperand &mopi = mi->getOperand(i); if (!mopi.isReg() || mopi.getReg() == 0) diff --git a/lib/CodeGen/LiveVariables.cpp b/lib/CodeGen/LiveVariables.cpp index b44a2202e76..23ee8c3eda1 100644 --- a/lib/CodeGen/LiveVariables.cpp +++ b/lib/CodeGen/LiveVariables.cpp @@ -543,6 +543,8 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &mf) { for (MachineBasicBlock::iterator I = MBB->begin(), E = MBB->end(); I != E; ++I) { MachineInstr *MI = I; + if (MI->getOpcode()==TargetInstrInfo::DEBUG_VALUE) + continue; DistanceMap.insert(std::make_pair(MI, Dist++)); // Process all of the operands of the instruction... diff --git a/lib/CodeGen/TwoAddressInstructionPass.cpp b/lib/CodeGen/TwoAddressInstructionPass.cpp index a3f6364aa8e..71d9b83f7bf 100644 --- a/lib/CodeGen/TwoAddressInstructionPass.cpp +++ b/lib/CodeGen/TwoAddressInstructionPass.cpp @@ -318,6 +318,8 @@ bool TwoAddressInstructionPass::NoUseAfterLastDef(unsigned Reg, MachineInstr *MI = MO.getParent(); if (MI->getParent() != MBB) continue; + if (MI->getOpcode() == TargetInstrInfo::DEBUG_VALUE) + continue; DenseMap::iterator DI = DistanceMap.find(MI); if (DI == DistanceMap.end()) continue; @@ -341,6 +343,8 @@ MachineInstr *TwoAddressInstructionPass::FindLastUseInMBB(unsigned Reg, MachineInstr *MI = MO.getParent(); if (MI->getParent() != MBB) continue; + if (MI->getOpcode() == TargetInstrInfo::DEBUG_VALUE) + continue; DenseMap::iterator DI = DistanceMap.find(MI); if (DI == DistanceMap.end()) continue;