From aee15e8513e3f34128fadcc90f397c27af694c10 Mon Sep 17 00:00:00 2001 From: "Duncan P. N. Exon Smith" Date: Tue, 10 Feb 2015 01:32:56 +0000 Subject: [PATCH] Verifier: Add simple checks for MDLocation git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228647 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/IR/Verifier.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/IR/Verifier.cpp b/lib/IR/Verifier.cpp index e1b6f944f8a..ab3a2735df3 100644 --- a/lib/IR/Verifier.cpp +++ b/lib/IR/Verifier.cpp @@ -678,7 +678,13 @@ void Verifier::visitMetadataAsValue(const MetadataAsValue &MDV, Function *F) { visitValueAsMetadata(*V, F); } -void Verifier::visitMDLocation(const MDLocation &) {} +void Verifier::visitMDLocation(const MDLocation &N) { + Assert1(N.getScope(), "location requires a valid scope", &N); + if (N.getInlinedAt()) + Assert2(isa(N.getInlinedAt()), + "inlined-at should be a location", &N, N.getInlinedAt()); +} + void Verifier::visitGenericDebugNode(const GenericDebugNode &) {} void Verifier::visitMDSubrange(const MDSubrange &) {} void Verifier::visitMDEnumerator(const MDEnumerator &) {}