From 0f9d95254291418a548d1341db540b5d5c11e8f4 Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Tue, 27 Apr 2010 20:54:45 +0000 Subject: [PATCH] Ignore DBG_VALUE instructions that points to undef values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102463 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 5 +++++ lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 5 ----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index f7b4c09162a..8cdb94c152a 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -2081,6 +2081,11 @@ void DwarfDebug::collectVariableInfo() { // FIXME : Lift this restriction. if (MInsn->getNumOperands() != 3) continue; + + // Ignore Undef values. + if (!MInsn->getOperand(0).getReg()) + continue; + DIVariable DV( const_cast(MInsn->getOperand(MInsn->getNumOperands() - 1) .getMetadata())); diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 9d239c1bd7c..d663521abaf 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -3834,15 +3834,10 @@ SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, unsigned Intrinsic) { return 0; DAG.AddDbgValue(SDV, N.getNode(), isParameter); } else { - // Generating Undefs here seems to be actively harmful because it - // affects the line numbers. - return 0; -#if 0 // This isn't useful, but it shows what we're missing. SDV = DAG.getDbgValue(Variable, UndefValue::get(Address->getType()), 0, dl, SDNodeOrder); DAG.AddDbgValue(SDV, 0, isParameter); -#endif } return 0; } -- 2.34.1