summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/Verifier.cpp
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2016-03-31 23:56:58 +0000
committerAdrian Prantl <aprantl@apple.com>2016-03-31 23:56:58 +0000
commitb939a257070d71eee3c18415ca6104731c7923a6 (patch)
tree19c0a55e59c2cab8bc8849d68af08dd624eb0dd0 /llvm/lib/IR/Verifier.cpp
parent649159df3cdd797f323eb8f198e6e77816ba93ef (diff)
downloadbcm5719-llvm-b939a257070d71eee3c18415ca6104731c7923a6.tar.gz
bcm5719-llvm-b939a257070d71eee3c18415ca6104731c7923a6.zip
Move the DebugEmissionKind enum from DIBuilder into DICompileUnit.
This mostly cosmetic patch moves the DebugEmissionKind enum from DIBuilder into DICompileUnit. DIBuilder is not the right place for this enum to live in — a metadata consumer should not have to include DIBuilder.h. I also added a Verifier check that checks that the emission kind of a DICompileUnit is actually legal. http://reviews.llvm.org/D18612 <rdar://problem/25427165> llvm-svn: 265077
Diffstat (limited to 'llvm/lib/IR/Verifier.cpp')
-rw-r--r--llvm/lib/IR/Verifier.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/IR/Verifier.cpp b/llvm/lib/IR/Verifier.cpp
index 5495b0f39eb..807fe092ac7 100644
--- a/llvm/lib/IR/Verifier.cpp
+++ b/llvm/lib/IR/Verifier.cpp
@@ -937,6 +937,9 @@ void Verifier::visitDICompileUnit(const DICompileUnit &N) {
Assert(!N.getFile()->getFilename().empty(), "invalid filename", &N,
N.getFile());
+ Assert((N.getEmissionKind() <= DICompileUnit::LastEmissionKind),
+ "invalid emission kind", &N);
+
if (auto *Array = N.getRawEnumTypes()) {
Assert(isa<MDTuple>(Array), "invalid enum list", &N, Array);
for (Metadata *Op : N.getEnumTypes()->operands()) {
OpenPOWER on IntegriCloud