diff options
Diffstat (limited to 'lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp')
-rw-r--r-- | lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 9001894d6f..3f81268c91 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -3691,6 +3691,13 @@ SelectionDAGBuilder::EmitFuncArgumentDbgValue(const DbgValueInst &DI, if (!isa<Argument>(V)) return false; + // Ignore inlined function arguments here. + DIVariable DV(Variable); + if (DV.getContext().isSubprogram() + && DISubprogram(DV.getContext().getNode()).getLinkageName() + != cast<Argument>(V)->getParent()->getName()) + return false; + MachineFunction &MF = DAG.getMachineFunction(); MachineBasicBlock *MBB = FuncInfo.MBBMap[DI.getParent()]; if (MBB != &MF.front()) |