aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2010-04-29 18:50:36 +0000
committerDevang Patel <dpatel@apple.com>2010-04-29 18:50:36 +0000
commita83ce98d5f5860809ce339968656a383098221f6 (patch)
tree7d19cafcf8d564f8efa2d86d3c377285c11ef318 /lib/CodeGen
parent3e6fe5ec17217169cd95ee86515955f7726db008 (diff)
DO not push DBG_VALUE machine instructions for inlined fuction arguments in entry block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102653 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen')
-rw-r--r--lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp7
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())