summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/DebugInfo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/IR/DebugInfo.cpp')
-rw-r--r--llvm/lib/IR/DebugInfo.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/IR/DebugInfo.cpp b/llvm/lib/IR/DebugInfo.cpp
index 32521b160a2..c39c11988a2 100644
--- a/llvm/lib/IR/DebugInfo.cpp
+++ b/llvm/lib/IR/DebugInfo.cpp
@@ -418,7 +418,9 @@ static bool isScopeRef(const Metadata *MD) {
return true;
if (auto *S = dyn_cast<MDString>(MD))
return !S->getString().empty();
- return isa<MDNode>(MD);
+ if (auto *N = dyn_cast<MDNode>(MD))
+ return DIScope(N).isScope();
+ return false;
}
/// \brief Check if a field at position Elt of a MDNode can be a ScopeRef.
OpenPOWER on IntegriCloud