forked from OSchip/llvm-project
Ignore DBG_VALUE instructions that points to undef values.
llvm-svn: 102463
This commit is contained in:
parent
199db36b79
commit
1a0bbe25e3
|
@ -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<MDNode *>(MInsn->getOperand(MInsn->getNumOperands() - 1)
|
||||
.getMetadata()));
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue