diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-06-27 05:34:05 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-06-27 05:34:05 +0000 |
commit | dada538bb4cf82ea1c3b2ed67687b1727fe7d85d (patch) | |
tree | c8ce11b355cb5f892ea6e66ad9fe47c6aa065aa8 /llvm/lib/IR/DebugInfo.cpp | |
parent | b0cdf530c393a6c3bb3f165d626c2e7a25f93f3b (diff) | |
download | bcm5719-llvm-dada538bb4cf82ea1c3b2ed67687b1727fe7d85d.tar.gz bcm5719-llvm-dada538bb4cf82ea1c3b2ed67687b1727fe7d85d.zip |
Revert "Revert "Revert "PR20038: DebugInfo: Inlined call sites where the caller has debug info but the call itself has no debug location."""
Reverting this again, didn't mean to commit it - while r211872 fixes one
of the issues here, there are still others to figure out and address.
This reverts commit r211871.
llvm-svn: 211873
Diffstat (limited to 'llvm/lib/IR/DebugInfo.cpp')
-rw-r--r-- | llvm/lib/IR/DebugInfo.cpp | 26 |
1 files changed, 0 insertions, 26 deletions
diff --git a/llvm/lib/IR/DebugInfo.cpp b/llvm/lib/IR/DebugInfo.cpp index 2023be313bd..db9e56defa1 100644 --- a/llvm/lib/IR/DebugInfo.cpp +++ b/llvm/lib/IR/DebugInfo.cpp @@ -532,32 +532,6 @@ bool DISubprogram::Verify() const { if (isLValueReference() && isRValueReference()) return false; - if (auto *F = getFunction()) { - LLVMContext &Ctxt = F->getContext(); - for (auto &BB : *F) { - for (auto &I : BB) { - DebugLoc DL = I.getDebugLoc(); - if (DL.isUnknown()) - continue; - - MDNode *Scope = nullptr; - MDNode *IA = nullptr; - // walk the inlined-at scopes - while (DL.getScopeAndInlinedAt(Scope, IA, F->getContext()), IA) - DL = DebugLoc::getFromDILocation(IA); - DL.getScopeAndInlinedAt(Scope, IA, Ctxt); - assert(!IA); - while (!DIDescriptor(Scope).isSubprogram()) { - DILexicalBlockFile D(Scope); - Scope = D.isLexicalBlockFile() - ? D.getScope() - : DebugLoc::getFromDILexicalBlock(Scope).getScope(Ctxt); - } - if (!DISubprogram(Scope).describes(F)) - return false; - } - } - } return DbgNode->getNumOperands() == 20; } |